Скачиваний:
2
Добавлен:
06.05.2023
Размер:
425.14 Кб
Скачать

Задача №4. Условие:

Решить задачу при помощи совместного использования цикла while и if/else. Напишите программу, которая в последовательности натуральных чисел определяет количество двузначных четных чисел, не равных 10. Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не входит в последовательность). Количество чисел не превышает 1 000. Введённые числа не превышают 30 000. Программа должна вывести одно число: количество двузначных четных чисел, не равных 10.

Решение:

Для решения данной задачи будет использоваться цикл while, краткие теоретические сведения:

Цикл while

Цикл while является циклическим оператором и применяется для решения широкого круга задач, таких как выполнять действия несколько раз или пока истинно условие цикла, или до наступления какого - либо события, например, до ввода с клавиатуры значения.

Оператор имеет следующий формат:

while <условие > : действия_1 приращение переменной цикла

[else: действия_2]

Правила чтения оператора while:

Пока (while) истинно условие, необходимо выполнять (:) действия_1 внутри цикла, а также изменять переменную цикла, иначе, если условие ложно (else:), то необходимо выполнить (:) действия_2.

Алгоритм:

Создаться переменные - счетчики: count1 – количество двузначных четных натуральных чисел и count2 – количество элементов последовательности. С помощью функции input(), вводится переменная number, первое число последовательности натуральных чисел, необходимое условия для запуска первого цикла while. Далее в теле цикла while происходит наращивание счетчика count2 на единицу, он необходим для подсчёта количества элементов последовательности (не более 1000), при превышении этого значения цикл прерывается присваиванием переменной number значение 0. С помощью оператора if обрабатывается первое введенное число последовательности, если оно удовлетворят условие: (number > 10) и (number < 100) и (number % 2 = 0, условие четности), значение счетчика count1 увеличивается на единицу. Далее с помощью функции input() на экран выводится запрос на ввод очередного числа последовательности. Условием прекращения цикла станет ввод числа ноль или превышение количества вводимых чисел последовательности, более 1000 элементов. По завершению цикла на экран выводиться значение переменной count1 - количество двузначных четных чисел не равных 10.

Блок схема алгоритма:

Листинг программы:

print("""Практика.Вариант_2.Задание_4.

Определить количество двузначных натуральных

четных чисел не равных 10.""")

count1 = 0 # Переменная-счетчик количества чисел двузначных четных чисел

count2 = 0 # Переменная-счетчик количества элементов последовательности

number = int(input("Введите натуральное число, не более 30000: ")) # Ввод первого числа последовательности

while number!= 0: # Условие цикла, ноль завешнение обработки последовательности

count2+=1 # Наращивания счетчика количества элементов последовательности

if (number > 10) and (number < 100) and (number % 2 == 0): # Условие наращивания счетчика чисел

count1+= 1 # Наращивания счетчика двузначных четных чисел

number = int(input("Введите натуральное число, не более 30000: "))#ввод очередного числа последовательности

if count2 > 1000: # Условие превышение количества элементов последовательности

number = 0 # Условие завершения цикла при превышении количества элементов последовательности

print("Последовательность более 1000") # Вывод сообщение о превышении количества элементов последовательности

print("Количество двузначных четных чисел, не равных 10: ",count1) # Вывод результата на экран

Соседние файлы в предмете Объектно ориентированное программирование