fess | Дата: Суббота, 23.05.2015, 21:16 | Сообщение # 1 |
Рядовой
Группа: Пользователи
Сообщений: 2
Статус: Offline
| Всем привет,помогите сэкономить немного времени для подготовки к сессии) Вот задача: Определите количество "особых" элементов масиива С(n,m).(Элемент считается особым, если выполняются ниже перечисленные условия: элемент больше суммы остальных элементов своего столбца. в строке слева от элемента находятся элементы, меньшие его, а справа большие). Для отладки программы исходный массив сформировать с помощью генератора случайных чисел. Вот программа:
uses crt; const nmax=20; type matr=array [1..nmax,1..nmax] of integer;var a: matr; n,m: byte; procedure GenPrint (var ri: byte; var rj: byte; var z: matr);var i,j: byte; begin repeat write('Количество строк, не более ',nmax,', n='); readln(ri);until ri in [1..nmax]; repeat write('Количество столбцов, не более ',nmax,', m='); readln(rj); until rj in [1..nmax];for i:=1 to ri do begin for j:=1 to rj do begin z[i,j]:=random(199)-99; write(z[i,j]:4); end; writeln; end; end; function IsMore (ini,inj,ri: byte; z: matr): boolean;var i: byte; s: integer;begins:=0;for i:=1 to ri do inc(s,z[i,inj]); s:=s-z[ini,inj]; IsMore:=z[ini,inj]>s;end; function IsMean (ini,inj,rj: byte; z: matr): boolean;var j: byte; b: boolean; beginb:=true;if inj>1 then for j:=1 to inj-1 do if z[ini,inj]<z[ini,j] then b:=false;if inj<rj then for j:=inj+1 to rj do if z[ini,inj]>z[ini,j] then b:=false;IsMean:=b;end; procedure Prov (ri,rj: byte; z: matr); var i,j: byte; k: byte;begink:=0;write('Особые элементы'); for i:=1 to ri do for j:=1 to rj do if IsMore(i,j,ri,z) and IsMean (i,j,rj,z) then begin inc(k); if k=1 then writeln(':'); writeln(z[i,j],' в строке ',i,', в столбце ',j); end;if k=0 then writeln(' отсутствуют');end; beginGenPrint (n,m,a); Prov (n,m,a); readln; end.
Сообщение отредактировал fess - Суббота, 23.05.2015, 21:20 |
|
| |
diamFC | Дата: Воскресенье, 24.05.2015, 06:04 | Сообщение # 2 |
Полковник
Группа: Администраторы
Сообщений: 207
Статус: Offline
| Блок=схема в архиве
|
|
| |
fess | Дата: Воскресенье, 24.05.2015, 10:45 | Сообщение # 3 |
Рядовой
Группа: Пользователи
Сообщений: 2
Статус: Offline
| Ух ты,спасибо большое) Я вчера сидел,долго разбирался и написал уже было схему,но эта красивее как то Низкий вам поклон
|
|
| |