printЗанятие 20

printA. Создание тестов для задачи "Високосный год"

Ограничения: время – 1s/2s, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Напишите тесты для следующей задачи:
Гном Ворчун родился 29 февраля, поэтому свой день рождения он отмечает только в високосном году. Год является високосным, если он кратен 4 и при этом не кратен 100, либо кратен 400. Год не является високосным, если он не кратен 4 либо кратен 4, но при этом кратен 100 и не кратен 400.
Напишите программу, которая поможет Ворчуну определить, получит ли он подарки в заданном году.
Ввод содержит одно целое число `N` (`1\ ≤\ N\ <\ 10^9`) – номер года.
Вывести сообщение "Yes", если в год `N` подарки будут, или сообщение "No", в противном случае.

Пример ввода

2007

Пример вывода

No
Тесты задаются в форме:
*INPUT
Ввод для теста 1
*OUTPUT
Вывод для теста 1
*INPUT
Ввод для теста 2
*OUTPUT
Вывод для теста 2
...
Ввод для тестов должен соответствовать условиям задачи. Решение считается принятым, если тесты обнаруживают ошибки во всех программах из некоторого набора. Количество тестов не должно превышать 20. Тесты после 20-го игнорируются. Ошибка PE при проверке означает, что выведенные тесты содержат ошибки, т.е. не соответствуют условиям задачи или ввод выводу.

Пример вывода

*INPUT
2007
*OUTPUT
No
*INPUT
2008
*OUTPUT
Yes
Вы можете переслать также программу, которая выводит файл с тестами.

Пример программы

#include <iostream>
#include <string>
void test(int n, int y, string r)
{ std::cout<<"*INPUT\n"<<y<<"\n*OUTPUT\n"<<r<<"\n";
}
int main()
{ test(1,2007,"No");
  test(2,2008,"Yes");
}
loading