Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.12.2011, 20:41   #1
denolend
Новичок
Джуниор
 
Регистрация: 11.12.2011
Сообщений: 1
По умолчанию Вывод двумерного массива

Задача : Напечатать диагонали таблицы m*n двигаясь от леого нижнего угла к правому верхнему.
я вроде как придумал алгоритм ,но программа почему-то не работает. Подскажите что добавить или исправить плз.
код:
program napechatat;
uses crt;
Const n=3;
m=3;
var a:array[1..m,1..n] of integer;

i,j,s,ostatok:integer;
begin
clrscr;
randomize;
s:=0;
j:=0;
i:=0;
for i:=1 to n do
begin
for j:=1 to m do
begin
s:=s+1;
a[i,j]:=s;
write(a[i,j]:4);
end;
writeln;
end;
writeln;
s:=0;
for j:=1 to n do
begin
for i:=1 to s+1 do
begin
write(a[m-i+j,j]:4);
s:=s+1;
end;
writeln;
end;
writeln;


end.
denolend вне форума Ответить с цитированием
Старый 12.12.2011, 13:01   #2
zhan313
Пользователь
 
Регистрация: 09.12.2011
Сообщений: 44
По умолчанию

Цитата:
Сообщение от denolend Посмотреть сообщение
s:=0;
for j:=1 to n do
begin
for i:=1 to s+1 do
begin
write(a[m-i+j,j]:4);
s:=s+1;
end;
writeln;
end;
writeln;
end.
есди матрица квадратная:
for i:=n downto 1 do
for j:=1 to m do
write(a[i,j]:4);
writeln;
end.

Последний раз редактировалось zhan313; 12.12.2011 в 13:53. Причина: ошибочка вышла
zhan313 вне форума Ответить с цитированием
Старый 12.12.2011, 13:41   #3
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Код:
uses crt;
Const n=3;
var a:array[1..n,1..n] of integer;
    i,j,s:integer;
begin
clrscr;
s:=0;
for i:=1 to n do
 begin
  for j:=1 to n do
   begin
    s:=s+1;
    a[i,j]:=s;
    write(a[i,j]:4);
   end;
  writeln;
 end;
writeln;
for s:=n-1 downto -n+1 do
 begin
  for j:=1 to n do
  if (j+s>0) and (j+s<=n) then  write(a[s+j,j]:4);
  writeln;
 end;
readln
end.
puporev вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод двумерного массива Kocapb Общие вопросы C/C++ 4 11.10.2012 11:05
Вывод двумерного ассоциативного массива через цикл фор Syltan PHP 2 26.11.2010 18:59
Вывод двумерного массива(asm) Xanex Помощь студентам 0 29.05.2010 23:19
Функции в си. Вывод двумерного массива из функции. Evgen51 Общие вопросы C/C++ 9 13.05.2010 03:59
Вывод двумерного массива pancho Общие вопросы Delphi 10 25.01.2009 23:31