Задача:в какждой строке матрицы A(N,N) определите наибольшее простое число,если в строке нет простых чисел выдайте соответствующее значение.
Мой вариант:
Program natyr;
VAR
A:array [1..100,1..100] of integer;
i,j,n,k : integer;
f : boolean;
Begin
WriteLn('vvedite razmernost massiva');
readLn (n);
For i:=1 to n do
For j:=1 to n do
ReadLn (A[i,j]);
For i:=1 to n do
begin
For j:=1 to n do
Begin
F:=false
For k:=2 to A[i,j] do
If (A[i,j] mod k )=0
Then f:= true
If (f=false)
then A[i,j] {vot zdesi ostanovilas proverit kak rabotaet,a ni kak ne rabotaet,nyli vidaet}
у меня тоже к тебе 2 вопроса:
1) почему программа обрывается на полуслове?
2) массив может быть заполнен только положительными числами?
1.напал ступор от осознания того ,что все что я делаю бред.
2.да,т.к простые числа положительны.
Program natyr;
VAR
A:array [1..100,1..100] of integer;
i,j,n,k,pr : integer;
f : boolean;
Begin
WriteLn('vvedite razmernost massiva');
readLn (n);
For i:=1 to n do
For j:=1 to n do
ReadLn (A[i,j]);
For i:=1 to n do
begin
For j:=1 to n do
Begin
F:=false;
For k:=2 to (A[i,j]-1) do
If (A[i,j] mod k )=0
Then f:= true;
If (f=false)
then
A[i,j]:=pr;
end;
end;
for i:=1 to n do
begin
writeLn;
For j:=1 to n do
write (pr);
end;
END.
может, не
A[i,j]:=pr;
спасибо,но он все равно не то выдает,при вводе 1234 для n=2 он выдает
33
33
почему так
а не
12
30
так лучше?
Program natyr;
VAR
A:array [1..100,1..100] of integer;
i,j,n,k,pr,max : integer;
f : boolean;
Begin
max:=0;
WriteLn('vvedite razmernost massiva');
readLn (n);
For i:=1 to n do
For j:=1 to n do
ReadLn (A[i,j]);
writeln;
writeln;
For i:=1 to n do
begin
For j:=1 to n do
Begin
F:=false;
For k:=2 to (A[i,j]-1) do
If (A[i,j] mod k )=0 Then
f:= true;
If (f=false) then
pr:=A[i,j];
if pr>max then
max:=pr;
end;
writeln(max);
max:=0;
end;
{ for i:=1 to n do
begin
writeLn;
For j:=1 to n do
write (pr);
end;}
END.
спасибо тебе,