Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [Delphi] Матрица


Автор: dies 2.5.2011, 10:22
Надо заполнить рандомно матрицу N на M и вывести минимальный элемент главной диагонали а код  smile 

Автор: mniip 2.5.2011, 11:10
Код

const
 m=10; {10 строк}
 n=10; {10 столбцофф}
 rnd=10; {числа от 0 до 9}
var
 i,j,max,k:integer;
 a:array[0..m,0..n]of integer;
...
begin
...
for i:=0 to m do
for j:=0 to n do a[i,j]:=random(rnd);
if n>m then k:=m else k:=n;
max:=0;
for i:=0 to k do
 if max<a[i,i] then max:=a[i,i];
{max - искомое число}
...
end.

Автор: mniip 2.5.2011, 15:51
А минимальное! тогда:
Код

const
 m=10; {10 строк}
 n=10; {10 столбцофф}
 rnd=10; {числа от 0 до 9}
var
 i,j,min,k:integer;
 a:array[0..m,0..n]of integer;
...
begin
...
for i:=0 to m do
for j:=0 to n do a[i,j]:=random(rnd);
if n>m then k:=m else k:=n;
min:=rnd;
for i:=0 to k do
 if min>a[i,i] then min:=a[i,i];
{min - искомое число}
...
end.

Автор: Serg90 11.5.2011, 11:27
Есть программа она с одномерным массивом, помогите переделать в двумерную. (Что бы сортировало таблицу)
uses crt;
var a:array [1..100]of integer;
    n,i,j,nmax,buf,k:integer;
Begin
clrscr;
write('razmer massiva n=');
readln(n);
for i:=1 to n do
 begin
  write('a[',i,']=');
  readln(a[i]);
 end;
clrscr;
writeln('ishodnii massiv:');
for i:=1 to n do
write(a[i],' ');
writeln;
writeln;
k:=0;
for i:=1 to n-1 do
  begin
    nmax:=i;
    for j:=i+1 to n do
    if a[j]<a[nmax] then nmax:=j;
    buf:=a[i];
    a[i]:=a[nmax];
    a[nmax]:=buf;
    k:=k+1;
  end;
writeln('uporyadochenii massiv: ');
for i:=1 to n do
write(a[i],' ');
writeln;
write('kol-vo obmenov=',k);
readln;
end.

Автор: losttop 17.5.2011, 19:05
Чет не получается smile 

Автор: bems 17.5.2011, 20:32
Для домашних заданий, курсовых, существует "Центр Помощи".

Тема перенесена! 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)