Эта программа проверяет, является ли введенный пользователем год (целое число) високосным или нет.
Чтобы понять этот пример, вы должны знать следующие темы программирования на C ++:
- C ++ if, if… else и Nested if… else
Все годы, которые полностью делятся на 4, являются високосными, за исключением столетних лет (годы, оканчивающиеся на 00), которые являются високосными, только они полностью делятся на 400.
Например: 2012, 2004, 1968 и т. Д. - високосный год, но 1971, 2006 и т. Д. - не високосный год. Точно так же 1200, 1600, 2000, 2400 - високосные годы, а 1700, 1800, 1900 и т. Д. - нет.
В приведенной ниже программе пользователя просят ввести год, и эта программа проверяет, является ли год, введенный пользователем, високосным или нет.
Пример: проверьте, является ли год високосным или нет.
#include using namespace std; int main() ( int year; cout <> year; if (year % 4 == 0) ( if (year % 100 == 0) ( if (year % 400 == 0) cout << year << " is a leap year."; else cout << year << " is not a leap year."; ) else cout << year << " is a leap year."; ) else cout << year << " is not a leap year."; return 0; )
Вывод
Введите год: 2014 год 2014 год не високосный.
Здесь мы использовали вложенные if
операторы, чтобы проверить, является ли год, указанный пользователем, високосным или нет.
Сначала мы проверяем, делится ли год на 4 или нет. Если он не делится, то это не високосный год.
Если он делится на 4, то мы используем внутренний if
оператор, чтобы проверить, делится ли год на 100.
Если он не делится на 100, он все равно делится на 4, так что это високосный год.
Мы знаем, что столетние годы не являются високосными, если они не делятся на 400.
Итак, если год делится на 100, другой внутренний if
оператор проверяет, делится ли он на 400 или нет.
В зависимости от результата этого внутреннего if
оператора программа определяет, является ли год високосным или нет.