Урок 13.1 Задача 20
Primary tabs
Пользователь передает целое положительное число N, выведете на экран последовательность от 1 до N "ёлочкой", например для N=18:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18ПРИМЕЧАНИЕ: эту задачу можно решить, как вложенными циклами, так и вообще одним циклом (что более изящно).
Решите указанными двумя способами.
Одним циклом:
var a, i, j, n :integer; begin j:=1; // ограничитель числел в строке, начинаем с 1 write('Введите число N: '); // просим ввести максимальное число readln(n); // считываем максимальное число for a:=1 to n do // счетчик со сплошной нумерацией от 1 до максимального числа begin i:=i+1; // увеличиваем счетчик чисел в строке на 1 write(a, ' '); // выводим значения счетчика со сплошной нумерацией на экран в строку if (i=j) then begin // если счетчик чисел сравнялся с ограничителем writeln (); // переходим на новую строку j:=j+1; // увеличиваем ограничитель на 1 i:=0; // обнуляем счетчик чисел в строке end; end; readln(); end.
Вывод в консоли:
Введите число N: 34
1
2 3
4 5 6
7 8 9 10
11 12 13 14 15
16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 32 33 34
Вложенными циклами:
var a, i, j, n :integer; begin write('Введите число N: '); // просим ввести максимальное число readln(n); // считываем максимальное число while (a<n) do // внешний цикл begin i:=0; // сбрасываем счетчик чисел в строке j:=j+1; // увеличиваем ограничитель чисел в строке на 1 while ((i<j) and (a<n)) do // вложенный цикл, работает, пока счетчик чисел не дойдет до ограничителя и пока сплошной счетчик не дойдет до максимального числа begin a:=a+1; // увеличиваем сплошной счетчик на 1 i:= i+1; // увеличиваем счетчик чисел в строке на 1 write(a, ' '); // выводим значение сплошного счетчика на экран в строку через пробел end; // конец вложенного цикла writeln (); // переходим на новую строку end; readln(); end.
Вывод в консоли:
Введите число N: 24
1
2 3
4 5 6
7 8 9 10
11 12 13 14 15
16 17 18 19 20 21
22 23 24
- Log in to post comments
- 502 reads