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

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

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

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

07.02.2009, 19:04. Просмотров 806. Ответов 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? Что делать тогда?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.02.2009, 19:04     else, если какой-либо If не выполняется
Посмотрите здесь:

Как выйти?, если условие не выполняется C++
C++ две прямые либо паралельны либо совпадают либо не существуют
Если if не выполняется, то можно не писать else? C++
Программа проверяет, содержится ли какой-либо предлог из массива в данной строчке C++
Если пользователь ничего не предпринимает в течении нескольких секунд, тогда выполняется какое-либо действие C++
C++ Как присвоить какой-либо цифре букву?
Проверить, является ли какой-либо член последовательности точным квадратом C++
C++ Функция sizeof() всегда должна присваиваться какой либо переменной?
C++ Присвоить заданным переменным максимальное из их значений в случае, если они неравны, либо ноль, если равны
C++ Вычислить, есть ли в какой либо части строки число 666
C++ Можно ли передать в функцию либо вектор, либо список, если да, то как?
Как вернуться к началу компиляции после выполнения какой либо функции? C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Какодемон
1 / 1 / 0
Регистрация: 27.12.2008
Сообщений: 16
07.02.2009, 19:16     else, если какой-либо If не выполняется #2
Код
if (Edit1->Text != "") if (Edit2->Text != "")
замени на
Код
if (Edit1->Text != "" ИЛИ(2 палки, у мня на клаве нет) Edit2->Text != "")
Ну и там пошаманить с &&...
Мб не правильно, не компилил. Прост стоит ещё раз перечитать главу с оператором if. ИМХО
manfeese
129 / 128 / 16
Регистрация: 04.01.2009
Сообщений: 415
07.02.2009, 19:22     else, если какой-либо If не выполняется #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]
accept
4817 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
08.02.2009, 14:29     else, если какой-либо If не выполняется #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));
    }
accept
4817 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
03.07.2009, 12:36     else, если какой-либо If не выполняется #5
это как раз else, если какой-либо If не выполняется, у тебя в первом топике сообщение вылетает только если второй if не выполняется, а если первый не выполняется - вообще тишина
можно при желании сделать так же, чтобы только для второго вылетало сообщение, но по теме нужно как раз то, что уже написано
Yandex
Объявления
03.07.2009, 12:36     else, если какой-либо If не выполняется
Ответ Создать тему
Опции темы

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