<em>// PascalABC.NET 3.2, сборка 1417 от 28.03.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
unit ASM;
interface
type SF=(integer,integer);
function AddSF(a,b:SF):SF;
function SubSF(a,b:SF):SF;
function MultSF(a,b:SF):SF;
function DivSF(a,b:SF):SF;
implementation
function Gcd(p:SF):integer;
begin
(var a,var b):=p;
a:=abs(a); b:=abs(b);
while b>0 do (a,b):=(b,a mod b);
Result:=a
end;
function ReductSF(p:SF):SF;
begin
var t:=Gcd(p);
if t>1 then Result:=(p[0] div t,p[1] div t)
else Result:=p
end;
function AddSF(a,b:SF):=ReductSF((a[0]*b[1]+a[1]*b[0],a[1]*b[1]));
function SubSF(a,b:SF):=ReductSF((a[0]*b[1]-a[1]*b[0],a[1]*b[1]));
function MultSF(a,b:SF):=ReductSF((a[0]*b[0],a[1]*b[1]));
function DivSF(a,b:SF):=ReductSF((a[0]*b[1],a[1]*b[0]));
end.
<u>***** Пример работы с модулем *****</u>
uses ASM;
begin
var a:=(5,24);
var b:=(7,8);
var c:=AddSF(a,b);
Writeln(a[0],'/',a[1],'+',b[0],'/',b[1],'=',c[0],'/',c[1])
end.
<u>Результат</u>
5/24+7/8=13/12
Письменность - это важная часть всей нашей жизни. Мы пользуемся таким методом, чтобы записать некую информацию. Это дает огромный толчок науке прежде всего потому, что без письменности большая часть знаний не сохранилась бы. Разные формулы, исторические записи - за все это мы должны благодарить письменность. Если рассуждать надобность письменности с точки культуры, то следует отметить, что тут письменность оставила огромную отметку. Литературные шедевры, которые стали знаменитыми во всем мире, песни, стихи - все сохранилось благодаря письменности. Задумайтесь, что бы было, если бы письменности не существовало?
P.S. Это набросок на сочинение или доклад, его можно обогатить разными выражениями и цитатами, поискать еще некоторые факты об возникновении и истории письменности
Pascal abc.
Программа прикреплена к ответу
_______________________________
<span>var a:array[1..100] of integer;
i,n,s,k:integer;
sr:real;
begin
write('введите кол-во эл-тов массива: ');read(n);
for i:=1 to n do begin a[i]:=random(60); write(a[i]:4);end;
for i:=1 to n do
if (a[i] mod 2=0) and (i mod 2<>0) then begin s:=s+a[i]; inc(k); end;
writeln;
writeln('срзнач= ',s/k:4:2);
end.</span>
Var x,y,z:string; k,p,l:integer;
begin
writeln('Введите строку:');
readln(x);
writeln('Введите слово:');
readln(y);
z:=x; k:=0;
l:=length(y);
p:=pos(y,x);
while p>0 do
begin
k:=k+1;
delete(z,p,l);
p:=pos(y,z);
end;
writeln('k = ',k);
end.
Пример:
Введите строку:
мама мыла раму, мама мыла окно.
Введите слово:
мама
k = 2