> Что это, и как работает?
Открываешь терминал и запускаешь.
После старта она создаёт в памяти переменные и другие структуры данных, которые описаны.
Потом, в программе два цикла, собственно, имеющиеся данные заполняются в структуры данных, производятся арифметические действия. Когда срабатывают условия в последнем цикле, поток управления выходит из него и выполняет инструкцию по выводу в stdout, который отображается в терминале.
Открываешь терминал и запускаешь.
После старта она создаёт в памяти переменные и другие структуры данных, которые описаны.
Потом, в программе два цикла, собственно, имеющиеся данные заполняются в структуры данных, производятся арифметические действия. Когда срабатывают условия в последнем цикле, поток управления выходит из него и выполняет инструкцию по выводу в stdout, который отображается в терминале.