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

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

Войти
Регистрация
Восстановить пароль
 
JIexa
2 / 2 / 0
Регистрация: 07.02.2009
Сообщений: 36
#1

else, если какой-либо If не выполняется - C++

07.02.2009, 19:04. Просмотров 826. Ответов 4
Метки нет (Все метки)

Проблема! Почитав Самоучитель я так и не понял - каким образом мне сделать так, чтобы ELSE срабатывало в случае если какой-либо IF не верен, я знаю лишь два варианта, в котором ELSE срабатывает либо в первом варианте либо во втором.

C++
1
2
3
4
5
6
7
8
9
10
11
12
void __fastcall TForm1::Button2Click(TObject *Sender)
{
if (Edit1->Text != "") if (Edit2->Text != "")
{
Panel1->Caption =
Edit1->Text + " + " +
Edit2->Text + " = " +
FloatToStr(StrToFloat(Edit1->Text) + StrToFloat(Edit2->Text));
}
else
{Panel1->Caption = "Поле для ввода не может быть пустым!"; }
}
В этом случае срабатывает ELSE в случае, если второй IF (if (Edit2->Text != "")) не верен...

А если у меня будет 3 IF? Что делать тогда?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.02.2009, 19:04
Здравствуйте! Я подобрал для вас темы с ответами на вопрос else, если какой-либо If не выполняется (C++):

Если пользователь ничего не предпринимает в течении нескольких секунд, тогда выполняется какое-либо действие - C++
Ребята, нужно написать программу. Если пользователь ничего не предпринимает в течении нескольких секунд, тогда выполняется какое-либо...

Можно ли передать в функцию либо вектор, либо список, если да, то как? - C++
Можно ли передать в функцию либо вектор, либо список, если да, то как?

Присвоить заданным переменным максимальное из их значений в случае, если они неравны, либо ноль, если равны - C++
Дано две переменные целого типа: А И В. Если их значения не равны, то присвоить каждой переменной максимальное из этих значений, а если...

сделать чтобы программа считывала данные с сервера,т.е если значение в файле на сервере равно 1 , то выполняется какое-то действие,если нулю то нечего - C++
Как сделать чтобы программа считывала данные с сервера,т.е если значение в файле на сервере равно 1 , то выполняется какое-то действие,если...

При изменении каких либо данных программа либо вылетает, либо просто не изменяет данные - C++
Добрый вечер. Только недавно начал заниматься С++. И вот возникли проблемы. При изменении каких либо данных. Программа либо вылетает(Qt),...

две прямые либо паралельны либо совпадают либо не существуют - C++
Д даны числа a1, b1, c1, a2, b2, c2. Напечатать координаты точки пересечения прямых, описываемых уравнениями a1x+b1y=c1 и a2x+b2y=c2, либо...

4
Какодемон
1 / 1 / 0
Регистрация: 27.12.2008
Сообщений: 16
07.02.2009, 19:16 #2
Код
if (Edit1->Text != "") if (Edit2->Text != "")
замени на
Код
if (Edit1->Text != "" ИЛИ(2 палки, у мня на клаве нет) Edit2->Text != "")
Ну и там пошаманить с &&...
Мб не правильно, не компилил. Прост стоит ещё раз перечитать главу с оператором if. ИМХО
1
manfeese
129 / 128 / 16
Регистрация: 04.01.2009
Сообщений: 415
07.02.2009, 19:22 #3
Либо каждый if отделять скобками { }.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void __fastcall TForm1::Button2Click(TObject *Sender)   
{   
if (Edit1->Text != "")
{
   if (Edit2->Text != "")   
   {   
    Panel1->Caption =   
    Edit1->Text + " + " +   
    Edit2->Text + " = " +   
    FloatToStr(StrToFloat(Edit1->Text) + StrToFloat(Edit2->Text));   
   }   
   else  
   {Panel1->Caption = "Поле для ввода не может быть пустым!"; }   
   }
}
[I]else[/I] {...} //Этот [B]else[/B] уже используется к первому [B]if[/B]
0
accept
4822 / 3243 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
08.02.2009, 14:29 #4
Код
 
#include <stdio.h>

/* выводит адрес строковой константы */
main()
{
    printf("%u\n", "");
    return 0;
}
Код
    if (*(Edit1->Text) == '\0'
     || *(Edit2->Text) == '\0')
        Panel1->Caption = "Поле для ввода не может быть пустым!";
    else {
        Panel1->Caption = Edit1->Text +
        " + " +     
        Edit2->Text +
        " = " +     
        FloatToStr(StrToFloat(Edit1->Text) + 
        StrToFloat(Edit2->Text));
    }
1
accept
4822 / 3243 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
03.07.2009, 12:36 #5
это как раз else, если какой-либо If не выполняется, у тебя в первом топике сообщение вылетает только если второй if не выполняется, а если первый не выполняется - вообще тишина
можно при желании сделать так же, чтобы только для второго вылетало сообщение, но по теме нужно как раз то, что уже написано
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.07.2009, 12:36
Привет! Вот еще темы с ответами:

Как присвоить какой-либо цифре букву? - C++
При переводе из 10 в 16 нужно присвоить значениям 1-15 A-F. не понимаю как char не получается while (k &lt;= 16){ j = k % 16; k = k/...

Если if не выполняется, то можно не писать else? - C++
Например, код: if (a==true) cout &lt;&lt; &quot;a true&quot;; else cout &lt;&lt; &quot;a false&quot;; Можно заменить на? if(a==true) cout &lt;&lt;...

Функция sizeof() всегда должна присваиваться какой либо переменной? - C++
Если на 32 строке убрать int i т.е. написать просто sizeof(s); то программа зависнит. #pragma hdstop #include &lt;stdio.h&gt; #include...

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


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

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

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