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

Где тут отличия? - C++

Восстановить пароль Регистрация
 
Temirlan90
 Аватар для Temirlan90
131 / 131 / 8
Регистрация: 30.09.2010
Сообщений: 333
04.02.2011, 18:55     Где тут отличия? #1
Добрый вечер. Вот есть 2 исходника с одинаковым кодом, но с разными конструкциями оператора условия.
1)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
 
int main() {
    setlocale(LC_ALL, "Russian");
    int n;
    std::cin >> n;
    if(n > 5) {
        std::cout << "Число больше 5.";
    }
    else {
        std::cout << "Число меньше 5.";
    }
    system("pause >> void");
}
2)
C++
1
2
3
4
5
6
7
8
9
#include <iostream>
 
int main() {
    setlocale(LC_ALL, "Russian");
    int n;
    std::cin >> n;
    (n > 5) ? std::cout << "Число больше 5." : std::cout << "Число меньше 5.";  
    system("pause >> void");
}
В чем между ними разница?
Лучшие ответы (1)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
04.02.2011, 18:58     Где тут отличия? #2
Temirlan90, Тернарный оператор и обычное if/else вот и все)
Temirlan90
 Аватар для Temirlan90
131 / 131 / 8
Регистрация: 30.09.2010
Сообщений: 333
04.02.2011, 19:01  [ТС]     Где тут отличия? #3
ForEveR, а так разницы нету, что именно юзать в плане функционала?
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
04.02.2011, 19:03     Где тут отличия? #4
Temirlan90, В плане функционала - нет. Краткая запись для таких условий впринципе интереснее)
Temirlan90
04.02.2011, 19:12  [ТС]
  #5

Не по теме:

ForEveR, получается синтаксический сахар

alex_x_x
бжни
 Аватар для alex_x_x
2441 / 1646 / 84
Регистрация: 14.05.2009
Сообщений: 7,163
04.02.2011, 19:35     Где тут отличия? #6
я бы так написал
C++
1
std::cout << ((n > 5) ? "Число больше 5." : "Число меньше 5.");
CyBOSSeR
Эксперт C++
 Аватар для CyBOSSeR
2294 / 1664 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
04.02.2011, 20:11     Где тут отличия? #7
Как вариант:
C++
1
2
3
std::cout << "Число "
          << (n > 5? "больше" : "меньше")
          << " 5.";
Mr.X
Эксперт С++
 Аватар для Mr.X
2807 / 1583 / 248
Регистрация: 03.05.2010
Сообщений: 3,697
04.02.2011, 20:20     Где тут отличия? #8
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от alex_x_x Посмотреть сообщение
я бы так написал
C++
1
std::cout << ((n > 5) ? "Число больше 5." : "Число меньше 5.");
А я бы так:
C++
1
std::cout << ((n > 5) ? "Число больше 5." : "Число меньше или равно 5.");
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.02.2011, 20:26     Где тут отличия?
Еще ссылки по теме:

C++ Где тут ошибка? Программа сортировки массива по возрастанию
C++ Где тут ошибка то?
C++ C++ Отличия структур от массивов

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

Или воспользуйтесь поиском по форуму:
alex_x_x
04.02.2011, 20:26     Где тут отличия?
  #9

Не по теме:

Mr.X, вот блин

Yandex
Объявления
04.02.2011, 20:26     Где тут отличия?
Ответ Создать тему
Опции темы

Текущее время: 15:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru