Конспект лекций по программированию для начинающих. Гладков В.П. - 122 стр.

UptoLike

Составители: 

124
for i:=1 to n do { вывод n строк }
begin
writeln; { выводим с начала новой строки }
for j:=1 to p do write(' '); { выводим пробелы }
p:=p-1; { количество пробелов уменьшается }
for j:=1 to z do write('*'); { выводим звездочки }
z:=z+1; { количество звездочек увеличивается }
end.
Пример 10.47. Задано натуральное нечетное n (n>3). Напечатать
равнобедренный треугольник с вершиной, направленной вверх, и основанием,
равным n. Например, для n=5 получим
*
* * *
* * * * *
Решение. Данная задача незначительно отличается от предыдущей. Отличия
состоят в том, что нужно печатать (n+1) div 2 строк. Количество звездочек от
строки к строке увеличивается на 2. Структура строки осталась прежней. Строка
состоит из начальных пробелов (их нужно печатать) и звездочек. Пробелы,
завершающие каждую строку, получатся автоматически. Их специально печатать
не надо.
{ фрагмент 48 }
p:=(n+1) div 2-1; { начальное
количество пробелов }
z:=1; { начальное количество звездочек }
for i:=1 to (n+1) div 2 do { вывод (n+1) div 2 строк }
begin
writeln; { выводим с начала новой строки }
for j:=1 to p do write(' '); { выводим пробелы }
p:=p-1; { количество пробелов уменьшается }
for j:=1 to z do write('*'); { выводим звездочки }
z:=z+2; { количество звездочек увеличивается }
end.
Упражнения:
1. Задано натуральное n. Напечатать фигуры указанных видов (виды показаны
на примере n=5):
а)
*
* *
* * *
* * * *
* * * * *
б)
* * * * *
* * * *
* * *
* *
*
в)
** * * *
****
***
**
*
г)
*
***
** * * *
***
*
д)
* * * * *
* *
* * * * *
* *
* * * * *
2. Для произвольного n напечатать фигуру указанного вида:
для n=3 * * * *
                                     124

    for i:=1 to n do { вывод n строк }
    begin
       writeln; { выводим с начала новой строки }
       for j:=1 to p do write(' '); { выводим пробелы }
       p:=p-1; { количество пробелов уменьшается }
       for j:=1 to z do write('*'); { выводим звездочки }
       z:=z+1; { количество звездочек увеличивается }
    end.
    Пример 10.47. Задано натуральное нечетное n (n>3). Напечатать
равнобедренный треугольник с вершиной, направленной вверх, и основанием,
равным n. Например, для n=5 получим
          *
      * * *
    * * * * *
    Решение. Данная задача незначительно отличается от предыдущей. Отличия
состоят в том, что нужно печатать (n+1) div 2 строк. Количество звездочек от
строки к строке увеличивается на 2. Структура строки осталась прежней. Строка
состоит из начальных пробелов (их нужно печатать) и звездочек. Пробелы,
завершающие каждую строку, получатся автоматически. Их специально печатать
не надо.
    { фрагмент 48 }
    p:=(n+1) div 2-1; { начальное количество пробелов }
    z:=1; { начальное количество звездочек }
    for i:=1 to (n+1) div 2 do { вывод (n+1) div 2 строк }
    begin
       writeln; { выводим с начала новой строки }
       for j:=1 to p do write(' '); { выводим пробелы }
       p:=p-1; { количество пробелов уменьшается }
       for j:=1 to z do write('*'); { выводим звездочки }
       z:=z+2; { количество звездочек увеличивается }
    end.


    Упражнения:
    1. Задано натуральное n. Напечатать фигуры указанных видов   (виды показаны
на примере n=5):
а)                 б)             в)             г)              д)
*                  * * * * *      * * * * *           *          * * * * *
* *                * * * *           * * * *        * * *        *       *
* * *              * * *               * * *     * * * * *       * * * * *
* * * *            * *                   * *        * * *        *       *
* * * * *          *                       *          *          * * * * *

   2. Для произвольного n напечатать фигуру указанного вида:

для n=3                     * * *                       *