При решении задачи никак не получалось прописать условия в операторе if else. Подглядела решение:
if (x<min) {
secondMin=min;
min=x;
} else if { x>min & & x<secondMin) {
secondMin=x;
}}
Но я его не понимаю. Объясните, пожалуйста.
Tori
6 уровень
Объясните
Обсуждается
Комментарии (2)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
ГоффMaster
4 августа 2025, 14:47полезный
Представь числовую ось, на которой две точки, мин и мин2.
Нововедённье число может попасть в одну из трёх частей - слева от мин, между мин и мин2, и справа от мин2.
Первый иф проверяет, не слева ли от мина попало число, и соответственно корректирует точки на прямой. Второй - не между ли ними, и корректирует нужную точку. А третий нам не важен, так как если число попало туда, то ничего делать не надо.
+1
Александр Ф
4 августа 2025, 14:43полезный
Если число, которое ввели меньше первого минимального, то второе минимальное принимает значение первого, а первому присваивается значение числа, которое ввели.
Иначе если число которое ввели, больше первого минимального, но меньше второго минимального, то просто второму минимальному присваивается значение, которое ввели.
Рекомендую освоить debug, очень помогает, поверь! Ещё можно кидать код в какой-нибудь умный чат, он тоже поможет в расшифровке.
+1