![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
Anastacia Adesso |
![]() ![]()
Сообщение
#1
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 92 Пол: Мужской Реальное имя: Stanislav Репутация: ![]() ![]() ![]() |
Хммм я кажется тут чтото не то делаю.
Вроде надо проверить, являются ли все числа в строках матрицы в убывающей последовательности. Процедуры работают очень хорошо..А вот в самом теле какая то фигня. Выдаёт ошибку в цикле while ![]() Сообщение отредактировано: Anastacia Adesso - 12.10.2006 10:09 -------------------- Ben sensiz yaşayamam
|
![]() ![]() |
klem4 |
![]()
Сообщение
#2
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: ![]() ![]() ![]() |
Код for j:=1 to m do i:=1; // < ---- ТУТ Do Begin видимо нужно :) while (i<=n-1) and a[i]>a[succ(i)] do inc(i); end;writeln; uses crt;
const
n = 2;
m = 3;
type
TMx = array [1..n, 1..m] of integer;
procedure ReadMatrix(var mx: TMx);
var
i, j: Integer;
begin
for i := 1 to n do
for j := 1 to m do begin
write('mx[', i, ',', j, ']=');
readln(mx[i, j]);
end;
end;
procedure PrintMatrix(const mx: TMx);
var
i, j: Integer;
begin
for i := 1 to n do begin
writeln;
for j := 1 to m do
write(mx[i, j]:2);
end;
end;
function CheckRow(const mx: TMx; row: Integer): Boolean;
var
i: Integer;
begin
i := 1;
while (i < m) and (mx[row, i] <= mx[row, i + 1]) do inc(i);
CheckRow := (i = m);
end;
function CheckMatrix(const mx: TMx): Boolean;
var
i: Integer;
begin
i := 1;
while (i <= n) and (CheckRow(mx, i)) do inc(i);
CheckMatrix := (i > n);
end;
var
mx: TMx;
begin
clrscr;
ReadMatrix(mx);
PrintMatrix(mx);
writeln;
Writeln(CheckMatrix(mx));
readln;
end.
-------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
мисс_граффити |
![]()
Сообщение
#3
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
Я думаю, ошибку выдает из-за отсутствия скобочек при сравнении эл-тов массива.
-------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
klem4 |
![]()
Сообщение
#4
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: ![]() ![]() ![]() |
Цитата Я думаю, ошибку выдает из-за отсутствия скобочек при сравнении эл-тов массива. Anastacia Adesso, + Ты обращаешься к эелементу матрица как к элнементу массива (a[i] вместо a[i, j]), да и циклы по i и j у тебя помоему перепутаны местами в проверке, надо идти по строками (внешний цикл) -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
Anastacia Adesso |
![]()
Сообщение
#5
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 92 Пол: Мужской Реальное имя: Stanislav Репутация: ![]() ![]() ![]() |
![]() Да да..Это я поняла что там двумерный масив.. Поставила 2 координаты, но сейчас всё ещё не компилирует никак.. -------------------- Ben sensiz yaşayamam
|
volvo |
![]()
Сообщение
#6
|
Гость ![]() |
Цитата(Anastacia Adesso @ 12.10.2006 11:10) сейчас всё ещё не компилирует никак.. Я бы тоже отказался ЭТО компилировать: procedure printmatrix(a :matrix; n,m: integer);
var i,j: integer;
begin for i:=1 to n do
for j:=1 to m do begin { <--- Внимание !!! Цикл по J }
write(a[i,j]:6);
if j=m then begin writeln;
for j:=1 to m do begin { <--- И вложенный в него - тоже по J ??? }
end; writeln
end end
end;
|
![]() ![]() |
![]() |
Текстовая версия | 28.07.2025 19:46 |