Program ini memeriksa apakah satu tahun (integer) yang dimasukkan oleh pengguna adalah tahun kabisat atau bukan.
Untuk memahami contoh ini, Anda harus memiliki pengetahuan tentang topik pemrograman C ++ berikut:
- C ++ if, if… else dan Nested if… else
Semua tahun yang habis habis dibagi 4 adalah tahun kabisat kecuali untuk tahun abad (tahun yang diakhiri dengan 00) yang hanya tahun kabisat yang habis habis dibagi 400.
Contoh: 2012, 2004, 1968 dll adalah tahun kabisat tetapi, 1971, 2006 dll bukan tahun kabisat. Demikian pula, 1200, 1600, 2000, 2400 adalah tahun kabisat tetapi, 1700, 1800, 1900 dll bukan.
Dalam program di bawah ini, pengguna diminta memasukkan satu tahun dan program ini memeriksa apakah tahun yang dimasukkan oleh pengguna adalah tahun kabisat atau bukan.
Contoh: Periksa apakah satu tahun adalah tahun kabisat atau bukan
#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; )
Keluaran
Masukkan tahun: 2014 2014 bukanlah tahun kabisat.
Di sini, kami telah menggunakan if
pernyataan bertingkat untuk memeriksa apakah tahun yang diberikan oleh pengguna adalah tahun kabisat atau bukan.
Pertama, kita periksa apakah tahun habis dibagi 4 atau tidak. Jika tidak habis dibagi, maka itu bukan tahun kabisat.
Jika habis dibagi 4, maka kita menggunakan if
pernyataan dalam untuk memeriksa apakah tahun habis dibagi 100.
Jika tidak habis dibagi 100, masih habis habis dibagi 4 sehingga merupakan tahun kabisat.
Kita tahu bahwa abad tahun bukanlah tahun kabisat kecuali mereka habis dibagi 400.
Jadi, jika tahun habis habis 100, if
pernyataan dalam yang lain memeriksa apakah habis habis 400 atau tidak.
Bergantung pada hasil dari if
pernyataan terdalam itu , program menentukan apakah tahun adalah tahun kabisat atau tidak.