Пусть дана матрица а(n х m). разработать приложение, позволяющее построить вектор, каждый элемент которого содержит наименьший по абсолютной величине элемент соответствующего столбца матрицы a.
Program test; uses crt; var arr:array[1..5,1..10] of integer; vec:array[1..10] of integer; i,j:integer; begin clrscr; randomize; for i:=1 to 5 do begin for j:=1 to 10 do begin arr[i,j]:=random(19)-9; write(arr[i,j],' '); end; writeln; end;
for j:=1 to 10 do begin vec[j]:=abs(arr[1,j]); for i:=1 to 5 do if vec[j]>abs(arr[i,j]) then vec[j]:=abs(arr[i,j]); end;
writeln; for i:=1 to 10 do write(vec[i],' '); end.
Вот программа , если мы хотим сложить 2 квадрата одного числа program sqr; var n,a: integer; begin write ('Введите число>>'); read (n); a:= n*n+n*n; writeln (a) end.
Но если мы хотим выразить 1 число в виде суммы 2-х квадратов и проверить возможно ли это, то (боюсь ошибиться) program sqr; uses crt; var n: integer; a,b:real; begin write ('Введите число>>'); read (n); a:= sqrt(n); if (a= sqrt(n)) and (a=(n*n)) then begin b:= sqrt(a); if b= (a*a)+(a*a) then writeln ('Можно'); if b<> (a*a)+(a*a) then writeln ('Нельзя'); end; if (a= sqrt(n)) and (a<>n*n) then writeln ('Нельзя') end.
uses crt;
var
arr:array[1..5,1..10] of integer;
vec:array[1..10] of integer;
i,j:integer;
begin
clrscr;
randomize;
for i:=1 to 5 do
begin
for j:=1 to 10 do
begin
arr[i,j]:=random(19)-9;
write(arr[i,j],' ');
end;
writeln;
end;
for j:=1 to 10 do
begin
vec[j]:=abs(arr[1,j]);
for i:=1 to 5 do
if vec[j]>abs(arr[i,j]) then vec[j]:=abs(arr[i,j]);
end;
writeln;
for i:=1 to 10 do
write(vec[i],' ');
end.