Цикл с предусловием WHILE

  • docx
  • 03.05.2020
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала 175. Цикл с предусловием WHILE.docx

Урок № 3

Тема урока: Цикл с предусловием WHILE.

Цель урока:

1) обучающий аспект: познакомить учащихся с циклом с предусловием и научить применять его при составлении программ на языке программирования Python.

2) развивающий аспект: развитие мыслительной деятельности, речи, алгоритмического стиля мышления.

3) воспитательный аспект: воспитание эмоционально-положительной направленности на практическую деятельность, интереса к информатике, личной ответственности за результаты своей работы.

Тип урока: усвоение новых знаний.

Вид урока: урок-презентация, урок-лабораторное занятие.

Ресурсы: компьютеры, проектор, среда программирования Python IDLE, презентация.

Межпредметные связи: математика.

Основные понятия: цикл с предусловием.

Ход урока (дидактическая структура урока)

1. Организационный этап (2 мин)

УУД:

- Личностные

- Коммуникативные

Приветствие, перекличка.

 

2. Проверка и разбор домашнего задания (10 мин)

 

УУД:

- Личностные

- Познавательные

- Регулятивные

- Знаково-символические

- Коммуникативные

Заданное на прошлом уроке домашнее задание:

Написать программы:

1)      Дано целое число. Если оно является положительным, то умножить его на 3; в противном случае вычесть из него 100. Вывести полученное число.

2)      Определить, является ли число а делителем числа b.

3)      Определить возможность существования треугольника по сторонам. (Треугольник существует только тогда, когда сумма любых двух его сторон больше третьей).

 

3. Теоретическая часть (10 мин)

 

УУД:

- Личностные

- Познавательные

- Знаково-символические

- Коммуникативные

Откройте тетради и запишите тему урока: «Цикл WHILE (цикл с предусловием)».

На прошлом уроке мы изучили конструкцию ветвления или «условный оператор if». Сегодня мы изучим конструкцию «цикл WHILE» или «цикл с предусловием» и попробуем написать первые игры.

WHILE – «пока» в переводе с английского

Посмотрим на пример цикла WHILE:

n=0

while n<3:

    n=n+1

Если объяснять русским языком, цикл WHILE означает следующее:

Пока <выполняется условие>: делать какие-то действия.

«Пока n меньше 3, прибавлять к n единицу»

Цикл повторяется, пока условие истинно, если же нет, цикл заканчивается.

Скажите, чему будет равно n после завершения цикла? (Ответ: 3)

 Для того, чтобы увидеть, что происходит в теле цикла, создадим и запустим следующую программу:

n=0

while n<5:

    n=n+1

    print(n)

Программа выведет:

1

2

3

4

5

На первом шаге цикла n=1, на втором n=2 и так далее. Когда n станет равным пяти и программа выведет число 5, снова будет проверяться условие. Но условие не будет выполняться, так как 5<5  - не верно. И произойдёт выход из цикла.

Запись в тетрадь:

while – «пока» в переводе с английского

Общая форма записи:

while <условие>:

    <действие 1>

    <действие 2>

    и т.д.

Пример:

n=0

while n<5:

    n=n+1

    print(n)

Бесконечный цикл.

while True:

    print("У попа была собака, он её любил.")

    print("Она съела кусок мяса, он её убил,")

    print("В землю закопал и на камне написал:")

Пишем и запускаем эту программу на компьютере, чтобы увидеть бесконечный цикл в действии.

Запись в тетрадь:

Бесконечный цикл:

while True:

    <действия>

Досрочный выход из цикла

break

Пример:

import random

while True:

    a=random.randint(1,10)

    print(a)

    if a==7:

        break

Пишем и запускаем эту программу на компьютере, чтобы увидеть оператор break в действии.

Что происходит в программе?

 

4. Работа на компьютерах (20 мин)

 

УУД:

- Личностные

- Регулятивные

- Познавательные

- Знаково-символические

- Коммуникативные

Учащиеся пишут программы на компьютерах под руководством учителя.

Задачи:

1)      С помощью цикла while вывести любую фразу 7 раз.

2)      Написать программу, которая получает два целых числа A и B (0 < A < B) и выводит все натуральные числа в интервале от A до B. 

3)      С помощью бесконечного цикла реализовать игру «Купи слона». Программа должна выводить фразу «Купи слона!», получать ответ пользователя и выводить: «Все говорят “фраза, введённая пользователем”. А ты купи слона!» Затем программа получает новый ответ от пользователя и так до бесконечности.

4)      С помощью бесконечного цикла и оператора break реализовать игру «Угадай число». Программа генерирует случайное число в диапазоне от 1 до 7 и говорит пользователю: «Угадай число от 1 до 7!». В бесконечном цикле программа считывает ответы пользователя и подсказывает ему «больше!» или «меньше!», а в случае правильного ответа цикл завершается, и выводятся сердечные поздравления с победой.

5)      Доработать программу «Угадай число» так, чтобы она не заканчивалась, то есть, чтобы после угадывания одного числа, начиналось угадывание следующего. Увеличить диапазон с 7 до 15 и ввести ограничение на количество попыток (например, 3 попытки). Если пользователь не справился за 3 попытки, вывести «GAME OVER».

Выставление оценок за работу на уроке.

Дополнительные материалы:

Программа «Угадай число» вариант-1:

import random

    a=random.randint(1,7)

    print("Угадай число от 1 до 7")

    while True:

        b=int(input())

        if b==a:

            print("Верно!")

            break

        elif b<a:

            print("Больше!")

        else:

            print("Меньше!")

Программа «Угадай число» вариант-2:

import random

while True:

    a=random.randint(1,15)

    print("Угадай число от 1 до 15")

    k=0

    while True:

        k=k+1

        if k>3:

            print("GAME OVER")

            break

        b=int(input())

        if b==a:

            print("Пусть другие говорят:")

            print("Главное – участие.")

            print("Лишь победа дарит нам")

            print("Наслажденье, счастье!")

            print("Вас с победой поздравляем!")

            print("От души мы вам желаем")

            print("Без намёков и прикрас")

            print("Побеждать ещё 100 раз!")

            break

        elif b<a:

            print("Больше!")

        else:

            print("Меньше!")

 

5. Домашнее задание (3 мин)

 

УУД:

- Личностные

- Коммуникативные

Написать программы:

1)      С помощью цикла while вывести повторяющуюся строчку из любой песни 25 раз.

2)      Написать программу, которая получает два целых числа A и B (0 < A < B) и выводит квадраты всех натуральных чисел в интервале от A до B. 

3)      Дано целое число N (>0). Используя операции деления нацело и взятия остатка от деления, вывести все его цифры, начиная с самой правой.

4)      ** Напишите программу, которая бы «подбрасывала» условную монету 100 раз и сообщала, сколько раз выпал орел, а сколько — решка.