Program q; var a:array[1..7,1..7] of integer; min7,sum1,odd,i,k:integer; avg5:real; begin; randomize; for i:=1 to 7 do begin; for k:=1 to 7 do begin; a[i,k]:=random(-10,10); if a[i,k] mod 2 = 1 then odd+=1; end; end; min7:=a[1,7]; for i:=1 to 7 do if a[7,i]<min7 then min7:=a[i,7]; for i:=1 to 7 do sum1+=a[i,1]; for i:=1 to 7 do avg5+=a[5,i]; avg5/=7; for i:=1 to 7 do a[1,i]:=1; write('Минимальный элемент в 7 столбце ', min7, ', сумма элементов первой строки ', sum1, ', кол-во нечётных чисел ', odd); end.
PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018 Внимание! Если программа не работает, обновите версию!
function gcd(a,b:integer):integer; // НОД begin while b<>0 do begin a:=a mod b; Swap(a,b) end; Result:=a end;
procedure RedFrac(var a,b:integer); // сокращение дроби begin var (sgna,sgnb):=(Sign(a),Sign(b)); // мы должны учитывать знак! (a,b):=(Abs(a),Abs(b)); var d:=gcd(a,b); a:=(a div d)*sgna; b:=(b div d)*sgnb end;
begin var (a,b):=ReadInteger2('Введите числитель и знаменатель 1-й дроби:'); var (c,d):=ReadInteger2('Введите числитель и знаменатель 2-й дроби:'); (a,b):=(a*c,b*d); RedFrac(a,b); Writeln('Результат умножения: ',a,' / ',b) end.
Пример Введите числитель и знаменатель 1-й дроби: 32 1024 Введите числитель и знаменатель 2-й дроби: 60 300 Результат умножения: 1 / 160
В качестве бонуса - решение на базе входящей в состав PascalABC.NET библиотеки численных методов
uses NumLibABC;
begin var (a,b):=ReadInteger2('Введите числитель и знаменатель 1-й дроби:'); var (c,d):=ReadInteger2('Введите числитель и знаменатель 2-й дроби:'); Writeln('Результат умножения: ',Frc(a,b)*Frc(c,d)) end.
var a:array[1..7,1..7] of integer; min7,sum1,odd,i,k:integer; avg5:real;
begin;
randomize;
for i:=1 to 7 do begin;
for k:=1 to 7 do begin;
a[i,k]:=random(-10,10);
if a[i,k] mod 2 = 1 then odd+=1;
end;
end;
min7:=a[1,7];
for i:=1 to 7 do if a[7,i]<min7 then min7:=a[i,7];
for i:=1 to 7 do sum1+=a[i,1];
for i:=1 to 7 do avg5+=a[5,i];
avg5/=7;
for i:=1 to 7 do a[1,i]:=1;
write('Минимальный элемент в 7 столбце ', min7, ', сумма элементов первой строки ', sum1, ', кол-во нечётных чисел ', odd);
end.