我只会从用户那里获取3个值,因此只有3个可能的答案。您还可以假设用户不会三次输入0,并且如果他们三次输入相同的值并不重要。我可以为这些场景创建自己的东西(我已经拥有)。
import java.util.Scanner;
import java.io.*;
import java.util.*;
public class Triangles
{
public static void main (String[]args) throws IOException
{
String a = "You have an";
String b = "triangle";
double l;
Scanner lengthinput = new Scanner(System.in);
double h;
Scanner heightinput = new Scanner(System.in);
double w;
Scanner widthinput = new Scanner(System.in);
System.out.println("Enter the length.");
l = lengthinput.nextDouble();
System.out.println("Enter the height.");
h = heightinput.nextDouble();
System.out.println("Enter the width.");
w = widthinput.nextDouble();
double max = l;
if (w > max) max = w;
if (h > max) {max = h;
我挣扎的原因是由于以下原因:
我知道最大值,现在我应该复制最大代码来创建一个最小值(因为我已经学到了所有这些(介绍CS类))。但是,我怎么知道如何将最小值排除在我随机选择的值之外?然后同样为中等值。
答案 0 :(得分:6)
你可以找到三个这样的最小值,中值和最大值:
double a = ...;
double b = ...;
double c = ...;
if (a > b) {
double swap = a;
a = b;
b = swap;
}
if (b > c) {
double swap = b;
b = c;
c = swap;
}
if (a > b) {
double swap = a;
a = b;
b = swap;
}
System.out.println("Min: "+a);
System.out.println("Med: "+b);
System.out.println("Max: "+c);
答案 1 :(得分:-1)
您可以尝试以下内容:
float l = 2.0f;
float h = 3.0f;
float w = 1.5f;
float[] arr = new float[] {l, h, w};
Arrays.sort(arr);
System.out.println("Min: " + arr[0] + ", Medium: " + arr[1] + ", Max: " + arr[2]);