Почему код работает не правильно?
Если указанное время больше 6 или меньше 12, то выводится "Доброе утро", если указанное время больше 12 или меньше 18, то выводится "Добрый день", в остальные случаи "добрый вечер".
let time = prompt( 'какое у вас время?' );
if (time > 6 || time < 12 ) {
alert( 'Доброе утро' );
} else if (time > 12 || time < 18 ) {
alert( 'Добрый день' );
} else {
alert( 'Добрый вечер' );
}
Для указания каких-то промежутков нужно использовать логическое И, а не логическое ИЛИ. Если вы пишете "больше 6 или меньше 12", то истиной будут любые числа.
Если ввести 19, то это число проходит по условию time > 6, если же 4, например, то оно проходит по условию time < 12. Также нужно не забывать про >=, а то пропускается число.
В итоге имеется:
let time = prompt( 'какое у вас время?' );
if (time > 6 && time < 12 ) {
alert( 'Доброе утро' );
} else if (time >= 12 && time < 18 ) {
alert( 'Добрый день' );
} else {
alert( 'Добрый вечер' );
}
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости