0 / 0 / 0
Регистрация: 30.06.2021
Сообщений: 28

Тернарные операторы и ветвления

27.08.2022, 10:40. Показов 931. Ответов 2

Author24 — интернет-сервис помощи студентам
Здравствуйте. Подскажите пожалуйста, вот например у меня есть функция, которую можно описать двумя способами: ветвление или с применением тернарных операторов(функция в вложении).

Вот код с использованием ветвления:
C
1
2
3
4
5
6
7
8
9
if(x<a1){
        y=1;
    }else if(x<=a1||x<a2){
        y=2;
    }else if(x<=a2||x<a3){
        y=3;
    }else if(x>=a3){
        y=4;
    }
Как видим, здесь нет блока else.
Теперь пишем тоже самое, но с использованием тернарных операторов:
C
1
y=x<a1?1:(x<=a1||x<a2)?2:(x<=a2||x<a3)?3:x>=a3?4;
И получаем ошибку, т.к. у нас конец поля ; а ожидается :
Как этого избежать?
Изображения
 
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
27.08.2022, 10:40
Ответы с готовыми решениями:

Операторы присваивания, ввода- вывода. Операторы ветвления, выбора
Даны два ненулевых числа. Найти их сумму, разность, произведение, частное, остаток и целую часть от деления. Добавлено через 8 часов...

Типы данных. Операции. Операторы. операторы ветвления
Создать программу. Воспользоваться оператором вариантов. ...

Операторы ветвления и операторы передачи управления
1. Вычислить значения функции F при вещественных a, b, c, x, вводимых с клавиатуры. 2. Составить программу, которая печатает...

2
Заблокирован
27.08.2022, 11:04
C++
1
y=x<a1?1:(x<a2)?2:(x<a3)?3:4;
0
0 / 0 / 0
Регистрация: 30.06.2021
Сообщений: 28
27.08.2022, 13:51  [ТС]
Получается, что правильно будет вот так:
C
1
y=x<a1?1:(x<=a1||x<a2)?2:(x<=a2||x<a3)?3:4;
Я задал вопрос, думая, что есть вариант, где не происходит ни одно из условий и else там не уместен, но фактически, если не выполняются 3 первых условия, будет полюбому y=4, иначе 3. Сам себя запутал.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
27.08.2022, 13:51
Помогаю со студенческими работами здесь

операторы ветвления
Вводиться двузначное число. Определить, равен ли квадрат этого числа учетверенной сумме кубов его цифр. Например, для числа 48 ответ...

Операторы ветвления С++
Дана точка на плоскости с координатами(x,y). Составить программу,которая выдает одно из сообщений &quot;да&quot;,&quot;нет&quot;,&quot;на...

Операторы ветвления
Если целое число m делится на целое число n, то вывести на экран частное от деления, в противном случае вывести сообщение «m на n нацело не...

Операторы ветвления
Всем доброго времени суток, Знаю что программа элементарная, но помогите разобраться и исправить ошибку, Сегодня начал писать одну...

Операторы ветвления
Подскажите как решить


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

Новые блоги и статьи
Вопросы на собеседованиях по микросервисам
ArchitectMsa 27.03.2025
Работодатели ищут не просто разработчиков, знающих базовые концепции, а специалистов, разбирающихся в тонкостях масштабирования, отказоустойчивости и производительности. Сейчас на первый план выходят. . .
Взаимодействие Python с REST API
py-thonny 27.03.2025
REST API - это архитектурный стиль взаимодействия компонентов распределённого приложения в сети. Python располагает функциональным набором инструментов для работы с REST API и основная библиотека для. . .
sshd restrictions, ssh access limitations
jigi33 26.03.2025
sshd restrictions | ssh access limitations рестрикции доступа на сервер sshd статья: https:/ / www. golinuxcloud. com/ restrict-allow-ssh-certain-users-groups-rhel
Компиляция C++ с Clang API
NullReferenced 24.03.2025
Компиляторы обычно воспринимаются как черные ящики, которые превращают исходный код в исполняемые файлы. Мы запускаем компилятор командой в терминале, и вуаля — получаем бинарник. Но что если нужно. . .
Многопоточное программировани­е в C#: Класс Thread
UnmanagedCoder 24.03.2025
Когда запускается приложение на компьютере, операционная система создаёт для него процесс - виртуальное адресное пространство. В C# этот процесс изначально получает один поток выполнения — главный. . .
SwiftUI Data Flow: Передача данных между представлениями
mobDevWorks 23.03.2025
При первом знакомстве со SwiftUI кажется, что фреймворк предлагает избыточное количество механизмов для передачи данных: @State, @Binding, @StateObject, @ObservedObject, @EnvironmentObject и другие. . . .
Моки в Java: Сравниваем Mockito, EasyMock, JMockit
Javaican 23.03.2025
Как протестировать класс, который зависит от других сложных компонентов, таких как базы данных, веб-сервисы или другие классы, с которыми и так непросто работать в тестовом окружении? Для этого и. . .
Архитектурные паттерны микросервисов: ТОП-10 шаблонов
ArchitectMsa 22.03.2025
Популярность микросервисной архитектуры объясняется множеством важных преимуществ. К примеру, она позволяет командам разработчиков работать независимо друг от друга, используя различные технологии и. . .
Оптимизация рендеринга в Unity: Сортировка миллиона спрайтов
GameUnited 22.03.2025
Помните, когда наличие сотни спрайтов в игре приводило к существенному падению производительности? Время таких ограничений уходит в прошлое. Сегодня геймдев сталкивается с задачами совершенно иного. . .
Образование и практика
Igor3D 21.03.2025
Добрый день А вот каково качество/ эффективность ВУЗовского образования? Аналитическая геометрия изучается в первом семестре и считается довольно легким курсом, что вполне справедливо. Ну хорошо,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru