我需要用Java编写一个程序,提示用户输入三个整数。在输入的这些整数中,除了平方根之外,还需要找到最大的整数。我只是一个初学者,我很感激所有的帮助。
import java.util.Scanner;
public class largest {
public static void main (String [] args) {
int Integer1;
int Integer2;
int Integer3;
Scanner input=new Scanner(System.in);
System.out.println("Enter 3 integers:");
Integer1 = input.nextInt();
Integer2 = input.nextInt();
Integer3 = input.nextInt();
if (Integer1 > Integer2);
System.out.println (Integer1);
if (Integer1 > Integer3);
System.out.println (Integer1)
这就是我到目前为止所做的一切,而且我很怀疑我是否正在走上正轨。请帮忙。
答案 0 :(得分:0)
我建议使用Math.max
作为aioobe建议,但如果你想自己实现逻辑,请使用:
import java.util.Scanner;
import java.lang.Math;
class prog {
public static void main (String [] args) {
int Integer1;
int Integer2;
int Integer3;
Scanner input = new Scanner(System.in);
System.out.println("Enter 3 integers:");
Integer1 = input.nextInt();
Integer2 = input.nextInt();
Integer3 = input.nextInt();
if (Integer1 > Integer2) {
if (Integer1 > Integer3) {
System.out.println (Integer1);
System.out.println (Math.sqrt((float)Integer1));
}
else {
System.out.println (Integer3);
System.out.println (Math.sqrt((float)Integer3));
}
}
else if (Integer2 > Integer3) {
System.out.println (Integer2);
System.out.println (Math.sqrt((float)Integer2));
}
else {
System.out.println (Integer3);
System.out.println (Math.sqrt((float)Integer3));
}
}
}
如果超过3,请使用Math.max
。 (float)
部分将整数转换为浮点数,否则平方根不精确(因为整数是整数
答案 1 :(得分:0)
有很多方法可以做到这一点,你可以使用不同的库和数据类型,我不确定你是否可以使用for循环,数组或列表。 大多数情况下,对于这类工作,您需要使用循环,这使得它简单易懂。
以下是几种不同的方法: 在此示例中,如果您需要获得3个以上的条目,只需将数字4修改为需要从用户接收的整数数。
int num, tmp = 0;
Scanner input = new Scanner(System.in);
for (int i = 1; i < 4; i++) {
System.out.printf("Enter integer number %d :", i);
num = input.nextInt();
if (num > tmp) {
tmp = num;
}
}
System.out.printf("the largest number is :%d and the Square is: %s", tmp, Math.sqrt((float) tmp));
第二种方式,不使用for循环:
int num, tmp = 0;
Scanner input = new Scanner(System.in);
System.out.printf("Enter integer number 1 :");
num = input.nextInt();
if (num > tmp) {
tmp = num;
}
System.out.printf("Enter integer number 2 :");
num = input.nextInt();
if (num > tmp) {
tmp = num;
}
System.out.printf("Enter integer number 3 :");
num = input.nextInt();
if (num > tmp) {
tmp = num;
}
System.out.printf("the largest number is :%d and the Square is: %s", tmp, Math.sqrt((float) tmp));
始终尝试使用较少的变量,这样可以提高应用程序的内存效率。