Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.72/25: Рейтинг темы: голосов - 25, средняя оценка - 4.72
2 / 5 / 0
Регистрация: 06.11.2011
Сообщений: 276
1

Условие в условии

02.05.2013, 10:11. Просмотров 4498. Ответов 10
Метки нет (Все метки)

Здравствуйте всем.

Периодически нужно менять условия и поэтому одно из двух условий делал неактивным помещая в /*----*/

Код
if( 
  условие 1

 /*условие 2*/

  ){очень много строк}


Попытался сделать так, но компилятор не пропустил.

Код
if( 
  if(k==1){условие 1}

   else {условие 2}

  ){очень много строк}

Подскажите, пожалуйста, как можно в данном случае решить вопрос.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.05.2013, 10:11
Ответы с готовыми решениями:

Условие в условии
Добрый день, уважаемые гуру! Очень вас прошу, помогите с задачей. Поюзал поиск, но потом понял,...

Условие в условии
Как сделать условие в условии? Данный код не работает, что делать? if($row2 == 2){ if($row2 >=...

Условие в условии
Ребят скажите почему не работает. Когда я включаю CheckBox2 то в memo1 почему-то не меняется текст,...

Условие в условии
Доброго времени суток, программисты! Интересует вопрос: можно ли сделать условие в условии? Пример...

10
37 / 37 / 22
Регистрация: 16.04.2013
Сообщений: 321
Записей в блоге: 1
02.05.2013, 11:07 2
if(усл)
{
if(усл){}
else {}
}
else
{
if(усл){}
else {}
}

можно разветвлять до бесконечности
0
2 / 5 / 0
Регистрация: 06.11.2011
Сообщений: 276
02.05.2013, 11:31  [ТС] 3
В {....} находиться около 2 тысяч строк программного кода, 4*2000=8000. Многовато будет.
0
0x10
02.05.2013, 11:44
  #4

Не по теме:

До конца так и не понял что же хочет автор, но 2к строк кода - почти наверняка стоит разбить на функции.

0
2 / 5 / 0
Регистрация: 06.11.2011
Сообщений: 276
02.05.2013, 11:58  [ТС] 5
Miwa123, В {....} находиться около 2 тысяч строк программного кода, 4*2000=8000. Многовато будет.
0
4194 / 1787 / 211
Регистрация: 24.11.2009
Сообщений: 27,563
02.05.2013, 16:29 6
Цитата Сообщение от sergey.shuvalov Посмотреть сообщение
Периодически нужно менять условия и поэтому одно из двух условий делал неактивным помещая в /*----*/
Юзай флаг переключения условий:
C++
1
2
3
4
5
if (((условие1)&&f)||((условие2)&&(!f))){
}
else
{
}
.
1
2 / 5 / 0
Регистрация: 06.11.2011
Сообщений: 276
02.05.2013, 17:19  [ТС] 7
taras atavin, Надо попробовать.

Добавлено через 23 минуты
taras atavin, Кстати, натолкнули на классную идею. Если int f=1, f=2,f=3,f=3,f=4,....... , тогда можно переключать и выбирать из "бесконечного" числа условий.
if( ........ ((условие n)&&(f==n))||((условие n)&&(f==n))||((условие n)&&(f==n))..........){}
0
4194 / 1787 / 211
Регистрация: 24.11.2009
Сообщений: 27,563
02.05.2013, 17:26 8
Цитата Сообщение от sergey.shuvalov Посмотреть сообщение
Если int f=1, f=2,f=3,f=3,f=4,....... , тогда
Брез собачий. f должно быть булевым. А если тебе надо индексировать условия, то
C++
1
2
3
4
5
 if (((условие1)&&(f==1))||((условие2)&&(f==2))||((условие3)&&(f==3))||((условие4)&&(f==4))){
}
else
{
}
0
2 / 5 / 0
Регистрация: 06.11.2011
Сообщений: 276
02.05.2013, 19:11  [ТС] 9
taras atavin, Да я уже сделал и всё работает. Насчёт бреда. Может ты меня не понял. Когда я объявил int f,
я уже подразумевал, что f уже не флаг, а обычная целочисленная переменная. Я подумал, что это и так понятно. Извиняюсь, если это не все сразу поняли.

А else я в данном случае не использую.

И f никому ничего не должно.
0
4194 / 1787 / 211
Регистрация: 24.11.2009
Сообщений: 27,563
03.05.2013, 17:11 10
Цитата Сообщение от sergey.shuvalov Посмотреть сообщение
я уже подразумевал, что f уже не флаг, а обычная целочисленная переменная. Я подумал, что это и так понятно. Извиняюсь, если это не все сразу поняли.
Это как раз легко читается. Но в самом условии должен быть bool.

Добавлено через 1 минуту
Цитата Сообщение от sergey.shuvalov Посмотреть сообщение
И f никому ничего не должно.
Это ты никому и ничего не должен, ты творец, а f в данном случае тварь и должна.
0
2 / 5 / 0
Регистрация: 06.11.2011
Сообщений: 276
04.05.2013, 13:24  [ТС] 11
taras atavin, Скорее не в условии bool, а само условие является bool.
f - это символ переменной в данном случае. Может инициализироваться как int, float, bool и т.д.
Поэтому символ не может кому-либо и чему-либо должен. За подсказку спасибо большое, но по поводу f, я останусь при своём мнении, и при этом никто не запрещает Вам иметь, отличное от моего, мнение.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.05.2013, 13:24

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

Условие в условии и так далие
Возмём к примеру вот это: есть 4 вида показателей: 1 показатель *2 или не умножает её я разбиваю...

Почему не работает условие в условии и так далие?
<? if (!empty($_POST) && !empty($_POST) && !empty($_POST)) { $type =...

Как найти для этих условии 2 парных чисел а и b при котором выполняется все условии?
Мой пример кода был таким данный момент но не работал. В экране пустота. Ничего не выводится. Где у...

Условие if. Как сделать повтор выполнения if-а, если условие не удовлетворяет требованиям в данный момент
Суть вопроса такова. В процессе работы программы запускается несколько потоков. Один из них...


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

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

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