public static void checkSeason(int month) {
//напишите тут ваш код
if (month==12 || month==1 || month==2){
System.out.println("зима");
}
if (month==3 || month==4 || month==5){
System.out.println("весна");
}
if (month==6 || month==7 || month==8){
System.out.println("лето");
}
if (month==9 || month==10 || month==11){
System.out.println("осень");
}
else{
System.out.println("Такого месяца не существует");
}
}
При выполнении метода checkSeason(12); должно выводиться: зима;
Почему еще выводится текст из блока else?
Нормально ли решена задача?Никита Власов
10 уровень
Почему не игнорируется else?
Решен
Комментарии (8)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Илья ГековMaster
22 августа 2018, 16:25
У вас блок else относится к последнему блоку if, соответственно условие последнего if не выполняется и выводится блок else
+3
Никита Власов
22 августа 2018, 16:55
ого, не знал такого.
А как сделать, что бы else относился ко всем if?
0
Илья ГековMaster
22 августа 2018, 17:05решение
Поставить else перед всеми if кроме первого. У вас по сути сейчас каждый if - это отдельный блок условия, который проверяется в любом случае, независимо от того, было ли до этого какое-либо из условий выполнено.
+2
Никита Власов
22 августа 2018, 17:08
Спасибо тебе добрый человек, дай бог здоровья тебе и твоей семье. Счастья удачи и везения.
0
Nameless
1 октября 2018, 20:10
if ((month > 2) && (month < 6)) {
System.out.println("весна");
}
if ((month > 5) && (month < 9)) {
System.out.println("лето");
}
if ((month > 8) && (month < 12)) {
System.out.println("осень");
}
if ((month >11) && (month < 3)) {
System.out.println("зима");
Помогите понять, почему выводит на экран только весну, лето и осень.
Игнорирует зиму(
0
Илья ГековMaster
1 октября 2018, 20:13
А каким образом одно и то же значение может быть одновременно больше 11 И меньше 3?
+1
Кодер Кодерович
1 октября 2018, 20:14
)))
0
Nameless
1 октября 2018, 20:22
if ((month == 12) || (month < 3))
сообразил за минуту до вашего ответа))))
спасибо
0