SlideShare a Scribd company logo
1 of 17
Material didactic pentru Informatică
Clasa a X-a
M a r i a G u t u
If
M a r i a G u t u
O1- să cunoască semantica instrucţiunii IF;
O2- să cunoască sintaxa și diagrama
sintactică a instrucţiunii IF;
O3- să cunoască modul de execuţie a
instrucţiunii IF;
O4- să elaboreze programe în care să
utilizeze instrucţiunea IF.
M a r i a G u t u
Limbajele de programare utilizează
instrucțiuni de control pentru a ajusta
modul în care un program se desfășoară.
Instrucțiunile de control din limbajul Java
pot fi clasificate în trei categorii:
 Instrucțiuni condiționale (decizionale);
 instructiuni iterative (de ciclare);
 instructiuni de salt.
Instrucțiunea IF permite execuția
condiționată a unei instrucțiuni sau a unui
bloc de instrucțiuni.
Sintaxă generală este:
IF (<ExpresieCondiție>)
<Instrucțiune1> [else < Instrucțiune2>]
//instrucțiune sau bloc de cod spre execuție
luate între {}
M a r i a G u t u
IF (<ExpresieCondiție>)
<Instrucțiune1> [else < Instrucțiune2>]
Instrucțiunea IF primește o
ExpresieCondiție, a cărei valoare este de
tip boolean. În funcție de valoarea
rezultată a acestei ExpresiiCondiție, se
execută instrucțiunea sau blocul de
instrucțiuni, specificate de instrucțiunea
IF.
M a r i a G u t u
IF (<ExpresieCondiție>)
<Instrucțiune1> [else < Instrucțiune2>]
Dacă rezultatul evaluării ExpresieiCondiție
este true, atunci se execută Instrucțiunea1
iar, dacă ExpresiaCondiție are valoare
false, atunci se execută Instrucțiunea2,
dacă există, în caz contrar se trece la
următoarea instrucțiune a programului.
M a r i a G u t u
IF (<ExpresieCondiție>)
<Instrucțiune1> [else < Instrucțiune2>]
Este posibil ca într-o instrucţiune IF să nu
se execute nici o instrucţiune în afară de
evaluarea expresiei în cazul în care
expresia este falsă iar partea else din
instrucţiunea IF lipseşte. Expresia
booleană va fi întotdeauna evaluată.
M a r i a G u t u
Diagrama sintactică:
IF
(<ExpresieCondiție>)
<Instrucțiune1>
[else < Instrucțiune2>]
M a r i a G u t u
M a r i a G u t u
Un exemplu de instrucțiune IF în care partea
else lipsește:
int x = 5;
if (x == 5) x +=7;
System.out.println(x);
// variabila x este inițializată cu valoarea 5, după care se
verifică egalitatea (x == 5), dacă rezultatul evaluării este
true se execută x +=7, altfel se trece la următorul rând al
programului, adică la System.out.println(x).
Output:
12
M a r i a G u t u
Ce va afișa următoarea secvență de program?
int x = 3;
if (x == 5) x +=7;
System.out.println(x);
// variabila x este inițializată cu valoarea 3, după care se
verifică egalitatea (x == 5), dacă rezultatul evaluării este
true se execută x +=7, altfel se trece la următorul rând al
programului, adică la System.out.println(x).
Ce va afișa următoarea secvență de program?
int x = 3;
if (x % 2 == 0)
System.out.println(“Numar par”);
else System.out.println(“Numar impar”);
// variabila x este inițializată cu valoarea 3, după care se
verifică dacă restul împărțirii numărului x la 2 este 0,
atunci se afișează în consolă ”Numar par” altfel se va afișa
”Numar impar”.
M a r i a G u t u
Instrucțiunea IF poate fi întâlnită și în
construcții imbricate de genul if – else – if.
int min;
int a = 5, b = 2, c = 12;
if (a<b) {
if (a<c) min = a;
else min = c;
} else {
if (b<c) min = b;
else min = c;
}
System.out.println(“Elementul minim este: ”+min);
M a r i a G u t u
Dacă există o buclă în
corpul altei bucle,
bucla se numește
îmbricată.
Ce va afișa următoarele secvențe de program?
Exemplu 1: Exemplu 2:
int i = 3;
if ( ++i < 4 )
if ( ++i < 4 )
System.out.println(i);
else
System.out.println(i);
int i = 3;
if ( ++i < 4 ) {
if ( ++i < 4 )
System.out.println(i);
}
else
System.out.println(i);
M a r i a G u t u
Ce va afișa următoarea secvență de program?
Exemplu 1: Explicație
int i = 3;
if ( ++i < 4 )
if ( ++i < 4 )
System.out.println(i);
else
System.out.println(i);
Secvența de program nu va afișa
nimic întrucât ramura else este
asociată IF-ului doi, adică variabila i
este inițializată cu 3 după care se
evaluează condiția (++i < 4).
Valoarea variabilei i mai întâi se va
incrementa, apoi se va evalua
condiția. Deci, vom obține valoarea
false pentru condiția evaluată, adică
IF-ul doi nu se va executa.
M a r i a G u t u
Explicație Exemplu 2:
În exemplu dat, if-ul doi este
delimitat prin acolade, deci el se va
executa când condiția primului IF va
avea valoarea true, în caz contrar, se
va executa instrucțiunea după else,
adică se va afișa în consolă valoarea
lui i.
int i = 3;
if ( ++i < 4 ) {
if ( ++i < 4 )
System.out.println(i);
}
else
System.out.println(i);
M a r i a G u t u
Ce va afișa următoarea secvență de program?
Se consideră 2 numere intregi distincte. Să se scrie un
program care va înlocui nr. mai mare cu suma nr. date, iar nr.
mai mic – cu valoarea absolută a diferenței lor.
M a r i a G u t u
Rezolvare:
int a = 4, b = 7;
int s = a+b, d = Math.abs(a-b);
if (a>b) {
a = s; b = d;
} else {
a = d; b = s;
}
System.out.println("a="+a+", b="+b);
Output:
a=3, b=11
1. Se consideră 2 numere întregi. Dacă primul număr
este pozitiv, atunci de ridicat acest număr la pătrat,
în caz contrar se calculează suma lor.
2. Se consideră un cerc cu raza R și un pătrat cu
latura A. Să se scrie un program care determină dacă
cercul încape în pătrat.
3. De la tastatură se introduce o literă a alfabetului
latin. Să se determine dacă litera este vocală sau
consoană.
M a r i a G u t u

More Related Content

What's hot (8)

Cap03
Cap03Cap03
Cap03
 
Auxiliar clasa v
Auxiliar clasa vAuxiliar clasa v
Auxiliar clasa v
 
C++
C++C++
C++
 
Functii, tablouri si pointeri in c si c++
Functii, tablouri si pointeri  in c si c++Functii, tablouri si pointeri  in c si c++
Functii, tablouri si pointeri in c si c++
 
algoritmi stl
algoritmi stlalgoritmi stl
algoritmi stl
 
Cap06
Cap06Cap06
Cap06
 
Manual de programare c
Manual de programare cManual de programare c
Manual de programare c
 
Recursivitate
RecursivitateRecursivitate
Recursivitate
 

More from m_gutu (7)

Jeopardy Vocabularul și sintaxa limbajului Pascal
Jeopardy  Vocabularul și sintaxa limbajului PascalJeopardy  Vocabularul și sintaxa limbajului Pascal
Jeopardy Vocabularul și sintaxa limbajului Pascal
 
Fisiere Pascal/Pascal ABC
Fisiere Pascal/Pascal ABCFisiere Pascal/Pascal ABC
Fisiere Pascal/Pascal ABC
 
Flipped Classroom
Flipped ClassroomFlipped Classroom
Flipped Classroom
 
Parcurgerea arborilor binari
Parcurgerea arborilor binariParcurgerea arborilor binari
Parcurgerea arborilor binari
 
Scanner class and Decimal Format in Java
Scanner class and Decimal Format in JavaScanner class and Decimal Format in Java
Scanner class and Decimal Format in Java
 
Variabile dinamice. Tipul referinta.
Variabile dinamice. Tipul referinta.Variabile dinamice. Tipul referinta.
Variabile dinamice. Tipul referinta.
 
Functii in pascal
Functii in pascalFunctii in pascal
Functii in pascal
 

Java IF Statement

  • 1. Material didactic pentru Informatică Clasa a X-a M a r i a G u t u If
  • 2. M a r i a G u t u O1- să cunoască semantica instrucţiunii IF; O2- să cunoască sintaxa și diagrama sintactică a instrucţiunii IF; O3- să cunoască modul de execuţie a instrucţiunii IF; O4- să elaboreze programe în care să utilizeze instrucţiunea IF.
  • 3. M a r i a G u t u Limbajele de programare utilizează instrucțiuni de control pentru a ajusta modul în care un program se desfășoară. Instrucțiunile de control din limbajul Java pot fi clasificate în trei categorii:  Instrucțiuni condiționale (decizionale);  instructiuni iterative (de ciclare);  instructiuni de salt.
  • 4. Instrucțiunea IF permite execuția condiționată a unei instrucțiuni sau a unui bloc de instrucțiuni. Sintaxă generală este: IF (<ExpresieCondiție>) <Instrucțiune1> [else < Instrucțiune2>] //instrucțiune sau bloc de cod spre execuție luate între {} M a r i a G u t u
  • 5. IF (<ExpresieCondiție>) <Instrucțiune1> [else < Instrucțiune2>] Instrucțiunea IF primește o ExpresieCondiție, a cărei valoare este de tip boolean. În funcție de valoarea rezultată a acestei ExpresiiCondiție, se execută instrucțiunea sau blocul de instrucțiuni, specificate de instrucțiunea IF. M a r i a G u t u
  • 6. IF (<ExpresieCondiție>) <Instrucțiune1> [else < Instrucțiune2>] Dacă rezultatul evaluării ExpresieiCondiție este true, atunci se execută Instrucțiunea1 iar, dacă ExpresiaCondiție are valoare false, atunci se execută Instrucțiunea2, dacă există, în caz contrar se trece la următoarea instrucțiune a programului. M a r i a G u t u
  • 7. IF (<ExpresieCondiție>) <Instrucțiune1> [else < Instrucțiune2>] Este posibil ca într-o instrucţiune IF să nu se execute nici o instrucţiune în afară de evaluarea expresiei în cazul în care expresia este falsă iar partea else din instrucţiunea IF lipseşte. Expresia booleană va fi întotdeauna evaluată. M a r i a G u t u
  • 9. M a r i a G u t u Un exemplu de instrucțiune IF în care partea else lipsește: int x = 5; if (x == 5) x +=7; System.out.println(x); // variabila x este inițializată cu valoarea 5, după care se verifică egalitatea (x == 5), dacă rezultatul evaluării este true se execută x +=7, altfel se trece la următorul rând al programului, adică la System.out.println(x). Output: 12
  • 10. M a r i a G u t u Ce va afișa următoarea secvență de program? int x = 3; if (x == 5) x +=7; System.out.println(x); // variabila x este inițializată cu valoarea 3, după care se verifică egalitatea (x == 5), dacă rezultatul evaluării este true se execută x +=7, altfel se trece la următorul rând al programului, adică la System.out.println(x).
  • 11. Ce va afișa următoarea secvență de program? int x = 3; if (x % 2 == 0) System.out.println(“Numar par”); else System.out.println(“Numar impar”); // variabila x este inițializată cu valoarea 3, după care se verifică dacă restul împărțirii numărului x la 2 este 0, atunci se afișează în consolă ”Numar par” altfel se va afișa ”Numar impar”. M a r i a G u t u
  • 12. Instrucțiunea IF poate fi întâlnită și în construcții imbricate de genul if – else – if. int min; int a = 5, b = 2, c = 12; if (a<b) { if (a<c) min = a; else min = c; } else { if (b<c) min = b; else min = c; } System.out.println(“Elementul minim este: ”+min); M a r i a G u t u Dacă există o buclă în corpul altei bucle, bucla se numește îmbricată.
  • 13. Ce va afișa următoarele secvențe de program? Exemplu 1: Exemplu 2: int i = 3; if ( ++i < 4 ) if ( ++i < 4 ) System.out.println(i); else System.out.println(i); int i = 3; if ( ++i < 4 ) { if ( ++i < 4 ) System.out.println(i); } else System.out.println(i); M a r i a G u t u
  • 14. Ce va afișa următoarea secvență de program? Exemplu 1: Explicație int i = 3; if ( ++i < 4 ) if ( ++i < 4 ) System.out.println(i); else System.out.println(i); Secvența de program nu va afișa nimic întrucât ramura else este asociată IF-ului doi, adică variabila i este inițializată cu 3 după care se evaluează condiția (++i < 4). Valoarea variabilei i mai întâi se va incrementa, apoi se va evalua condiția. Deci, vom obține valoarea false pentru condiția evaluată, adică IF-ul doi nu se va executa. M a r i a G u t u
  • 15. Explicație Exemplu 2: În exemplu dat, if-ul doi este delimitat prin acolade, deci el se va executa când condiția primului IF va avea valoarea true, în caz contrar, se va executa instrucțiunea după else, adică se va afișa în consolă valoarea lui i. int i = 3; if ( ++i < 4 ) { if ( ++i < 4 ) System.out.println(i); } else System.out.println(i); M a r i a G u t u Ce va afișa următoarea secvență de program?
  • 16. Se consideră 2 numere intregi distincte. Să se scrie un program care va înlocui nr. mai mare cu suma nr. date, iar nr. mai mic – cu valoarea absolută a diferenței lor. M a r i a G u t u Rezolvare: int a = 4, b = 7; int s = a+b, d = Math.abs(a-b); if (a>b) { a = s; b = d; } else { a = d; b = s; } System.out.println("a="+a+", b="+b); Output: a=3, b=11
  • 17. 1. Se consideră 2 numere întregi. Dacă primul număr este pozitiv, atunci de ridicat acest număr la pătrat, în caz contrar se calculează suma lor. 2. Se consideră un cerc cu raza R și un pătrat cu latura A. Să se scrie un program care determină dacă cercul încape în pătrat. 3. De la tastatură se introduce o literă a alfabetului latin. Să se determine dacă litera este vocală sau consoană. M a r i a G u t u