Archiwa tagu: if else

C++ kurs podstawy programowania. Instrukcja warunkowa if else.

Instrukcja IF ELSE
Pierwszą z instrukcji warunkowych jaką poznamy jest instrukcja if … else. Definicja if-a poniżej.

[cpp]
if(warunek)
{
// jeżeli warunek jest spełniony, czyli przyjmuje wartość TRUE (prawdy)
// to wykona się kod pomiędzy tymi klamrami
}
else
{
// w przeciwnym wypadku wykona się ten kod tutaj
// czyli warunek przyjmuje wartość FALSE (fałsz)
}
[/cpp]

Wróćmy do przykładu z kontrolowaniem prędkości. Jak mogłoby to wyglądać. Postarajmy się to oprogramować. Przyjmijmy, że co chwilę odczytujemy wartość z czujnika prędkości auta. Wartość z czujnika wrzucamy do zmiennej o nazwie aktualna_predkosc. Mamy też oprogramowane dwie funkcje. Pierwsza odcina dopływ paliwa i będzie miała nazwę zamknij_doplyw_paliwa(), a druga otwierająca z powrotem  dopływ paliwa o nazwie otworz_doplyw_paliwa(). Będzie nam potrzebna jeszcze jedna zmienna, nazwiemy ją dopływ_paliwa, zaraz wyjaśnię dlaczego. Nasz kod mógłby wyglądać jak poniżej.

[cpp]
if(aktualna_predkosc >= 200)
{
zamknij_doplyw_paliwa();
doplyw_paliwa = "Z";
}
else
{
// sprawdz czy doplyw zamkniety
if(doplyw_paliwa == "Z")
{
otworz_doplyw_paliwa();
doplyw_paliwa = "O";
}
}

[/cpp]

Powyższy kod można przetłumaczyć tak. Jeżeli aktualna_predkosc jest większa lub równa 200, czyli moment kiedy przekroczyliśmy prędkość graniczną 200 km/h, to uruchom funkcję zamknij_doplyw_paliwa() i ustaw zmienną dopływ_paliwa na "Z" (zamknięty). W przeciwnym przypadku, czyli kiedy prędkość jest mniejsza niż 200 km/h, wykonaj kod z części else{}. Ale tutaj mamy drugiego if-a, bo jeszcze musimy sprawdzić czy aktualnie dopływ_paliwa jest zamknięty czy otwarty. Drugiego if-a możemy przetłumaczyć tak. Jeżeli dopływ_paliwa jest zamknięty (czyli nasz poprzednia prędkość była większa niż 200km/h) uruchamiamy funkcję otworz_doplyw_paliwa() i ustawiamy dopływ_paliwa na "O" (otwarty). Jeżeli dopływ_paliwa jest otwarty ("O") to nie robimy nic no bo aktualnie dopływ paliwa jest otwarty więc nie ma potrzeby uruchamiania funkcji otworz_doplyw_paliwa(). Myślę, że już rozumiesz dokładnie działanie instrukcji if… else i po co w ogóle była nam potrzebna zmienna dopływ_paliwa.
Zwróć uwagę, że używając instrukcji if nie musisz za każdym razem korzystać także z konstrukcji if…else możesz skorzystać tylko z if-a.
Jak już zauważyłeś if-y możemy zagnieżdżać, czyli definiować jednego if-a wewnątrz drugiego.
Cały kod programu mógłby wyglądać tak.

[cpp]
#include <iostream>

using namespace std;

void zamknij_doplyw_paliwa()
{
cout << "Jedziesz jak wariat, zwolnij!" << endl;
cout << "Zamykam doplyw paliwa!" << endl << endl;
}

void otworz_doplyw_paliwa()
{
cout << "Widze, ze zwolniles!" << endl;
cout << "Otwieram doplyw paliwa!" << endl << endl;
}
int aktualna_predkosc;
int i; // licznik dla for-a
string doplyw_paliwa;

int main()
{

for(i=0;i<=5;i++)
{
cout << "Z jaka predkoscia aktualnie jedziesz? : ";
cin >> aktualna_predkosc;

if(aktualna_predkosc >= 200)
{
zamknij_doplyw_paliwa();
doplyw_paliwa = "Z";
}
else
{
// sprawdz czy doplyw zamkniety
if(doplyw_paliwa == "Z")
{
otworz_doplyw_paliwa();
doplyw_paliwa = "O";
}
else
{
cout << "Jedziesz przepisowo, jedz tak dalej!" << endl << endl;
}

}

}

cout << "Dziekujemy za skorzystanie z naszej nawigacji";

return 0;
}

[/cpp]


c++ kurs programowania obiektowego spis treści 

 

 

C# Instrukcja warunkowa if else

Instrukcja warunkowa if else.

Instrukcja warunkowa if else działa tak samo jak instrukcja if z tą różnicą, że tutaj określany także co ma się stać w sytuacji nie spełnienia warunku. Ogólna definicja instrukcji if else przedstawiona jest poniżej.

   if (warunek) 
         instrukcja_gdy_warunek_spełniony;
   else
         instrukcja_gdy_warunek_nie_spełniony;

W przypadki potrzeby wykonania kilku instrukcji przy spełnionym lub nie spełnionym warunku definicja może przyjąć postać, jak poniżej.

   if (warunek) 
{
// blok instrukcji, gdy warunek spełniony
Instrukcja 1;
Instrukcja 2;
}
   else
{
// blok instrukcji, gdy warunek nie spełniony
Instrukcja 1;
Instrukcja 2;
}
instrukcja warunkowa if else
Rysunek 14.1 Przykład zastosowania instrukcji warunkowej if else.

Listing z rysunku 14.1

Instrukcje if else możemy wykorzystać także do obsłużenia więcej niż dwóch warunków. Możemy zagnieżdżać je w sobie. Poniżej przykład takiego zastosowania instrukcji if else.

instrukcja warunkowa if else
Rysunek 14.2 Przykład zastosowania instrukcji warunkowej if else, zagnieżdżanie.

Listing z rysunku 14.2