Оглавление:
Задача — Вывести ряд чисел в диапазоне с шагом
— программирование на Pascal, Си, Кумир, Basic-256, Python
Вывести на экран ряд натуральных чисел от минимума до максимума с шагом. Например, если минимум 10, максимум 35, шаг 5, то вывод должен быть таким: 10 15 20 25 30 35. Минимум, максимум и шаг указываются пользователем (считываются с клавиатуры).
Для решения данной задачи лучше всего использовать цикл со счетчиком (for
), если в нем можно использовать шаг. Такие циклы есть в языках Basic, КуМир и Си. В Python for
является циклом перебора, а не циклом со счетчиком, однако данная задача легко решается с помощью for
, если использовать функцию range()
. В Pascal цикл for
не предусматривает использование шага, поэтому задачу проще решить с помощью иных циклов.
Алгоритм же решения очень прост: пока минимум не достигнет максимума выводить его на экран и затем увеличивать на значение шага.
Pascal
var a,b,c: word;
begin
readln(a);
readln(b);
readln(c);
while a<=b do begin
write(a,’ ‘);
a := a+c;
end;
writeln;
end. 6
162
16
6 22 38 54 70 86 102 118 134 150
Поскольку в Паскале нет возможности указывать шаг в цикле for
и в теле цикла нельзя менять переменную-счетчик, то проще решить данную задачу с помощью цикла while
.
Язык Си
#include <stdio.h>
main() {
int a,b,c;
scanf(«%d%d%d»,&a,&b,&c);
for (a;a<=b;a+=c) printf(«%d «, a);
printf(«n»);
} 300
800
45
300 345 390 435 480 525 570 615 660 705 750 795
Python
a = int(input())
b = int(input())
c = int(input())
for i in range(a,b+1,c):
print(i, end=’ ‘)
print() 7
177
17
7 24 41 58 75 92 109 126 143 160 177
Функция range(a,b)
генерирует числа от a до b (не включая b, поэтому в программе ниже прибавляется 1). Если указан третий аргумент, то он играет роль шага.
КуМир
алг диапазон
нач
цел a,b,c
ввод a,b,c
нц пока a <= b
вывод a, » »
a := a + c
кц
кон 40 89 4
40 44 48 52 56 60 64 68 72 76 80 84 88
Basic-256
input a
input b
input c
for i = a to b step c
print i+» «;
next i 3
333
33
3 36 69 102 135 168 201 234 267 300 333