Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Вычислите сумму и произведение цифр двузначного числа.

polonika Ученик (83), открыт 3 дня назад
4 ответа
Finder true Мастер (1263) 3 дня назад
Для решения задачи нам понадобится двузначное число. Допустим, возьмем число 27.
Решение с использованием функций ЦЕЛОЕ() и ОСТАТ():
Двузначное число: 27
1-я цифра (десятки): ЦЕЛОЕ(27/10) = 2
2-я цифра (единицы): ОСТАТ(27; 10) = 7
Сумма цифр: 2 + 7 = 9
Произведение цифр: 2 * 7 = 14
Обобщенный алгоритм:
Пусть N — двузначное число.
1. Первая цифра: Десятки = ЦЕЛОЕ(N/10)
2. Вторая цифра: Единицы = ОСТАТ(N; 10)
3. Сумма: Сумма = Десятки + Единицы
4. Произведение: Произведение = Десятки * Единицы



.
Анонимус Мудрец (16042) 3 дня назад
  • Проверка на ввод только двузначных чисел: Убедимся, что пользователь вводит только двузначные числа.
  • Подсчет количества четных и нечетных цифр: Вычислим, сколько из цифр четные, а сколько нечетные.
  • Проверка на палиндром: Узнаем, является ли число палиндромом (например, 33 или 44).
  • Вывод цифр в обратном порядке: Выведем цифры числа в обратном порядке.
  • Сохранение результатов в файл: Сохраним результаты (сумму, произведение, количество четных и нечетных цифр) в текстовый файл.
 def sum_and_product_of_digits(n): 
if 10 <= n < 100: # Проверка, что число двузначное
x = n // 10 # Десятки
y = n % 10 # Единицы
sum_digits = x + y
product_digits = x * y
return sum_digits, product_digits, x, y
else:
return None

def count_even_odd_digits(x, y):
even_count = sum(1 for digit in (x, y) if digit % 2 == 0)
odd_count = 2 - even_count # Всего 2 цифры
return even_count, odd_count

def is_palindrome(n):
return str(n) == str(n)[::-1]

def reverse_digits(x, y):
return y, x # Возвращаем цифры в обратном порядке

def save_results_to_file(results, filename="results.txt"):
with open(filename, 'w') as file:
file.write(f"Сумма цифр: {results[0]}\n")
file.write(f"Произведение цифр: {results[1]}\n")
file.write(f"Четные цифры: {results[2]}\n")
file.write(f"Нечетные цифры: {results[3]}\n")
file.write(f"Палиндром: {results[4]}\n")

# Основная часть программы
number = int(input("Введите двузначное число: "))
results = sum_and_product_of_digits(number)

if results:
sum_digits, product_digits, x, y = results
even_count, odd_count = count_even_odd_digits(x, y)
palindrome = is_palindrome(number)
reversed_digits = reverse_digits(x, y)

print(f"Сумма цифр: {sum_digits}")
print(f"Произведение цифр: {product_digits}")
print(f"Четные цифры: {even_count}, Нечетные цифры: {odd_count}")
print(f"Палиндром: {'Да' if palindrome else 'Нет'}")
print(f"Цифры в обратном порядке: {reversed_digits[0]}{reversed_digits[1]}")

save_results_to_file((sum_digits, product_digits, even_count, odd_count, palindrome))
print("Результаты сохранены в файл results.txt.")
else:
print("Введите двузначное число.")
Похожие вопросы