Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Senarist
45 / 45 / 12
Регистрация: 14.03.2014
Сообщений: 600
#1

Тернарный оператор - найти ошибку в коде - C++

11.07.2014, 19:22. Просмотров 332. Ответов 6
Метки нет (Все метки)

Не пойму почему выдает ошибку, вроде программы самые простые и ошибиться то негде:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include<iostream>
using namespace std;
int main()
{
    double a,b;
    bool state;
    cout<<"a= ";
    cin>>a;
    cout<<"b= ";
    cin>>b;
    cout<<"x is: ";
    state=(a!=0);
    state?(cout<<b/a<<endl,exit(0)):state=(a==0)&&(b==0);
    cout<<(state?"any number!":"no result!")<<endl;
    return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.07.2014, 19:22
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Тернарный оператор - найти ошибку в коде (C++):

Тернарный оператор и множество ошибок в коде - C++
Вот задание: И простой код: #include&lt;iostream&gt; using namespace std; int main() { int n,k; cin&gt;&gt;n; ...

Используя тернарный оператор из трёх чисел найти среднее по значению - C++
Нужно найти с помощью оператора ?: mid(a,b,d). То есть из трёх чисел найти среднее по значению.

Тернарный оператор vs if/else - C++
Зачем? Ведь, так элегантнее. Начало http://www.cyberforum.ru/cpp-beginners/thread718192.html

Тернарный оператор - C++
Добрый день, как доказать, что нету тенарного оператора ? Я как понимаю, есть только тенарная операция, которая представляет...

Засунуть в тернарный оператор - C++
Помогите засунуть выражение if ( (i &lt; 0 || j &lt; 0) || (i &gt;= ROW || j &gt;= COL) || (i == oi &amp;&amp; j == oj)) continue; else if (arr)...

Альтернатива if (.) {.} (тернарный оператор) - C++
блин запамятовал как это делается пишут вместо стандартной формы что то типа y &lt; x : x = m напомните плиз как это называется, какие там...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
xSCJx
22 / 19 / 1
Регистрация: 24.12.2012
Сообщений: 435
11.07.2014, 19:47 #2
в VS все норм.

Добавлено через 35 секунд
Или ошибка логическая?
0
Senarist
45 / 45 / 12
Регистрация: 14.03.2014
Сообщений: 600
11.07.2014, 19:49  [ТС] #3
13 C:\Users\flagship\Desktop\Untitled5.cpp `((void)(+(&std::cout)->std::basic_ostream<_CharT, _Traits>::operator<< [with _CharT = char, _Traits = std::char_traits<char>](#`rdiv_expr' not supported by dump_expr#<expression error>))->std::basic_ostream<_CharT, _Traits>::operator<< [with _CharT = char, _Traits = std::char_traits<char>](std::endl [with _CharT = char, _Traits = std::char_traits<char>]), exit(0))' has type `void' and is not a throw-expression
Вот что то такое.
0
BF_
3 / 3 / 1
Регистрация: 07.09.2013
Сообщений: 78
11.07.2014, 20:23 #4
Цитата Сообщение от Senarist Посмотреть сообщение
(cout<<b/a<<endl,exit(0))
Так нельзя.
Либо создай метод, либо используй конструкцию if else .
0
Senarist
45 / 45 / 12
Регистрация: 14.03.2014
Сообщений: 600
11.07.2014, 20:28  [ТС] #5
Данный пример из учебника, тема тернарный оператор, поэтому без ифов и элсов
0
BF_
3 / 3 / 1
Регистрация: 07.09.2013
Сообщений: 78
11.07.2014, 20:39 #6
У тернарного оператора возвращаемые значения должны быть одного типа.
0
Qwertiy
820 / 628 / 75
Регистрация: 20.08.2013
Сообщений: 2,525
11.07.2014, 23:36 #7
Цитата Сообщение от Senarist Посмотреть сообщение
state?(cout<<b/a<<endl,exit(0)):state=(a==0)&&(b==0);
state?(cout<<b/a<<endl,exit(0),0):state=(a==0)&&(b==0);

Добавлено через 36 секунд
Нельзя пихать void в качестве значения.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.07.2014, 23:36
Привет! Вот еще темы с ответами:

Тернарный оператор: возврат значения - C++
Приветствую. При компиляции ниже приведенного кода bool MyFunc() { bool flag = false; // .... некоторые действия // .......

Шахматы(заменить тернарный оператор) на if else - C++
#include &lt;iostream&gt; #include &lt;Windows.h&gt; using namespace std; void main() { int h, w, i, j; cout &lt;&lt; &quot;Введите...

Как работает тернарный оператор - C++
Здравствуйте. Объясните, пожалуйста, что значит эта строка color = (color == 'W') ? 'B' : 'W';

Простая задачка про тернарный оператор - C++
Переписал с учебника простую задачку, однако на 10 и 12 строке показывает ошибки. Что тут не так? #include&lt;iostream&gt; #include&lt;cmath&gt; ...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
11.07.2014, 23:36
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru