Отображение 2 результатов, когда должен отображаться только один.Интро Java - PullRequest
0 голосов
/ 28 сентября 2018
if(first == second || first == third || second == third)
{
    System.out.println("Isosceles Triangle");
}
if(first == second && first == third && second == third)
{
    System.out.println("Equilateral Triangle");
}
if(first != second && first != third && second != third)
    System.out.println("Scalene Triangle");

Я хочу, чтобы, если только 2 стороны были равны, то равнобедренные будут отображаться, но на данный момент они отображают равнобедренные и равносторонние, когда все стороны равны.

Ответы [ 2 ]

0 голосов
/ 28 сентября 2018

Во-первых, если все стороны равны, это равностороннее.
В противном случае, если какие-либо две стороны равны, это равнобедренное.
В противном случае, это разносторонне.ключевое слово else.

if (first==second && second==third) {
    System.out.println("Equilateral.");
} else if (first==second || second==third || first==third) {
    System.out.println("Isosceles.");
} else {
    System.out.println("Scalene.");
}

Мы проверяем условия в этом порядке, потому что условие, которое мы проверяем для равнобедренных треугольников, также применяется к равносторонним треугольникам.

0 голосов
/ 28 сентября 2018

Эта ссылка показывает, как использовать else, если

https://www.javatpoint.com/java-if-else

Я также сократил некоторые из ваших условий:

ЕСЛИ первый = второй И первый = третий ТОsecond = третий

Scalene будет напечатан, если треугольник не равнобедренный или равносторонний (без проверок)

if(first == second || first == third || second == third)
{
    System.out.println("Isosceles Triangle");
}
else if(first == second && first == third)
{
    System.out.println("Equilateral Triangle");
}
else{
    System.out.println("Scalene Triangle");
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...