English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
في هذا البرنامج، ستتعلم كيفية التحقق من whether السنة المقدرة هي سنة رومانية. باستخدام جملة if else.
السنة الميلادية يمكن أن تنقسم على 4، باستثناء الألفية التي تنتهي ب00. تكون الألفية سنة رومانية فقط إذا كانت تنقسم على 400
public class LeapYear { public static void main(String[] args) { int year = 1900; boolean leap = false; if(year % 4 == 0) { if(year % 100 == 0) { // السنة يمكن أن تنقسم على 400 بدون بقايا، لذا هي سنة رومانية إذا ( year % 400 == 0) leap = true; else leap = false; } else leap = true; } else leap = false; if(leap) System.out.println(year + " هو عام شمسي."); else System.out.println(year + " ليس عامًا شمسيًا."); } }
عند تشغيل البرنامج، يكون الخروج كالتالي:
1900 ليس عامًا شمسيًا.
عند تغيير قيمة year إلى 2012، يكون الخروج كالتالي:
2012 هو عام شمسي.
في البرنامج المذكور أعلاه، يتم تخزين السنة 1900 في المتغير year.
لأن عام 1900 يمكن تقسيمه على 4، وهو عام مئوي (ينتهي بـ 00)، والشمسية يمكن تقسيمها على 400. لأن عام 1900 لا يمكن تقسيمه على 400، لذا فإن عام 1900 ليس عامًا شمسيًا.
لكن، إذا قمنا بتعديل year إلى 2000، فإنه يمكن تقسيمه على 4، وهو عام مئوي، ويُمكنه أيضًا تقسيمه على 400. لذا فإن 2000 هو عام شمسي.
لكن، إذا قمنا بتعديل year إلى 2012، فإنه يمكن تقسيمه على 4، وهو ليس عامًا مئويًا، لذا فإن 2012 هو عام شمسي. لا نحتاج إلى التحقق مما إذا كان عام 2012 يمكن تقسيمه على 400.