Цикл в любом языке программирования - это многократное выполнение одного и то же действия. Цикл for проходится по данной последовательности элементов. Он состоит из двух компонент: переменной (переменных) цикла и итерируемой (перебираемой) последовательности. Приведу пример:
for i in 'one', 'two', 'three':
print(i)
# one
# two
# three
Приведу еще несколько примеров:
for i in '1', 'hello', 2, 1990, True, False:
print(i)
for j in 'orange', 'red', 'purple':
print(j)
for k in 'first', 'last':
print(k)
Теперь пришло время познакомиться с встроенной в Python функцией range(). "range" переводится как "диапазон". Она может принимать один, два или три аргумента. Если задан только один, то генерируются числа от 0 до указанного числа, не включая его. Если заданы два, то числа генерируются от первого до второго, не включая его. Если заданы три, то третье число – это шаг. Рассмотрим случай с одним аргументом:
for number in range(5):
print(number)
for number in 0, 1, 2, 3, 4:
print(number)
Напечатаются числа от 0 до 4. Это связано с тем, что функция range с одним аргументом генерирует диапазон от 0 до n-1, где n - это переданный аргумент.
Передадим в функцию два аргумента: 5 и 10. В этом случае range cгенерирует последовательность чисел от 5 до 9.
for el in range(5,10,2):
print(el)
Если передать в range три аргумента: 5, 10, 2, то мы получим последовательность от 5 до 10 с шагом в 2
for el in range(5,10):
print(el)
С помошью цикла for мы можем перебрать любую последовательность, например, строку:
for letter in 'hello':
print(letter)
for l in 'python':
print(l)
Любая последовательность имеет длину, это означает, что мы можем ее посчитать
1. Посчитать сумму чисел от 0 до number
number = int(input())
summa = 0
for i in range(number+1):
# summa = summa + i
summa += i
print(summa)
2. Посчитать сумму четных чисел от 0 до number
number = int(input())
summa = 0
for i in range(number+1):
if i % 2 == 0:
# summa = summa + i
summa += i
print(summa)
3. Посчитать произведение чисел от 1 до number
number = int(input())
multi = 1
for i in range(1, number+1):
multi *= i
print(multi)
1. Вывести числа от 0 до 10.
2. Вывести числа от 0 до n, где n - это случайное число или число, введенное с клавиатуры
3. Вывести нечетные числа в диапазона от 0 до n (диапазон - это последовательность чисел от 0 до n)
4. Вывести четные числа из диапазона от 0 до n.
5. Вывести числа, делящиеся на три без остатка, в диапазоне от 0 до n.
6. Вывести числа, делящиеся на три или на семь без остатка, в диапазоне от 0 до n.
7. Найти сумму всех чисел от 1 до n.
7. Найти сумму четных чисел от 1 до n.
8. Даны два целых числа a и b a < b. Найти сумму всех целых чисел от a до b включительно.
9. Найти сумму чисел от 1 до n, делящихся на 3 .
10. Дано целое число n. Найти сумму
11. Дано целое число n. Найти сумму 1 + 2 + 4 + 8 + 16 + ... + 2**n
где 2**n - это 2*2*2*...*2 раз. Таким образом, 2**4 = 2*2*2*2. Операция ** называется операцией возведения в степень.
12. Дано целое число n. Найти сумму: 1.1 + 1.2 + 1.3 + ... + (1 + 0.1*n)
13. Дано целое число n. Найти значение выражения 1.1 − 1.2 + 1.3 − ... (N слагаемых, знаки чередуются).
14. Дано целое число n. Найти квадрат данного числа, используя для его вычисления следующую формулу: n**2 = 1 + 3 + 5 + ... + (2*N − 1) После добавления к сумме каждого слагаемого выводить текущее значение суммы
15. Дано вещественное число A и целое число N (> 0). Найти A в степени N: A**N = A * A * ... * A (числа A перемножаются N раз). Операцию ** не использовать.
16. По данному натуральному n ≤ 30 выведите лесенку из n ступенек, i-я ступенька состоит из чисел от 1 до i без пробелов. Посмотрите статью про ввод и вывод данных.
17. Дано целое число n. Найти сумму 1**1 + 2**2 + ... + n**n.
18. Даны целые положительные числа A и B (A < B). Вывести все целые числа от A до B включительно; при этом каждое число должно выводиться столько раз, каково его значение (например, число 3 выводится 3 раза).