[英]Program wont run… Java in eclipse
我需要为我的班级编写一个程序,询问用户3个不同的年份,并告诉他/她说的年份是否是a年...这是我的代码(PS,我们需要使用循环来执行此操作,因此请保持它与循环):
import java.util.Scanner;
import java.util.*;
public class BetterLeapYear
{
public static void main(String[] args)
{
Scanner s = new Scanner(System.in);
int year = s.nextInt();
if (year > 1582){
for (int i = 1; i <= 3; i++)
{
System.out.print ("Please enter a year: ");
year = s.nextInt();
}
if (((year%4)== 0) && ((year%100)==0) && ((year%400)==0)) {
System.out.print("That year was a leap year");
}
else if (((year%4)== 0) && ((year%100)==0) && ((year%400)!=0)){
System.out.println("This year was not a leap year");
}
else if ((year%4)== 0){
System.out.print("This year was a leap year");
}
else
System.out.print("This year was not a leap year");
}
else
System.out.print ("Please enter a year after 1582");
}
}
首先应让用户输入年份值。 然后检查是否在1582年之前。 最后检查是否是a年。
输入代码year = s.nextInt();
if (year < 1582) {
进入循环,则接收输入的年份并检查输入的年份是否在1582之后。
下面提到了这三个步骤:
喜欢
for (int i = 1; i <= 3; i++) {
/*
* Step#1 Receive a year value
*/
System.out.println("Please enter a year: ");
year = s.nextInt();
/*
* Step#2 Check if the year is after 1580 or not.
*
*/
if (year < 1582) {
System.out.println("Please enter a year after 1582");
} else {
/*
* Step#3 Check whether the year entered is leap year or not
*/
if (((year % 4) == 0) && ((year % 100) == 0)
&& ((year % 400) == 0)) {
System.out.println("That year was a leap year");
} else if (((year % 4) == 0) && ((year % 100) == 0)
&& ((year % 400) != 0)) {
System.out.println("This year was not a leap year");
} else if ((year % 4) == 0) {
System.out.println("This year was a leap year");
} else
System.out.println("This year was not a leap year");
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.