Решение модуля 7.5 из курса «Поколение python: курс для начинающих»

Полное решение модуля (урока) 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

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

Решение модуля 7.5 из курса "Поколение python: курс для начинающих"
# Получаем целое число и сохраняем его в переменной 'n'.
n = int(input())  

 # Начинаем цикл, который выполняется до тех пор, пока 'n' не станет равным нулю (или false).
while n:          
    i = n % 10     # Получаем последнюю цифру числа 'n' и сохраняем её в переменной 'i'.
    n = n // 10    # Удаляем последнюю цифру из числа 'n', чтобы обработать следующую цифру на следующей итерации.
    print(i)       # Выводим последнюю цифру 'i' на экран.

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

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

Решение модуля 7.5 из курса "Поколение python: курс для начинающих"
# Получаем ввод числа
n = int(input())     

# Пока n не равно 0, цикл будет выполняться
while n != 0:
    # Получаем последнюю цифру числа n
    s = n % 10
        
    # Выводим последнюю цифру на экран без перевода строки
    print(s, end='')  
    
    # Удаляем последнюю цифру из числа n
    n = n // 10

max и min

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

Решение модуля 7.5 из курса "Поколение python: курс для начинающих"
# Получаем ввод числа
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)

Все вместе

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

Решение модуля 7.5 из курса "Поколение python: курс для начинающих"
# Получаем ввод числа
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). Напишите программу, которая определяет его вторую (с начала) цифру.

Решение модуля 7.5 из курса "Поколение python: курс для начинающих"
# Получаем ввод числа
n = int(input())

# Переменная для хранения второй с конца цифры
second = 0 

# Пока n больше 9 (то есть в числе есть хотя бы две цифры), выполняем цикл
while n > 9:
    second = n % 10  # Находим последнюю цифру и перезаписываем её в переменную second
    n = n // 10      # Убираем последнюю цифру из числа

# После окончания цикла в переменной second будет храниться вторая с конца цифра
print(second)

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

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

Решение модуля 7.5 из курса "Поколение python: курс для начинающих"
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')          # иначе различны
                     

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

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

Решение модуля 7.5 из курса "Поколение python: курс для начинающих"
# Эту задачу решил иначе чем предыдущую что бы показать как еще можно
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)        # Выводим общую сумму цифр числа

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

Понравилась статья? Поделиться с друзьями:
Подписаться
Уведомить о
guest

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

Ваня
Ваня
2 лет назад

А почему я не могу найти 7. 7 поиск ошибок?

Катя
Катя
2 лет назад

Автор, очень Вам благодарна, когда опубликуете последующие модули?

Beast
Beast
Ответить на  admin
2 лет назад

Автор жду продолжения примерно когда будет готова

Кирилл
Кирилл
2 лет назад

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

Формат входных данных
На вход программе подается строка.

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

Александр
Александр
2 лет назад

Будет ли продолжение: 7.6, 7.7?

луковица
луковица
2 лет назад

блин где 7.6?

Наташа
Наташа
2 лет назад

когда выйдет продолжение 7.6 7.7 7.8 7.9 8?))) очень надо)))

Мишаня
Мишаня
2 лет назад

А дальше есть ответы?
Автор, помогаешь просто на все 100!

Валера
Валера
2 лет назад

Прошло 13 дней, а новых модулей нет :evil: :evil: :evil: :evil:

Катя
Катя
2 лет назад

Автор, когда будет продолжение 7.7 ?

Катя
Катя
Ответить на  admin
2 лет назад

Хорошо, ждём.

xxx
xxx
2 лет назад

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

Дмитрий
Дмитрий
2 лет назад

продолжения не ждать?
Вот вот итоговая для страховки нужна будет)

ISmail MAme devj
ISmail MAme devj
2 лет назад

где прода? 7.6

dee
dee
2 лет назад

Автор, где прода? 7.6. решается за день. :evil:

Екатерина
Екатерина
2 лет назад

Автор, когда будет следующий модуль?

Елена
Елена
2 лет назад

когда будет продолжение?

Николай
Николай
2 лет назад

Решил тут прикрепить ответы на 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)да

Ivan Vladimirowith
Ivan Vladimirowith
Ответить на  admin
2 лет назад

Здраствуйте, извините пожалуйста а можно пожалуйста к апрелю. Очень нужно??

Елена
Елена
Ответить на  admin
2 лет назад

Добрый вечер, когда будет продолжение?

Катя
Катя
Ответить на  admin
2 лет назад

Автор, когда опубликуете решение следующих модулей?)

Николай
Николай
2 лет назад

Автор, где прода? 7.6. решается за день. :evil:

Vla
Vla
Ответить на  admin
2 лет назад

Простите ,но когда же будет продолжение модулей 7.6; 7.7 и т.д. ?

Едик
Едик
Ответить на  admin
2 лет назад

срочно нужны ответы на модули, просим всем классом по информатике. Пожалуйста, можно почаще выпускать ответы?

Павел Пономарев
Павел Пономарев
2 лет назад

задача все вместе не правильно решена помогите

Ева
Ева
2 лет назад

спасибо, жду продолжению, очень благодарна ;-) :razz: :oops: :idea:

57
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x