我无法弄清楚我在这里做错了什么.我刚刚写了一个类似的代码,运行正常.一旦我掌握了如何使用扫描仪类.我正在研究一个程序,它采用直角三角形的高度和底部,然后计算周长,面积和斜边.但它为每个方法返回0.0并且我无法弄清楚我是否缺少某种语法或者我是否真的搞乱了我的计算.有人能指出我错误的正确方向吗?
public class RightTriangle {
private double height;
private double base;
private final double hypotenuse = Math.sqrt(Math.pow(height, 2) + Math.pow(base, 2));
public RightTriangle(double triHeight, double triBase)
{
triHeight = height;
triBase = base;
}
public double getPerimeter()
{
double perimeter = height + base + hypotenuse;
return perimeter;
}
public double getArea()
{
double area = (height + base) / 2;
return area;
}
public double getHypotenuse()
{
return hypotenuse;
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的主要方法:
import java.util.Scanner;
public class CalculateTriangle
{
public …Run Code Online (Sandbox Code Playgroud) 如果您输入的座位太多,该程序应该会打印错误.如果我输入无效的席位数:经济部门有8个席位.但是如果我输入的数字大于它,则程序不会继续执行else语句并打印错误消息.
相反,它只是通过if语句并使用无效的座位号进行计算.
import java.util.Scanner;
public class FlightProfit
{
String location;
int TOLEDO_FARE = 200;
int HOUSTON_FARE = 300;
int BOISE_FARE = 400;
int economySeats;
int businessSeats;
int firstClassSeats;
int economySales;
int businessSales;
int firstClassSales;
//int totalSales = economySales + businessSales + firstClassSales;
Scanner in = new Scanner(System.in);
public int addEconomySeats()
{
System.out.print("Enter number of economy seats 1-8: ");
economySeats = in.nextInt();
if(economySeats > 0 || economySeats < 9)
{
return economySeats;
}
else
{
System.out.println("Error: Only 8 seats available in …Run Code Online (Sandbox Code Playgroud)