Конечно, есть решения этой задачи эффективней, но любопытство съест, если просто так от этого отказаться. А в чем проблема понять не могу. Как мне кажется, испробовал все варианты, программа отвечает ожидаемо. Если это не так, и вы видите исход ломающий логику программы, не говорите ответ, напишите его, пожалуйста.
package com.javarush.task.task04.task0415;
/*
Правило треугольника
*/
import java.io.*;
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String A = reader.readLine();
String B = reader.readLine();
String C = reader.readLine();
int a = Integer.parseInt(A);
int b = Integer.parseInt(B);
int c = Integer.parseInt(C);
if ((a + b) < c | a == 0 | b == 0 | c == 0)
System.out.println("Треугольник не существует.");
else if ((a + c) < b | a == 0 | b == 0 | c == 0)
System.out.println("Треугольник не существует.");
else if ((b + c) < a | a == 0 | b == 0 | c == 0)
System.out.println("Треугольник не существует.");
else
System.out.println("Треугольник существует.");
}
}
/* public static int callWithTest(String s) {
int a = Integer.parseInt(s);
if (a == 0) {
System.out.println("Ошибка.");
return 0;
}
else
return a;
}
} */