Условна конструкция: if else

     Условните конструкции извършват проверка на дадено условие , в
зависимост от това дали условието е вярно (true) или не (false),
се изпълняват различни действия (оператори или поредица от оператори).
Деклариране (опростена форма без оператора else ):
if (условие)
{
поредица от оператори;
}

      Действие на оператора if :
Проверява се условието и ако е вярно се изпълняват операторите (инструкциите) ,
които се намират между фигурните скоби. Ако условието не е вярно се прескачат
тези оператори и се преминава на реда непосредствено след затварящата фигурна
скоба .
   Пример 1 : Намиране на по-голямото от две числа.

#include <iostream> // for Code::Blocks
using namespace std;
int main()
   {
      int a,b;
      int c;
      cout<< "a=";
      cin>>a;
      cout<< "b=";
      cin>>b;
       if (a>b)
         {
             cout<< "a>b"<< endl;
         }
       if(a< b)
         {
            cout<< "b>a"<< endl;
         }
      return 0;
   }

      Действие на if else
if (условие)
{
поредица от оператори 1;
}
else
{
поредица от оператори 2;
}
Проверява условието и ако е вярно се изпълняват поредица от оператори 1 .
Ако условието не е вярно се изпълняват поредица от оператори 2 .
   Пример 2 : Намиране на по-голямото от две числа, проверява дали са равни като
използваме if else.

#include <iostream> // for Code::Blocks
using namespace std;
int main()
   {
      int a,b;
      int c;
      cout<<"a=";
      cin>>a;
      cout<< "b=";
      cin>>b;
        if (a>b)
          {
             cout<< "a>b"<< endl;
          }
        else if(b>a)
          {
            cout<< "b>a"<< endl;
          }
        else
          {
            cout<< "b=a"<< endl;
          }
      return 0;
  }


   Пример 3 : Въвеждаме число от клавиатурата и програмата да
изведе на екрана дали е четно или нечетно.

#include <iostream> // for Code::Blocks
using namespace std;
int main()
  {
      int a;
      cout<<"Input number : ";
      cin>>a;
        if (a%2==0)         cout<< "even"<< endl;
        else cout<< "odd"<< endl;
      return 0;
    }

Обяснение : Използва се принципа, че при делението на 2 четното число се дели без остатък ,
а нечетното число има остатък. В конкретния случай работим с цели числа и
остатъците съответно са 0 и 1 ==> if (a%2==0) ако остатъка е 0 извежда четно (even).

   Пример 4 : Въвеждаме число от клавиатурата и програмата да
изчисли .....

#include <iostream> // for Code::Blocks
#include <math.h>
#include <iomanip>

using namespace std;
int main()
{
double x;
cout<< "x=";
cin>> x;
if (x>0)
{
cout<< "y=sqrt(x)"<< setw(20)<< sqrt(x)<< endl;
}
else if (x==0)
{
cout<< "y=x+5.123456="<< setprecision(4)<< x+5.123456<< endl;
}
else
cout<< "y=x*x="<< setiosflags(ios::fixed)<< setprecision(7) << pow(x,2)<< endl;
return 0;
}

   Пример 5 : Напишете програма, която да изчисли зависимостта на величините х и у както следва:
ако x<= -4 то y=x2+3x+5
ако х е в интервала от -4 до +5 ( -4< x <5) то y=2x+|x|
ако х> 5 то y=x-10

#include <iostream> // for Code::Blocks
#include <math.h>
using namespace std;
int main()
{
double y;
int x;
cout<< "x=";
cin>> x;
if (x<=-4)
{
y=x*x+3*x+5;
cout<< "y="<< y<< endl;
}
if(-4<=x && x<=5)
{
y=2*x+ abs(x);
cout<<"y="<< y<< endl;
}
if (x>5)
{
y=x-10;
cout<<"y="<< y<< endl;
}
return 0;
}

Пример за вложен условен оператор

   Пример 6 : Напишете програма, която при въведени стойности на х от клавиатурата трябва да изчисли функцията y= f(x) както следва:
ако x е в интервала от -5 ÷ 11 ( -5< x <11)
при x=0 то y=x+5
ако 0 ако x=10 то y=x/x-1


#include <iostream> // for Code::Blocks
using namespace std;
int main()
{
double x,y;
cout<< "x=";
cin>> x;
if (-5<=x and x<11)
{
if(x==0) y=x+5;
if (0< x && x<=5) {y=x*x+3*x;}
if(x==10)
{
y=x/(x-1);
}
cout<<"y="<< y<< endl;
}
else
{ cout<< " The number must be between-5 and 11 "; }
return 0;
}


Благодаря за вниманието Ви !