Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Матрицы случайных чисел

Автор: nblazhko 23.12.2007 16:31

В этой проге нужно сделать чтобы матрицы задавались не вручную а рандомом,помогите пожалуйсто очень нужно





program Task2;
uses crt;
const n=4;m=3;
type matr=array [1..n,1..n] of integer;
var m1,m2,m3:matr;
i,j,k:integer;

procedure ReadMatr(var m:matr;k,l:integer);
var i,j:integer;
begin
for i:=1 to n do
for j:=1 to n do begin
m[i][j]:=0;
end;

for i:=1 to k do
for j:=1 to l do
read(m[i][j]);
end;

function Obrabotka(m1,m2,m3:matr):integer;
var i,j,min1,min2,min3:integer;
begin
min1:=m1[1][1];
min2:=m2[1][1];
min3:=m3[1][1];

for i:=1 to n do
for j:=1 to n do
if min1>m1[i][j] then min1:=m1[i][j];
for i:=1 to n do
for j:=1 to n do
if min2>m2[i][j] then min2:=m2[i][j];
for i:=1 to n do
for j:=1 to n do
if min3>m3[i][j] then min3:=m3[i][j];

if (min1>=0) and (min2>=0) and (min3>=0) then Obrabotka:=0
else
if min1>min2 then
if min2>min3 then Obrabotka:=3
else Obrabotka:=2
else
if min1>min3 then Obrabotka:=3
else Obrabotka:=1;
end;

procedure WriteMatr(m:matr;k,l:integer);
var i,j:integer;
begin
for i:=1 to k do begin
writeln;
for j:=1 to l do
write(' ',m[i][j]:4);
end;
end;

begin
clrscr;
writeln('Vvedite 1-uy matricy razmerom ',n,' na ',m,' :');
ReadMatr(m1,n,m);
writeln('Vvedite 2-uy matricy razmerom ',n,' na ',n,' :');
ReadMatr(m2,n,n);
writeln('Vvedite 3-uy matricy razmerom ',m,' na ',m,' :');
ReadMatr(m3,m,m);
k:=Obrabotka(m1,m2,m3);
if k=0 then writeln('V matricah net otricatelnih elementov!')
else begin
writeln;
writeln('Matrica s maksimalno otricatelnim elementom!');
if k=1 then WriteMatr(m1,n,m)
else
if k=2 then WriteMatr(m2,n,n)
else WriteMatr(m3,m,m);
end;

readln;
readln;
end.

Автор: Client 23.12.2007 16:35

Цитата
for i:=1 to k do
for j:=1 to l do
read(m[i][j]);
Заменяешь на
 randomize;
. . .
for i:=1 to k do
for j:=1 to l do
m[i][j]:=random(100);

Автор: nblazhko 23.12.2007 17:36

Спасибо выручил! smile.gif