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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.06.2009, 14:57   #1
NEMO1991
Пользователь
 
Аватар для NEMO1991
 
Регистрация: 20.12.2008
Сообщений: 64
По умолчанию Паскаль.Треугольник Паскаля.Нужна подсказка.

как сделать так чтобы этот треугольник выводился как треугольник?
т.е. при использовании модуля Crt в окне числа выводились не так
1
1 1
1 2 1 ... а вот так чтобы его вершина была в центре окна. выглядит примерно так
................................... ...........1....................... .................
................................... ..........1 1.................................. ....
................................... .........1 2 1.................................. ....
и так далее.
Код:
uses
  Crt;
const
  N = 30;
var
  I,J,Nn: Integer;
  A:array[1..N, 1..N] of longint;
begin
  writeln('Input n');
  readln(Nn);
  ClrScr;
  for I:=1 to Nn do
    begin
      A[I,1]:=1;
      A[I,i]:=1;
    end;
  for I:= 3 to Nn do
    begin
      For J:=2 to I-1 do A[I,J]:= A[I-1,J-1]+A[I-1,J];
    end;
  ClrScr;
  for I:= 1 to Nn do
    begin
      for J:=1 to I do Write(a[I,J],' ');
      WriteLn;
    end;
end.
/\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\
:: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: ::
::читать тут:: :: :: :: :: :: :: :: :: :: :: :: :: :: :: ::

Последний раз редактировалось NEMO1991; 14.06.2009 в 15:01.
NEMO1991 вне форума Ответить с цитированием
Старый 14.06.2009, 15:37   #2
Greblin
Меркантильный кю
Участник клуба
 
Аватар для Greblin
 
Регистрация: 02.02.2008
Сообщений: 1,001
По умолчанию

Для каждой строки рассчитываешь координаты первого элемента (не сложно, учитывая, что в каждой строчке треугольника число элементов на 1 больше чем в предыдущей) и устанавливаешь нужные координаты вывода с помощью процедуры GotoXY
Росли вроде умными, выросли дурнями... (c)А.Васильев
Greblin вне форума Ответить с цитированием
Старый 14.06.2009, 15:44   #3
__STDC__
Участник клуба
 
Аватар для __STDC__
 
Регистрация: 16.03.2009
Сообщений: 1,013
По умолчанию

предлагаю как-то так (красным изменения)
Код:
uses
  Crt;
const
  N = 30;
var
  I,J,Nn,k: Integer;
  A:array[1..N, 1..N] of longint;
begin
  writeln('Input n');
  readln(Nn);
  ClrScr;
  for I:=1 to Nn do
    begin
      A[I,1]:=1;
      A[I,i]:=1;
    end;
  for I:= 3 to Nn do
    begin
      For J:=2 to I-1 do A[I,J]:= A[I-1,J-1]+A[I-1,J];
    end;
  ClrScr;
  k:=Nn;
  for I:= 1 to Nn do
    begin
	write('':k);
      for J:=1 to I do Write(a[I,J],' ');
      WriteLn;
    dec(k);
    end;

end.
***
До появления трехзначных чисел получается вообще шикарно =) а потом можно еще помудрить..
Uguu~
__STDC__ вне форума Ответить с цитированием
Старый 14.06.2009, 15:50   #4
NEMO1991
Пользователь
 
Аватар для NEMO1991
 
Регистрация: 20.12.2008
Сообщений: 64
По умолчанию

спасибо))а реально сделать что бы он начинался прям из центра а не с краю?
/\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\
:: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: ::
::читать тут:: :: :: :: :: :: :: :: :: :: :: :: :: :: :: ::
NEMO1991 вне форума Ответить с цитированием
Старый 14.06.2009, 15:52   #5
__STDC__
Участник клуба
 
Аватар для __STDC__
 
Регистрация: 16.03.2009
Сообщений: 1,013
По умолчанию

Цитата:
Сообщение от NEMO1991 Посмотреть сообщение
спасибо))а реально сделать что бы он начинался прям из центра а не с краю?
в смысле? ну там можно написать допустим
Код:
	write('':k+20);
и все будет смещать на 20 символов вправо... можно с помощью getmaxx что ли (если не ошибаюсь, не помню точно) рассчитать точный центр =)
Uguu~
__STDC__ вне форума Ответить с цитированием
Старый 14.06.2009, 15:54   #6
NEMO1991
Пользователь
 
Аватар для NEMO1991
 
Регистрация: 20.12.2008
Сообщений: 64
По умолчанию

Спасибо))помогло))
/\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\
:: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: :: ::
::читать тут:: :: :: :: :: :: :: :: :: :: :: :: :: :: :: ::

Последний раз редактировалось NEMO1991; 14.06.2009 в 17:10.
NEMO1991 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Pascal] Расчитать треугольник паскаля Рамик Помощь студентам 4 29.09.2020 08:40
Задача про треугольник Паскаля. Mangust Помощь студентам 9 02.03.2009 23:59
Треугольник Паскаля в Turbo Pascale 7.0 Rusl92 Паскаль, Turbo Pascal, PascalABC.NET 12 23.04.2008 13:56
Нужна подсказка! (StringGrid) Mr.User Помощь студентам 14 02.12.2007 23:22
нужна подсказка по MYSQL!!! Noor Помощь студентам 5 03.04.2007 10:52