1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
| Terminator |
26.11.2004 15:30
Сообщение
#1
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 13 Пол: Мужской Репутация: 0 |
Есть такая задачка:
Даны натур. число n, действительная квадратная матрица порядка n. Построить последовательность b1...bn из нулей и единиц, в которой b[i]=1 тогда и только тогда, когда в i-й строке матрицы есть хотя бы один отриц. элемент. Прогр. должна содержать не менее 3-х функций и процедур. Вроде написал, но нужно, чтобы имела место передача массива как параметра процедуры Код program matrix; uses crt; const m=10; space='---------'; var n:byte; y:real;{veschestvennye chisla} i,j:integer;{Tseloye} x:word;{Naturalnoye chislo} znak:byte; a: array [1..m,1..m] of real; b: array [1..m] of word; {} procedure header; begin clrscr; write(space); textcolor(4); write(' copyright '); textcolor(7); writeln(space); writeln; end; {} procedure zapros; begin Write('Введите размер матрицы :'); Read(n); end; procedure vvod; var i, j: integer; begin {nachalo vneshnego tsikla} for j:=1 to n do begin {nachalo vnutrennego tsikla} for i:=1 to n do begin Write('Введите элемент ',i,'-й строки ',j,'-го столбца :'); Readln(a[i,j]); end; {konets vnutrennego tsikla} writeln; end; {konets vneshnego tsikla} end; {} procedure screen; begin clrscr; textcolor(white); end; {} function massiv: word; begin end; procedure input; begin end; procedure rand; var q,r: real; begin {nachalo vneshnego tsikla} for j:=1 to n do begin {nachalo vnutrennego tsikla} for i:=1 to n do begin q:=Random(100); r:=Random(Random(round(n*n))); if r=0 then q:=0-q; a[i,j]:=q; writeln('b[',i,',',j,']=',a[i,j]); end; {konets vnutrennego tsikla} writeln;Readln; end; {konets vneshnego tsikla} end; {} function sequence: word; begin writeln; for i:=1 to n do begin for j:=1 to n do begin if a[i,j]<0 then begin b[i]:=1; break; end; end; end; end; {} begin header; while (n>100) or (n<=0) do zapros; massiv; if n<5 then vvod else rand; sequence; for i:=1 to n do begin writeln('b[',i,']=',b[i]); delay(10000); end; writeln; write('Press Enter'); readln; end. -------------------- I'll be back
|
![]() ![]() |
| Terminator |
26.11.2004 16:06
Сообщение
#2
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 13 Пол: Мужской Репутация: 0 |
Если честно нужно, чтобы "матрица передавалась в процедуру rand", что это значит - не спрашивайте.
-------------------- I'll be back
|
Terminator Pascal_user 26.11.2004 15:30
Altair Ужас какой...
ужас в том, что зачем было сразу исп... 26.11.2004 15:36
FreeMan а ещё нужен тип для массива, чтоб его можно было к... 26.11.2004 15:45
Terminator Прогр. должна содержать не менее 3-х функций и про... 26.11.2004 15:46
Terminator Короче, как исправить эту программу, чтобы имела м... 26.11.2004 15:49
volvo Terminator
А может вместо
for i:=1 to n do
b... 26.11.2004 15:53
Altair
Это значит что матрица должна передаваться в проц... 26.11.2004 16:14
Terminator - это goto? 26.11.2004 16:17
FreeMan
type
arrs = array[1..m,1..m] of real;
...... 26.11.2004 16:23
Altair Терминатор,
Нет.... по ссылке передавать параметр... 26.11.2004 16:23![]() ![]() |
|
Текстовая версия | 15.11.2025 13:00 |