U programskim jezicima dođemo da određenih mjesta gdje program odučuje da li je nešto tačno ili ne, i u zavisnosti od toga vrši neku radnju. To postižemo naredbama if i else. Naredbom if provjeravamo da li je uneseni iskaz tačan, te ako jeste izvrši se radnja za taj slučaj, a naredbom else ako se izvršava radnja u slučaju da je iskaz bio netačan. Pogledajmo jednostavan primjer.
Primjer 1. Unesi broj. Ako je uneseni broj pozitivan ispiši njegov prethodnik, a ako je negativan ispiši njegov sljedbenik.
#include <iostream>
using namespace std;
int main()
{
int a;
cout<<"Unesi broj:";
cin>>a;
if (a>0) // ako je uneseni broj pozitivan izvršit će se prva naredba ispod uslova if a to je ispis prethodnika
cout<<"Prethodnik je: "<<a-1;
if (a<0) // ako je uneseni broj negativan izvršit će se prva naredba ispod ovog uslova a to je ispis sljedbenika
cout<<"Sljedbenik je: "<<a+1;
system ("PAUSE");
return 0;
}
Kao što se može vidjeti ovaj program radi nešto ako se unese pozitivan ili negativan broj, međutim ako se unese broj nula neće raditi ništa. Pogledajmo isti ovaj primjer, ali umjesto da pravimo 2. if uslova, stavimo jedan if uslov a ako on nije ispunjen koristimo naredbu else.
#include <iostream>
using namespace std;
int main()
{
int a;
cout<<"Unesi broj:";
cin>>a;
if (a>0) // ako je uneseni broj pozitivan izvršit će se prva naredba ispod uslova if a to je ispis prethodnika
cout<<"Prethodnik je: "<<a-1;
else //ako uslov nije ispunjen izvršit će se ispis sljedbenika unesenog broja
cout<<"Sljedbenik je: "<<a+1;
system ("PAUSE");
return 0;
}
Osnovna razlika između ovog programa i prethodnog u kojem nije bilo naredbe else je što ovaj program radi nešto i kad se unese nula, tj. on će prvo provjeriti da li je uneseni broj veći od nule, ako jeste ispisat će njegovog prethodnika, a ako nije ispisat će sljedbenika. Tako da kad se unese nula ispisat će sljedbenika pošto uslov nije ispunjen.
Može se desiti u programu i da se desi više slučajeva, tada se koristi naredba else if da se provjere dodatni uslovi. Pogledajmo to na istom primjeru.
#include <iostream>
using namespace std;
int main()
{
int a;
cout<<"Unesi broj:";
cin>>a;
if (a>0) // ako je uneseni broj pozitivan izvršit će se prva naredba ispod uslova if a to je ispis prethodnika
cout<<"Prethodnik je: "<<a-1;
else if (a<0) //ako je uneseni broj negativan ispisat će se na ekranu njegov sljedbenik
cout<<"Sljedbenik je: "<<a+1;
else //ako uneseni broj nije pozitivan a ni negativan onda je on 0
cout<<"Uneseni broj je nula."<<endl;
system ("PAUSE");
return 0;
}
Zadatak 1. Za unesena ispisati provjeriti koji je veći te ih ispisati po veličini, veći pa manji. A ako su jednaki ispisati poruku "Uneseni brojevi su jednaki i iznose: " pa taj broj.
Zadatak 2. Napraviti program koji traži od korisnika da unese 2. broja te određeni znak (+ za sabiranje, - za oduzimanje, * za množenje te / za dijeljenje) te u zavisnosti od tog znaka da izvrši određenu radnju i na ekranu ispiše rezultat. Uputa: Za unos znaka sa tastaure se koristi tip podatka char, primjer. char znak ='+'.
Nema komentara:
Objavi komentar