На вход подаются три целых числа. Выведите true, если среди них есть ровно два чётных, и false - если нет. Sample Input: 4 6 7 Sample Output: true
import java.util.Scanner;
class MyProgram {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int num1 = scan.nextInt();
int num2 = scan.nextInt();
int num3 = scan.nextInt();
if((num1 % 2 == 0 & num2 % 2 == 0) & !(num3 % 2 == 0)) {
System.out.println("true");
} else {
System.out.println("false");
}
}
}
Пожалуйста только направьте не помогайте прямо хотелось бы самому дойти
Ответы (1 шт):
Автор решения: Anton Shchyrov
→ Ссылка
if (
((num1 + num2 + num3) % 2 == 1) &
((mum1 % 2 == 0) || (num2 % 2 == 0) || (num3 % 2 == 0))
) {
System.out.println("true");
} else {
System.out.println("false");
}
Пояснение. Сумма трех чисел нечетная в двух случаях:
- Все числа нечетные
- Ровно одно число нечетное
Второй вариант - это наш, а первый нужно исключить. Чтобы исключить первый вариант хотя бы одно число должно быть четным.
В итоге первое условие проверяет на нечетность всю сумму, а второе проверяет, что хотя бы одно число должно четное