input
всегда возвращает строку. Параметр, который принимает
input
, это то, что будет напечатано для пользователя, как приглашение к вводу, после которого он сможет вводить данные. Вы передаёте туда int(), который возвращает 0, именно это и печатает input, как приглашение к вводу данных.
Вместо того, чтобы печатать фразу "Сколько школьников?"
print('Сколько школьников?')
лучше передать эту фразу в input, чтобы он напечатал её, как приглашение к вводу:
s = input('Сколько школьников? ')
В s будет строка, теперь чтобы преобразовать это в число и совершать математические операции, необходимо преобразовать s в integer:
s = input('Сколько школьников? ')
s = int(s)
Или можно записать это одной строкой, вложив одну функцию в другую:
s = int(input('Сколько школьников? '))