Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.05.2014, 11:33   #1
Girei
Пользователь
 
Аватар для Girei
 
Регистрация: 22.10.2013
Сообщений: 72
Сообщение Конструкции or, if

Доброго времени суток. Недавно возник вопрос:
Есть две переменные, которые нужно сравнить с одним и тем же числом.
Код:
int a = 5, b = 6;
if ((a <> 12) || (b <> 12)){
....
}
Суть вопроса: возможно ли это сделать в одну конструкцию? Чтобы a,b сравнивались с 12 сразу, а не поочередно. Если нет, то есть ли какие-то методы оптимизации?
Girei вне форума Ответить с цитированием
Старый 10.05.2014, 16:54   #2
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Цитата:
Сообщение от Girei Посмотреть сообщение
Доброго времени суток. Недавно возник вопрос:
Есть две переменные, которые нужно сравнить с одним и тем же числом.
Код:
int a = 5, b = 6;
if ((a <> 12) || (b <> 12)){
....
}
Суть вопроса: возможно ли это сделать в одну конструкцию? Чтобы a,b сравнивались с 12 сразу, а не поочередно. Если нет, то есть ли какие-то методы оптимизации?
А че тут оптимизировать то? Современный процессор пока не умеет одновременно выполнять несколько операций.
Чего вам не хватает в имеющейся реализации?
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Старый 11.05.2014, 07:40   #3
Girei
Пользователь
 
Аватар для Girei
 
Регистрация: 22.10.2013
Сообщений: 72
По умолчанию

Длинно, не изящно. Мое эстетическое чувство не принимает
Girei вне форума Ответить с цитированием
Старый 11.05.2014, 09:21   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Код:
if(a + b != 24)
p51x вне форума Ответить с цитированием
Старый 11.05.2014, 10:00   #5
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,331
По умолчанию

a = 20
b = 4
waleri вне форума Ответить с цитированием
Старый 11.05.2014, 11:04   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Мое эстетическое чувство не принимает
Код:
if(a&b==12)...
не?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 14.05.2014, 10:22   #7
Girei
Пользователь
 
Аватар для Girei
 
Регистрация: 22.10.2013
Сообщений: 72
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Код:
if(a&b==12)...
не?
не будет работать. Во-первых, если написать не
Код:
if((a && b) == 12)
компилятор, просто ошибку выдаст, а при таком коде, всегда будет ложь, ибо, он, вероятно присвоит (a && b) = 1, если они оба не равны нулю
Всем спасибо за ответ, тему можно закрывать
Girei вне форума Ответить с цитированием
Старый 14.05.2014, 16:00   #8
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Ну вот Вам такое извращение:
Код:
#include <stdio.h>

int main(void) {
    int a = 12, b = 12;
    if (!(((unsigned long long) a << 32) + b == ((unsigned long long) 12 << 32) + 12)) // (a <> 12) || (b <> 12)
        printf("ok\n");
    else
        printf("error\n");
    return 0;
}
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 14.05.2014, 19:39   #9
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,331
По умолчанию

Мсье знает толк...
waleri вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамические конструкции San111 Паскаль, Turbo Pascal, PascalABC.NET 7 16.05.2012 09:27
Цикл конструкции Do While Trimbl Microsoft Office Excel 2 29.02.2012 19:00
Интересные конструкции с++ Sparky Помощь студентам 6 13.10.2011 22:47
циклические конструкции nex 9119 Помощь студентам 1 18.12.2010 17:34
Вопрос по конструкции if() С++ ROD Помощь студентам 2 20.12.2008 20:14