Я действительно застрял здесь. Я не могу найти способ НЕ выводить числа, которые равны нулю.
Например, вот что я хочу получить: введите описание изображения здесь
Но это то, что я получаю: введите описание изображения здесь
Это первый файл моего проекта (без основного метода)
public class Triangle{
private double side1;
private double side2;
private double side3;
public Triangle(double side1, double side2, double side3){
if(isTriangle(side1, side2, side3)){
this.side1 = side1;
this.side2 = side2;
this.side3 = side3;
}
else{
this.side1 = 1d;
this.side2 = 1d;
this.side3 = 1d;
}
}
public double getSide1(){
return side1;
}
public double getSide2(){
return side2;
}
public double getSide3(){
return side3;
}
private boolean isTriangle(double side1, double side2, double side3){
if((side1+side2<side3||side2+side2<side1||side3+side1<side3) && (side1 > 0 && side2 > 0 && side3 > 0))
return false;
return true;
}
public boolean isEquilateral(){
if(side1 == side2 && side2 == side3 && side1 == side3){
if(this.side1 == 0 || this.side2 == 0 || this.side3 == 0){
return false;
}
return true;
}
return false;
}
public boolean isRight(){
if(side1 < side2 && side2 > side3 && side1 < side3){
return true;
}
else if(side1 > side2 && side1 > side3 && side2 > side3){
return true;
}
else if(side1 > side2 && side1 < side3 && side2 < side3){
return true;
}
return false;
}
}
Это второй файл проекта (с ОСНОВНОЙ МЕТОД)
public class TriangleApp
{
public static void main(String[] args)
{
double[] side1Values = {3.0, 5.0, 4.0, 4.5, 0.0, 4.0, -2.0, 1.0, 3.1};
double[] side2Values = {5.0, 4.0, 3.0, 4.5, 0.0, 4.0, 2.0, 2.0, 2.1};
double[] side3Values = {4.0, 3.0, 5.0, 4.5, 0.0, 5.0, 1.0, 3.0, 0.0};
int numberOfTests = side1Values.length;
for(int i = 0; i < numberOfTests; i++) {
Triangle triangle =
new Triangle(side1Values[i], side2Values[i], side3Values[i]);
testTriangle(triangle);
}
}
private static void testTriangle(Triangle t) {
System.out.printf("Triangle (%.1f, %.1f, %.1f) ",
t.getSide1(), t.getSide2(), t.getSide3());
System.out.print(t.isEquilateral() ? "is equilateral" : "");
System.out.print(t.isRight() ? "is right" : "");
System.out.println();
}
}