ホームページ >Java >&#&チュートリアル >Java でのうるう年プログラム

Java でのうるう年プログラム

WBOY
WBOYオリジナル
2024-08-30 16:28:07615ブラウズ

プログラミング言語でプログラムを開始する前に、そのロジックを理解することが不可欠です。ロジックを頭の中に入れて、プログラミング概念の基本知識をプログラマーが理解したら、プログラムを書くのはそれほど難しいことではありません。平たく言えば、閏年はカレンダーに 1 日余分にある年です。つまり、閏年には通常の年の 365 日が 366 日あります。 (閏年は2月29日が加わり、平年は28日になります)。数学的な観点から、世紀年を除いて、4 で割り切れる年は閏年とみなされます。この出来事は 4 年ごとに起こります。

無料ソフトウェア開発コースを始めましょう

Web 開発、プログラミング言語、ソフトウェア テスト、その他

ロジック:

プログラムを書く前の主要な部分は、そのロジックを理解することです。閏年のロジックを段階的に知っていきましょう。

  1. 一般に、閏年は 4 年ごとに発生するため、閏年は 4 で割り切れる必要があります。
  2. 100 年ごとに、400 で割り切れない限り閏年はスキップされます。したがって、閏年となる年には、100 で割り切れる必要があります。
  3. 年が 100 で割り切れる場合は、400 でも割り切れるはずです。その後、うるう年とみなされます。
  4. 100 で割り切れるが 400 では割り切れない年は、うるう年とみなされません。

上記の 4 つの手順を使用すると、基本的な if ステートメントと else ステートメントの使用法を使用して、任意のプログラミング言語で閏年プログラムを簡単に作成できます。

さまざまな方法を使用して Java でうるう年を確認するには?

Java でうるう年をプログラムするには、次のことを知っておく必要があります:

  • Scanner、BufferedReader、Input Stream Reader などのさまざまな入出力クラスを使用して、Java プログラミング言語でユーザーからの入力を読み取る方法
  • Java で if ステートメントと else ステートメントを使用する方法。

それ以外の場合、ロジックは上記と同じままになります。以下は、指定された年がうるう年かどうかのチェックを実装する詳細なアルゴリズムです。

ステップ 1: 指定された年が 4 で割り切れる場合は、ステップ 2 に進みます。それ以外の場合は、ステップ 5 に進みます。

ステップ 2: 指定された年が 100 で割り切れる場合は、ステップ 3 またはステップ 4 に進みます。

ステップ 3: 指定された年が 400 で割り切れる場合は、ステップ 4 に進みます。それ以外の場合は、ステップ 5 に進みます。

ステップ 4: ユーザーが入力したそれぞれの年は閏年です。

ステップ 5: ユーザーが入力したそれぞれの年はうるう年ではありません。

Scanner クラスを使用してユーザーからの入力を取得し、Java でうるう年のプログラムを作成しました。

コード:

import java.util.Scanner;
public class LeapYear {
//main method of java class from where the execution starts
public static void main(String[] args) {
int yr;
// We have used the Scanner class to take the input from the user
Scanner sc = new Scanner(System.in);
System.out.println(" Please enter the year you want to test ");
yr = sc.nextInt();
sc.close();
boolean isLeapYear = false;
//Checking the first and foremost condition of leap year
if(yr % 4 == 0)
{
//Checking the second condition of the century year (as we skip a leap year after every 100 years)
if( yr % 100 == 0)
{
//Checking the third condition of the year divisible by 100 and 400 both
if ( yr % 400 == 0)
isLeapYear = true;
else
isLeapYear = false;
}
else
isLeapYear = true;
}
else {
isLeapYear = false;
}
//Final checking the value of boolean variable ‘isLeapYear’ and displaying the final results on the console
if(isLeapYear == true)
System.out.println("Given Year is a Leap Year");
else
System.out.println("Given year is not a Leap Year");
}
}

異なる年の値で上記のプログラムを実行したときの出力のスナップショットをいくつかご覧ください。これらの出力は、ユーザーが指定した年がうるう年かどうかを確認するのに役立ちます。

Java でのうるう年プログラム

Java でのうるう年プログラム

Java でのうるう年プログラム

上記のコードでは、if ステートメントと else ステートメントを使用した 3 つのステップで上記のロジックを実装しました。入力値 2020 を使用して上記のコードを予行演習するとします。記述されたコードに従って、指定された年を段階的に確認します。

  1. 2020 が 4 で割り切れるかどうかを確認します。2020 %4 ==0 なので、if ステートメントの 2 番目のステップに進みます。
  2. 2020 を 100 で割り切れるかどうかを確認します。 2020 %100 != 0 なので、else 部分に進みます。したがって、ブール変数「isLeapyear」の値は true になります。
  3. 最終的には、変数「isLeapyear」(true または false の値を保持するブール変数) の値をチェックしています。それは本当なので、「指定された年は閏年です」というテキストがコンソールに表示されます。

プログラマは、主関数の外側に閏年の別の関数を作成し、その関数を Java のメイン関数から呼び出すことによって、ロジックを同じにして上記のタスクを実行することもできます。それはプログラマの選択と、プログラマが好むコードのタイプ (メイン関数内にコア ロジックを記述するか、別の関数にコア ロジックを記述するか) によって異なります。 Java 入力クラスの知識があまりない初心者のために、プログラマはコード自体と main 関数に直接年を入力するか、その関数を呼び出すときにその値を渡すことによって、同じタスクを実行できます。

結論

上記の説明は、うるう年とは何か、そのロジック、および上記のロジックを実装するコードを明確に説明しています。多くのプログラマは、うるう年が 4 年ごとに来る年であると混乱し、世紀年の論理を忘れています。ただし、世紀年のロジックをコード内に保持することが不可欠です。そうしないと、多くの場合、出力が間違ってしまいます。他のプログラムでは、ロジックが完成するとコーディングが容易になるため、コードを記述する前にロジックを用意する必要があります。

以上がJava でのうるう年プログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。