C5 – LPO: Instructiuni 1 CUPRINS Instructiuni Secventa cu instructiuni

Slides:



Advertisements
Similar presentations
Batalia sexelor O lume dominata de barbati vs o lume dominata de femei.
Advertisements

1 const #define DIMENSIUNE 1000 const int DIMENSIUNE = 1000; Utilizarea valorilor constante este importantă, de exemplu, în declararea tablourilor de date.
ICF Capitol Local Bine ati venit. Ore de Pregatire Continua Sesiunea 1.
-Modelul Entitate-Legatura (ER)-
-Limbajul SQL-Interogări complexe, Vederi-
C12 – LPO: Operatii de Intrare/iEsire cu fisiere
ACTIVITATEA 1 -,, PROFESOR IT LA PAPI’’
Subinterogări multiple
Oracle Academy Lead Adjunct
Prof. Elena Răducanu, Colegiul Naţional Bănăţean,Timişoara
CUPRINS Tastatura Imprimanta Scanner Bibliografie Recapitulare.
Funcţii Excel definite de utilizator (FDU) în VBA
Structura unui calculator
Instrumente CASE Curs nr. 7.
Posibilităţi de analiză în timp real a parametrilor de calitate a apei cu ajutorul sistemului informatic de management SIVECO Business Analyzer September.
Căutarea şi regăsirea informaţiei.
SOFTWARE Tipuri de software.
Dispozitive de stocare
CREATE, DROP,ALTER INSERT, UPDATE, DELETE
Structura pipeline a unui procesor MIPS
Cum foloseşti WordPress drept CMS?
Căutarea şi regăsirea informaţiei.
Paxos Made Simple Autor: Puşcaş Radu George
Curs 4: Prelucrarea datelor în SAS
Aparatura auxiliară Generalităţi, clasificare
Popiţiu Bogdan Epm An III
Template-uri de funcţii. Tratarea excepţiilor
Retele de calculatoare
Reflexia luminii.
METODA BACKTRACKING Examenul de bacalaureat 2012
WebSite Social Tema 2 WebSite Social.
Problema rucsacului lacom
MANAGEMENT EDUCAŢIONAL PERFORMANT Limbajul de programare Borland Pacal
Tipuri structurate Tipul tablou
SUBNETAREA.
Programarea calculatoarelor şi limbaje de programare I Capitolul 8
C# şi platforma .NET.
Curs 2 1 Sistem de operare-concepte: 2 Apeluri de sistem
Programarea şi rezolvarea problemelor
Web Form BuilDer Coffee Cup.
Modificarea structurii unei tabele
Curs 6: Introducere în programarea SAS
Formatarea paragrafului
Funcții C/C++ continuare
Sintaxa şi semantica C++
Apache WEB Server.
Impulsul mecanic Impulsul mecanic. Teorema conservarii impulsului mecanic.
Citește-mă Acest slide are rolul de a-ți explica modul în care să folosești umătoarele slide-uri. Șterge-l din prezentarea finală. În următoarele slide-uri.
Tehnoredactarea computerizată
INTERNET SERVICII INTERNET.
SOAP Simple Object Access Protocol
Mic ghid pentru crearea unei prezentari PowerPoint
Eclipsele de soare si de luna
Forms (Formulare).
A great way to create a channel of communication
Functia de documentare
Căutarea şi regăsirea informaţiei
Administrarea reţelelor de calculatoare
SOAP -Simple Object Access Protocol-
Din punct de vedere structural:
Programarea in limbajul Java 2004 Lecturer: Gavrila Cristian
Realizarea prezentarilor cu Microsoft PowerPoint
Software open source in industria software
Aplicaţii specializate pentru realizarea unei prezentări – PowerPoint
Refracţia luminii.
Configurarea metodelor de management al calităţii în sectorul public
Funcții NULL.
Harti de imagini, Cadre, Stiluri
Despre lamaie.net De ce sunt lamaile acre? Realizatori: Cristina Cazan
ALGORITMI ŞI SCHEME LOGICE
Presentation transcript:

C5 – LPO: Instructiuni 1 CUPRINS Instructiuni Secventa cu instructiuni Categorii: secventa, decizie, ciclu, salt Secventa cu instructiuni simple compuse Decizia cu if prezentare, functionare, probleme Decizia cu switch

Obiective După parcurgerea acestui curs ar trebuie sa puteţi: face diferenta intre instructiuni si date; defini categoriile de instructiuni din Java inteleg si scrie cod din cateogria de: Secventa cu instructiuni: simple compuse Ramificatie (decizia) simpla sau multipla cu if Ramificarea multipla cu switch Identifica si corecta erorile comune acestor categorii de instructiuni.

Instructiuni Programele sunt alcătuite din date si instrucţiuni. Instructiunile se scriu in metode si clase pentru a descrie actiuni ale programului. Implicit, instrucţiunile se rulează secvenţial. Există situaţii în care se fac devieri de la rularea secvenţială: Decizia sau ramificarea: if, switch Ciclul: do, for, while Saltul sau transferul: break, continue, apel de metodã

Secventa Secvenţa este alcătuită din: instructiuni simple sau blocuri numite si instructiuni compuse Instrucţiunea simplă: expresie; orice expresie terminată în caracterul ; daca expresie lipseste avem o instructiune vida Blocul: grup de instruncţiuni cuprinse între acolade { } sintactic echivalentă cu instrucţiunea simplă o variabilă declarată într-un bloc are presistenţa limitată la interiorul blocului în care s-a declarat. int x = 1, y = 2 , z; z = x+ y; x=y++; z++; { int x = 1; System.out.println(x); ++x; }

Decizia (simpla) cu if if se foloseste pentru programarea unei decizii si are forma generalã: expr_boleana trebuie sã fie scrisã între paranteze rotunde si sã aibã un rezultat de tip boolean dacã este nevoie de mai multe instructiuni trebuie folositã instructiunea compusã în locul celei simple orice decizie simpla (intre 2 ramuri) se poate face si folosind operatorul conditional if (expr_boleana) instructiune1 [else instructiune2]

Functionare if Permite ramificarea rulării în aplicaţie pe baza valorii de adevar luate de expr_boleana. Expresia boleană determină care dintre ramuri este rulată după cu urmează: dacã valoarea expresiei boleene este true se ruleazã instructiune simplã instructiune1 este false se ruleazã instructiunea simplã instructiune2 porţiune cu else este opţională, dacă este omisă atunci nu se va rula nimic daca expr_boleana e false

If-uri imbricate apar atunci când una dintre instrucţiunile simple din if este la rândul ei un if deoarece partea de else este opţională se poate ajunge la situaţia în care pune problema aparteneţei lui else. Un astfel de else se asociază cu cel mai apropiat if. Dacă acestă asociere implicită nu este convenabilă atunci se pot folosi acoladele pentru a o modifica. orice multidecizie se poate programa cu o secvenţă de if-uri if (expr_boleana1) if (expr_bolenan2) instructiune1 [else instructiune2] instructiune3]

Probleme cu if int a = 3, b = 2; if (a > 0) if (b < a) System.out.println(”b < a”); else System.out.println(”a < 0”); din aliniere, asocierea dintre if-uri şi else este greşită în locul opreratorului de testare a egalităţii = = s-a folosit cel de atribuire = int a = 3; if (a = 5) System.out.println(”a este 5”); int a = 3; if (a%2 == 1) ; System.out.println(”a este impar”); s-a pus caracterul ; după testul din if. Compilatorul nu dă eroare deoarece tratează if-ul având drept corp o instrucţiune vidă.

Decizia cu switch switch se foloseşte pentru programarea unei multidecizii, are forma generală: ramurile multideciziei trebuie sa se poata selecta printr-o valoarea intreaga. Acesta restrictie nu apare la utilizarea lui if. switch (expr_intreaga) { case expr_const1: instructiune1 break; case expr_const2: instructiune2 [default:] instructiune3 break;] }

Functionare switch Valoarea expresiei de test (expr_intreaga) trebuie să fie de tipurile: byte, char, short sau int. Tipurile long, float, double sau alte tipuri de obiecte (String etc.) sunt interzise. Valoarea expresiei de test se compară, secvenţial, cu expresiile constante (expr_consti) care etichetează instrucţiunile instructiunei. Dacă s-a găsit egalitate rularea începe de la instrucţiunea următoare (cea care vine imediat după cele : ale lui case) şi ţine până la întâlnirea unui break, moment în care rularea se conţinuă cu secventa B. Dacă nu se găseşte nici o egalitate rularea va continua cu instrucţiunile următoare etichetei default. Eticheta default este opţională, dacă aceasta lipseşte switch-ul nu va face nimic în lipsa găsirii unei egalităţi.

Rezumat Datele stocheaza starea aplicatiei, instructiunile permit modificarea starii prin rulare. Secventa este starea normala de parcurgere in rulare a instructiunilor unui program pe baza scrierii acestora in codul sursa. Alterarea secventialitarii in rulare se poate face cu ale instructiuni. Instrunctiunile de ramificare numite si decizie permit ca portiuni distincte din program sa fie rulate in functie de starea unor variabile. if permite programarea luare unei decizii simple (dintre 2 ramuri) sau a uneia multiple prin imbricare switch este dedicata multideciziei. Efectul de multidecizie similar cu if-urile imbricate se obtine prin folosire instructiunii break

Probleme cu switch s-a omis caracterul : si se folosesc acolade fara ; la capat int i; … switch (i) { case 1 {a =5; c = 2;} } s-a omis cuvantul cheie case din fata constantelor int i; … switch (i) { 0: a =5; 1: c = 2; } default nu e la capatul lui switch, nu avem break-uri iar rularea lui default se continua cu case 1 int I; switch (i) { case 0: System.out.println(”0”); default: System.out.println(”default”); case 1: System.out.println(”1”); }

Intrebari Explicaţi conceptele de secventa si ramificatie Cate categorii de instructiuni simple sunt? Ce este instructiunea vida? Cum se realizeaza decizia multipla cu if? Care sunt erorile comune la utilizarea lui if? Ce limitari are switch-ul in comparatie cu if? Care sunt erorile comune la utilizarea lui switch?

Bibliografie http://www.oracle.com/technetwork/java/javase/documentation/index.html http://docs.oracle.com/javase/6/docs/ Ştefan Tanasă, Cristian Olaru, Ştefan Andrei, Java de la 0 la expert, Polirom, 2003, ISBN: 973-681-201-4. Herber Schild, Java 2 - The Complete Reference, Fourth Edition, Osborne, 2001, ISBN: 0-07-213084-9. Deitel H.M., Deitel P. J., Java - How to programm, Fith Edition, Prentice Hall, 2003, ISBN: 0-13-120236-7. http://www.east.utcluj.ro/mb/mep/antal/downloads.html