var
a:array[1..1000] of integer;
n, i, j:integer;
flag:boolean;
begin
a[1] := 0;
write('n = '); readln(n);
for i := 2 to trunc(sqrt(n)) do
if n mod i = 0 then
begin
a[1] := i;
n := n div i;
break;
end;
if a[1] = 0 then
begin
writeln(n);
Exit;
end;
i := 1;
while n <> 1 do
begin
flag := false;
for j := a[i] to trunc(sqrt(n)) do
if n mod j = 0 then
begin
a[i + 1] := j;
inc(i);
n := n div j;
flag := true;
break;
end;
if (not flag) and (n <> 1) then
begin
a[i + 1] := n;
inc(i);
break;
end;
end;
//Вторая программа
const
m = 4;
n = 3;
var
a:array[1..m, 1..n] of integer;
i, j, Pr:integer;
begin
randomize;
Pr := 1;
Writeln('Исходный массив');
for i := 1 to m do
begin
for j := 1 to n do
begin
a[i, j] := random(21) - 10;
if a[i, j] > 0 then
Pr := Pr * a[i, j];
write(a[i, j]:4, ' ');
end;
writeln;
end;
writeln;
writeln('Преобразованный массив');
for i := 1 to m do
begin
for j := 1 to n do
if a[i, j] < 0 then
write(Pr:8, ' ')
else
write(a[i, j]:8, ' ');
writeln;
end;
readln;
end.
for j := 1 to i do
write(a[j], ' ');
readln;
end.
рисуешь обычную сетку координат х и у, начинаешь с точки (0, 0), т.е. вот так по координатам (х,у) ставишь в ней точку, далее смотрим на условие:
1) 4 раза Сместиться на (2, 0), следовательно получаем последовательно 4 точки: (2, 0), (4,0), (6,0) (8,0) , т.е. к х прибавляем х, к у прибавляем у и получаем точки, конечную точку фиксируем на графике ( было х=0 и у=0, в конце получаем что х= 4*(х+2) и у=4*(0+0), умножаем на 4 потому, что в условии написано "4 раза сместиться на (2,0) )
2) Сместиться на (0, 3), следовательно делаем то же самое: из точки (8,0) перемещаемся в точку (8,3), получается что теперь х = 8+0, а у=0+3)
3)Сместиться на (–2, –3), так же: из точки (8;3) в точку (6;0), так как х=8-2, а у=3-3
в итоге получается треугольник:)
надеюсь понятно рассказала)
Объяснение:
Га хга ха