美国主要州际公路的编号为1-99。奇数(例如5或95)往北/南,偶数(例如10或90)往东/西。辅助高速公路的编号为100-999,服务于最右边两位数字指示的主要高速公路。因此,405服务于5,而290服务于90。
编写(定义)一个名为printHighwayInfo的公共静态方法,该方法将高速公路编号作为唯一参数(参数将为int)。调用此方法时,应打印出一个String,指示高速公路是主要公路还是辅助公路,以及高速公路是东西向还是南北向(请参见下面的示例)。此方法应具有return void返回类型。
示例:给定公路号,指示它是主要公路还是辅助公路。如果有辅助功能,请指明其服务的主要公路。还要指出(主要)高速公路是北/南还是东/西。
printHighwayInfo(90)将打印90,是主要的,向东/向西移动。 printHighwayInfo(290)将打印290是辅助数据,服务于90,向东/向西移动。 printHighwayInfo(185)将打印185是辅助数据,服务于85,向南/向南移动。 您可能希望编写一些其他代码来测试您的方法
提示:
您可以使用模数运算符(%)计算整数除法运算的提示。
例如:290%100将得出90,因为290除以100后的余数为90。
另一个例子:185%2为1,因为2进入185,共92次,剩下1个。另外,请注意,对于任何整数x,当x为奇数时,x%2始终为1,而当x为偶数时它将始终为0。
**这是我使用Java的第一周。到目前为止,我们一直在学习python,而我却遇到了最困难的时刻。我收到大量错误,不知道为什么。我的课堂笔记和讲座根本没有帮助。
import java.util.Scanner;
public class Main {
static Scanner scnr = new Scanner(System.in);
}
public static void main(String[] args) {
Scanner scnr = new Scanner(System.in);
int highwayNumber;
int primaryNumber;
{
public static int printHighwayInfo(int a);
}
if (printHighwayInfo >= 1 && highwayNumber <= 999) {
if (printHighwayInfo <= 99) {
if (printHighwayInfo % 2 == 0) {
System.out.println(printHighwayInfo + " is a primary highway, going east/west");
} else {
System.out.println(printHighwayInfo + " is a primary highway, going north/south");
}
} else {
primaryNumber = highwayNumber;
highwayNumber %= 100;
System.out.println(printHighwayInfo + " is an auxiliary highway, serving primary highway " + highwayNumber);
}
} else {
System.out.println(printHighwayInfo + " is not a valid interstate highway number.");
}
}
}
{
System.out.println(printHighwayInfo(90));
System.out.println(printHighwayInfo(290));
System.out.println(printHighwayInfo(185));
}
}
//这些是我回来的错误
HighwayInfo.java:5: error: class, interface, or enum expected
public static void main(String[] args) {
^
HighwayInfo.java:7: error: class, interface, or enum expected
int highwayNumber;
^
HighwayInfo.java:8: error: class, interface, or enum expected
int primaryNumber;
^
HighwayInfo.java:9: error: class, interface, or enum expected
{
^
HighwayInfo.java:10: error: class, interface, or enum expected
public static int printHighwayInfo(int a);
^
HighwayInfo.java:11: error: class, interface, or enum expected
}
^
HighwayInfo.java:16: error: class, interface, or enum expected
} else {
^
HighwayInfo.java:18: error: class, interface, or enum expected
}
^
HighwayInfo.java:21: error: class, interface, or enum expected
highwayNumber %= 100;
^
HighwayInfo.java:22: error: class, interface, or enum expected
System.out.println(printHighwayInfo + " is an auxiliary highway, serving primary highway " + highwayNumber);
^
HighwayInfo.java:23: error: class, interface, or enum expected
}
^
HighwayInfo.java:26: error: class, interface, or enum expected
}
^
HighwayInfo.java:31: error: class, interface, or enum expected
System.out.println(printHighwayInfo(290));
^
HighwayInfo.java:32: error: class, interface, or enum expected
System.out.println(printHighwayInfo(185));
^
HighwayInfo.java:33: error: class, interface, or enum expected
}
^
15 errors
答案 0 :(得分:0)
您需要在代码中进行多项更改。
printHighwayInfo
应该具有void返回类型。printHighwayInfo
只有一种返回类型,因此应使用一个变量。我在逻辑上不正确,只是通过消除编译问题来帮助您进一步进行。此外,您可以使用逻辑。
public class Main {
public static void main(final String[] args) {
printHighwayInfo(90);
printHighwayInfo(290);
printHighwayInfo(185);
}
public static void printHighwayInfo(final int highwayNumber) {
if (highwayNumber >= 1 && highwayNumber <= 999) {
if (highwayNumber <= 99) {
if (highwayNumber % 2 == 0) {
System.out.println(highwayNumber + " is a primary highway, going east/west");
} else {
System.out.println(highwayNumber + " is a primary highway, going north/south");
}
} else {
System.out.println(highwayNumber + " is an auxiliary highway, serving primary highway " + highwayNumber);
}
} else {
System.out.println(highwayNumber + " is not a valid interstate highway number.");
}
}
}