Задание 3 Составить программу, выводящую время года в зависимости от номера месяца...

0 голосов
58 просмотров

Задание 3
Составить программу, выводящую время года в зависимости от номера месяца введенного пользователем.


Информатика (39 баллов)
Дан 1 ответ
0 голосов
Архангел (142k баллов)
 
Правильный ответ

// PascalABC.NET 3.1, сборка 1256 от 21.06.2016
begin
  case ReadInteger('Номер месяца (1-12):') of
  1,2,12:Writeln('Зима');
  3..5:Writeln('Весна');
  6..8:Writeln('Лето');
  9..11:Writeln('Осень');
  else Writeln('Неверный номер месяца')
  end
end.

Вариант "для школьников"
// PascalABC.NET 3.1, сборка 1256 от 21.06.2016
var n:integer;
begin
  Write('Номер месяца (1-12): '); Read(n);
  case n of
  1,2,12:Writeln('Зима');
  3..5:Writeln('Весна');
  6..8:Writeln('Лето');
  9..11:Writeln('Осень');
  else Writeln('Неверный номер месяца')
  end
end.

оставил комментарий Бакалавр (13.3k баллов)

Можно так: writeln(copy('Зима Весна Лето Осень', ReadInteger mod 12 div 3 * 6, 5))

оставил комментарий Архангел (142k баллов)

Во-первых, по 9..11 выдается "сень", а во-вторых (хоть это и несущественно), на значения вне [1;12] реагирует внешне довольно странно, хотя алгоритмически объяснимо.

оставил комментарий Бакалавр (13.3k баллов)

Потому что сайт проглатывает несколько подряд идущих пробелов, перед Осень должно быть 2 пробела

оставил комментарий Бакалавр (13.3k баллов)

Для значений [1;12] работает отлично

...