Python Урок 2. Работа с циклами

На уроке рассматривается алгоритм работы с различными видами циклов на языке Питон (Python): цикл с предусловием While и цикл со счетчиком For. Объясняется возможность генерации в Python случайных чисел

Цикл WHILE

Цикл while — цикл с предусловием. Пример использования:

i = 5
while i < 15:
   print(i)
   i = i + 2  # вывод 5 7 9 11 13

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

Однострочный комментарий начинается с #.
Блочный комментарий можно использовать так (строго говоря, блочного комментария нет в Питоне):

#Однострочные Питон комментарии 
 
#  Это
#      блочный или многострочный
#          комментарий
'''
тоже блочный 
         комментарий
'''

Операторы break и continue

цикл while на питоне

Оператор break — выход из цикла
Оператор continue — выход из текущей итерации цикла

Задание: Определить, что выведет программа:

a=0
while a!=10:
    a=a+1
    if a==5:
        continue
    print (a)
    if a==7:
        break
print ("всё!")

Задание Python 2_1: Последовательно вводятся ненулевые числа. Определить сумму положительных и сумму отрицательных чисел. Закончить ввод чисел при вводе 0. Для перевода из строки в целое число, использовать функцию int().

Задание Python 2_2: При помощи цикла распечатать ряд Фибоначчи: 1 1 2 3 5 8 13 21.

Задание Python 2_3: Запрашиваются 10 чисел (целые значения от 0 до 1000). Опишите алгоритм, позволяющий найти и вывести минимальное значение среди введенных чисел, которые имеют чётное значение и не делятся на три.

Цикл FOR

В Python цикл for имеет такой синтаксис:
оператор цикла For на Питоне

Пример:
Вывести степени двойки с 1-й по 10-ю.

✍ Решение:
 

for x in range(1,11): 
  print ( 2**x )
 
# 2 4 8 16 ... 1024

Шаг счетчика цикла можно менять:

for x in range(1,11,2): 
  print ( 2**x )

Еще пример работы:

for i in 'hello world':
     if i == 'o':
         continue
     print(i, end='')
 
# hell  wrld

Пример использования break:

for i in 'hello world':
     if i == 'l':
         break
     print(i, end='')
 
# he

Задание: Определить, что выведет программа:

a=0
n=10
for i in range(1,n+1,2):
    a=a+1
    if a==5:
        continue
    print (a)
    if a==7:
        break
print ("всё!")

Задание Python 2_3: Составить программу для вычисления среднего арифметического N произвольных вводимых чисел.

Случайное число

В Python случайное число задается с помощью двух функций:

  • random() – случайное вещественное из полуинтервала [0,1) ;
  • randint(a,b) – случайное целое из отрезка [a,b].

Но для использования функция необходимо предварительно подключить библиотеку:

# подключение библиотеки:
from random import randint
# получение целого случайного числа в диапазоне от 1 до 10
x = randint(1,11)
 
# получение вещественного случайного числа в полуинтервале от 5 до 11
from random import random
x = 6*random() + 5

Задание Python 2_4: Исправить предыдущее задание (2_3) для работы со случайными числами.

Задание Python 2_5:
Найдите все трёхзначные и четырёхзначные числа Армстронга.

Число Армстронга. Числом Армстронга считается натуральное число, сумма цифр которого, возведенных в N-ную степень (N – количество цифр в числе) равна самому числу.
Например, 153 = 13 + 53 + 33.


Задание Python 2_6:
Напишите программу, которая запрашивает натуральное число N и выводит на экран все автоморфные числа, не превосходящие N.

Автоморфным называется натуральное число, если оно равно последним цифрам своего квадрата. Например, 252 = 625.

Цикл for in при работе с кортежами (тип данных)

Пример: Вывести на экран цвета радуги с их порядковыми номерами:

1-й цвет радуги - это красный
...


✍ Решение:
 

i = 1
for color in 'красный', 'оранжевый', 'желтый', 'зеленый', 'голубой', 'синий', 'фиолетовый':
    print(i,'-й цвет радуги - это ', color)
    i += 1

  
Другой вариант работы со счетчиком цикла:

for i in 1,2,3,'one','two','three':
                print(i)
При первых трех итерациях цикла переменная i будет принимать значение типа int, при последующих трех — типа str.

Задание Python 2_7: Распечатывать дни недели с их порядковыми номерами. Кроме того, рядом выводить выходной ли это день или рабочий. Использовать кортеж.

1-й день недели - понедельник, рабочий день
...

Поделитесь уроком с коллегами и друзьями:
3 комментария

    FinkRA

    а кто-то знает как без работы со списками решить первое задание 2_3 – перебор и сравнение 10 числе?

    АДмин, проверь нумерацию заданий

      admin

      здесь имеется в виду, вводим каждое число в цикле. БЕЗ использования списков

        FinkRA

        я нашел решение чуть позже
        оно есть 😉

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*
*


Вставить формулу как
Блок
Строка
Дополнительные настройки
Цвет формулы
Цвет текста
#333333
Используйте LaTeX для набора формулы
Предпросмотр
\({}\)
Формула не набрана
Вставить