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

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

Войти
Регистрация
Восстановить пароль
 
olel41a
0 / 0 / 0
Регистрация: 09.08.2010
Сообщений: 22
#1

Смысл выражения x%2 - C++

24.11.2010, 14:31. Просмотров 344. Ответов 3
Метки нет (Все метки)

Здравствуйте. Помогите разобраться с кодом. Я только начинаю изучать C++. Просматриваю примеры кодов из раздела "Задача для лучшего понимания" форума. Вопрос следующий: что означает строка
C++
1
if(!(x%2))
в примере
C++
1
2
3
4
5
6
7
 int x=1;
    while(++x<10)
    {
      if(!(x%2)) continue;
      if(!(x%2)) break;
      }
cout << x << endl;
и зачем нужна строка
C++
1
if(!(x%2)) break;
ведь и с ней, и без неё код работает одинаково.
Заранее благодарен.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.11.2010, 14:31     Смысл выражения x%2
Посмотрите здесь:

Объясните смысл выражения C++
C++ [C/C++] Смысл многоточия (...)
C++ конструктор копировщик-смысл?
подскажите смысл выражения C++
Смысл спецификатора mutable C++
Смысл конструктора класса C++
В чем смысл выражения "y+='A'-10" ? C++
C++ Смысл выражения
Опишите процесс вычисления выражения заданного выражения 3 + 2 * x -0,5 – 4 / x. Обраб отайте ошибку извлечения квадратного корня из отрицательного C++
C++ Смысл обьединений
Дан файл, содержащий текст и арифметические выражения. Выписать и вычислить все выражения C++
Смысл использования полиморфизма C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
silent_1991
Эксперт C++
4949 / 3025 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
24.11.2010, 14:40     Смысл выражения x%2 #2
Давайте разбираться изнутри. Что за операция %? Эта операция возвращает остаток от деления своего левого операнда на правый. Т.е. x % 2 - остаток от деления x на два. Он может быть либо 0 (число чётное), либо 1 (число нечётное). Когда над результатом производится операция !, то этот результат неявно приводится к типу bool, т.о. единица становится true, а нуль - false. Когда производим операцию отрицания !, получаем соответственно, что true становится false и наоборот. Таким образом, в итоге получаем, что то, что заключено в if, выполнится тогда, когда число нечётное.
Ну а зачем тут эта строка с бряком - мне тоже не очень ясно, ведь при выполнении условия всё равно будет происходить continue и до второго if'а не дойдёт, либо вообще ничего не будет выполняться - при невыполнении условия.
olel41a
0 / 0 / 0
Регистрация: 09.08.2010
Сообщений: 22
24.11.2010, 14:57  [ТС]     Смысл выражения x%2 #3
Спасибо. Теперь всё ясно.
legend
24.11.2010, 15:03     Смысл выражения x%2
  #4

Не по теме:

Цитата Сообщение от olel41a Посмотреть сообщение
З
и зачем нужна строка ведь и с ней, и без неё код работает одинаково.
Ну да.. чисто логически она не нужна.. типо смысл рисовать на белом полотне белой краской??

Yandex
Объявления
24.11.2010, 15:03     Смысл выражения x%2
Ответ Создать тему
Опции темы

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