Дана матрица P с двумя строками и десятью столбцами, каждым столбцом которой задана абсцисса и ордината одной - Pascal ABC
Формулировка задачи:
Решение задачи: «Дана матрица P с двумя строками и десятью столбцами, каждым столбцом которой задана абсцисса и ордината одной»
const n=2;m=10; var p:array[1..n,1..m] of real; i,j:integer; r:real; f:boolean; begin f:=false; writeln('P:'); for i:=1 to n do begin for j:=1 to m do begin p[i,j]:=random*(-10+random(21)); write(p[i,j]:7:2) end; writeln end; write('R = ');readln(r); j:=1; while (not f)and(j<m) do begin i:=j+1; while(not f) and (i<=m) do begin if sqrt(sqr(p[1,j]-p[1,i])+sqr(p[2,j]-p[2,i]))<r then f:=true; inc(i) end; inc(j) end; if not f then begin writeln('нет ни одной пары точек, расстояние между которыми меньше ',r:0:2); writeln('P'':'); for i:=1 to m do if p[1,i]<0 then begin p[1,i]:=0;p[2,i]:=p[2,i]+r end; for i:=1 to n do begin for j:=1 to m do write(p[i,j]:7:2);writeln end; end else writeln('пара точек, расстояние между которыми меньше ',r:0:2, ' : (',p[1,j-1]:0:2,',',p[2,j-1]:0:2,'), (',p[1,i-1]:0:2,',',p[2,i-1]:0:2,')') end.
Объяснение кода листинга программы
const n=2;m=10; var p:array[1..n,1..m] of real; var i,j:integer; var r:real; var f:boolean; begin f:=false; writeln('P:'); for i:=1 to n do begin for j:=1 to m do begin p[i,j]:=random*(-10+random(21)); write(p[i,j]:7:2) end; writeln end; write('R = ');readln(r); j:=1; while (not f)and(j<m) do begin i:=j+1; while(not f) and (i<=m) do begin if sqrt(sqr(p[1,j]-p[1,i])+sqr(p[2,j]-p[2,i]))<r then f:=true; inc(i) end; inc(j) end; if not f then begin writeln('нет ни одной пары точек, расстояние между которыми меньше ',r:0:2); writeln('P'':'); for i:=1 to m do if p[1,i]<0 then begin p[1,i]:=0;p[2,i]:=p[2,i]+r end; for i:=1 to n do begin for j:=1 to m do write(p[i,j]:7:2);writeln end; end else writeln('пара точек, расстояние между которыми меньше ',r:0:2, ' : (',p[1,j-1]:0:2,',',p[2,j-1]:0:2,'), (',p[1,i-1]:0:2,',',p[2,i-1]:0:2,')') end.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д