![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
![]() |
Atreides |
![]()
Сообщение
#1
|
![]() Ветеран Броуновского Движения ![]() ![]() ![]() Группа: Пользователи Сообщений: 281 Пол: Мужской Реальное имя: Сергей Репутация: ![]() ![]() ![]() |
Народ, подскажите, как будет выглядеть подпрограмма нахождения минимума матрицы, через процедуру, которую нужно просто дописать вот к этому коду?
Код program Matrix; uses SysUtils; Type TMatrix=array[1..100,1..100] of integer; var x:TMatrix; procedure inputmatrix(var a:TMatrix;m,n:cardinal); var i,j:cardinal; begin i:=1; repeat j:=1; repeat a[i,j]:=random(999); j:=j+1; until j>m; i:=i+1; until i>n; end; procedure outputmatrix(a:TMatrix;m,n:cardinal); var i,j:cardinal; begin i:=1; repeat j:=1; repeat write(a[i,j]:6); j:=j+1; until j>m; i:=i+1; writeln; until i>n; end; begin inputmatrix(x,10,10); outputmatrix(x,10,10); readln; end. -------------------- Отрадно спать, отрадней камнем быть, О, этот век, преступный и постыдный, Не жить, не чувствовать - удел завидный. Прошу, молчи, не смей меня будить!
|
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата(Atreides @ 18.03.05 19:51) как будет выглядеть подпрограмма нахождения минимума матрицы, через процедуру Ну, наверное все-таки через функцию... Раз минимум - то одно число, его можно вернуть и функцией: Код function minimum_matrix(a:TMatrix;m,n:cardinal): integer; var i,j:cardinal; min_val: integer; begin min_val := a[1, 1]; i:=1; repeat j:=1; repeat if min_val > a[i, j] then min_val := a[i, j]; j:=j+1; until j>m; i:=i+1; writeln; until i>n; result := min_val end; Я написал функцию в том же стиле, что и те 2 процедуры, но все-таки стоит обратить внимание на For... С ним гораздо удобнее работать... |
Atreides |
![]()
Сообщение
#3
|
![]() Ветеран Броуновского Движения ![]() ![]() ![]() Группа: Пользователи Сообщений: 281 Пол: Мужской Реальное имя: Сергей Репутация: ![]() ![]() ![]() |
А как заставить её находить максимум всей матрицы? И как я понял, конечный код выглядит так?
Код program Matrix; uses SysUtils; Type TMatrix=array[1..100,1..100] of integer; var x:TMatrix; procedure inputmatrix(var a:TMatrix;m,n:cardinal); var i,j:cardinal; begin i:=1; repeat j:=1; repeat a[i,j]:=random(999); j:=j+1; until j>m; i:=i+1; until i>n; end; procedure outputmatrix(a:TMatrix;m,n:cardinal); var i,j:cardinal; begin i:=1; repeat j:=1; repeat write(a[i,j]:6); j:=j+1; until j>m; i:=i+1; writeln; until i>n; end; function minimum_matrix(a:TMatrix;m,n:cardinal): integer; var i,j:cardinal; min_val: integer; begin min_val := a[1, 1]; i:=1; repeat j:=1; repeat if min_val > a[i, j] then min_val := a[i, j]; j:=j+1; until j>m; i:=i+1; write(min_val); writeln; until i>n; result := min_val; end; begin inputmatrix(x,10,10); minimum_matrix(x,10,10); outputmatrix(x,1,1); readln; end. -------------------- Отрадно спать, отрадней камнем быть, О, этот век, преступный и постыдный, Не жить, не чувствовать - удел завидный. Прошу, молчи, не смей меня будить!
|
Atreides |
![]()
Сообщение
#4
|
![]() Ветеран Броуновского Движения ![]() ![]() ![]() Группа: Пользователи Сообщений: 281 Пол: Мужской Реальное имя: Сергей Репутация: ![]() ![]() ![]() |
![]() -------------------- Отрадно спать, отрадней камнем быть, О, этот век, преступный и постыдный, Не жить, не чувствовать - удел завидный. Прошу, молчи, не смей меня будить!
|
volvo |
![]()
Сообщение
#5
|
Гость ![]() |
Цитата(Atreides @ 26.03.05 13:08) А какой командой в Delphi можно менять цвет шрифта и фона? Если можно с примером? Это описано в Delphi Help и DRKB... Качайте и смотрите... |
Atreides |
![]()
Сообщение
#6
|
![]() Ветеран Броуновского Движения ![]() ![]() ![]() Группа: Пользователи Сообщений: 281 Пол: Мужской Реальное имя: Сергей Репутация: ![]() ![]() ![]() |
Help somebody!
Как найти максимум всей матрицы? А то у меня получается максимум каждой строки... -------------------- Отрадно спать, отрадней камнем быть, О, этот век, преступный и постыдный, Не жить, не чувствовать - удел завидный. Прошу, молчи, не смей меня будить!
|
volvo |
![]()
Сообщение
#7
|
Гость ![]() |
А посмотреть пост №2, и заменить " if min_val > a[i, j] then min_val := a[i, j];" на
Код if max_val < a[i, j] then max_val := a[i, j]; (ну и поменять названия переменных, естественно) - нельзя догадаться? |
![]() ![]() |
![]() |
Текстовая версия | 28.07.2025 16:12 |