Вопрос:

Дан фрагмент программы: n = ? s = 0 while n > 0: p = n % 10 s += p n = n // 10 print(s) Какое наибольшее натуральное четырёхзначное число нужно присвоить переменной n, чтобы после выполнения программы на экране отобразилось число 24?

Смотреть решения всех заданий с листа

Ответ:

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

Начнем с максимально возможного четырехзначного числа, состоящего из девяток: 9999. Сумма его цифр 9 + 9 + 9 + 9 = 36. Это больше, чем 24, поэтому нужно уменьшать число, пока не получим нужную сумму.

Чтобы получить наибольшее число, нужно стараться, чтобы старшие разряды были как можно больше. Попробуем начать с числа, где первая цифра 9. Тогда сумма оставшихся трех цифр должна быть 24 - 9 = 15. Можно взять 9, 6 и 0. Тогда получим 9960 или 9906 или 9690 и т.д. Наибольшим из них будет 9960.

Проверим, можно ли получить число больше. Допустим, первая цифра 8. Тогда сумма оставшихся трех цифр должна быть 24 - 8 = 16. Можно взять 8, 8 и 0. Получим 8880. Это меньше, чем 9960.

Проверим число 9960:

1. n = 9960, s = 0

2. Цикл while: 9960 > 0 - да

p = 9960 % 10 = 0

s = 0 + 0 = 0

n = 9960 // 10 = 996

3. Цикл while: 996 > 0 - да

p = 996 % 10 = 6

s = 0 + 6 = 6

n = 996 // 10 = 99

4. Цикл while: 99 > 0 - да

p = 99 % 10 = 9

s = 6 + 9 = 15

n = 99 // 10 = 9

5. Цикл while: 9 > 0 - да

p = 9 % 10 = 9

s = 15 + 9 = 24

n = 9 // 10 = 0

6. Цикл while: 0 > 0 - нет

7. print(s) - выводит 24

Значит, наибольшее четырехзначное число, которое нужно присвоить переменной n, чтобы после выполнения программы на экране отобразилось число 24, это 9960.

Ответ: 9960

ГДЗ по фото 📸
Подать жалобу Правообладателю