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

Нужно решить через python программу

Джон Турамов Ученик (101), на голосовании 3 недели назад
Напишите программу ,которая считает количество нечетных чисел(без использования цикла). На ввод программе подается 4 числа любой величины .Подсчитайте количество нечетных чисел .Если введенное число нечетное ,то программа прибавляет 1. Если число отрицательное ,то программа выдает текст «введите положительное число» Если количество нечетных числе меньше или равно 0, программа выдает текст «нечетных чисел нет»
Голосование за лучший ответ
Bad Профи (708) 1 месяц назад
def count_odd_numbers(a, b, c, d):
count = 0
if a > 0:
count += (a % 2 != 0)
else:
print("Введите положительное число")
if b > 0:
count += (b % 2 != 0)
else:
print("Введите положительное число")
if c > 0:
count += (c % 2 != 0)
else:
print("Введите положительное число")
if d > 0:
count += (d % 2 != 0)
else:
print("Введите положительное число")

if count <= 0:
print("Нечетных чисел нет")
return count

a = int(input("Введите первое число: "))
b = int(input("Введите второе число: "))
c = int(input("Введите третье число: "))
d = int(input("Введите четвертое число: "))

odd_count = count_odd_numbers(a, b, c, d)
print(f"Количество нечетных чисел: {odd_count}")
Рустам Абдрашитов Мыслитель (9542) 1 месяц назад
 def count_odd_numbers(numbers): 
if any(n < 0 for n in numbers):
return "\033[91m❌ Введите положительное число! ❌\033[0m"

odd_count = sum(1 for n in numbers if n % 2 != 0)

if odd_count <= 0:
return "\033[93m⚠️ Нечетных чисел нет! ⚠️\033[0m"

return f"\033[92m✅ Количество нечетных чисел: {odd_count} ✅\033[0m"

def analyze_numbers(numbers):
analysis = []
for n in numbers:
if n % 2 == 0:
analysis.append(f"\033[96m? {n} - четное ?\033[0m")
else:
analysis.append(f"\033[95m? {n} - нечетное ?\033[0m")
return "\n".join(analysis)

def calculate_statistics(numbers):
total = sum(numbers)
average = total / len(numbers)
maximum = max(numbers)
minimum = min(numbers)

stats = (
f"\033[92m? Сумма: {total} ?\033[0m\n"
f"\033[92m? Среднее: {average:.2f} ?\033[0m\n"
f"\033[92m? Максимум: {maximum} ?\033[0m\n"
f"\033[92m? Минимум: {minimum} ?\033[0m"
)
return stats

def print_histogram(odd_count, even_count):
histogram = "\n\033[94m? Гистограмма:\033[0m\n"
histogram += f"Четные: {'⭐' * even_count}\n"
histogram += f"Нечетные: {'?' * odd_count}\n"
return histogram

def print_separator():
print("\n" + "\033[94m" + "?" * 40 + "\033[0m" + "\n")

while True:
try:
user_input = input("\033[94m? Введите 4 числа через пробел: \033[0m").strip()

if not user_input:
print("\033[93m⚠️ Вы ничего не ввели. Пожалуйста, введите 4 числа. ⚠️\033[0m")
continue

numbers = list(map(lambda x: int(float(x)), user_input.split()))

if len(numbers) != 4:
print("\033[93m⚠️ Пожалуйста, введите ровно 4 числа. ⚠️\033[0m")
continue

result = count_odd_numbers(numbers)

print_separator()
print(result)

analysis_result = analyze_numbers(numbers)
print("\033[94m? Анализ введенных чисел:\033[0m")
print(analysis_result)

stats_result = calculate_statistics(numbers)
print("\n\033[94m? Статистика:\033[0m")
print(stats_result)

odd_count = sum(1 for n in numbers if n % 2 != 0)
even_count = len(numbers) - odd_count
histogram_result = print_histogram(odd_count, even_count)
print(histogram_result)

print_separator()

repeat = input("\033[94m? Хотите ввести еще раз? (да/нет): \033[0m").strip().lower()
if repeat != 'да':
print("\033[92m? Спасибо за использование программы! ?\033[0m")
break

except ValueError:
print("\033[91m? Пожалуйста, введите корректные целые числа. ?\033[0m")
Лови это лучший код ))
Похожие вопросы