Полное решение модуля (урока) 7.5 Цикл while: обработка цифр числа на питоне + ответы.
Что покажет приведенный ниже фрагмент кода? num = 12345 product = 1 while num != 0: last_digit = num % 10 product = product * last_digit num = num // 10 print(product)
120
Что покажет приведенный ниже фрагмент кода? num = 123456789 total = 0 while num != 0: last_digit = num % 10 if last_digit > 4: total += 1 num = num // 10 print(total)
5
Обратный порядок 1
Дано натуральное число. Напишите программу, которая выводит его цифры в столбик в обратном порядке.
# Получаем целое число и сохраняем его в переменной 'n'.
n = int(input())
# Начинаем цикл, который выполняется до тех пор, пока 'n' не станет равным нулю (или false).
while n:
i = n % 10 # Получаем последнюю цифру числа 'n' и сохраняем её в переменной 'i'.
n = n // 10 # Удаляем последнюю цифру из числа 'n', чтобы обработать следующую цифру на следующей итерации.
print(i) # Выводим последнюю цифру 'i' на экран.
Обратный порядок 2
Дано натуральное число. Напишите программу, которая меняет порядок цифр числа на обратный.
# Получаем ввод числа
n = int(input())
# Пока n не равно 0, цикл будет выполняться
while n != 0:
# Получаем последнюю цифру числа n
s = n % 10
# Выводим последнюю цифру на экран без перевода строки
print(s, end='')
# Удаляем последнюю цифру из числа n
n = n // 10
max и min
Дано натуральное число n, (n≥10). Напишите программу, которая определяет его максимальную и минимальную цифры.
# Получаем ввод числа
n = int(input())
# Инициализируем переменные для максимальной и минимальной цифры
maxx = 0 # В начале считаем максимальной цифрой 0
minn = 9 # В начале считаем минимальной цифрой 9
# Пока n не равна 0, выполняем цикл
while n != 0:
# Получаем последнюю цифру числа n
last_digit = n % 10
# Сравниваем последнюю цифру с текущей максимальной и минимальной
if last_digit > maxx:
maxx = last_digit # Если она больше текущей максимальной, обновляем максимальную
if last_digit < minn:
minn = last_digit # Если она меньше текущей минимальной, обновляем минимальную
# Убираем последнюю цифру из числа n
n = n // 10
# Выводим максимальную и минимальную цифры
print('Максимальная цифра равна', maxx)
print('Минимальная цифра равна', minn)
Все вместе
Дано натуральное число. Напишите программу, которая вычисляет: сумму его цифр; количество цифр в нем; произведение его цифр; среднее арифметическое его цифр; его первую цифру; сумму его первой и последней цифры.
# Получаем ввод числа
inputn = int(input())
# Создаем переменную n для хранения исходного числа
n = inputn
# Инициализируем переменные для суммы, произведения, и количества чисел
total = 0
product = 1
count = 0
# Пока inputn не равен 0, выполняем цикл
while inputn != 0:
# Получаем последнюю цифру числа inputn и выполняем операции
total += inputn % 10 # Суммируем цифры
product *= inputn % 10 # Вычисляем произведение цифр
count += 1 # Увеличиваем счетчик чисел
inputn //= 10 # Удаляем последнюю цифру из числа
# Выводим результаты
print(total) # сумма чисел
print(count) # количество чисел
print(product) # произведение чисел
print(total/count) # среднее арифмитическое всех чисел
print(n//10 ** (count-1)) # первое число
print(n//10 ** (count-1) + n%10) # произведение первого и последнего чисел
Вторая цифра
Дано натуральное число n(n > 9). Напишите программу, которая определяет его вторую (с начала) цифру.
# Получаем ввод числа
n = int(input())
# Переменная для хранения второй с конца цифры
second = 0
# Пока n больше 9 (то есть в числе есть хотя бы две цифры), выполняем цикл
while n > 9:
second = n % 10 # Находим последнюю цифру и перезаписываем её в переменную second
n = n // 10 # Убираем последнюю цифру из числа
# После окончания цикла в переменной second будет храниться вторая с конца цифра
print(second)
Одинаковые цифры
Дано натуральное число. Напишите программу, которая определяет, состоит ли указанное число из одинаковых цифр.
num = int(input()) # ввод числа
flag = True # флаг считаем что все цифры равны
while num > 9: # пока число 2значное выполняем цикл
last = num % 10 # вычисляем последнюю цифру
num = num // 10 # удаляем последнюю цифру и запускаем цикл сначала
sec = num % 10 # вычисляем предпоследнюю цифру
if last != sec: # условие, если последняя и предпоследняя
flag = False # цифры не равны, меняем флаг
if flag: # если флаг true
print('YES') # значит цифры равны
else:
print('NO') # иначе различны
Упорядоченные цифры ?️
Дано натуральное число. Напишите программу, которая определяет, является ли последовательность его цифр при просмотре справа налево упорядоченной по неубыванию.
# Эту задачу решил иначе чем предыдущую что бы показать как еще можно
num = int(input())
teg = 'YES' # используем тег и считаем что последовательность упорядочена
a = num % 10 # находим послееднюю цифру числа
while num: # запускаем цикл
if a > num % 10: # условие если предыдущая цифра больше последующей
teg = 'NO' # то присваиваем тег NO, и уже нет смысла записывать в a последнию цифру
else: # иначе
a = num % 10 # присваиваем последнюю цифру - переменной
num //= 10 # удаляем последнюю цифру числа
print(teg)
Дополнительные задачи не по теме
Будьте внимательны. В данном разделе задачи не относящиеся к уроку 7.5 «Поколение python: курс для начинающих»
составьте программу, которая вычисляет сумму цифр числа. в ответе укажите последовательность номеров команд без пробелов и разделителей.
n = int(input()) # получаем целое число
sum = 0 # Инициализируем переменную sum
while n > 0: # Цикл который будет выполняться, пока n больше 0.
k = n % 10 # Вычисляем последнюю цифру числа n
sum = sum + k # Добавляем значение цифры k к общей сумме sum.
n = n // 10 # Убираем последнюю цифру числа n
print(sum) # Выводим общую сумму цифр числа
Если у вас не отображается решение последних задач, значит у вас включен блокировщик рекламы который вырезает эти ответы
Понравилась статья? Поделиться с друзьями:
Подписаться
57 комментариев
Новые
СтарыеПопулярные
Межтекстовые Отзывы
Посмотреть все комментарии
Мансур
28 дней назад
Дано число A Ваша программа должна прочитать его и вывести обратно на экран.
Входные данные В единственной строке дано число A, не превосходящее 10.
Выходные данные Выведите число A
Алексей
2 месяцев назад
Коллеги по несчастью, мое почтение! Хотел пойти по легкому пути, но хорошо что задачу переделали, и теперь 7.5,10 не работает. если кому поможет n = int(input()) x = n % 10 # находим последнюю цифру a_ = True # добавили тег для проверки условия в цикле while n != 0 and a_ == True: # запускаем цикл пока n не равно 0 и если a == True ln = n % 10 # Находим последнюю цифру числа в цикле if ln > x: # добавляем проверку по циклу если ln больше последней цифры x = ln # тогда x становиться ln по циклу if ln < x: # если ln по циклу меньше чем x a_ = False # то тогда a становится ложью n = n // 10 # убираем последнюю цифру по циклу print(f’YES’ if a_ == True else «NO») # Выводим ‘YES’ если a == True, и ‘NO’ если обратное
Миша 👉
7 месяцев назад
из последней задачи узнал что есть //= вместо n = n // 10, буду использовать
Егор
8 месяцев назад
А смысл какой решать задачу не по теме указано цикл while флаги проходились в цикле for
Сергей Кондулуков
8 месяцев назад
Спасибо большое сломался на этой задаче. Вы мне здорово помогли
Роман
9 месяцев назад
Здравствуйте, сочувствую админу) сколько глупых просьб и вопросов)
Наталья
1 год назад
Дано натуральное число. Напишите программу, которая определяет, состоит ли указанное число из одинаковых цифр. Решила так, приняли: a = str(input()) if max(a) == min(a): print(‘YES’) else: print(‘NO’)
Мария
1 год назад
Пятое задание решается при помощи while
n, x, m = int(input()), -1, 10 while n: x = max(x, n % 10) m = min(m, n % 10) n //= 10 print(‘Максимальная цифра равна’, x) print(‘Минимальная цифра равна’, m)
Дмитрий
1 год назад
Разобрался первой строкой надо вызвать: from numpy import prod
Дмитрий
1 год назад
В решении задачи «Все вместе» закралась ошибка NameError: name ‘prod’ is not defined
Решил тут прикрепить ответы на 7.6. обучения пропускаете, поэтому по пунктам: 1)0*1*2*3*4*5*6*7* 2)100*80*60* 3)9*8*7*6*5*4*3*1*0* 4)25 5)105 6(программа)n, i = int(input()), 2 while i * i <= n: if n % i == 0: print(i) exit() i += 1 print(n) 7) пока что не знаю. 8)да 9)нет 10)да
Дано число
A Ваша программа должна прочитать его и вывести обратно на экран.
Входные данные
В единственной строке дано число
A, не превосходящее 10.
Выходные данные
Выведите число
A
Коллеги по несчастью, мое почтение!
Хотел пойти по легкому пути, но хорошо что задачу переделали, и теперь 7.5,10 не работает.
если кому поможет
n = int(input())
x = n % 10 # находим последнюю цифру
a_ = True # добавили тег для проверки условия в цикле
while n != 0 and a_ == True: # запускаем цикл пока n не равно 0 и если a == True
ln = n % 10 # Находим последнюю цифру числа в цикле
if ln > x: # добавляем проверку по циклу если ln больше последней цифры
x = ln # тогда x становиться ln по циклу
if ln < x: # если ln по циклу меньше чем x
a_ = False # то тогда a становится ложью
n = n // 10 # убираем последнюю цифру по циклу
print(f’YES’ if a_ == True else «NO») # Выводим ‘YES’ если a == True, и ‘NO’ если обратное
из последней задачи узнал что есть //= вместо n = n // 10, буду использовать
А смысл какой решать задачу не по теме указано цикл while флаги проходились в цикле for
Спасибо большое сломался на этой задаче. Вы мне здорово помогли
Здравствуйте, сочувствую админу) сколько глупых просьб и вопросов)
Дано натуральное число. Напишите программу, которая определяет, состоит ли указанное число из одинаковых цифр.
Решила так, приняли:
a = str(input())
if max(a) == min(a):
print(‘YES’)
else:
print(‘NO’)
Пятое задание решается при помощи while
n, x, m = int(input()), -1, 10
while n:
x = max(x, n % 10)
m = min(m, n % 10)
n //= 10
print(‘Максимальная цифра равна’, x)
print(‘Минимальная цифра равна’, m)
Разобрался первой строкой надо вызвать:
from numpy import prod
В решении задачи «Все вместе» закралась ошибка
NameError: name ‘prod’ is not defined
А почему я не могу найти 7. 7 поиск ошибок?
Здравствуйте. https://zazloo.ru/7-7-pokolenie-python/
Автор, очень Вам благодарна, когда опубликуете последующие модули?
Доброе утро, скоро!
Автор жду продолжения примерно когда будет готова
Доброе утро! Выложил два следующих модуля уже.
На вход программе подается строка. Напишите программу, которая подсчитывает количество буквенных символов в нижнем регистре.
Формат входных данных
На вход программе подается строка.
Формат выходных данных
Программа должна вывести количество буквенных символов в нижнем регистре.
Будет ли продолжение: 7.6, 7.7?
Здравствуйте, будет.
блин где 7.6?
Скоро опубликую
когда выйдет продолжение 7.6 7.7 7.8 7.9 8?))) очень надо)))
Как только, так сразу)
А дальше есть ответы?
Автор, помогаешь просто на все 100!
Спасибо! Стараюсь выпускать.
Прошло 13 дней, а новых модулей нет

скоро выложу следующее..
Автор, когда будет продолжение 7.7 ?
В ближайшее время.
Хорошо, ждём.
С добрым утром! Следующие два модуля (урока) уже опубликованы на сайте.
Аффтор, поторопись, ответы нужны, задание встало без подсказки не могуразобрать

Все будет, не переживайте
продолжения не ждать?
Вот вот итоговая для страховки нужна будет)
почему же? ждать)
где прода? 7.6
скоро будет
Автор, где прода? 7.6. решается за день.
знаю, решил уже, выложу
Автор, когда будет следующий модуль?
В ближайшем времени.
когда будет продолжение?
Скоро опубликую!
Решил тут прикрепить ответы на 7.6. обучения пропускаете, поэтому по пунктам:
1)0*1*2*3*4*5*6*7*
2)100*80*60*
3)9*8*7*6*5*4*3*1*0*
4)25
5)105
6(программа)n, i = int(input()), 2
while i * i <= n:
if n % i == 0:
print(i)
exit()
i += 1
print(n)
7) пока что не знаю.
8)да
9)нет
10)да
Спасибо, я сам уже решил, времени опубликовать нет)
Здраствуйте, извините пожалуйста а можно пожалуйста к апрелю. Очень нужно??
Добрый вечер, когда будет продолжение?
Автор, когда опубликуете решение следующих модулей?)
Добрый вечер, скоро!
Автор, где прода? 7.6. решается за день.
Привет, продолжение будет. Завтра скорее всего.
Простите ,но когда же будет продолжение модулей 7.6; 7.7 и т.д. ?
Скоро, точно будет, пока что слишком занят.
срочно нужны ответы на модули, просим всем классом по информатике. Пожалуйста, можно почаще выпускать ответы?
Могу, выпущу, не волнуйтесь!
задача все вместе не правильно решена помогите
спасибо, жду продолжению, очень благодарна
