| 
| 
 | Вопрос # 3 899/ вопрос открыт / | 
 |  Доброго времени суток, уважаемые эксперты!Помогите решить проблему с выводом данных. Имеется задача (код для решения сделал, а вывести правильно донные не могу):
 
 Даны два числа n и m. Создайте двумерный массив [n][m] и заполните его по следующим правилам: Числа, стоящие в строке 0 или в столбце 0 равны 1 (A[0][j]=1, A[i][0]=1). Для всех остальных элементов массива A[i][j]=A[i-1][j]+A[i][j-1], то есть каждый элемент равен сумме двух элементов, стоящих слева и сверху от него.
 
 Формат входных данных
 
 Программа получает на вход два числа n и m.
 
 Формат выходных данных
 
 Выведите данный массив, отводя на вывод каждого числа ровно 6 символов.
 
 Пример
 Ввод      4 6
 Вывод    1      1      1      1      1      1
 1      2      3      4      5      6
 1      3      6     10     15     21
 1      4     10     20     35     56
 Помогите пожалуйста!
 Приложение:Переключить в обычный режим   program Project2; {$APPTYPE CONSOLE} uses  SysUtils; var  n,j,i,m:integer;  a:array[1..1000,1..1000]of integer;begin  readln(n,m);  for i:=1 to n do     for j:=1 to m do       begin         a[1,j]:=1;         a[i,1]:=1;         a[i,j]:=a[i-1,j]+a[i,j-1];       end;     for i:=1 to n do        begin          for j:=1 to m do             write(a[i,j],' ');          writeln;        end;        readln; end.
|  |   Вопрос задал: prog-mer (статус: Посетитель)Вопрос отправлен: 18 марта 2010, 15:08
 Состояние вопроса: открыт, ответов: 1.
 |  Ответ #1. Отвечает эксперт: Вадим К Здравствуйте, prog-mer!перепишите вывод так
 write(a[i,j]:6);
 
 или можно очень грубо написать ещё так. (это просто как вариант решения в лоб, грязно, но иногда полезны любые методы...)
 
 if a[i,j] < 10 then write('.....')
else if a[i,j] < 100 then write('....')
else if a[i,j] < 1000 then write('...')
else if a[i,j] < 10000 then write('..')
else if a[i,j] < 100000 then write('.');
write(a[i,j]);я специально поставил точки вместо пробелов, что бы было видно сколько их там.
|  | Ответ отправил: Вадим К (статус: Академик)Время отправки: 18 марта 2010, 15:29
 Оценка за ответ: 5
 |  
 Мини-форум вопросаВсего сообщений: 2; последнее сообщение — 18 марта 2010, 15:13; участников в обсуждении: 1. 
|   | prog-mer (статус: Посетитель), 18 марта 2010, 15:12 [#1]:Выводить нужно так: 
 Вход:
 
 4 6
 
 Выход:
 
 1      1      1      1      1      1
 1      2      3      4      5      6
 1      3      6     10     15     21
 1      4     10     20     35     56
 |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |