tehnologii web

Mărimea: px
Porniți afișarea la pagina:

Download "tehnologii web"

Transcriere

1 Universitatea Constantin Brâncuşi din Târgu-Jiu Facultatea de Inginerie Departamentul de Automatică, Energie şi Mediu Tehnologii Web Lector univ. dr. Adrian Runceanu 1

2 Curs 7 Limbajul PHP (partea II) 2

3 Curs 7 1. Instrucţiuni conditionale 1.1. Instrucţiunea if 1.2. Instrucţiunea switch 1.3. Instrucţiuni pentru controlul execuţiei iteraţiilor 2. Instrucţiuni repetitive 2.1. Instrucţiunea while 2.2. Instrucţiunea do while 2.3. Instrucţiunea for 3

4 Curs 7 3. Funcţii 3.1. Apelarea funcţiilor 3.2. Funcţii definite de utilizator Definirea funcţiilor Variabile automatice Funcţii care întorc valori Accesul la variabile declarate în exterior. Variabile globale Funcţii recursive Terminarea execuţiei unui script 4

5 1. Instrucţiuni(I) Ştim că orice program se poate scrie utilizand numai trei tipuri de structuri de control: 1. secventiala (sau liniara) 2. alternativa 3. repetitiva conditionata anterior Pe langa cele trei amintite, oricare limbaj de nivel inalt implementeaza si alte structuri de control, introduse in scopul cresterii eficientei activitatii de programare. 5

6 1. Instrucţiuni(II) Structurile enumerate (cu exceptia celei secventiale) pot fi grupate in urmatoarele doua categorii: 1. structuri de control conditional controleaza fluxul programului, executand sau nu anumite portiuni de cod, in functie de indeplinirea sau neindeplinirea unor conditii 2. structuri de control repetitive - executa anumite portiuni de cod de un numar determinat de ori 6

7 1. Instrucţiuni condiţionale Structurile de control conditional sunt implementate in limbajul PHP prin intermediul instructiunilor: 1. if 2. switch care permit ramnificarea executiei scriptului pe diverse cai, in functie de deciziile luate in timpul executiei acestuia. 7

8 Curs 7 1. Instrucţiuni conditionale 1.1 Instrucţiunea if 1.2. Instrucţiunea switch 1.3. Instrucţiuni pentru controlul execuţiei iteraţiilor 2. Instrucţiuni repetitive 2.1. Instrucţiunea while 2.2. Instrucţiunea do while 2.3. Instrucţiunea for 8

9 1.1. Instructiunea if Cea mai des utilizata instructiune conditionala este if. Instructiunea if are urmatoarea sintaxa: if (expresie) { grup de instructiuni } Expresia expresie este evaluata la o valoare logica. Daca aceasta este true va fi executata secventa de cod grup, care include una sau mai multe instructiuni. Daca sunt cel putin doua instructiuni, grupul trebuie inclus obligatoriu intre acolade, in caz contrar fiind executata numai prima instructiune. 9

10 Observatie: In mod obisnuit, sunt folosite acoladele chiar daca grupul contine numai o singura instructiune. Exemplu: if ($varsta>99 && $varsta<18) { echo "Nu puteti accesa aceasta sectiune a site-ului!"; } 10

11 Instructiunea if...else are urmatoarea sintaxa: if (expresie) { grup1 } else { grup2 } Daca valoarea logica a expresiei expresie - evaluata de interpretorul PHP este true, va fi executat grupul de instructiuni grup1, in caz contrar fiind executat grup2. 11

12 Exemplu: Daca o valoare este in intervalul [1, 2], se transmite catre browser valoarea (x+1)/2, altfel se transmite valoarea (x-1)/2: <?php if($x>=1 && $x<=2) $v=($x+1)/2; else $v=($x-1)/2; echo ($v);?> 12

13 Instructiunea asociata unei instructiuni if sau else poate fi ea însasi o instructiune if. O asemenea instructiune if se numeste "instructiune if imbricata". 13

14 Exemplu de instructiune if imbricata: <?php if ($numar > 10) if ($numar > 100) echo "Acesta este un numar mai mare decat 100"; else echo "Acesta este un numar mai mic decat 100, dar mai mare decat 10"; else echo "Acesta este un numar mic";?> 14

15 O instructiune corelata atât cu instructiunea if, cât si cu instructiunea else, este instructiunea elseif. Când este folosita corect, poate fi mai simplu de înteles decât o instructiune if imbricata, logic echivalenta cu aceasta. 15

16 Exemplu de instructiune elseif: <?php if ($numar > 100 ) echo "Acesta este un numar mai mare decat 100 ; elseif ($numar > 10) echo "Acesta este un numar mai mic decat 100, dar mai mare decat 10 ; elseif ($numar > 1) echo "Acesta este un numar mic ; else echo "Acesta este un numar foarte mic ;?> 16

17 Curs 7 1. Instrucţiuni conditionale 1.1. Instrucţiunea if 1.2. Instrucţiunea switch 1.3. Instrucţiuni pentru controlul execuţiei iteraţiilor 2. Instrucţiuni repetitive 2.1. Instrucţiunea while 2.2. Instrucţiunea do while 2.3. Instrucţiunea for 17

18 1.2. Instructiunea switch A doua instructiune conditionala este switch, avand urmatoarea sintaxa: switch (expresie){ } case expresie 1 : grup 1 ; break; case expresie 2 : grup 2 ; break;..... [default: grup;] Expresia expresie este comparata cu expresie 1, expresie 2,. 18

19 Daca se gaseste o potrivire pentru comparatie, se utilizeaza operatorul de egalitate == (expresie k ), va fi executata secventa de cod corespunzatoare (adica grup k ), ignorand eventualele linii case ramase. Grupul de instructiuni grup, asociat cazului default, este executat numai daca, anterior, nu s-a gasit nici o potrivire. 19

20 Exemplu: Daca valoarea transmisa pentru x este 1,2,3,4, atunci valoarea respectiva este retransmisa catre utilizator alfabetic, altfel, se va transmite un mesaj oarecare: 20 <?php switch($x) { case (1): echo( unu ); break; case (2): echo( doi ); break; case (3): echo( trei ); break; case (4): echo( patru ); break; default : echo ( Nu este 1, 2, 3 sau 4 ); }?>

21 Curs 7 1. Instrucţiuni conditionale 1.1. Instrucţiunea if 1.2. Instrucţiunea switch 1.3. Instrucţiuni pentru controlul execuţiei iteraţiilor 2. Instrucţiuni repetitive 2.1. Instrucţiunea while 2.2. Instrucţiunea do while 2.3. Instrucţiunea for 21

22 1.3. Instructiuni pentru controlul executiei iteratiilor Impreuna cu instructiunile repetitive sunt utilizate instructiunile break si continue, avand rolul de a introduce elemente de control suplimentare in executia acestora. Instructiunea break are rolul de a intrerupe executia iteratiei curente si, odata cu aceasta, a instructiunii in care este utilizata. 22

23 In cazul in care sunt folosite structuri pe mai multe niveluri (imbricate), break poate primi un argument de tip intreg prin intermediul caruia se precizeaza nivelul la care se va intrerupe executia instructiunilor: adica break n, unde n este o expresie care poate fi evaluata la tipul mentionat in plus, break 1 are acelasi efect ca break 23

24 Curs 7 1. Instrucţiuni conditionale 1.1. Instrucţiunea if 1.2. Instrucţiunea switch 1.3. Instrucţiuni pentru controlul execuţiei iteraţiilor 2. Instrucţiuni repetitive 2.1. Instrucţiunea while 2.2. Instrucţiunea do while 2.3. Instrucţiunea for 24

25 2. Instructiuni repetitive Structurile repetitive (sau de ciclare) sunt implementate in limbajul PHP prin intermediul instructiunilor: while si for (structura repetitiva conditionata anterior) respectiv do...while (structura repetitiva conditionata posterior) fiind utilizate in scopul executiei repetate a unor secvente de cod. Executia unei astfel de secvente poarta numele de ciclu, iteraţie sau buclă (loop). 25

26 Curs 7 1. Instrucţiuni conditionale 1.1. Instrucţiunea if 1.2. Instrucţiunea switch 1.3. Instrucţiuni pentru controlul execuţiei iteraţiilor 2. Instrucţiuni repetitive 2.1. Instrucţiunea while 2.2. Instrucţiunea do while 2.3. Instrucţiunea for 26

27 2.1. Instructiunea while Sintaxa instructiunii while este urmatoarea: while (expresie) { grup instructiuni } Procesorul PHP executa grupul de instructiuni grup in mod repetat, atat timp cat expresia expresie este evaluata cu valoarea logica true. 27

28 Evaluarea expresiei amintite se face la inceputul fiecarei iteratii, ceea ce inseamna ca este posibil ca, in cazul in care prima evaluare genereaza valoarea logica false, instructiunile incluse in secventa grup sa nu fie executate niciodata. Acoladele sunt necesare numai daca grup contine cel putin doua instructiuni. 28

29 Exemplu: Se calculeaza suma: <?php $s=0; $i=1; while($i <= 5) { $s+=$i + $i; $i++; } echo ($s);?> 29

30 Curs 7 1. Instrucţiuni conditionale 1.1. Instrucţiunea if 1.2. Instrucţiunea switch 1.3. Instrucţiuni pentru controlul execuţiei iteraţiilor 2. Instrucţiuni repetitive 2.1. Instrucţiunea while 2.2. Instrucţiunea do while 2.3. Instrucţiunea for 30

31 2.2. Instructiunea do...while Desi utilizarea instructiunii do...while nu este absolut necesara, ea permite obtinerea unei flexibilitati sporite in scrierea scripturilor. Sintaxa acestei instructiuni este urmatoarea: do { grup instructiuni } while (expresie); 31

32 Instructiunea do... while este asemanatoare cu while, cu exceptia faptului ca evaluarea expresiei expresie se face dupa executia grupului de instructiuni grup rezultand ca aceasta are loc cel putin o data! Acoladele sunt necesare numai daca grup include cel putin doua instructiuni. 32

33 Exemplu: Se calculeaza suma: <?php $s=0; $i=1; do { $s += $i + $i; $i++; }while($i <= 5); echo ($s);?> 33

34 Curs 7 1. Instrucţiuni conditionale 1.1. Instrucţiunea if 1.2. Instrucţiunea switch 1.3. Instrucţiuni pentru controlul execuţiei iteraţiilor 2. Instrucţiuni repetitive 2.1. Instrucţiunea while 2.2. Instrucţiunea do while 2.3. Instrucţiunea for 34

35 2.3. Instructiunea for Sintaxa instructiunii for este urmatoarea: for (expresie1; expresie2; expresie3) { grup instructiuni } Cele trei expresii (argumentele instructiunii), care - de cele mai multe ori - sunt construite pe baza unei variabile de ciclare, au urmatoarele semnificatii: 35

36 expresie1 (expresie de initializare) este evaluata o singura data, la inceputul executiei instructiunii for; expresie2 (expresia de test) - este evaluata la inceputul fiecarei iteratii. In functie de rezultatul evaluarii, se executa sau nu grupul de instructiuni grup. expresie3 (expresia de modificare) - este folosita pentru a introduce actiunile care urmeaza a fi efectuate asupra variabilei de ciclare (incrementare/decrementare). 36

37 Exemplu: <?php for ($i=2; $i<10; $i++) { echo "Patratul lui ".$i." este ". $i*$i. ".<br />"; }?> 37

38 Alaturi de instructiunile repetitive analizate pana aici, in PHP este implementata si instructiunea foreach, deosebit de utila pentru traversarea iterativa a tablourilor asociative sau nesecventiale (in ultimul caz nefiind posibila folosirea instructiunii for), dar si a celor indexate numeric. 38

39 Exemplu in care se utilizeaza instructiunea break, pe un singur nivel intr-un ciclu foreach: <?php $tablou=array(1,2,3,4,5,6,7,8,9); foreach ($tablou as $element) { if ($element>5) { break; echo $element.", "; } }?> Dupa executia scriptului, acesta va afisa 1, 2, 3, 4, 5. 39

40 40 Spre deosebire de break, instructiunea continue este folosita in instructiunile repetitive pentru a intrerupe executia iteratiei curente, continuandu-se cu urmatoarea. Exemplu in care se utilizeaza instructiunea continue: <?php $tablou=array(1,2,3,4,5,6,7,8,9,0); foreach ($tablou as $element) { if ($element > 4) { continue; echo "Numarul ".$element." este mai mic decat 5;<br />" } }?> Se afiseaza: Numarul 1 este mai mic decat 5; Numarul 2 este mai mic decat 5; Numarul 3 este mai mic decat 5; Numarul 4 este mai mic decat 5;

41 Curs 7 3. Funcţii 3.1. Apelarea funcţiilor 3.2. Funcţii definite de utilizator Definirea funcţiilor Variabile automatice Funcţii care întorc valori Accesul la variabile declarate în exterior. Variabile globale Funcţii recursive Terminarea execuţiei unui script 41

42 3. Funcţii În PHP se pot crea funcţii fără prea mari diferenţe faţă de ce ştim din C/C++. În programare, o funcţie include o secvenţă de cod, care realizează o anumită operaţie şi poate fi apelată în mod repetat, de câte ori este necesar. Altfel spus, o funcţie constă dintr-un set de instrucţiuni care realizează o sarcină specifică. 42

43 Exemplu, un script in care se utilizeaza o functie pentru calculul ariei unui triunghi si apoi afiseaza aria. <?php function aria_t($b, $h) { return $b*$h/2; } $x=3; $y=8; echo (aria_t($x, $y));?> 43

44 Definitiile functiilor PHP pot fi plasate oriunde in interiorul unui script, dar este preferabila plasarea la inceputul acestuia. In scopul maririi gradului de reutilizare a functiilor, se poate folosi drept alternativa plasarea functiilor in fisiere distincte (avand extensia.php,.inc, etc.), urmand ca acestea sa fie incluse in scripturi prin intermediul instructiunilor PHP dedicate. 44

45 Curs 7 3. Funcţii 3.1. Apelarea funcţiilor 3.2. Funcţii definite de utilizator Definirea funcţiilor Variabile automatice Funcţii care întorc valori Accesul la variabile declarate în exterior. Variabile globale Funcţii recursive Terminarea execuţiei unui script 45

46 3.1. Apelarea funcţiilor Forma generala a unui apel de funcţie este urmatoarea: nume_ functie (argument1, argument2,...) Analizand forma prezentata, se poate observa ca apelul unei functii consta in apelarea numelui sau, urmat imediat de o lista de argumente actuale (sau parametri actuali), numarul acestora variind de la o functie la alta (argument1, argument2,...). Fiecare argument trebuie sa fie o expresie valida, care poate include si alte apeluri de functii. 46

47 Curs 7 3. Funcţii 3.1. Apelarea funcţiilor 3.2. Funcţii definite de utilizator Definirea funcţiilor Variabile automatice Funcţii care întorc valori Accesul la variabile declarate în exterior. Variabile globale Funcţii recursive Terminarea execuţiei unui script 47

48 3.2. Functii definite de utilizator In ceea ce priveste modalitatile de creare, functiile PHP pot fi definite de utilizator sau predefinite Definirea functiilor Pentru definirea unei functii in PHP se utilizeaza urmatoarea sintaxa: function nume_functie(argument1, argument2,...) { // Corpul functiei: lista de instructiuni } 48

49 Se observa ca definitia unei functii include urmatoarele parti: 1. numele functiei (nume_functie), precedat de cuvantul-cheie function; 2. lista de argumente formale (care poate sa fie si vida), inclusa intre doua paranteze rotunde (argument1, argument2,...); 3. corpul functiei, care consta din orice secventa valida de cod, continuta in mod obligatoriu intre acolade, inclusiv definitiile altor functii sau ale unor clase. 49

50 Curs 7 3. Funcţii 3.1. Apelarea funcţiilor 3.2. Funcţii definite de utilizator Definirea funcţiilor Variabile automatice Funcţii care întorc valori Accesul la variabile declarate în exterior. Variabile globale Funcţii recursive Terminarea execuţiei unui script 50

51 Variabile automatice Variabilele locale (utilizate in interiorul functiilor) sunt denumite si automatice, deoarece ele sunt create automat la inceputul executiei functiei si distruse, tot automat la sfarsit. Din acest motiv, functiile vor pierde valorile variabilelor utilizate in interiorul lor. 51

52 Exemplu: <?php function bun_venit($utilizator) { $mesaj="bine ai venit, ".$utilizator; echo $mesaj; } bun_venit ("Costica") ; echo $mesaj; eroare?> In acest exemplu, incercarea de a afisa variabila locala $mesaj in exteriorul functiei bun_venit() se soldeaza cu un esec, aceasta fiind o variabila locala. 52

53 Curs 7 3. Funcţii 3.1. Apelarea funcţiilor 3.2. Funcţii definite de utilizator Definirea funcţiilor Variabile automatice Funcţii care întorc valori Accesul la variabile declarate în exterior. Variabile globale Funcţii recursive Terminarea execuţiei unui script 53

54 Functii care întorc valori Functiile pot intoarce (sau returna) valori. Pentru a intoarce o valoare dintr-o functie, trebuie realizat - in corpul sau - un apel al instructiunii return, acesta fiind urmata de o expresie valida: return expresie Apelul instructiunii return opreste imediat executia functiei, intoarce expresia expresie si transfera controlul executiei programului pe linia din care s-a realizat apelul. Valorile intoarse pot avea orice tip, inclusiv tablou si obiect. 54

55 Exemplu: Fie o functie avand numele cub(), care intoarce cubul numarului primit ca argument (adica, numarul ridicat la puterea a treia): function cub($numar) { return $numar*$numar*$numar; } Dupa ce a fost definita, o functie poate fi utilizata oriunde se doreste, inclusiv expresiile PHP, ca in exemplul urmator: $numar=10; echo 'Cubul numarului '.$numar.' este '.cub($numar); 55

56 Desi functiile nu pot intoarce simultan mai multe valori, se obtin rezultate similare daca se intorc tablouri, ca in exemplul urmator: <?php function note(){ return array (9, 8, 10); } list ($fizica, $matematica, $informatica)=note(); echo "Nota la fizica: ".$fizica.";<br />"; echo "Nota la matematica: ".$matematica.";<br />"; echo "Nota la informatica: ".$informatica.".";?> 56

57 Argumentele pot fi transferate functiilor prin valoare si prin referinta. Transferul argumentelor prin valoare In cazul transferului prin valoare, expresia transmisa ca argument este evaluata, iar valoarea obtinuta este atribuita in corpul functiei variabilei cu acelasi nume. Este posibil ca argumentele transferate prin valoare functiilor sa fie si tablouri, ca in exemplul prezentat in continuare, in care functia suma_elemente() intoarce suma elementelor tabloului transferat ca argument: 57

58 <?php function suma_elemente($tablou) { $nrelem=count($tablou); $sumaelem=0; for($i=0; $i< $nrelem;$i++) { $sumaelem += $tablou[$i]; } return $sumaelem; } echo "Suma elementelor tabloului este ".suma_elemente(array(10,5,12));?> 58

59 Transferul argumentelor prin referinta Aceasta modalitate de transfer impune ca argumentul functiei sa fie o variabila. In loc sa se refere la copia valorii variabilei transmise, variabila corespunzatoare din functie se refera chiar la valoarea variabilei respective, de fiecare data cand este utilizata. Drept rezultat, functia va schimba chiar valoarea variabilei transferata un exemplu in care este folosita aceasta modalitate de transfer: 59

60 <?php function cub(&$numar) { } $n=4; cub($n); echo $n;?> Transmitere prin referinta adresa variabilei $numar=$numar*$numar*$numar; 60

61 Curs 7 3. Funcţii 3.1. Apelarea funcţiilor 3.2. Funcţii definite de utilizator Definirea funcţiilor Variabile automatice Funcţii care întorc valori Accesul la variabile declarate în exterior. Variabile globale Funcţii recursive Terminarea execuţiei unui script 61

62 Accesul la variabile declarate in exterior. Variabile globale Fiecare functie are propriul ei set de variabile (argumentele si/sau cele definite in corpul sau). Toate variabilele utilizate in exteriorul oricarei functiii (cu exceptia variabilelor superglobale) nu sunt vizibile in interiorul acesteia, ceea ce inseamna ca ele nu sunt globale. 62

63 Daca se doreste accesarea in interiorul functiei a unei variabile folosite in exteriorul sau, trebuie folosit tabloul $GLOBALS, ca in exemplul urmator: <?php function modifica() { $GLOBALS["variabila"]=100; } $variabila=50; echo $variabila; modifica(); echo " ".$variabila;?> 63

64 De asemenea, este posibil ca una sau mai multe variabile sa poata fi declarate globale, prin extinderea domeniului lor de vizibilitate utilizand cuvantul-cheie global: [global] $variabila1, $variabila2,... Variabilele declarate globale (adica, in exteriorul oricarei functii) pot fi utilizate peste tot in script, inclusiv in definitiile functiilor. In scopul precizat, este necesar ce ele sa fie importate in interiorul functiilor folosind cuvantul cheie global, ca exemplul prezentat in continuare: 64

65 <?php function modifica(){ global $variabila; $variabila=10; echo $variabila; } modifica(); $variabila=20; echo " ".$variabila;?> 65

66 Se poate considera ca folosirea variabilelor declarate globale simplifica activitatea de programare, eliminand partial necesitatea utilizarii argumentelor in definitiile functiilor. Cu toate acestea, posibilitatea modificarii variabilelor in orice punct al scriptului, inclusiv in interiorul functiilor, poate avea drept consecinta scrierea unui cod dificil de inteles de catre cei care il citesc. In locul variabilelor declarate globale, este de preferat folosirea variabilelor locale, functiile urmand sa modifice numai acele variabile care le sunt transmise ca argumente prin referinta. 66

67 Curs 7 3. Funcţii 3.1. Apelarea funcţiilor 3.2. Funcţii definite de utilizator Definirea funcţiilor Variabile automatice Funcţii care întorc valori Accesul la variabile declarate în exterior. Variabile globale Funcţii recursive Terminarea execuţiei unui script 67

68 Functii recursive Ca si in alte limbaje de programare, in PHP pot fi definite si utilizate functiile recursive. Se spune ca o functie care se apeleaza pe ea insasi este o functie recursiva, metoda numindu-se recursivitate. Ca si intr-o structura ciclica, intr-o functie recursiva trebuie precizata o conditie de incheiere a executiei. Daca o functie se autoapeleaza direct, se spune ca se produce recursivitatea directa. In schimb, daca o functie se apeleaza pe ea insasi, prin intermediul altei functii, se spune ca se produce recursivitatea indirecta. In mod obisnuit, este utilizata recursivitatea directa. 68

69 In exemplul urmator este prezentata o functie (factorial ()) in care se utilizeaza recursivitatea directa: <?php function factorial($n) { if($n==1) return 1; else return $n*factorial($n-1); } echo "Factorial = ".factorial(5);?> 69

70 Curs 7 3. Funcţii 3.1. Apelarea funcţiilor 3.2. Funcţii definite de utilizator Definirea funcţiilor Variabile automatice Funcţii care întorc valori Accesul la variabile declarate în exterior. Variabile globale Funcţii recursive Terminarea execuţiei unui script 70

71 Terminarea executiei unui script O instructiune return determina sistarea executiei functiei care o contine. In cazul în care se doreste sistarea prelucrarii unui întreg script, se poate invoca functia exit(): <?php function stop() { exit(); } echo "<br />Unu..."; echo "<br />Doi..."; stop(); echo "<br />Trei...";?> 71

72 Dupa executie scriptul afiseaza: Unu... Doi... Rezultatul acestui script include cuvintele "Unu" si "Doi", dar nu si cuvântul "Trei". Prin apelarea functiei "stop()" se executa corpul functiei respective; la invocarea functiei, exit(), executia scriptului se încheie. 72

73 73 Întrebări?

Programarea şi utilizarea calculatoarelor

Programarea şi utilizarea calculatoarelor Universitatea Constantin Brâncuşi din Târgu-Jiu Facultatea de Inginerie Departamentul de Automatică, Energie şi Mediu Programarea calculatoarelor Lect.dr. Adrian Runceanu Curs 6 Instrucţiunile limbajului

Mai mult

proiectarea bazelor de date

proiectarea bazelor de date Universitatea Constantin Brâncuşi din Târgu-Jiu Facultatea de Inginerie şi Dezvoltare Durabilă Departamentul de Automatică, Energie, Mediu şi Dezvoltare Durabilă Proiectarea bazelor de date Lect.dr. Adrian

Mai mult

Operatorii in C Expresii Operatori aritmetici Operatori de asignare Operatori de incrementare si decrementare Operatori relationali Operatori logici O

Operatorii in C Expresii Operatori aritmetici Operatori de asignare Operatori de incrementare si decrementare Operatori relationali Operatori logici O Operatorii in C Expresii Operatori aritmetici Operatori de asignare Operatori de incrementare si decrementare Operatori relationali Operatori logici Operatii pe biti Operatorul conditional Operatori Logici

Mai mult

Microsoft Word - CarteC.doc

Microsoft Word - CarteC.doc INSTRUCŢIUNILE LIMBAJULUI C (2) Instrucţiuni repetitive Instrucţiunea while Instrucţiunea while are formatul: while(expresie) Expresie DA Instrucţiune NU Instrucţiunea while produce în primul rând evaluarea

Mai mult

ALGORITMII ŞI REPREZENTAREA LOR Noţiunea de algoritm Noţiunea de algoritm este foarte veche. Ea a fost introdusă în secolele VIII-IX de către Abu Ja f

ALGORITMII ŞI REPREZENTAREA LOR Noţiunea de algoritm Noţiunea de algoritm este foarte veche. Ea a fost introdusă în secolele VIII-IX de către Abu Ja f ALGORITMII ŞI REPREZENTAREA LOR Noţiunea de algoritm Noţiunea de algoritm este foarte veche. Ea a fost introdusă în secolele VIII-IX de către Abu Ja far Mohammed ibn Musâ al- Khowârizmî în cartea sa intitulată

Mai mult

SUBPROGRAME

SUBPROGRAME SUBPROGRAME Un subprogram este un ansamblu ce poate conţine tipuri de date, variabile şi instrucţiuni destinate unei anumite prelucrări (calcule, citiri, scrieri). Subprogramul poate fi executat doar dacă

Mai mult

E_d_Informatica_sp_SN_2014_bar_10_LRO

E_d_Informatica_sp_SN_2014_bar_10_LRO Examenul de bacalaureat naţional 2014 Proba E. d) Informatică Varianta 10 Toate subiectele sunt obligatorii. Se acordă 10 puncte din oficiu. Timpul de lucru efectiv este de 3 ore. În rezolvările cerute,

Mai mult

Paradigme de programare

Paradigme de programare Curs 4 Transparență referențială. Legare statică / dinamică. Modelul contextual de evaluare. Transparență referențială Cuprins Efecte laterale Transparență referențială 2 Efecte laterale Efecte laterale

Mai mult

E_d_Informatica_sp_MI_2015_bar_02_LRO

E_d_Informatica_sp_MI_2015_bar_02_LRO Examenul de bacalaureat naţional 2015 Proba E. d) Informatică Varianta 2 Filiera teoretică, profilul real, specializările: matematică-informatică matematică-informatică intensiv informatică Toate subiectele

Mai mult

Top

Top PROGRAMARE ORIENTATĂ PE OBIECTE Tratarea excepțiilor O excepție este o eroare care poate să apară la rularea unui program. Exemple: încercarea de deschidere a unui fișier ce nu există depășirea limitelor

Mai mult

Microsoft Word _POO_Lab_1_Modificari_v01.htm

Microsoft Word _POO_Lab_1_Modificari_v01.htm Laborator POO - 00 (draft) 00-00 / 0//00 00_POO_Lab Modificari_v0.htm POO Laborator Modificarea programelor Java. Studiu de caz: programul Salut.java. Varianta care utilizeaza un argument al programului

Mai mult

Microsoft Word - CarteC.doc

Microsoft Word - CarteC.doc Introducere în limbajul de programare C - C este un limbaj de programare ale cărui caracteristici sunt economia de expresie, structuri moderne de control al fluxului şi de date, precum şi un set bogat

Mai mult

Laborator 2: Instrucţiuni Java şi lucru cu şiruri de caractere Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 18 octombrie 2011

Laborator 2: Instrucţiuni Java şi lucru cu şiruri de caractere Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 18 octombrie 2011 Laborator 2: Instrucţiuni Java şi lucru cu şiruri de caractere Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 18 octombrie 2011 I. NOŢIUNI TEORETICE A. Instrucţiuni condiţionale 1. Intrucţiunea

Mai mult

Paradigme de Programare

Paradigme de Programare Paradigme de Programare Conf. dr. ing. Andrei Olaru andrei.olaru@cs.pub.ro cs@andreiolaru.ro Departamentul de Calculatoare 2019 9 : 1 / 38 Cursul 9 Concluzie Paradigma Funcțională 9 : 2 / 38 Cursul 9:

Mai mult

Lecţia 2 Structura liniară, alternativă şi repetitivă Clasa a V-a Structuri de bază(liniară, alternativă şi repetitivă) Programarea structurată este o

Lecţia 2 Structura liniară, alternativă şi repetitivă Clasa a V-a Structuri de bază(liniară, alternativă şi repetitivă) Programarea structurată este o Structuri de bază(liniară, alternativă şi repetitivă) Programarea structurată este o manieră de concepere a programelor, potrivit unor reguli bine definite şi independent de limbajul de programare. Scopul

Mai mult

Microsoft Word - CarteC.doc

Microsoft Word - CarteC.doc Transmiterea parametrilor unei funcții Parametrii se transmit de la funcţia apelantă la funcţia apelată prin intermediul stivei. La apelul unei funcţii, pe stivă se crează o înregistrare de activare, care

Mai mult

Laborator 2 Incompatibilităţi/Diferenţe între C şi C++ Completări C++ Supraîncărcarea (redefinirea) numelui de funcţii În C nu este permisă existenţa

Laborator 2 Incompatibilităţi/Diferenţe între C şi C++ Completări C++ Supraîncărcarea (redefinirea) numelui de funcţii În C nu este permisă existenţa Laborator 2 Incompatibilităţi/Diferenţe între C şi C++ Completări C++ Supraîncărcarea (redefinirea) numelui de funcţii În C nu este permisă existenţa a două funcţii care au acelaşi nume În C++ acest lucru

Mai mult

-

- Cursul 6 Expresii în C/C++ (I) https://docs.microsoft.com/en-us/cpp/cpp/expressions-cpp După cum am văzut, într-un program de calcul scris în limbajul C/C++ prelucrarea datelor se realizează printr-o serie

Mai mult

PPSD

PPSD Modele paralele SPMD Modelul SPMD Comunicarea prin mesaje Message Passing Interface Modelul SPMD Modelul SPMD (Single Program Multiple Data) Acesta este un model adecvat calculatoarelor MIMD In cele ce

Mai mult

LUCRAREA 8 PROGRAMAREA NELINIARĂ ÎN REZOLVAREA PROBLEMELOR DIN ENERGETICĂ. METODE DE ORDINUL Aspecte generale Programarea neliniară are o foart

LUCRAREA 8 PROGRAMAREA NELINIARĂ ÎN REZOLVAREA PROBLEMELOR DIN ENERGETICĂ. METODE DE ORDINUL Aspecte generale Programarea neliniară are o foart LUCRAREA 8 PROGRAMAREA NELINIARĂ ÎN REZOLVAREA PROBLEMELOR DIN ENERGETICĂ. METODE DE ORDINUL 0 8.. Aspecte generale Programarea neliniară are o foarte mare importanţă în rezolvarea problemelor de optimizări,

Mai mult

Laborator 4: Continuare Programare Orientată pe Obiecte Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 29 octombrie 2011

Laborator 4: Continuare Programare Orientată pe Obiecte Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 29 octombrie 2011 Laborator 4: Continuare Programare Orientată pe Obiecte Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 29 octombrie 2011 I. NOŢIUNI TEORETICE A. Suprascrierea metodelor O clasă derivată

Mai mult

Logică și structuri discrete Limbaje regulate și automate Marius Minea marius/curs/lsd/ 24 noiembrie 2014

Logică și structuri discrete Limbaje regulate și automate Marius Minea   marius/curs/lsd/ 24 noiembrie 2014 Logică și structuri discrete Limbaje regulate și automate Marius Minea marius@cs.upt.ro http://www.cs.upt.ro/ marius/curs/lsd/ 24 noiembrie 2014 Un exemplu: automatul de cafea acțiuni (utilizator): introdu

Mai mult

Utilizare Internet

Utilizare Internet Curs 14 2014/2015 1 Functionalitate La toate temele 1p din nota este obtinut de indeplinirea functionalitatii cerute. orice tehnologie, orice metoda, sa faca ceea ce trebuie Forma paginii prezinta importanta

Mai mult

Slide 1

Slide 1 1 PROIECTAREA ALGORITMILOR Lect. univ. dr. Adrian Runceanu 1 Curs Alocarea dinamică de memorie în C++ Conţinutul cursului 1. Tipuri de date. Conceptul de pointer 3. Operatori specifici pointerilor 4. Aritmetica

Mai mult

Microsoft PowerPoint - ImplementareLimbaj [Read-Only] [Compatibility Mode]

Microsoft PowerPoint - ImplementareLimbaj [Read-Only] [Compatibility Mode] Detalii de implementare. Declararea variabilelor, transmiterea parametrilor catre subprograme. Declararea variabilelor variabile globale -declarate in afara oricarei functii variabile locale -declarate

Mai mult

Programarea şi utilizarea calculatoarelor

Programarea şi utilizarea calculatoarelor Universitatea Constantin Brâncuşi din Târgu-Jiu Facultatea de Inginerie Departamentul de Automatică, Energie şi Mediu Programarea calculatoarelor Lect.dr. Adrian Runceanu Curs 3 Elemente introductive ale

Mai mult

PROGRAMARE ORIENTATA PE OBIECTE

PROGRAMARE ORIENTATA PE OBIECTE Curs 2 Principiile Programării Orientate pe Obiecte Programare Orientată pe Obiecte Tehnici de programare Programarea procedurală Modul în care este abordată programarea, din punct de vedere al descompunerii

Mai mult

Testare manuala: situatia in care o persoana initiaza fiecare test, interactioneaza cu el si interpreteaza, analizeaza si raporteaza rezultatele. Test

Testare manuala: situatia in care o persoana initiaza fiecare test, interactioneaza cu el si interpreteaza, analizeaza si raporteaza rezultatele. Test Testare manuala: situatia in care o persoana initiaza fiecare test, interactioneaza cu el si interpreteaza, analizeaza si raporteaza rezultatele. Testare automata: exista un mecanism pentru executia fara

Mai mult

Slide 1

Slide 1 CURS 4 Structura generală a unui program C Program - ansamblu de instrucţiuni incluse în una sau mai multe funcţii, care specifică operaţiile ce trebuie efectuate asupra unor date pentru a fi prelucrate

Mai mult

MergedFile

MergedFile PROIECT DIDACTIC Clasa a V-a Informatică și T.I.C. Proiect didactic realizat de Anișoara Apostu, profesor Digitaliada, revizuit de Radu Tăbîrcă, inspector școlar Informatică Textul și ilustrațiile din

Mai mult

PowerPoint-Präsentation

PowerPoint-Präsentation Universitatea Transilvania din Braşov Laboratorul de Vedere Artificială Robustă şi Control Metode Numerice Curs 01 Introducere Gigel Măceșanu 1 Cuprins Obiectivele cursului Organizare: Structura cursului

Mai mult

Laborator 3

Laborator 3 Laborator 3 Programare III săptămâna 8-12.10.2018 OBIECTIVE: - Folosirea modificatorilor unei clase (public, abstract, final) - Folosirea modificatorilor de acces în declaraţiile membrilor unei clase Noţiuni:

Mai mult

ALGORITMICĂ. Seminar 3: Analiza eficienţei algoritmilor - estimarea timpului de execuţie şi notaţii asimptotice. Problema 1 (L) Să se determine număru

ALGORITMICĂ. Seminar 3: Analiza eficienţei algoritmilor - estimarea timpului de execuţie şi notaţii asimptotice. Problema 1 (L) Să se determine număru ALGORITMICĂ. Seminar 3: Analiza eficienţei algoritmilor - estimarea timpului de execuţie şi notaţii asimptotice. Problema 1 (L) Să se determine numărul de operaţii efectuate de către un algoritm care determină

Mai mult

GHERCĂ MAGDA CASA CORPULUI DIDACTIC BRĂILA PORTOFOLIU EVALUARE INFORMATICĂ ȘI TIC PENTRU GIMNAZIU CLASA A V-A Neamț SERIA 1 GRUPA 1 CURSANT: GHERCĂ G

GHERCĂ MAGDA CASA CORPULUI DIDACTIC BRĂILA PORTOFOLIU EVALUARE INFORMATICĂ ȘI TIC PENTRU GIMNAZIU CLASA A V-A Neamț SERIA 1 GRUPA 1 CURSANT: GHERCĂ G CASA CORPULUI DIDACTIC BRĂILA PORTOFOLIU EVALUARE INFORMATICĂ ȘI TIC PENTRU GIMNAZIU CLASA A V-A Neamț SERIA 1 GRUPA 1 CURSANT: GHERCĂ G MAGDA COLEGIUL NAŢIONAL ROMAN-VODĂ ROMAN PROIECTUL UNITĂŢII DE ÎNVĂŢARE

Mai mult

1. Operatii cu matrici 1 Cerinte: Sa se realizeze functii pentru operatii cu matrici patratice (de dimensiune maxima 10x10). Operatiile cerute sunt: A

1. Operatii cu matrici 1 Cerinte: Sa se realizeze functii pentru operatii cu matrici patratice (de dimensiune maxima 10x10). Operatiile cerute sunt: A 1. Operatii cu matrici 1 Sa se realizeze functii pentru operatii cu matrici patratice (de dimensiune maxima 10x10). Operatiile cerute sunt: A+B (adunare), aa (inmultire cu scalar), A-B scadere), AT (Transpusa),

Mai mult

Declararea variabilelor

Declararea variabilelor Platforma 3. 1 Instructiuni diverse Declararea variabilelor Tipuri de Date Tipul de dată al unui obiect/variabila specifica tipul informaţiei pe care acel obiect îl poate stoca. Exemplu: numere întregi,

Mai mult

Diapositive 1

Diapositive 1 Tablouri Operatii pe tablouri bidimensionale Lectii de pregatire pentru Admitere 09 / 03 / 2019 1 Cuprins Operatii pe tablouri bidimensionale 0. Tablouri unidimensionale scurta recapitulare 1.Tablouri

Mai mult

L7

L7 Lucrarea de laborator nr. 7 POINTERI 1. Conţinutul lucrării În lucrare se prezintă tipul pointer, operaţiile permise asupra pointerilor, modul de alocare şi eliberare dinamică a memoriei. 2. Consideraţii

Mai mult

Programarea calculatoarelor. Note de curs Marius Minea 1 Introducere în programarea în C 1.1 Funcţii în limbajul C Calcule şi funcţii La origine, rolu

Programarea calculatoarelor. Note de curs Marius Minea 1 Introducere în programarea în C 1.1 Funcţii în limbajul C Calcule şi funcţii La origine, rolu 1 Introducere în programarea în C 1.1 Funcţii în limbajul C Calcule şi funcţii La origine, rolul programelor e de a efectua în principal calcule matematice. Discutăm de aceea structura programelor făcând

Mai mult

Subiectul 1

Subiectul 1 Subiectul 1 În fişierul Numere.txt pe prima linie este memorat un număr natural n (n

Mai mult

Analiză de flux de date 29 octombrie 2012

Analiză de flux de date 29 octombrie 2012 Analiză de flux de date 29 octombrie 2012 Analiză statică: definiţie O analiză a codului sursă (fără a executa programul), cu scopul de a determina proprietăţi ale programului sursă. (in principal corectitudinea,

Mai mult

Proiectarea Sistemelor Software Complexe

Proiectarea Sistemelor Software Complexe Proiectarea Sistemelor Software Complexe Curs 4 Arhitecturi de Sistem Software Bazate pe Tehnologii Middleware. Obiecte Distribuite. Rolul unui arhitect software este foarte asemănător cu cel al unui arhitect

Mai mult

PHP (II)

PHP (II) PHP şi MySQL Bazele de date sunt colecţii de date, aranjate într-o anumită formă Operaţii : - Crearea bazei de date; - Conectarea la baza de date; - Inserarea datelor in baza de date; - Ștergerea datelor

Mai mult

Curs 8: Tehnica divizării (I) Algoritmi si structuri de date - Curs 8 1

Curs 8: Tehnica divizării (I) Algoritmi si structuri de date - Curs 8 1 Curs : Tehnica divizării (I) 1 In cursul anterior am văzut cum se analizează eficiența algoritmilor recursivi Se scrie relația de recurență corespunzătoare timpului de execuție Se rezolvă relația de recurență

Mai mult

Declaraţii. Instrucţiuni 19 octombrie 2005 Programarea calculatoarelor 2. Curs 3b Marius Minea

Declaraţii. Instrucţiuni 19 octombrie 2005 Programarea calculatoarelor 2. Curs 3b Marius Minea Declaraţii. Instrucţiuni 19 octombrie 2005 Declaraţii. Instrucţiuni 2 Domeniul de vizibilitate al identificatorilor Pt. orice identificator, compilatorul trebuie sǎ-i decidǎ semnificaţia Identificatorii

Mai mult

Microsoft PowerPoint - Curs_SDA_9_RO_2019_v2.pptx

Microsoft PowerPoint - Curs_SDA_9_RO_2019_v2.pptx SDA (PC2) Curs 9 Liste / Grafuri / Arbori Iulian Năstac Lista dublu înlănțuită Recapitulare Într-o astfel de listă fiecare nod conţine doi pointeri: unul spre nodul următor şi unul spre nodul precedent.

Mai mult

Ingineria Sistemelor de Programare

Ingineria Sistemelor de Programare Ingineria Sistemelor de Programare Agregarea si Mostenirea mihai.hulea@aut.utcluj.ro 2019 Compozitia si agregarea Relatia dintre obiecte raspunde afirmativ la intrebarea are un/are o Exemple: Telefonul

Mai mult

MINISTERUL EDUCAŢIEI, CULTURII ŞI CERCETĂRII AL REPUBLICII MOLDOVA UNIVERSITATEA DE STAT ALECU RUSSO DIN BĂLŢI FACULTATEA DE ŞTIINŢE REALE, ECONOMICE

MINISTERUL EDUCAŢIEI, CULTURII ŞI CERCETĂRII AL REPUBLICII MOLDOVA UNIVERSITATEA DE STAT ALECU RUSSO DIN BĂLŢI FACULTATEA DE ŞTIINŢE REALE, ECONOMICE MINISTERUL EDUCAŢIEI, CULTURII ŞI CERCETĂRII AL REPUBLICII MOLDOVA UNIVERSITATEA DE STAT ALECU RUSSO DIN BĂLŢI FACULTATEA DE ŞTIINŢE REALE, ECONOMICE ŞI ALE MEDIULUI CATEDRA DE MATEMATICĂ ŞI INFORMATICĂ

Mai mult

Laborator 9: Fire de execuţie Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 20 noiembrie 2011

Laborator 9: Fire de execuţie Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 20 noiembrie 2011 Laborator 9: Fire de execuţie Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 20 noiembrie 2011 I. NOŢIUNI TEORETICE A. Ce este un fir de execuţie? Înainte de a defini conceptul de fir

Mai mult

Limbaje de programare Pointeri. Alocare dinamică (continuare) 26 noiembrie 2012

Limbaje de programare Pointeri. Alocare dinamică (continuare) 26 noiembrie 2012 Limbaje de programare Pointeri. Alocare dinamică (continuare) 26 noiembrie 2012 EROARE: lipsa iniţializării E o EROARE să folosim o variabilă neiniţializată int sum; for (i=0; i++ < 10; ) sum += a[i];

Mai mult

Lab6LCD

Lab6LCD LABORATOR 6 - Interfaţă pentru afişor cu cristale lichide (LCD), partea II-a Scopul lucrării În laboratorul anterior s-au implementat funcţiile rd_lcdreg(char vrs), wr_lcdreg(char vrs, char data), void

Mai mult

Limbaje de Programare Curs 6 – Functii de intrare-iesire

Limbaje de Programare   Curs 6 – Functii de intrare-iesire Limbaje de Programare Curs 6 Funcţii de intrare-ieşire Dr. Casandra Holotescu Universitatea Politehnica Timişoara Ce discutăm azi... 1 Citire formatată 2 Citirea şirurilor de caractere 3 Citirea unor linii

Mai mult

Microsoft Word - PCLP2_Curs_4_2019.doc

Microsoft Word - PCLP2_Curs_4_2019.doc 12. Tipuri de date derivate direct - Tipul pointer Tipurile de date derivate direct sunt tipuri de date create pe baza unor tipuri de date existente. In limbajul C, un astfel de tip, nestructurat (simplu),

Mai mult

Slide 1

Slide 1 - Curs 2 - Verilog HDL reprezintă un limbaj utilizat pentru descrierea sistemelor numerice. Sistemele numerice pot fi calculatoare, componenete ale acestora sau alte structure care manipulează informaţie

Mai mult

B

B F.I.A. Laboratorul numărul 3 Cătălin Stoean Unificarea şi recursivitatea Unificarea Unificarea reprezintă modul în care Prologul realizează potrivirile între termeni. La prima vedere, procesul de unificare

Mai mult

Modul Modbus ASCII SISTEME DE COMUNICATIE CURS 5 - Constantinescu Catalin Atunci cand se foloseste modul MODBUS ASCII fiecare octet din mesaj

Modul Modbus ASCII SISTEME DE COMUNICATIE CURS 5 - Constantinescu Catalin Atunci cand se foloseste modul MODBUS ASCII fiecare octet din mesaj 2.3.5.2 Modul Modbus ASCII Atunci cand se foloseste modul MODBUS ASCII fiecare octet din mesaj este trimis ca doua caractere ASCII (de exemplu, octetul 0x7A este transmis ca doua caractere 0x37 = 7, respectiv

Mai mult

Microsoft Word - 2 ES RO.doc

Microsoft Word - 2 ES RO.doc 2 MULTITASKING 2.1. Preliminarii Este deja foarte bine cunoscut faptul că o programare eficientă în domeniul sistemelor în timp real, în mod evident, vizând aici sistemele în timp real încorporate, este

Mai mult

Slide 1

Slide 1 SCTR -SZOKE ENIKO - Curs 4 continuare curs 3 3. Componentele hard ale unui sistem de calcul in timp real 3.1 Unitatea centrala de calcul 3.1.1 Moduri de adresare 3.1.2 Clase de arhitecturi ale unitatii

Mai mult

Aggregating Data

Aggregating Data Subinterogări. Subinterogări multi-row. Formatarea rezultatelor unei interogări Obiective Prin parcurgerea acestui referat studentul va dobândi cunoştinţele necesare: identificării funcţiilor grup disponibile;

Mai mult

Adresarea memoriei Modurile de adresare constituie un instrument principal pentru reprezentarea în memorie a imaginii datelor, aşa cum este ace

Adresarea memoriei Modurile de adresare constituie un instrument principal pentru reprezentarea în memorie a imaginii datelor, aşa cum este ace 174 12 Adresarea memoriei Modurile de adresare constituie un instrument principal pentru reprezentarea în memorie a imaginii datelor, aşa cum este aceasta văzută de programatorul în limbaj de nivel înalt.

Mai mult

Analiză statică Analiza fluxului de date 23 octombrie 2014

Analiză statică Analiza fluxului de date 23 octombrie 2014 Analiză statică Analiza fluxului de date 23 octombrie 2014 Analiză statică: definiție O analiză a codului sursă (fără a executa programul), cu scopul de a determina proprietăți ale programului sursă. (in

Mai mult

PROGRAMARE OBIECT-ORIENTATA LABORATOR 1 INTRODUCERE IN CLASE SI OBIECTE Introducere teoretica Prin intermediul unei Clase ne dorim sa construim tipuri

PROGRAMARE OBIECT-ORIENTATA LABORATOR 1 INTRODUCERE IN CLASE SI OBIECTE Introducere teoretica Prin intermediul unei Clase ne dorim sa construim tipuri PROGRAMARE OBIECT-ORIENTATA LABORATOR 1 INTRODUCERE IN CLASE SI OBIECTE Introducere teoretica Prin intermediul unei Clase ne dorim sa construim tipuri noi de date, inexistente pana in momentul acela in

Mai mult

Interfețe și Protocoale de Comunicații Arduino-Port Paralel Arduino. Laborator 1- Portul Paralel 1 Caracteristici generale Arduino UNO este o placă de

Interfețe și Protocoale de Comunicații Arduino-Port Paralel Arduino. Laborator 1- Portul Paralel 1 Caracteristici generale Arduino UNO este o placă de Arduino. Laborator 1- Portul Paralel 1 Caracteristici generale Arduino UNO este o placă de dezvoltare bazată pe un microcontroller ATmega 328P pe 8 biți cu 32kB memorie flash. Placa de dezvoltare conține:

Mai mult

Tablouri (continuare)

Tablouri (continuare) Vector Dinamic DYNAMIC ARRAY Observații 1. Un tablou este static: nu pot fi inserate sau şterse celule. 2. Vector - tablou unidimensional 3. Reprezentarea vectorilor este secvenţială, adică elementele

Mai mult

Logică și structuri discrete Relații. Funcții parțiale Marius Minea marius/curs/lsd/ 20 octombrie 2014

Logică și structuri discrete Relații. Funcții parțiale Marius Minea   marius/curs/lsd/ 20 octombrie 2014 Logică și structuri discrete Relații. Funcții parțiale Marius Minea marius@cs.upt.ro http://www.cs.upt.ro/ marius/curs/lsd/ 20 octombrie 2014 Relații în lumea reală și informatică Noțiunea matematică de

Mai mult

O NOUA PROBLEMA DE CONCURS OLIMPIADA MUNICIPALA DE INFORMATICA, IASI 2019 V-am promis într-un articol mai vechi ca vom prezenta pe acest blog câteva p

O NOUA PROBLEMA DE CONCURS OLIMPIADA MUNICIPALA DE INFORMATICA, IASI 2019 V-am promis într-un articol mai vechi ca vom prezenta pe acest blog câteva p O NOUA PROBLEMA DE CONCURS OLIMPIADA MUNICIPALA DE INFORMATICA, IASI 2019 V-am promis într-un articol mai vechi ca vom prezenta pe acest blog câteva problema interesante. Astăzi ne-am propus sa va supunem

Mai mult

Introducere în limbajul JavaScript

Introducere în limbajul JavaScript Introducere în limbajul JavaScript (III) HTML DOM (Document Object Model) DOM este un standard W3C (World Wide Web Consortium) care permite programelor și scripturilor accesarea dinamică a documentelor

Mai mult

Информационная система персонализации, печати и учета документов об образовании

Информационная система персонализации, печати и учета документов об образовании Sistemul Informaţional Personalizare a Actelor de Studii (SIPAS) 2018-2019 Contacte http://www.ctice.md:8088/gimnaziul Telefon : (022) 44-32-37 actedestudii@ctice.gov.md Conţinutul 1 2 3 4 Locul de muncă

Mai mult

Tablouri unidimensionale Problema 1 Să se determine mulţimea cifrelor unui număr natural n > 0, dat. Exemplu: n= Cifre = {1,2,3,7} Se cere să s

Tablouri unidimensionale Problema 1 Să se determine mulţimea cifrelor unui număr natural n > 0, dat. Exemplu: n= Cifre = {1,2,3,7} Se cere să s Tablouri unidimensionale Problema 1 Să se determine mulţimea cifrelor unui număr natural n > 0, dat. Exemplu: n=1723237 Cifre = {1,2,3,7 Se cere să se utilizeze subprograme care să comunice între ele şi

Mai mult

Microsoft Word - Curs_07.doc

Microsoft Word - Curs_07.doc 5.3 Modificarea datelor în SQL Pentru modificarea conţinutului unei baze de date SQL pune la dispoziţie instrucţiunile insert, delete şi update. 5.3.1 Inserări în baza de date Sintaxa instrucţiunii insert

Mai mult

Microsoft Word - Curs 11 - PHP.doc

Microsoft Word - Curs 11 - PHP.doc Cursul 11 PHP - partea a III-a 1. Conexiuni MySQL Conexiunea la o bază de date este prima operaţiune ce trebuie făcută în lucrul cu acea bază de date. Funcţia folosită este: mysql_connect() Conexiunea

Mai mult

Probleme proiect TP BITPERM Implementați un algoritm care citește de la intrarea standard două numere naturale și scrie la ieșirea standard da

Probleme proiect TP BITPERM Implementați un algoritm care citește de la intrarea standard două numere naturale și scrie la ieșirea standard da Probleme proiect TP 2016 1. BITPERM Implementați un algoritm care citește de la intrarea standard două numere naturale și scrie la ieșirea standard dacă reprezentarea binară a unuia dintre numere poate

Mai mult

Laborator 8: PROIECTAREA BAZELOR DE DATE SUBPROGRAME in PL/SQL (partea II - functii) Un subprogram este un bloc PL/SQL cu nume (spre deosebire de bloc

Laborator 8: PROIECTAREA BAZELOR DE DATE SUBPROGRAME in PL/SQL (partea II - functii) Un subprogram este un bloc PL/SQL cu nume (spre deosebire de bloc Laborator 8: PROIECTAREA BAZELOR DE DATE SUBPROGRAME in PL/SQL (partea II - functii) Un subprogram este un bloc PL/SQL cu nume (spre deosebire de blocurile anonime) care poate primi parametri şi poate

Mai mult

Propunator: Morar Florin Colegiul National Silvania Zalau Discipina: Informatica Nivel liceal, cls. XII 1.Să se scrie în limbajul C/C++ definiţia comp

Propunator: Morar Florin Colegiul National Silvania Zalau Discipina: Informatica Nivel liceal, cls. XII 1.Să se scrie în limbajul C/C++ definiţia comp Propunator: Morar Florin Colegiul National Silvania Zalau Discipina: Informatica Nivel liceal, cls. XII 1.Să se scrie în limbajul C/C++ definiţia completă a subprogramului calcul, care primeşte prin intermediul

Mai mult

Lucrarea 10

Lucrarea 10 Lucrarea 10. Studierea facilitatilor senzoriale, de calcul si de comunicatie ale unei placi de tip Arduino 1. Obiectivul lucrarii Lucrarea isi propune sa prezinte facilitatile de calcul, senzoriale si

Mai mult

Fâciu N. Maria-Ema CASA CORPULUI DIDACTIC BRĂILA PROGRAM DE FORMARE INFORMATICĂ ȘI TIC PENTRU GIMNAZIU CLASA A V-A SERIA 1 GRUPA 2 CURSANT: Fâciu N. M

Fâciu N. Maria-Ema CASA CORPULUI DIDACTIC BRĂILA PROGRAM DE FORMARE INFORMATICĂ ȘI TIC PENTRU GIMNAZIU CLASA A V-A SERIA 1 GRUPA 2 CURSANT: Fâciu N. M CASA CORPULUI DIDACTIC BRĂILA PROGRAM DE FORMARE INFORMATICĂ ȘI TIC PENTRU GIMNAZIU CLASA A V-A SERIA 1 GRUPA 2 CURSANT: PROIECTUL UNITĂŢII DE ÎNVĂŢARE ALGORITMI Notă: filmele didactice, dezbaterile, jocurile

Mai mult

Microsoft Word - lab4.doc

Microsoft Word - lab4.doc Lucrarea 4 Moştenire şi polimorfism Cuprins Relaţia de moştenire în Java...1 Reguli de vizibilitate în contextul relaţiei de moştenire...2 Constructorii şi moştenirea...4 Operatorul instanceof...4 Redefinirea

Mai mult

LOGICA MATEMATICA SI COMPUTATIONALA Sem. I,

LOGICA MATEMATICA SI COMPUTATIONALA  Sem. I, LOGICA MATEMATICĂ ŞI COMPUTAŢIONALĂ Sem. I, 2017-2018 Ioana Leustean FMI, UB Partea III Calculul propoziţional clasic Consistenţă şi satisfiabilitate Teorema de completitudine Algebra Lindenbaum-Tarski

Mai mult

Matrici și vectori în VBA În VBA, o matrice este un grup de variabile de același tip. De ce ar trebui să utilizați o matrice? Presupunem că ați vrut s

Matrici și vectori în VBA În VBA, o matrice este un grup de variabile de același tip. De ce ar trebui să utilizați o matrice? Presupunem că ați vrut s Matrici și vectori în VBA În VBA, o matrice este un grup de variabile de același tip. De ce ar trebui să utilizați o matrice? Presupunem că ați vrut să stocați douăzeci de nume de angajați în variabile

Mai mult

ALGORITHMICS

ALGORITHMICS CURS 2: Descrierea algoritmilor în pseudocod =Exemple= 1 Structura Descrierea unor algoritmi simpli Specificarea și utilizarea subalgoritmilor 2 Exemplu 1 Considerăm un tabel cu informații despre studenți

Mai mult

Limbaje de Programare Curs 8 – Fisiere

Limbaje de Programare   Curs 8 – Fisiere Limbaje de Programare Curs 8 Fişiere Dr. Casandra Holotescu Universitatea Politehnica Timişoara Ce discutăm azi... 1 Lucrul cu fişiere 2 Fişiere de tip text 3 Funcţii pentru cazuri de eroare 4 Fişiere

Mai mult

Microsoft PowerPoint - Curs_SDA_4_RO_2019_v2.pptx

Microsoft PowerPoint - Curs_SDA_4_RO_2019_v2.pptx Curs SDA (PC2) Curs 4 Structuri de date (continuare) Iulian Năstac 10. Funcţii pentru alocarea dinamică a memoriei (Recapitulare) Alocarea dinamică este caracteristica prin care un program poate obţine

Mai mult

Microsoft Word - Curs_09.doc

Microsoft Word - Curs_09.doc Capitolul 7. Proiectarea conceptuală Scop: reprezentarea cerinţelor informale ale aplicaţiei în termenii descrierii complete şi formale dar independent de criteriul folosit pentru reprezentare în sistemul

Mai mult

Laborator5_SQL_an2

Laborator5_SQL_an2 Baze de date-anul 2 Laborator 5 SQL Operatorii ROLLUP şi CUBE. Clauza GROUPING SETS. Funcţia GROUPING. Subcereri corelate. Cereri ierarhice. Analiza top-n. Clauza WITH. I. [Operatorii ROLLUP şi CUBE. Clauza

Mai mult

Curs 3 Permutari cu repetitie. Combinari. Algoritmi de ordonare si generare

Curs 3  Permutari cu repetitie. Combinari.  Algoritmi de ordonare si generare Curs 3 Permutări cu repetiţie. Combinări. Algoritmi de ordonare şi generare Octombrie 2015 Cuprins Algoritmi de ordonare şi generare pentru permutări cu repetiţie Reprezentarea binară a submulţimilor Algoritmi

Mai mult

Logică și structuri discrete Logică propozițională Marius Minea marius/curs/lsd/ 3 noiembrie 2014

Logică și structuri discrete Logică propozițională Marius Minea   marius/curs/lsd/ 3 noiembrie 2014 Logică și structuri discrete Logică propozițională Marius Minea marius@cs.upt.ro http://www.cs.upt.ro/ marius/curs/lsd/ 3 noiembrie 2014 Unde aplicăm verificarea realizabilității? probleme de căutare și

Mai mult

Cuantizare Vectoriala.doc

Cuantizare Vectoriala.doc 4. Metoda de quadro în compresie fractala optimizata rata-distorsiune În cele ce urmeaza descriem o metoda de quadro bazata pe optimizarea criteriului ratadistorsiune în compresia fractala a imaginilor.

Mai mult

Anexa nr. 2 FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior UNIVERSITATEA DE VEST TIMISOARA 1.2 Facultatea FIZICA 1.3 De

Anexa nr. 2 FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior UNIVERSITATEA DE VEST TIMISOARA 1.2 Facultatea FIZICA 1.3 De Anexa nr. 2 FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior UNIVERSITATEA DE VEST TIMISOARA 1.2 Facultatea FIZICA 1.3 Departamentul FIZICA 1.4 Domeniul de studii FIZICA 1.5

Mai mult

Laborator 2 - Încapsularea Programare Orientată pe Obiecte Tema 2.1 Să se analizeze programul EX2.C Indicatii 2.1 A nu se uita de fisierul EX2.H Tema

Laborator 2 - Încapsularea Programare Orientată pe Obiecte Tema 2.1 Să se analizeze programul EX2.C Indicatii 2.1 A nu se uita de fisierul EX2.H Tema Laborator 2 - Încapsularea Tema 2.1 Să se analizeze programul EX2.C Indicatii 2.1 A nu se uita de fisierul EX2.H Tema 2.2 Să se modifice funcţiile referitoare la cerc astfel încât parametrul CERC să fie

Mai mult

Slide 1

Slide 1 STRUCTURI DE DATE Fundamente C/C++ EVALUARE SEMESTRU: 4 puncte Testare cunostinte: 1. Calculator (2 puncte) 2. Scris/Oral (2 puncte) 2 EVALUARE EXAMEN: 6 puncte Test cunostinte (pe calculator): 1 punct.

Mai mult

Microsoft Word - Laborator 6 - Expresii Regulate IV.doc

Microsoft Word - Laborator 6 - Expresii Regulate IV.doc PERL Laborator 6 Adrian Iftene Martie 26, 2007 1 1 Greşeli Comune când lucrăm cu RegExp... 3 2 Câteva Subiecte mai Avansate... 3 2.1 Comentarii Inline... 4 2.2 Modificatori Inline... 4 2.3 Gruparea fără

Mai mult

Microsoft PowerPoint - Curs_SDA_10_RO_2019_v1.pptx

Microsoft PowerPoint - Curs_SDA_10_RO_2019_v1.pptx SDA (PC2) Curs 10 Arbori Iulian Năstac Definiția 1: Arbori Recapitulare Arborele este un graf orientat, aciclic și simplu conex. Definiția 2: Un arbore este un ansamblu de structuri de date de natură recursivă

Mai mult

Ruby on Rails Pop Alexandru Pavel Razvan Calculatoare 4

Ruby on Rails Pop Alexandru Pavel Razvan Calculatoare 4 Ruby on Rails Pop Alexandru Pavel Razvan Calculatoare 4 Ruby Rails Aparut in 1995 Limbaj de programare Este gratuit si open source Foloseste librarii numite gem -uri Foloseste doar programarea orientata

Mai mult

I. Partea introductivă Proiectul unității de învățare CONCEPTUL DE MATRICE ŞCOALA: Colegiul Național Petru Rareș Suceava CLASA: a XI a- matematică / a

I. Partea introductivă Proiectul unității de învățare CONCEPTUL DE MATRICE ŞCOALA: Colegiul Național Petru Rareș Suceava CLASA: a XI a- matematică / a I. Partea introductivă Proiectul unității de învățare CONCEPTUL DE MATRICE ŞCOALA: Colegiul Național Petru Rareș Suceava CLASA: a XI a- matematică / a XI a- informatică neintensiv PROFESOR: Dumitrașcu

Mai mult

REGULAMENTUL OFICIAL AL CAMPANIEI PROMOTIONALE BEDROOM CE SA VA DESFASURA IN PERIOADA SECŢIUNEA 1. ORGANIZATOR Organizatorul cam

REGULAMENTUL OFICIAL AL CAMPANIEI PROMOTIONALE BEDROOM CE SA VA DESFASURA IN PERIOADA SECŢIUNEA 1. ORGANIZATOR Organizatorul cam REGULAMENTUL OFICIAL AL CAMPANIEI PROMOTIONALE BEDROOM CE SA VA DESFASURA IN PERIOADA 28.09.2012 11.11.2012 SECŢIUNEA 1. ORGANIZATOR Organizatorul campaniei promotionale este SC IKEA Romania SRL, cu sediul

Mai mult

CASA CORPULUI DIDACTIC BRAILA PROGRAM DE FORMARE INFORMATICA SI TIC PENTRU GIMNAZIU CLASA A V-A SERIA 1 GRUPA 2 CURSANT: TIMOFTI V. AFRODITA COLEGIUL

CASA CORPULUI DIDACTIC BRAILA PROGRAM DE FORMARE INFORMATICA SI TIC PENTRU GIMNAZIU CLASA A V-A SERIA 1 GRUPA 2 CURSANT: TIMOFTI V. AFRODITA COLEGIUL CASA CORPULUI DIDACTIC BRAILA PROGRAM DE FORMARE INFORMATICA SI TIC PENTRU GIMNAZIU CLASA A V-A SERIA 1 GRUPA 2 CURSANT: TIMOFTI V. AFRODITA COLEGIUL NATIONAL VASILE ALECSANDRI, BACAU TIMOFTI AFRODITA

Mai mult

PCLPII-C16(9)

PCLPII-C16(9) Programarea Calculatoarelor și Limbaje de Programare - Curs 16 Despre proiect ce s-a studiat? ce se va studia? proiectul tema date de intrare conţinut date de ieşire C9(16)-1 Ce s-a studiat? Instrucţiuni

Mai mult