Дан код программы, дополните программу комментариями.
var
s: char;
begin
read(s);
case s of
'а','е','ё','и','о','у','ы','э','ю','я': writeln('гласные');
'б','в','г','д','ж','з','й','к','л','м','н','п','р','с','т','ф','х','ц','ч','ш','щ': writeln('согласные');
else
writeln('знаки');
end;
Решение 1:
nominative = 1 # окончания им.падеж: гриб
generative = [2, 3, 4] # список окончаний род.падеж: гриба
plural_generative = [5, 6, 7, 8, 9, 0] # список окончаний род.падеж множ-го: грибов
for number in range(0, 51): # цикл с значением от 0 до 51
"""number % 10 возвращает последнюю цифру из числа"""
if (number % 10) == nominative:
print(f"{number} гриб")
elif (number % 10) in generative:
print(f"{number} гриба")
elif (number % 10) in plural_generative:
print(f"{number} грибов")
Решение 2:
nominative = 1 # окончания им.падеж: гриб
generative = [2, 3, 4] # список окончаний род.падеж: гриба
for number in range(0, 51): # цикл с значением от 0 до 51
"""number % 10 возвращает последнию цифру из числа"""
if (number % 10) == nominative:
print(f"{number} гриб")
elif (number % 10) in generative:
print(f"{number} гриба")
else:
print(f"{number} грибов")
Объяснение:
В комментариях.
num = input('Введите номер группы: ')
while True:
command = input('Ввести данные?\n(y/n) ')
if command == 'y':
surname = input('Введите фамилию: ')
email = input('Введите почту: ')
if input('Внести данные?\n(y/n) ') == 'y':
with open(f'{num}.txt', mode='a', encoding='utf-8') as f:
f.write(f'{surname} - {email}')
print('Данные записаны')
else:
print('Запись данных отменена')
else:
print('Выход...')
break
with open(f'{num}.txt', mode='r', encoding='utf-8') as f:
data = f.read()
print('Фамилия - Почта')
print(data)
Вроде как вполне работает