NeMoMGE
@NeMoMGE
НЕ Джун в python

Что делают данные строчки кода?

first = (total != 0 ? total : first);
second == 0 ? lcd.print("Invalid") : total = (float)first / (float)second;

Проект в tinkercad:
https://www.tinkercad.com/embed/6AZ1ayVS04s
  • Вопрос задан
  • 145 просмотров
Решения вопроса 1
vabka
@vabka
Токсичный шарпист
А при чём тут C#?
Если вопрос о том, что значит конструкция {condition} ? {expr1] : {expr2}.
То это тернарный оператор. Если выражение {condition} истинно, то всё выражение будет равно {expr1} иначе {expr2}

Конкретно это:
first = (total != 0 ? total : first);
Будет значить "Присвоить переменной first значение total, если total != 0 иначе присвоить ей значение first (оставить как есть)".
Как мне кажется, код этот плохой и было бы лучше написать так:
if (total != 0) {
  first = total;
}


Следующая строка ещё хуже.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
// тернарный оператор если total не равен 0 тогда first присвается  total в обратном случае first
first = (total != 0 ? total : first);
// тернарный оператор если second равен 0 тогда печать сообщения, в обратном случае какая то операция
second == 0 ? lcd.print("Invalid") : total = (float)first / (float)second;
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы