Страницы

вторник, 8 января 2013 г.

вложенные циклы в Паскаль

Для того, чтобы разобраться с вложенными циклами можно попытаться изобразить при помощи Паскаль

Домик из звездочек

Задача следующая: запросив высоту крыши домика, нужно изобразить из звездочек и решеток домик в текстовом виде. Для высоты 6 домик должен выглядеть таким образом:
     *
    ***
   *****
  *******
 *********
***********
 #########
 #       #
 #       #
 #       #
 #       #
 #       #
 #       #
 #       #
 #########
Для построения домика сначала разберемся с крышей. Сначала запрашиваем высоту крыши у пользователя и записываем значение в переменную n типа integer.

Обращаем внимание, что нам нужно отобразить n строк, состоящих из пробелов и звездочек.
Для n=3 ситуация будет такой:
1 строка: 2 пробела, 1 звездочка,
2 строка: 1 пробел, 3 звездочки,
3 строка: 0 пробелов, 5 звездочек.
Для n=4 ситуация будет такой:
1 строка: 3 пробела, 1 звездочка,
2 строка: 2 пробела, 3 звездочки,
3 строка: 1 пробел, 5 звездочек,
4 строка: 0 пробелов, 7 звездочек.

Обозначим номер строки i. Тогда, число пробелов будет равно p=n-i, а число звездочек z=2*i-1.

Для отображения пробелов и звездочек используем команду write, а для перехода на следующую строку writeln;
for i:=1 to n do
begin
  for j:=1 to n-i do write(' ');
  for j:=1 to 2*i-1 do write('*');
  writeln;
end;
Основанием нашего Теремка будет квадратный сруб. Он состоит из трех частей: верхнее бревно, центральная область и нижнее бревно.

Комментариев нет:

Отправить комментарий