Напишите программу которая получает с клавиатуры натуральное число и определяет есть ли в его питон

Обновлено: 07.07.2024

Ветвление – это алгоритм, в котором в зависимости от условия выполняется одна из последовательности действий.

Как организовать ветвление на Python?

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

Полное и неполное ветвление

Пример 1: Рассмотрим запись ветвления на примере нахождения максимального значения из 2-х чисел.

m = a if a > b else b

Вариант 1 и 2 используют полную форму ветвления, а можно обойтись неполной формой.

Кроме всего в Python есть функция max (и min) и можно обойтись вовсе без ветвления:

Аналогично можно найти max (min) из 3, 4-х и т.д чисел.

Часто при выполнении какого-то условия нужно выполнить сразу несколько действий.

Пример 1: Обмен значений двух переменных (ячеек памяти):

Пример 2 : Определение максимума и минимума

Заметим , что в Python, в отличие от многих других языков программирования, есть множественное присваивание, которое позволяет выполнить такой обмен значительно проще (пример 1): a, b = b, a

Аналогично можно производить более сложные перестановки, например:

Вложенные условные операторы

Условный оператор находящийся внутри блока «иначе» ( else ) называется вложенным условным оператором . Использование вложенных условных операторов позволяет выбрать один из нескольких (а не только из двух) вариантов.

Пример 1: A возраст Александра, B возраст Владимира. Нужно определить,

кто из них старше или оба одного возраста.

print( "Александр старше" )

print( "Одного возраста" )

print( "Владимир старше" )

Обратите внимание на отступы: слова if , elif и else находятся на одном уровне.

Пример 2:Скидка при 1500 рублей.

В цепочке операторов if-elif-elif- … срабатывает первое истинное условие.

Выводит «Скидка 2%.», хотя условие cost

В сложных условиях используется одна из логических операций: «И» ( and ), «ИЛИ» (or), «НЕ» (not) .

Пример 1: Прием на работу

if age >= 21 and age

В программе на языке Python можно сразу проверить выполнение двойного неравенства:

Пример 2: Сложное условие с операцией «И»

Предположим, что нам надо убедиться, что значение целой переменной a – двухзначное число, которое делится на 5. Для этого нужно, чтобы одновременно выполнились три условия:

1) число не меньше 10;

2) число меньше 100;

3) число делится на 5, то есть остаток от его деления на 5 равен нулю.

В условном операторе эти три простых условия должны быть

связаны с помощью двух операций «И»:

Пример 3: Сложное условие с операцией «ИЛИ»

Узнать, полетит ли самолет в этот день недели. Самолеты летают по вторникам и пятницам

if day == 2 or day == 5:

Пример 4: Сложное условие с операцией «НЕ»

Узнать, есть ли уроки физической культуры в этот день недели. Урок физической культуры есть во вторник, четверг и субботу.

if not( day == 2 or day == 4 or day==6 ):

Если в сложном условии встречается несколько разных операций, они выполняются в следующем порядке:

1) операции в скобках;

В языке Python можно использовать переменные, которые принимают только логические значения – True («истина») или False («ложь»):

В логической переменной можно хранить значение какого-то условия и затем использовать его в условном операторе:

fly = (d = 2) or (d = 5)

if not fly: print( "Нет рейса." )

Практическое занятие №1 «Ветвляющие алгоритмы»

По примерам, которые приведены во введении, решите следующие задания.

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

Практическое занятие №2 «Ветвляющие алгоритмы»

1. Напишите программу, которая получает с клавиатуры целое число и выводит ответ на вопрос: «Верно ли, что было получено трёхзначное число?».

2. Напишите программу, которая определяет, принадлежит ли число x отрезку [ a ; b ]. Все числа вещественные, значения x , a и b вводятся с клавиатуры. Разработайте два варианта программы: с использованием вложенных условных операторов и со сложным условием.

3. *Напишите программу, которая получает трёхзначное число и определяет, верно ли, что все его цифры разные (программа должна вывести ответ «да» или «нет»).

Практическое занятие №3 «Ветвляющие алгоритмы»

Случайные числа – это последовательность чисел, в которой невозможно предсказать следующее число, даже зная все предыдущие.

Функции для работы с псевдослучайными числами в языке Python собраны в модуле random . В библиотеке Python используется один из наиболее совершенных алгоритмов для генерации псевдослучайных чисел – «вихрь Мерсенна», разработанный в 1997 году.

Для получения псевдослучайных чисел в заданном диапазоне мы будем использовать функции из модуля random :

• randint(a,b) – случайное целое число на отрезке [ a ; b ];

• uniform(a,b) – случайное вещественное число на отрезке [ a ; b ].

Для того чтобы записать в переменную n случайное число на отрезке [1; 6] (результат бросания игрального кубика), можно использовать такие команды:

from random import randint

В первой строке из модуля random импортируется (загружается) функция randint , во второй она вызывается для получения случайного числа.

Вещественное случайное число на отрезке [5; 12] получается так:

from random import uniform

x = uniform( 5, 12 )

1. Напишите программу «Спортлото», которая выводит 5 чисел из 36 случайным образом.

3. *Напишите программу, которая размещает случайным образом две ладьи на шахматной доске и определяет, бьют ли эти ладьи друг друга.

Практическое занятие №4 «Ветвляющие алгоритмы»

В языке Python работы со строками используется специальный тип данных str (от английского слова string ), который позволяет

• работать с целой символьной строкой как с единым объектом;

• использовать строки переменной длины.

Символьная строка – это последовательность символов.

Для ввода значения строковой переменной с клавиатуры используется функция input :

Обратите внимание по умолчанию ввод – это ввод символьной переменной!

Чтобы перевести из символьного типа строку из цифр в целочисленный тип достаточно написать n = int(s).

ЭТО УПРОЩАЕТ РЕШЕНИЕ МНОГИХ ЗАДАЧ!

Встроенная функция len определяет длину строки – количество символов в ней. Вот так в переменную n записывается длина строки s :

Строки можно сравнивать между собой так же, как числа.

Например, можно проверить равенство двух строк, определить, какая из двух строк больше, какая – меньше. Если строки состоят только из русских или только из латинских букв, то меньше будет та строка, которая идет раньше в алфавитном списке. Например, слово « паровоз » будет «меньше», чем слово « пароход »: они отличаются в пятой букве и « в » х ».

Сложение и умножение

Оператор «+» используется для «сложения» (объединения, сцепления) строк. Эта операция иногда называется конкатенация . Например:

В язык Python введена операция умножения строки на число: она заменяет многократное сложение. Например,

s = "Уа! Уа! Уа! Уа! Уа! Уа! Уа! Уа! Уа! Уа! "

можно заменить на

Обращение к символам

В Python каждый символ строки имеет свой номер (индекс), причём нумерация, как и во многих других языках программирования (С, C++, Java), всегда начинается с нуля.

hello = " П р и в е т ! "

К любому символу можно обратиться по индексу, записав индекс в квадратных скобках после имени строки:

В языке Python можно указывать отрицательные индексы.

Это значит, что отсчёт ведётся от конца строки, так что символ

hello[-1] – это последний символ строки hello :

индексы –7 –6 –5 –4 –3 –2 –1

hello = " П р и в е т ! "

Чтобы рассчитать «обычную» позицию символа в строке, к отрицательному индексу нужно добавить длину строки. Например,

hello[-1] = hello[len(hello)-1] = hello[6]

Предыдущую программу можно было переписать, используя отрицательные индексы:

Для того, чтобы выделить часть строки ( подстроку ), в языке Python применяется операция получения среза (англ. slicing ).

Подробнее читайте в учебниках и сайтах по Python.

1. Напишите программу, определяющую, какое из двух введенных слов с клавиатуры больше.

2. Напишите программу, которая получает с клавиатуры 5-ое число и определяет какая цифра в числе больше (2-ая или 4-ая). Решить, используя обращение к символам.

3*. « Кто старше». Петя и Ваня записали свою дату рождения (день, месяц, год), но забыли поставить разделительную точку. Определите, кто из мальчиков старше по году рождения, либо они родились в один год.


Основы

Введение

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

I like Python

Напишите программу, которая выводит на экран текст «I***like***Python» (без кавычек).

Управляемый разделитель

Напишите программу, которая считывает строку-разделитель и три строки, а затем выводит указанные строки через разделитель.

Сумма трёх чисел

Напишите программу, которая считывает три целых числа и выводит на экран их сумму. Каждое число записано в отдельной строке.

Следующее и предыдущее

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

Разделяй и властвуй

Напишите программу, которая считывает целое положительное число xx и выводит на экран последовательность чисел x, 2x, 3x, 4x, 5x, разделённых тремя черточками.

Расстояние в метрах

Напишите программу, которая находит полное число метров по заданному числу сантиметров.

Сама неотвратимость

Безумный титан Танос собрал все 6 камней бесконечности и намеревается уничтожить половину населения Вселенной по щелчку пальцев. При этом если население Вселенной является нечетным числом, то титан проявит милосердие и округлит количество выживших в большую сторону. Помогите Мстителям подсчитать количество выживших.

Пересчет временного интервала

Напишите программу для пересчёта величины временного интервала, заданного в минутах, в величину, выраженную в часах и минутах.

Трехзначное число

Напишите программу, в которой рассчитывается сумма и произведение цифр положительного трёхзначного числа.

Четырёхзначное число

Напишите программу для нахождения цифр четырёхзначного числа.

Пароль

При регистрации на сайтах требуется вводить пароль дважды. Это сделано для безопасности, поскольку такой подход уменьшает возможность неверного ввода пароля.

Напишите программу, которая сравнивает пароль и его подтверждение. Если они совпадают, то программа выводит: «Пароль принят», иначе: «Пароль не принят».

Четное или нечетное?

Напишите программу, которая определяет, является число четным или нечетным.

Роскомнадзор

Напишите программу, которая определяет, разрешен пользователю доступ к интернет-ресурсу или нет.

Формат входных данных
На вход программе подаётся целое число — возраст пользователя.

Формат выходных данных
Программа должна вывести текст «Доступ разрешен» если возраст не менее 18, и «Доступ запрещен» в противном случае.

Арифметическая прогрессия

Напишите программу, которая определяет, являются ли три заданных числа (в указанном порядке) последовательными членами арифметической прогрессии.

Наименьшее из четырёх чисел

Напишите программу, которая определяет наименьшее из четырёх чисел.

Только +

Напишите программу, которая считывает три числа и подсчитывает сумму только положительных чисел.

Принадлежность 1

Напишите программу, которая принимает целое число x и определяет, принадлежит ли данное число промежутку от -1 до 17.

Принадлежность 2

Напишите программу, которая принимает целое число x и определяет, принадлежит ли данное число указанным промежуткам: от минус бесконечности до -3 и от 7 до бесконечности.

Принадлежность 3

Напишите программу, которая принимает целое число x и определяет, принадлежит ли данное число указанным промежуткам: от -30 до -2 и от 7 до 25.

Високосный год

Напишите программу, которая определяет, является ли год с данным номером високосным. Если год является високосным, то выведите «YES», иначе выведите «NO». Год является високосным, если его номер кратен 4, но не кратен 100, или если он кратен 400.

Ход ладьи

Даны две различные клетки шахматной доски. Напишите программу, которая определяет, может ли ладья попасть с первой клетки на вторую одним ходом. Программа получает на вход четыре числа от 1 до 8 каждое, задающие номер столбца и номер строки сначала для первой клетки, потом для второй клетки. Программа должна вывести «YES», если из первой клетки ходом ладьи можно попасть во вторую, или «NO» в противном случае.

Ход короля

Даны две различные клетки шахматной доски. Напишите программу, которая определяет, может ли король попасть с первой клетки на вторую одним ходом. Программа получает на вход четыре числа от 1 до 8 каждое, задающие номер столбца и номер строки сначала для первой клетки, потом для второй клетки. Программа должна вывести «YES», если из первой клетки ходом короля можно попасть во вторую, или «NO» в противном случае.

Вид треугольника

Напишите программу, которая принимает три положительных числа и определяет вид треугольника, длины сторон которого равны введенным числам.

Самописный калькулятор

Напишите программу, которая считывает с клавиатуры два целых числа и строку. Если эта строка является обозначением одной из четырёх математических операций (+, -, *, /), то выведите результат применения этой операции к введённым ранее числам, в противном случае выведите «Неверная операция». Если пользователь захочет поделить на ноль, выведите текст «На ноль делить нельзя!».

Цветовой микшер

Красный, синий и желтый называются основными цветами, потому что их нельзя получить путем смешения других цветов. При смешивании двух основных цветов получается вторичный цвет:

  • если смешать красный и синий, то получится фиолетовый;
  • если смешать красный и желтый, то получится оранжевый;
  • если смешать синий и желтый, то получится зеленый.

Полное решение модуля (урока) 7.5 Цикл while: обработка цифр числа на питоне + ответы.

Что покажет приведенный ниже фрагмент кода?
num = 12345
product = 1
while num != 0:
last_digit = num % 10
product = product * last_digit
num = num // 10
print(product)

Что покажет приведенный ниже фрагмент кода?
num = 123456789
total = 0
while num != 0:
last_digit = num % 10
if last_digit > 4:
total += 1
num = num // 10
print(total)

Обратный порядок 1

Дано натуральное число. Напишите программу, которая выводит его цифры в столбик в обратном порядке.

Формат входных данных
На вход программе подается одно натуральное число.

Формат выходных данных
Программа должна вывести цифры введенного числа в столбик в обратном порядке.

Обратный порядок 2

Дано натуральное число. Напишите программу, которая меняет порядок цифр числа на обратный.

Формат входных данных
На вход программе подается одно натуральное число.

Формат выходных данных
Программа должна вывести число записанное в обратном порядке.

max и min

Дано натуральное число n, \, (n \ge 10)n,(n≥10). Напишите программу, которая определяет его максимальную и минимальную цифры.

Формат входных данных
На вход программе подается одно натуральное число.

Формат выходных данных
Программа должна вывести максимальную и минимальную цифры введенного числа (с поясняющей надписью).

Все вместе

Дано натуральное число. Напишите программу, которая вычисляет:
сумму его цифр;
количество цифр в нем;
произведение его цифр;
среднее арифметическое его цифр;
его первую цифру;
сумму его первой и последней цифры.

Формат входных данных
На вход программе подается одно натуральное число.

Формат выходных данных
Программа должна вывести значения указанных величин в указанном порядке.

Вторая цифра

Дано натуральное число n \, (n > 9)n(n>9). Напишите программу, которая определяет его вторую (с начала) цифру.

Формат входных данных
На вход программе подается одно натуральное число, состоящее как минимум из двух цифр.

Формат выходных данных
Программа должна вывести его вторую (с начала) цифру.

Одинаковые цифры

Дано натуральное число. Напишите программу, которая определяет, состоит ли указанное число из одинаковых цифр.

Формат входных данных
На вход программе подается одно натуральное число.

Формат выходных данных
Программа должна вывести «YES» если число состоит из одинаковых цифр и «NO» в противном случае.

Упорядоченные цифры 🌶️

Дано натуральное число. Напишите программу, которая определяет, является ли последовательность его цифр при просмотре справа налево упорядоченной по неубыванию.

Формат входных данных
На вход программе подается одно натуральное число.

Формат выходных данных
Программа должна вывести «YES» если последовательность его цифр при просмотре справа налево является упорядоченной по неубыванию и «NO» в противном случае.

Читайте также: