Задача скучная, поэтому я написал программу для генерации программ для решения этой задачи.
Чтобы получить программу, решающую твою задачу, скопируй следующий код в файл с расширением ".py" и запусти. Скрипт создаст новый скрипт task.py, в котором будет решение твоей задачи.
import sys
def main(programmers: int):
with open("task.py", "w") as f:
f.write("a = int(input('Введите количество программистов: '))\n\n")
f.write(f"if a == 0:\n\tprint(0, 'программистов')\n")
for i in range(1, programmers + 1):
programmers = "программист" + get_ending(i)
f.write(f"elif a == {i}:\n\tprint({i}, '{programmers}')\n")
print("Твоя программа готова! Запусти её командой: python task.py")
def get_ending(num: int) -> str:
if num % 100 in {11, 12, 13, 14}:
return "ов"
elif num % 10 in {0, 5, 6, 7, 8, 9}:
return "ов"
elif num % 10 in {2, 3, 4}:
return "а"
elif num % 10 in {1}:
return ""
else:
raise AssertionError("Unexpected error")
if __name__ == '__main__':
try:
programmers = abs(int(input(
"Для какого количества программистов сгенерировать решения?\nВведи целое число: ")))
except ValueError:
print("Количество программистов должно быть целым числом!")
sys.exit(1)
main(programmers)