PROGRAMAREA CALCULATOARELOR ŞI LIMBAJE DE PROGRAMARE (IV)

Size: px
Start display at page:

Download "PROGRAMAREA CALCULATOARELOR ŞI LIMBAJE DE PROGRAMARE (IV)"

Transcription

1 PROGRAMAREA CALCULATOARELOR ŞI LIMBAJE DE PROGRAMARE (IV)

2 Instrucţiuni condiţionale Instrucţiunea reprezintă o formă de ramificare a ordinii de execuţie a instrucţiunilor programului. Ramificarea se face funcţie de o condiţie ce poate fi testată pe un set de date cu care se lucrează în aplicaţie. În funcţie de rezultatul evaluării ( adevărat sau fals ) se execută una dintre instrucţiuni. Forma generală este: Dacă test_logic adevărat execută instrucţiunea 1 altfel execută instrucţiunea 2 Dacă se execută instrucţiunea de pe o ramură, atunci instrucţiunea de pe cealaltă ramură nu se mai execută. După executarea uneia dintre aceste instrucţiuni, execuţia programului se continuă cu instrucţiunea următoare instrucţiunii condiţionale. Testul logic care hotărăşte ramura ce se va executa este de obicei un test de egalitate. Condiţiile se pot compune prin operatori logici de tipul şi, sau, nu, iar în final rezultă o condiţie de forma: dacă variabila... este mai mică decât... şi mai mare decât..., atunci :26 2

3 Există şi varianta de instrucţiune condiţională în care, în funcţie de o valoare întreagă se face alegerea dintr-un set de instrucţiuni, după care se execută instrucţiunea aleasă. Aceasta are forma: Dacă Variabila este egală cu Valoare1 atunci execută instrucţiunea1 altfel, dacă Variabila este egală cu Valoare2 atunci execută instrucţiunea2 altfel, dacă Variabila altfel execută instrucţiunea implicită :26

4 Tabelul 2.8 Operatorii destinati comparării datelor în VBA Opera tor Exemplu Descriere > CInt(txtPrima.Text) > intval1 Operatorul mai mare ca returnează True sau 0 dacă valoarea Argument1 este mai mare decât valoarea Argument2. < sngval2 < Operatorul mai mic ca returnează True sau 0 dacă valoarea Argument1 este mai mică decât valoarea Argument2. = chrrasp = a Operatorul egal cu returnează Truesau0dacă valoarea Argument1 este egală cu valoarea Argument2. <= chrrasp <= B Operatorul mai mic sau egal returnează True sau0dacă valoarea Argument1 este mai mică sau egală decât valoarea Argument2. >= dblval3 >= sngval4 Operatorul mai mare sau egal returnează True sau0dacă valoarea Argument1 este mai mare sau egală decât valoarea Argument :26 4

5 :26 NOTĂ: In cazul în care cele 2 argumente sunt şiruri de caractere, mărimea valorii fiecăruia este dată de codul ASCII al fiecărui caracter. Spre exemplu ABC < ADC deoarece codul ASCII al caracterului B este mai mic decât codul ASCII al caracterului D. Proiectantul de aplicaţii trebuie să acorde o mare importanţă tipurilor de argumente ce sunt comparate, altfel rezultatele comparării putând fii imprevizibile. O regulă general valabilă este ca ambele argumente să fie de acelaşi tip sau măcar de tipuri compatibile (deşi în acest ultim caz rezultatul comparării nu este întotdeauna cel corect). Dacă se compară egalitatea unui argument de tip întreg cu un argument de tip double, rezultatul poate fi False chiar dacă aparent valorile celor două argumente sunt egale, deoarece valoarea argumentului de tip double este aproximată la ultima zecimală poate avea tot atât de bine valoarea 0 cât şi1). Acelaşi rezultat False se poate obţine şi în cazul comparării egalităţii unui argument single şi unul double chiar dacă aparent au valoare egalăşi aceasta deoarece pot apare diferenţe în reprezentarea internă a celor două valori datorită rotunjirilor pe care sistemul le realizează. Spre exemplu dacă primul argument are valoarea în simplă precizie şi al doilea argument valoarea în dublă precizie, intern oricare din valori, fiind rotunjită, poate avea valoarea reală de în loc de

6 Fals (Nu) Test logic Adevărat (Da) Fig Reprezentarea grafică a testului logic :26 6

7 Instrucţiunea IF Instrucţiunea IF stă la baza dezvoltării oricărui tip de aplicaţie şi aceasta deoarece cu ajutorul ei aplicaţia analizează datele, direcţionând fluxul informatic în funcţie de rezultatele analizei efectuate. In cazul în care această instrucţiune nu ar exista rularea aplicaţiei ar decurge secvenţial executând instrucţiune după instrucţiune până la terminarea codului. Prin IF fluxul execuţiei poate parcurge numai anumite secvenţe de program pe căi predefinite de proiectant în funcţie de condiţiile impuse şi de rezultatul manipulării datelor pe timpul rulării :26 7

8 In general o instrucţiunea If conţine una sau două secvenţe de cod, executând una dintre ele, funcţie de rezultatul unei operaţii de comparare a 1 sau 2 argumente. Instrucţiunea poate fi întâlnită în una din următoarele forme: If Then If Then Else... End If :26 8

9 Structura de decizie IF THEN Structura are următorul format: Dacă verifică numai o condiție de adevăr și folosește o instrucțiune simplă If <TestComparare> Then <instrucţiune> Exemple: Sub FixData1() Data = #12/13/2017# If Data < Now Then Data = Now End Sub Sub FixData2() Dim Data As Date Data = CDate(InputBox("Introduceti data (mm/dd/yyyy):")) If Data < Now Then Data = Now MsgBox Data End Sub 9

10 sau Dacă verifică numai o condiție de adevăr și folosește o instrucțiune compusă If <TestComparare> Then <instrucţiune1> <instrucţiunen> End If 10

11 unde: <TestComparare> o expresie de comparare care poate lua valoarea True sau False <instrucţiune> o instrucţiune de atribuire, un apel de procedură, etc. Dacă expresia <TestComparare> are valoarea True atunci va fi executată instrucţiunea <instrucţiune> sau blocul de instrucţiuni <instrucţiune1> <instrucţiunen>. Dacă rezultatul evaluării este False atunci execuţia va face un salt automat la instrucţiunea ce urmează structurii decizionale. 11

12 Sub formula() Dim val As Integer, a As Integer, b As Integer, c As Integer Dim d As Single, e As Single, f As Single, g As Single a = InputBox("a=") b = InputBox("b=") c = InputBox("c=") val = InputBox("Introduceti o valoare (0-9): ") If val = 0 Then d = a + b + c e = a + b / 2 f = (a) ^ 2 + (b) ^ 2 + (c) ^ 2 g = (d + f) / e End If var = MsgBox("Ati apasat tasta " & val & Chr(13) & Chr(10) & "a=" & a & Chr(13) & _ Chr(10) & "b=" & b & Chr(13) & Chr(10) & "c=" & c & Chr(13) & Chr(10) & "d=" & _ d & Chr(13) & Chr(10) & "e=" & e & Chr(13) & Chr(10) & "f=" & f & Chr(13) & Chr(10) _ & "g=" & g) End Sub :26 12

13 Să presupunem cazul în care un salariat este recompensat cu 5% din valoarea produselor realizate peste limita de lei şi este penalizat în cazul în care producţia este sub limită cu 10% din valoarea ce trebuie adăugată pentru atingerea limitei. Să se scrie o aplicaţie care să ceară printr-o casetă de tip InputBox valoarea producţiei realizate; să calculeze dacă este cazul valoarea primei şi să o afişeze într-o casetă de tip MsgBox; să calculeze penalizarea în cazul în care nu se atinge limita de producţie. Conţinutul procedurii eveniment de calcul a primei sau penalizării este: Dim sngvallimit As Single, ValRealizat As Double, sngprima As Single, sngpenalizare As Single Dim sngdiferenta As Single, intbuton As Integer sngvallimit = 1E+4 Se initializeaza valoarea limita a productiei Se citeste valoarea produselor realizate de salariat ValRealizat = val(inputbox( Valoarea realizată a productiei, Valoare productie )) If ValRealizat > sngvallimit Then Daca valoarea realizată este mai mare decit valoarea limta atunci sngdiferenta = ValRealizat sngvallimit sngprima = sngdiferenta *.05 Se calculeaza prima de salarizare intbuton = MsgBox( Prima realizată este de & sngprima & lei, 64, Prima de salarizare ) End If If ValRealizat < sngvallimit Then Dacă valoarea realizată este mai mică decit valoarea limta atunci sngdiferenta = sngvallimit - ValRealizat sngpenalizare = sngdiferenta *.1 Se calculeaza penalizarea intbuton = MsgBox( Penalizarea este de & sngpenalizare & lei, 64, Penalizare ) End If 1

14 Structura de decizie IF THEN ELSE Exemplul anterior poate fi rezolvat într-un mod mai elegant prin utilizarea structurii de decizie If Then Else. Forma generală a acestei structuri este: If <TestComparare1> Then <instrucţiune1> <instrucţiunen> Else If <TestComparare2> <instrucţiune1> <instrucţiunen> Else If <TestComparareN> <instrucţiune1> <instrucţiunen> Else <instrucţiune1> <instrucţiunen> End If 14

15 In cazul în care expresia <TestComparare1> este adevărat atunci se execută primul bloc de instrucţiuni. In cazul în care expresia < TestComparare2> este adevărată atunci se execută al doilea bloc de instrucţiuni, şi aşa mai departe. In cazul în care toate expresiile < TestComparare1>, <TestComparare2>,, < TestComparareN> sunt false atunci este executat ultimul bloc de instrucţiuni. Utilizând structura If Then Else blocul decizional al aplicaţiei anterioare va avea următoarea formă If ValRealizat > sngvallimit Then Daca valoarea realizată este mai mare decit valoarea limta atunci sngdiferenta = ValRealizat sngvallimit sngprima = sngdiferenta *.05 Se calculeaza prima de salarizare intbuton = MsgBox( Prima realizată este de & sngprima & lei, 64, Prima de salarizare ) Else If ValRealizat < sngvallimit Then Daca valoarea realizată este mai mică decit valoarea limta atunci sngdiferenta = sngvallimit - ValRealizat sngpenalizare = sngdiferenta *.1 Se calculeaza penalizarea intbuton = MsgBox( Penalizarea este de & sngpenalizare & lei, 64, Penalizare ) Else Altfel intbuton = MsgBox ( Atit penalizarea cit şi prima sunt 0 lei, 64, Producţie la limită ) 15 End If

16 Expresii de comparare cu condiţii multiple Expresiile de comparare din cadrul structurii decizionale admit utilizarea unor operatori suplimentari: Or, And şi Not tab Aceşti operatori sunt utilizaţi pentru definirea unor condiţii compuse. Operatorii Or, And şi Not se mai numesc şi operatori logici. Tabelul 2.9 Operatorii pentru definirea condiţiilor compuse Op. Exemplu Descriere And If (intval < 10) And (intval > 5) Are valoarea True dacă intval mai mic ca 10 şi mai mare ca 5 (intval trebuie să aparţină domeniului 5 10) Or If (intval = 10) Or (intval = 5) Are valoarea True dacă intval este egal cu 5 sau 10 Not If Not (intval < 5) Are valoarea True dacă intval este mai mare ca 5. 16

17 Exemplu Să se scrie o structură decizională care: să adune două valori de tip single (sngval1, sngval2) dacă intopt este 1 sau 2 să scadă din prima valoare a doua dacă intopt este mai mare ca 2 şi mai mic sau egal cu 10 să dubleze suma celor 2 valori dacă intopt este mai mic ca 1 şi mai mare ca 10. If (intopt =1) Or (intopt = 2) Then sngtotal = sngval1 + sngval2 Else If (intopt >2) and (intopt <= 10) Then sngtotal = sngval1 sngval2 Else sngtotal = 2 * (sngval1 + sngval2) End If 17

18 :26 18

19 Structuri decizionale imbricate Structura decizională de tip If Then Else este indicată în cazul în care vor fi tratate cel mult trei expresii de comparare. In caz contrar codul devine confuz, fiind dificil de descifrat. Ca exemplu, se consideră o structură de decizie care să testeze la modul general acţionarea butoanelor ce pot apare într-o casetă de dialog de tip MsgBox. O astfel de casetă poate conţine 7 tipuri de butoane tab Considerând că valoarea returnată de casetă este memorată în variabila intbut, structura de decizie va determina tipul de buton acţionat şi va afişa o casetă de tip MsgBox care să conţină mesajul Butonul vb a fost acţionat (... reprezintă numele butonului). If (intbut =1) Then strmsg = OK Else If (intbut =2) Then strmsg = Cancel Else If (intbut =3) Then strmsg = Abort Else If (intbut =4) Then strmsg = Retry Else If (intbut =5) Then strmsg = Ignore Else If (intbut =6) Then strmsg = Yes Else strmsg = No End If intmsg = MsgBox( Butonul vb & strmsg & a fost actionat, 64, 19 Butoane caseta MsgBox )

20 Constantă Valoare Descriere vbok 1 A fost selectat butonul Ok vbcancel 2 A fost selectat butonul Cancel vbabort 3 A fost selectat butonul Abort vbretry 4 A fost selectat butonul Retry vbignore 5 A fost selectat butonul Ignore vbyes 6 A fost selectat butonul Yes vbno 7 A fost selectat butonul No :26 20

21 Pentru simplificare, dacă vor fi compaeate mai mult de 3 expresii, se recomandă utilizarea structurii de tip Select Case care are următorul format: Select Case <Expresie> Case <valoare1>: <instrucţiune1> <instrucţiunen> Case <valoare2>: <instrucţiune1> <instrucţiunen> Case <valoaren>: <instrucţiune1> <instrucţiunen> Case Else <instrucţiune1> <instrucţiunen> End Select unde: <expresie> o expresie matematică (care să aibă o valoare întreagă) sau de manipulare a şirurilor de caractere <valoare> o valoare de acelaşi tip cu valoarea expresiei. 21

22 Deşi structura pare complicată modul în care funcţionează este relativ simplu. Astfel, în prima fază este evaluată <Expresie>, după care este executat blocul de instrucţiuni care corespunde instrucţiunii Case care are <valoare> egală cu valoarea <Expresie>. Utilizând noua structură aplicaţia anterioară devine: Select Case intbut Case 1: strmsg = OK Case 2: strmsg = Cancel Case 3: strmsg = Abort Case 4: strmsg = Retry Case 5: strmsg = Ignore Case 6: strmsg = Yes Case Else strmsg = No End Select NOTĂ: Caracterul : este opţional dar se recomandă utilizarea sa deoarece codul aplicaţiei este mai clar şi în cazul în care blocul de instrucţiuni conţine doar o singură instrucţiune, aceasta poate fi scrisă pe acelaşi rând cu Case. 22

23 Variante ale structurii SELECT CASE Structură Case... Else cu test de comparare Select Case <Expresie> Case Is <test1>: <instrucţiune1> <instrucţiunen> Case Is <test2>: <instrucţiune1> <instrucţiunen> Case <testn>: <instrucţiune1> <instrucţiunen> Case Else <instrucţiune1> <instrucţiunen> End Select Structură Case... Else cu testarea încadrării într-un domeniu Select Case <Expresie> Case <Expresie1> To <Expresie2>: <instrucţiune1> <instrucţiunen> Case <Expresie3> To <Expresie4>: <instrucţiune1> <instrucţiunen> Case <ExpresieM> To <ExpresieN>: <instrucţiune1> <instrucţiunen> Case Else <instrucţiune1> <instrucţiunen> End Select 23

24 unde: <Expresie> o expresie, constantă matematică sau de tip şir de caractere <test> secvenţa unui test de comparare formată din operator şi argument2 deoarece VBA-ul consideră ca argument1 valoarea conţinută în <Expresie> In cazul structurii cu test de comparare VBA-ul evaluează <Expresie> după care compară valoarea obţinută conform fiecărui <test>. In cazul în care valoarea testului este True atunci blocul de instrucţiuni ataşat instrucţiunii Case Is care conţine testul este executată. După execuţia blocului de instrucţiuni, execuţia codului continuă cu prima instrucţiune ce urmează după End Select. In cazul în care toate testele au valoarea False va fi executat blocul de instrucţiuni ataşat de Case Else. In cazul structurii cu testarea încadrării într-un domeniu de valori VBA-ul evaluează <Expresie> după care testează încadrarea valoarii obţinute în domeniul definit de valorile <Expresie1> <Expresie2>. In cazul în care domeniul conţine valoarea din <Expresie> atunci blocul de instrucţiuni ataşat instrucţiunii Case care conţine domeniul dat este executată. După execuţia blocului de instrucţiuni, execuţia codului continuă cu prima instrucţiune ce urmează după End Select. In cazul în care valoarea din <Expresie> nu se încadrează în nici un domeniu va fi executat blocul de instrucţiuni ataşat de Case Else. 24

25 Exemplu: Utilizarea unei structuri Select Case cu test de comparare pentru a determina dacă valoarea introdusă de utilizator printr-o casetă de tip InputBox se încadrează în domeniul [80 120]. Dim strrezadm As String, sngrezadm As Single, intbut As Integer strrezadm = InputBox("Introduceti o valoare in domeniul [ ][ N/mm^2 ]", _ "Rezistenta admisibila la torsiune a otelurilor laminate", "100") sngrezadm = CSng(strRezAdm) Select Case sngrezadm Case Is < 80: intbut = MsgBox("Valoarea rezistentei admisibile prea mica!", 64, "Eroare") Case Is > 120: intbut = MsgBox("Valoarea rezistentei admisibile prea mare!", 64, "Eroare") Case Else: intbut = MsgBox("Rezistentei admisibila este in domeniu!", 64, "Introducere corecta") End Select 25

26 In cazul utilizării unei structuri cu testarea încadrării într-un domeniu de valori exemplul anterior se simplifică semnificativ: Dim strrezadm As String, sngrezadm As Single, intbut As Integer strrezadm = InputBox("Introduceti o valoare in domeniul _ [ ][ N/mm^2 ]", "Rezistenta admisibila la torsiune a _ otelurilor laminate", "100") sngrezadm = CSng(strRezAdm) Select Case sngrezadm Case 80 To 120 intbut = MsgBox("Rezistenta admisibila este _ in domeniu!", 64, "Introducere corecta") Case Else: intbut = MsgBox("Rezistenta admisibila este _ in afara domeniu!", 64, "Eroare") End Select 26

27 Instrucţiuni de ciclare Sunt instrucţiuni elementare (instrucţiuni repetitive sau bucle). Prin aceste instrucţiuni se specifică faptul că o instrucţiune se va executa în mod repetat, controlul repetării instrucţiunilor făcându-se pe diverse criterii: o instrucţiune poate fi executată de un număr fix de ori o instrucţiune poate fi executată până la îndeplinirea unei condiţii. Condiţia de terminare a execuţiei buclei poate fi testată la începutul la sfârşitul buclei. 27

28 Structura de ciclare For Next Această structură mai este întâlnită în cărţile de specialitate sub numele de structură de ciclare For Next. Instrucţiunea de ciclare care se execută de un număr finit de ori se numeşte ciclul for (for= pentru ), iar funcţionarea este descrisă prin: Pentru Contor =Valoare_iniţială până la Valoare_finală Instrucţiune_1... Ieşire Instrucţiune_N Următoarea valoare a contorului unde Valoare_iniţială este o valoare de iniţializare a contorului, Valoare_finală este o valoare de terminare a instrucţiunii 28

29 Formatul structurii este: For <Contor> = <ValoareInitiala> To <ValoareFinala> [Step <PasIncrementare>] <instructiune1> [Exit For] <instructiunen> Next <Contor> unde: <Contor> variabilă de tip numeric sau variant care memorează numărul de ciclări ale blocului de instrucţiuni incluse în structură. <ValoareInitiala> expresie, variabilă sau valoare numerică iniţială a variabilei <Contor> <ValoareFinala> expresie, variabilă sau valoare numerică finală a variabilei <Contor> <PasIncrementare> valoare numerică, utilizată ca pas de incrementare a valorii memorate în variabila <Contor>. Argumentul este opţional şi în cazul în care este omis (caz în care trebuie omis şi cuvântul rezervat Step) este automat considerat de VBA ca având valoarea 1. <PasIncrementare> poate fi o valoare negativă, dar în acest caz argumentul <ValoareFinală> trebuie să fie mai mic decât argumentul <ValoareInitiala>. 29

30 Iniţial valoarea memorată în variabila <Contor> este <ValoareInitiala>. Această valoare este incrementată cu <PasIncrementare> la fiecare parcurgere a blocului de instructiuni, până când depăşeşte <ValoareFinala>. In momentul depăşirii execuţia aplicaţiei sare la instrucţiunea imediat următoare expresiei Next <Contor>. Din structura de ciclare For Next se pot face ieşiri forţate intercalând în corpul structurii instrucţiunea Exit For. Intercalarea se poate face în cadrul unei structuri de decizie (structură de tip If Then Else sau Select Case) şi anume atunci când este îndeplinită o anumită condiţie. Atunci când instrucţiunea Exit For este întâlnită, execuţia abandonează structura de ciclare, continuând cu prima linie ce urmează instrucţiunii Next <Contor>. NOTĂ: Valoarea variabilei <contor> poate fi modificată în interiorul corpului structurii de ciclare dar acest mod de lucru nu este recomandat deoarece se poate pierde controlul executării structurii. 30

31 Iniţializare Fals Test Adevărat Instrucţiune Reluare Schema de funcţionare a ciclului FOR...NEXT 31

32 Procedura ce urmează Private Sub cmdstart_click() adună toate numerele pare din intervalul [0 100]. Procedura este ataşată butonului de comandă Start, iar procedura Private Sub cmdstop_click() este ataşată butonului de comandă Stop. Private Sub cmdstart_click() 'Calculul sumei numerelor pare de la 0 la 100 Const intvalinitial As Integer = 0, intvalfinal As Integer = 100, intpas As Integer = 2 Dim intcontor As Integer, intsuma As Integer, strsuma As String For intcontor = intvalinitial To intvalfinal Step intpas intsuma = intsuma + intcontor Next intcontor strsuma = CStr(intSuma) intbuton = MsgBox("Suma numerelor pare de la 0 la 100 este " & strsuma, vbinformation + vbokonly, _ "Exemplu de utilizare a ciclului For... Next") End Sub Private Sub cmdstop_click() End End Sub 32

33 Structura de ciclare DO WHILE... LOOP Dacă se face verificarea condiţiei înainte de execuţia buclei, instrucţiunile de ciclare se numesc cicluri while (while= atât timp cât ) şi funcţionarea poate fi decrisă prin: Atât timp cât Condiţia este adevărată execută Instrucţiunea În cazul acestei instrucţiuni de ciclare, instrucţiunea din interiorul ciclului nu se va executa niciodată în cazul în care condiţia este falsă de la început :26 33

34 Formatul structurii este: Do While <condiţie> <instrucţiune1> <instrucţiunen> Loop unde: <condiţie> expresie de comparare <instrucţiune1> <instructiunen> corpul structurii Loop marchează sfârşitul structurii de ciclare NOTĂ:La utilizarea structurilor de ciclare proiectantul aplicaţiei trebuie să se asigure ca execuţia blocului de instrucţiuni să determine modificarea argumentelor expresiei de comparare (se recomandă ca un singur argument să fie modificat). In caz contrar se obţine un ciclu infinit (dacă iniţial condiţia este 0 sau True şi dacă executarea corpului structurii nu modifică argumentele expresiei de comparare, atunci valoarea condiţiei va rămâne neschimbată determinând executarea la nesfârşit a blocului de instrucţiuni). Singura metodă sigură de ieşire dintr-un ciclu infinit este apăsarea simultană a tastelor Ctrl şi Break. 34

35 Instrucţiune Adevărat Test Fals Schema de funcţionare a ciclului DO WHILE...LOOP 35

36 Structura de ciclare Do Until Loop Spre deosebire Do While Loop structura Do Until Loop execută blocul de instrucţiuni care formează corpul structurii atâta timp cât condiţia de ciclare are valoarea 1 sau False. Prin urmare ciclarea este terminată în momentul în care condiţia are valoarea 0 sau True. Formatul structurii este: Do Until <condiţie> <instrucţiune1> <instrucţiunen> Loop unde: <condiţie> expresie de comparare <instrucţiune1> <instructiunen> corpul structurii Loop marchează sfârşitul structurii de ciclare NOTĂ: Nu se poate da o recomandare privind avantajele utilizării structurii Do While Loop comparativ cu structura Do Until Loop deoarece din punct de vedere al execuţiei codului ambele sunt la fel de eficiente. Utilizarea unei structuri sau a celeilalte este funcţie de preferinţele proiectantului codului. 36

37 Structurile de ciclare Do While Loop şi Do Until Loop Cele 2 structuri sunt derivate din structurile de ciclare anterior prezentate. Deosebirea faţă de structurile anterioare constă în poziţionarea condiţiei de ciclare. In timp ce în cazul structurilor Do While Loop şi Do Until Loop condiţia este scrisă pe prima linie (imediat după Do While respectiv Do Until) la celelalte două condiţia este poziţionată pe ultima linie a structurii (imediat înaintea cuvântului rezervat Loop. Din punct de vedere al parcurgerii codului cele 2 structuri funcţionează similar cu structura din care au derivat (Do While Loop similar cu Do While Loop şi Do Until Loop similar cu Do Until Loop). NOTĂ: Cele 3 puncte ( ) simbolizează blocul de instrucţiuni conţinute în structura de ciclare. Avantajul oferit cele 2 noi structuri este acela că elimină necesitatea definirii argumentelor condiţiei de ciclare înaintea începerii structurii (vezi exemplele de la structurile de ciclare anterior prezentate). 37

38 În cazul în care condiţia este testată după execuţia instrucţiunii, instrucţiunile de ciclare se numesc cicluri dowhile (do-while= execută... atât timp cât ). În aces caz, instrucţiunea din interiorul ciclului se execută cel puţin o dată, chiar dacă rezultatul condiţiei de terminare este fals de la început. Forma generală a instrucţiunii este: Execută Instrucţiunea atât timp cât Condiţia este adevărată În ambele cazuri, dacă instrucţiunea din interiorul buclei nu afectează valoarea de adevăr a condiţiei de terminare, bucla va fi infinită ( nu se va întrerupe din execuţie). 38

39 Instrucţiune Test Adevărat Fals Schema de funcţionare a ciclului Do...While... Loop 39

40 Structura Do While... Loop Dim strrezadm As String, sngrezadm As Single, intbut As Integer Do inceputul structurii de ciclare intbut = MsgBox("Rezistenta admisibila trebuie sa apartina domeniului [80 120]!, _ 64, "Eroare") strrezadm = InputBox("Introduceti o valoare in domeniul [ ] N/mm^2 ", _ "Rezistenta admisibila la torsiune a otelurilor laminate", "100") If strrezadm = Then dacă butonul Cancel este selectat atunci End se iese din aplicatie Else sngrezadm = CSng(strRezAdm) End If While (sngrezmat < 80) Or (sngrezadm > 120) Loop Atit timp cit valoarea nu este in domeniu, repeta instructiunile intbut = MsgBox("Rezistenta admisibila este de & strrezadm & [N/mm^2], 64, "Introducere corecta") 40

41 Structura Do Until... Loop Dim strrezadm As String, sngrezadm As Single, intbut As Integer Do inceputul structurii de ciclare intbut = MsgBox("Rezistenta admisibila trebuie sa apartina domeniului [80 120]!, _ 64, "Eroare") strrezadm = InputBox("Introduceti o valoare in domeniul [ ] N/mm^2 ", _ "Rezistenta admisibila la torsiune a otelurilor laminate", "100") If strrezadm = Then dacă butonul Cancel este selectat atunci End se iese din aplicatie Else sngrezadm = CSng(strRezAdm) End If Until (sngrezmat > 80) And (sngrezadm < 120) Loop Repetă ciclul până când valoarea este în domeniu intbut = MsgBox("Rezistenta admisibila este de & strrezadm & [N/mm^2], 64, "Introducere corecta") 41

42 OBS.: După cum se poate observa în ambele exemple blocul iniţial de instrucţiuni nu mai apare, nemaifiind necesară definirea argumentelor condiţiei de ciclare înaintea începerii ciclului deoarece, condiţia de ciclare nu mai este pozţionată pe prima linie a ciclului ci pe ultima. Ciclurile Do While Loop şi Do Until Loop sunt indicate acolo unde blocul de instrucţiuni conţinute de ciclu trebuie executate măcar odată. 42

43 Ieşirea forţată din cicluri Sunt cazuri când este necesară ieşirea dintr-un ciclu fără a fi îndeplinită condiţia de sfârşit a ciclului. Spre exemplu se proiectează o procedură de preluare a unui număr dat (să zicem M) de valori. In acest caz preluarea o facem în interiorul unui ciclu ForLoop în care variabila de ciclare poate lua valori de la 1 la M. Ce se întâmplă dacă utilizatorul dispune de un număr mai mic de valori. Pentru această situaţie se se plasează în ciclu o instrucţiune If care pentru o anumită valoare face ieşirea forţată din ciclu. Ieşirea forţată dintr-un ciclu se realizează cu instrucţiunile Exit For pentru ciclurile ForLoop sau Exit Do pentru ciclurile DoWhile, DoUntil. Exemplu: Să presupunem că M =10 şi proiectăm ca ieşirea forţată dintr-un ciclu For să fie realizată atunci când variabila sngval are valoarea 0, atunci ciclul va va fi următorul: For intciclu = 1 to 10 If sngval=0 then Exit For ieşire forţată din ciclu End If corpul ciclului For Next intciclu 43

44

45 :26 45

Structura și Organizarea Calculatoarelor. Titular: BĂRBULESCU Lucian-Florentin

Structura și Organizarea Calculatoarelor. Titular: BĂRBULESCU Lucian-Florentin Structura și Organizarea Calculatoarelor Titular: BĂRBULESCU Lucian-Florentin Chapter 3 ADUNAREA ȘI SCĂDEREA NUMERELOR BINARE CU SEMN CONȚINUT Adunarea FXP în cod direct Sumator FXP în cod direct Scăderea

More information

Lucrarea de laborator nr. 4

Lucrarea de laborator nr. 4 Metode merice - Lucrarea de laborator 4 Lucrarea de laborator nr. 4 I. Scopul lucrării Elemente de programare în MAPLE II. III. Conţinutul lucrării 1. Atribuirea. Decizia. Structuri repetitive. 2. Proceduri

More information

Metrici LPR interfatare cu Barix Barionet 50 -

Metrici LPR interfatare cu Barix Barionet 50 - Metrici LPR interfatare cu Barix Barionet 50 - Barionet 50 este un lan controller produs de Barix, care poate fi folosit in combinatie cu Metrici LPR, pentru a deschide bariera atunci cand un numar de

More information

6. Bucle. 6.1 Instrucţiunea while

6. Bucle. 6.1 Instrucţiunea while 6. Bucle În capitolul trecut am văzut cum putem selecta diferite instrucţiuni pentru execuţie folosind instrucţiunea if. O buclă este o structură de control care provoacă executarea unei instrucţiuni sau

More information

2. Setări configurare acces la o cameră web conectată într-un router ZTE H218N sau H298N

2. Setări configurare acces la o cameră web conectată într-un router ZTE H218N sau H298N Pentru a putea vizualiza imaginile unei camere web IP conectată într-un router ZTE H218N sau H298N, este necesară activarea serviciului Dinamic DNS oferit de RCS&RDS, precum și efectuarea unor setări pe

More information

CERERI SELECT PE O TABELA

CERERI SELECT PE O TABELA SQL - 1 CERERI SELECT PE O TABELA 1 STUD MATR NUME AN GRUPA DATAN LOC TUTOR PUNCTAJ CODS ---- ------- -- ------ --------- ---------- ----- ------- ---- 1456 GEORGE 4 1141A 12-MAR-82 BUCURESTI 2890 11 1325

More information

Titlul lucrării propuse pentru participarea la concursul pe tema securității informatice

Titlul lucrării propuse pentru participarea la concursul pe tema securității informatice Titlul lucrării propuse pentru participarea la concursul pe tema securității informatice "Îmbunătăţirea proceselor şi activităţilor educaţionale în cadrul programelor de licenţă şi masterat în domeniul

More information

Dispozitive Electronice şi Electronică Analogică Suport curs 02 Metode de analiză a circuitelor electrice. Divizoare rezistive.

Dispozitive Electronice şi Electronică Analogică Suport curs 02 Metode de analiză a circuitelor electrice. Divizoare rezistive. . egimul de curent continuu de funcţionare al sistemelor electronice În acest regim de funcţionare, valorile mărimilor electrice ale sistemului electronic sunt constante în timp. Aşadar, funcţionarea sistemului

More information

Modalitǎţi de clasificare a datelor cantitative

Modalitǎţi de clasificare a datelor cantitative Modalitǎţi de clasificare a datelor cantitative Modul de stabilire a claselor determinarea pragurilor minime şi maxime ale fiecǎrei clase - determinǎ modul în care sunt atribuite valorile fiecǎrei clase

More information

Reflexia şi refracţia luminii. Aplicaţii. Valerica Baban

Reflexia şi refracţia luminii. Aplicaţii. Valerica Baban Reflexia şi refracţia luminii. Aplicaţii. Sumar 1. Indicele de refracţie al unui mediu 2. Reflexia şi refracţia luminii. Legi. 3. Reflexia totală 4. Oglinda plană 5. Reflexia şi refracţia luminii în natură

More information

Textul si imaginile din acest document sunt licentiate. Codul sursa din acest document este licentiat. Attribution-NonCommercial-NoDerivs CC BY-NC-ND

Textul si imaginile din acest document sunt licentiate. Codul sursa din acest document este licentiat. Attribution-NonCommercial-NoDerivs CC BY-NC-ND Textul si imaginile din acest document sunt licentiate Attribution-NonCommercial-NoDerivs CC BY-NC-ND Codul sursa din acest document este licentiat Public-Domain Esti liber sa distribui acest document

More information

REVISTA NAŢIONALĂ DE INFORMATICĂ APLICATĂ INFO-PRACTIC

REVISTA NAŢIONALĂ DE INFORMATICĂ APLICATĂ INFO-PRACTIC REVISTA NAŢIONALĂ DE INFORMATICĂ APLICATĂ INFO-PRACTIC Anul II Nr. 7 aprilie 2013 ISSN 2285 6560 Referent ştiinţific Lector univ. dr. Claudiu Ionuţ Popîrlan Facultatea de Ştiinţe Exacte Universitatea din

More information

Subiecte Clasa a VI-a

Subiecte Clasa a VI-a (40 de intrebari) Puteti folosi spatiile goale ca ciorna. Nu este de ajuns sa alegeti raspunsul corect pe brosura de subiecte, ele trebuie completate pe foaia de raspuns in dreptul numarului intrebarii

More information

ARBORI AVL. (denumiti dupa Adelson-Velskii si Landis, 1962)

ARBORI AVL. (denumiti dupa Adelson-Velskii si Landis, 1962) ARBORI AVL (denumiti dupa Adelson-Velskii si Landis, 1962) Georgy Maximovich Adelson-Velsky (Russian: Гео ргий Макси мович Адельсо н- Ве льский; name is sometimes transliterated as Georgii Adelson-Velskii)

More information

Versionare - GIT ALIN ZAMFIROIU

Versionare - GIT ALIN ZAMFIROIU Versionare - GIT ALIN ZAMFIROIU Controlul versiunilor - necesitate Caracterul colaborativ al proiectelor; Backup pentru codul scris Istoricul modificarilor Terminologie și concepte VCS Version Control

More information

INTEROGĂRI ÎN SQL SERVER

INTEROGĂRI ÎN SQL SERVER INTEROGĂRI ÎN SQL SERVER Principala operaţie efectuată într-o bază de date este operaţia de extragere a datelor, care se realizează cu ajutorul unei clauze SELECT. SELECT Clauza SELECT are o sintaxă foarte

More information

GHID DE TERMENI MEDIA

GHID DE TERMENI MEDIA GHID DE TERMENI MEDIA Definitii si explicatii 1. Target Group si Universe Target Group - grupul demografic care a fost identificat ca fiind grupul cheie de consumatori ai unui brand. Toate activitatile

More information

Procesarea Imaginilor

Procesarea Imaginilor Procesarea Imaginilor Curs 11 Extragerea informańiei 3D prin stereoviziune Principiile Stereoviziunii Pentru observarea lumii reale avem nevoie de informańie 3D Într-o imagine avem doar două dimensiuni

More information

I. Instrucţiuni PRELEGERE IX PROGRAMAREA CALCULATOARELOR ŞI LIMBAJE DE PROGRAMARE

I. Instrucţiuni PRELEGERE IX PROGRAMAREA CALCULATOARELOR ŞI LIMBAJE DE PROGRAMARE PRELEGERE IX PROGRAMAREA CALCULATOARELOR ŞI LIMBAJE DE PROGRAMARE I. Instrucţiuni Contextul de condiţii în care se realizează diverse prelucrări se descrie prin instrucţiuni. Acestea permit înscrierea

More information

D în această ordine a.î. AB 4 cm, AC 10 cm, BD 15cm

D în această ordine a.î. AB 4 cm, AC 10 cm, BD 15cm Preparatory Problems 1Se dau punctele coliniare A, B, C, D în această ordine aî AB 4 cm, AC cm, BD 15cm a) calculați lungimile segmentelor BC, CD, AD b) determinați distanța dintre mijloacele segmentelor

More information

Semnale şi sisteme. Facultatea de Electronică şi Telecomunicaţii Departamentul de Comunicaţii (TC)

Semnale şi sisteme. Facultatea de Electronică şi Telecomunicaţii Departamentul de Comunicaţii (TC) Semnale şi sisteme Facultatea de Electronică şi Telecomunicaţii Departamentul de Comunicaţii (TC) http://shannon.etc.upt.ro/teaching/ssist/ 1 OBIECTIVELE CURSULUI Disciplina îşi propune să familiarizeze

More information

Ghid identificare versiune AWP, instalare AWP şi verificare importare certificat în Store-ul de Windows

Ghid identificare versiune AWP, instalare AWP şi verificare importare certificat în Store-ul de Windows Ghid identificare versiune AWP, instalare AWP 4.5.4 şi verificare importare certificat în Store-ul de Windows Data: 28.11.14 Versiune: V1.1 Nume fişiser: Ghid identificare versiune AWP, instalare AWP 4-5-4

More information

Mecanismul de decontare a cererilor de plata

Mecanismul de decontare a cererilor de plata Mecanismul de decontare a cererilor de plata Autoritatea de Management pentru Programul Operaţional Sectorial Creşterea Competitivităţii Economice (POS CCE) Ministerul Fondurilor Europene - Iunie - iulie

More information

Capitolul 4 SUBCERERI. F. Radulescu. Curs: Baze de date - Limbajul SQL

Capitolul 4 SUBCERERI. F. Radulescu. Curs: Baze de date - Limbajul SQL Capitolul 4 SUBCERERI 1 STUD MATR NUME AN GRUPA DATAN LOC TUTOR PUNCTAJ CODS ---- ------- -- ------ --------- ---------- ----- ------- ---- 1456 GEORGE 4 1141A 12-MAR-82 BUCURESTI 2890 11 1325 VASILE 2

More information

Laborator 1. Programare declarativă. Programare logică. Prolog. SWI-Prolog

Laborator 1. Programare declarativă. Programare logică. Prolog. SWI-Prolog Laborator 1 Programare declarativă O paradigmă de programare în care controlul fluxului de execuție este lăsat la latitudinea implementării limbajului, spre deosebire de programarea imperativă în care

More information

La fereastra de autentificare trebuie executati urmatorii pasi: 1. Introduceti urmatoarele date: Utilizator: - <numarul dvs de carnet> (ex: "9",

La fereastra de autentificare trebuie executati urmatorii pasi: 1. Introduceti urmatoarele date: Utilizator: - <numarul dvs de carnet> (ex: 9, La fereastra de autentificare trebuie executati urmatorii pasi: 1. Introduceti urmatoarele date: Utilizator: - (ex: "9", "125", 1573" - se va scrie fara ghilimele) Parola: -

More information

MS POWER POINT. s.l.dr.ing.ciprian-bogdan Chirila

MS POWER POINT. s.l.dr.ing.ciprian-bogdan Chirila MS POWER POINT s.l.dr.ing.ciprian-bogdan Chirila chirila@cs.upt.ro http://www.cs.upt.ro/~chirila Pornire PowerPoint Pentru accesarea programului PowerPoint se parcurg următorii paşi: Clic pe butonul de

More information

Arbori. Figura 1. struct ANOD { int val; ANOD* st; ANOD* dr; }; #include <stdio.h> #include <conio.h> struct ANOD { int val; ANOD* st; ANOD* dr; }

Arbori. Figura 1. struct ANOD { int val; ANOD* st; ANOD* dr; }; #include <stdio.h> #include <conio.h> struct ANOD { int val; ANOD* st; ANOD* dr; } Arbori Arborii, ca şi listele, sunt structuri dinamice. Elementele structurale ale unui arbore sunt noduri şi arce orientate care unesc nodurile. Deci, în fond, un arbore este un graf orientat degenerat.

More information

X-Fit S Manual de utilizare

X-Fit S Manual de utilizare X-Fit S Manual de utilizare Compatibilitate Acest produs este compatibil doar cu dispozitivele ce au următoarele specificații: ios: Versiune 7.0 sau mai nouă, Bluetooth 4.0 Android: Versiune 4.3 sau mai

More information

În continuare vom prezenta unele dintre problemele de calcul ale numerelor Fibonacci.

În continuare vom prezenta unele dintre problemele de calcul ale numerelor Fibonacci. O condiţie necesară şi suficientă ca un număr să fie număr Fibonacci Autor: prof. Staicu Ovidiu Ninel Colegiul Economic Petre S. Aurelian Slatina, jud. Olt 1. Introducere Propuse de Leonardo Pisa în 1202,

More information

Auditul financiar la IMM-uri: de la limitare la oportunitate

Auditul financiar la IMM-uri: de la limitare la oportunitate Auditul financiar la IMM-uri: de la limitare la oportunitate 3 noiembrie 2017 Clemente Kiss KPMG in Romania Agenda Ce este un audit la un IMM? Comparatie: audit/revizuire/compilare Diferente: audit/revizuire/compilare

More information

Funcţii grup şi clauzele GROUP BY, HAVING. Operatorii ROLLUP şi CUBE.

Funcţii grup şi clauzele GROUP BY, HAVING. Operatorii ROLLUP şi CUBE. Baze de date-anul 2 Laborator 4 SQL Funcţii grup şi clauzele GROUP BY, HAVING. Operatorii ROLLUP şi CUBE. I. [Funcţii grup şi clauza GROUP BY] Clauza GROUP BY este utilizată pentru a diviza liniile unui

More information

CERERI SELECT PE MAI MULTE TABELE

CERERI SELECT PE MAI MULTE TABELE SQL - 2 CERERI SELECT PE MAI MULTE TABELE 1 STUD MATR NUME AN GRUPA DATAN LOC TUTOR PUNCTAJ CODS ---- ------- -- ------ --------- ---------- ----- ------- ---- 1456 GEORGE 4 1141A 12-MAR-82 BUCURESTI 2890

More information

Algoritmi si structuri de date ( ) Informatica Ramnicu Valcea, anul 1

Algoritmi si structuri de date ( ) Informatica Ramnicu Valcea, anul 1 EVALUARE: - lucrare scrisă din partea de Algoritmi (~ în săptămâna a 8-a) => nota1 - lucrare scrisă din partea de Structuri de date (în sesiunea de iarnă) => nota2 - teme pentru acasă Nota finală (calculată

More information

Propuneri pentru teme de licență

Propuneri pentru teme de licență Propuneri pentru teme de licență Departament Automatizări Eaton România Instalație de pompare cu rotire în funcție de timpul de funcționare Tablou electric cu 1 pompă pilot + 3 pompe mari, cu rotirea lor

More information

Update firmware aparat foto

Update firmware aparat foto Update firmware aparat foto Mulţumim că aţi ales un produs Nikon. Acest ghid descrie cum să efectuaţi acest update de firmware. Dacă nu aveţi încredere că puteţi realiza acest update cu succes, acesta

More information

R O M Â N I A CURTEA CONSTITUŢIONALĂ

R O M Â N I A CURTEA CONSTITUŢIONALĂ R O M Â N I A CURTEA CONSTITUŢIONALĂ Palatul Parlamentului Calea 13 Septembrie nr. 2, Intrarea B1, Sectorul 5, 050725 Bucureşti, România Telefon: (+40-21) 312 34 84; 335 62 09 Fax: (+40-21) 312 43 59;

More information

6. Excepţii şi aserţiuni. 6. Excepţii şi aserţiuni

6. Excepţii şi aserţiuni. 6. Excepţii şi aserţiuni 6. Excepţii şi aserţiuni 1 6. Excepţii şi aserţiuni Tipuri excepţii Clauza throws Generarea excepţiilor Clauzele try, catch şi finally Recomandări pentru utilizarea excepţiilor Aserţiuni 2 Introducere

More information

ISBN-13:

ISBN-13: Regresii liniare 2.Liniarizarea expresiilor neliniare (Steven C. Chapra, Applied Numerical Methods with MATLAB for Engineers and Scientists, 3rd ed, ISBN-13:978-0-07-340110-2 ) Există cazuri în care aproximarea

More information

Documentaţie Tehnică

Documentaţie Tehnică Documentaţie Tehnică Verificare TVA API Ultima actualizare: 27 Aprilie 2018 www.verificaretva.ro 021-310.67.91 / 92 info@verificaretva.ro Cuprins 1. Cum funcţionează?... 3 2. Fluxul de date... 3 3. Metoda

More information

Metoda BACKTRACKING. prof. Jiduc Gabriel

Metoda BACKTRACKING. prof. Jiduc Gabriel Metoda BACKTRACKING prof. Jiduc Gabriel Un algoritm backtracking este un algoritm de căutare sistematică și exhausivă a tuturor soluțiilor posibile, dintre care se poate alege apoi soluția optimă. Problemele

More information

Macrocomenzi. Figura 1. Personalizarea barei de meniuri. Se va afișa fereastra din figura 2. Figura 2. Includerea tab ului Developer.

Macrocomenzi. Figura 1. Personalizarea barei de meniuri. Se va afișa fereastra din figura 2. Figura 2. Includerea tab ului Developer. Macrocomenzi Macrocomenzile (sau, prescurtat macrou rile) sunt colecții de comenzi înregistrate pentru a putea fi lansate în execuție, în bloc, ori de câte ori va fi nevoie. Avantajul lucrului cu macro

More information

9. Memoria. Procesorul are o memorie cu o arhitectură pe două niveluri pentru memoria de program și de date.

9. Memoria. Procesorul are o memorie cu o arhitectură pe două niveluri pentru memoria de program și de date. 9. Memoria Procesorul are o memorie cu o arhitectură pe două niveluri pentru memoria de program și de date. Primul nivel conține memorie de program cache (L1P) și memorie de date cache (L1D). Al doilea

More information

INTERPRETOARE DE COMENZI

INTERPRETOARE DE COMENZI Rularea lui determin afişarea mesajului hello world la consola 3.2. Facilităţi ale interpretoarelor de comenzi 3.1. Introducere Capitolul 3 INTERPRETOARE DE COMENZI Interpretorul de comenzi este un program

More information

Aspecte controversate în Procedura Insolvenţei şi posibile soluţii

Aspecte controversate în Procedura Insolvenţei şi posibile soluţii www.pwc.com/ro Aspecte controversate în Procedura Insolvenţei şi posibile soluţii 1 Perioada de observaţie - Vânzarea de stocuri aduse în garanţie, în cursul normal al activității - Tratamentul leasingului

More information

Reţele Neuronale Artificiale în MATLAB

Reţele Neuronale Artificiale în MATLAB Reţele Neuronale Artificiale în MATLAB Programul MATLAB dispune de o colecţie de funcţii şi interfeţe grafice, destinate lucrului cu Reţele Neuronale Artificiale, grupate sub numele de Neural Network Toolbox.

More information

Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic

Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Proiect nr. 154/323 cod SMIS 4428 cofinanțat de prin Fondul European de Dezvoltare Regională Investiții pentru viitorul

More information

Mods euro truck simulator 2 harta romaniei by elyxir. Mods euro truck simulator 2 harta romaniei by elyxir.zip

Mods euro truck simulator 2 harta romaniei by elyxir. Mods euro truck simulator 2 harta romaniei by elyxir.zip Mods euro truck simulator 2 harta romaniei by elyxir Mods euro truck simulator 2 harta romaniei by elyxir.zip 26/07/2015 Download mods euro truck simulator 2 harta Harta Romaniei pentru Euro Truck Simulator

More information

The First TST for the JBMO Satu Mare, April 6, 2018

The First TST for the JBMO Satu Mare, April 6, 2018 The First TST for the JBMO Satu Mare, April 6, 08 Problem. Prove that the equation x +y +z = x+y +z + has no rational solutions. Solution. The equation can be written equivalently (x ) + (y ) + (z ) =

More information

Ierarhia memoriilor Tipuri de memorii Memorii semiconductoare Memoria cu unități multiple. Memoria cache Memoria virtuală

Ierarhia memoriilor Tipuri de memorii Memorii semiconductoare Memoria cu unități multiple. Memoria cache Memoria virtuală Ierarhia memoriilor Tipuri de memorii Memorii semiconductoare Memoria cu unități multiple Memoria cache Memoria virtuală 1 Memorii RAM: datele sunt identificate cu ajutorul unor adrese unice Memorii asociative:

More information

Mai bine. Pentru c putem.

Mai bine. Pentru c putem. 1 CUPRINS: 1. SUMAR APLICAŢIE...... 3 1.1 Introducere... 3 1.2 Tipul de aplicaţie... 3 2. SPECIFICAŢII FUNCŢIONALE... 3 3. INSTALARE... 3 3.1 Introducere... 3 3.2 Ce trebuie să verificaţi înainte de a

More information

INFORMAȚII DESPRE PRODUS. FLEXIMARK Stainless steel FCC. Informații Included in FLEXIMARK sample bag (article no. M )

INFORMAȚII DESPRE PRODUS. FLEXIMARK Stainless steel FCC. Informații Included in FLEXIMARK sample bag (article no. M ) FLEXIMARK FCC din oțel inoxidabil este un sistem de marcare personalizată în relief pentru cabluri și componente, pentru medii dure, fiind rezistent la acizi și la coroziune. Informații Included in FLEXIMARK

More information

Olimpiad«Estonia, 2003

Olimpiad«Estonia, 2003 Problema s«pt«m nii 128 a) Dintr-o tabl«p«trat«(2n + 1) (2n + 1) se ndep«rteaz«p«tr«telul din centru. Pentru ce valori ale lui n se poate pava suprafata r«mas«cu dale L precum cele din figura de mai jos?

More information

CAIETUL DE SARCINI Organizare evenimente. VS/2014/0442 Euro network supporting innovation for green jobs GREENET

CAIETUL DE SARCINI Organizare evenimente. VS/2014/0442 Euro network supporting innovation for green jobs GREENET CAIETUL DE SARCINI Organizare evenimente VS/2014/0442 Euro network supporting innovation for green jobs GREENET Str. Dem. I. Dobrescu, nr. 2-4, Sector 1, CAIET DE SARCINI Obiectul licitaţiei: Kick off,

More information

Candlesticks. 14 Martie Lector : Alexandru Preda, CFTe

Candlesticks. 14 Martie Lector : Alexandru Preda, CFTe Candlesticks 14 Martie 2013 Lector : Alexandru Preda, CFTe Istorie Munehisa Homma - (1724-1803) Ojima Rice Market in Osaka 1710 devine si piata futures Parintele candlesticks Samurai In 1755 a scris The

More information

CHAMPIONS LEAGUE 2017 SPONSOR:

CHAMPIONS LEAGUE 2017 SPONSOR: NOUA STRUCTURĂ a Ch League Pe viitor numai fosta divizie A va purta numele Champions League. Fosta divizie B va purta numele Challenger League iar fosta divizie C se va numi Promotional League. CHAMPIONS

More information

2. Setări configurare acces la o cameră web conectată într-un echipament HG8121H cu funcție activă de router

2. Setări configurare acces la o cameră web conectată într-un echipament HG8121H cu funcție activă de router Pentru a putea vizualiza imaginile unei camere web IP conectată într-un echipament Huawei HG8121H, este necesară activarea serviciului Dinamic DNS oferit de RCS&RDS, precum și efectuarea unor setări pe

More information

Curs 5. Programare Delphi

Curs 5. Programare Delphi Programare Delphi Curs 5 Elementele de bază ale limbajului Delphi (III). A. Declaraţii şi instrucţiuni http://docwiki.embarcadero.com/radstudio/en/declarations_and_statements Un program Pascal constă dintr-o

More information

Proceduri stocate. Crearea procedurilor stocate. Varianta 1 În Management Studio se dă clic pe New Query ca în imaginea de mai jos: Fig.

Proceduri stocate. Crearea procedurilor stocate. Varianta 1 În Management Studio se dă clic pe New Query ca în imaginea de mai jos: Fig. Proceduri stocate Crearea procedurilor stocate. Varianta 1 În Management Studio se dă clic pe New Query ca în imaginea de mai jos: Fig. 1 Odată cu deschiderea editorului SQL, apare și bara de instrumente

More information

Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic

Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Proiect nr. 154/323 cod SMIS 4428 cofinanțat de prin Fondul European de Dezvoltare Regională Investiții pentru viitorul

More information

earning every day-ahead your trust stepping forward to the future opcom operatorul pie?ei de energie electricã și de gaze naturale din România Opcom

earning every day-ahead your trust stepping forward to the future opcom operatorul pie?ei de energie electricã și de gaze naturale din România Opcom earning every day-ahead your trust stepping forward to the future opcom operatorul pie?ei de energie electricã și de gaze naturale din România Opcom RAPORT DE PIA?Ã LUNAR MARTIE 218 Piaţa pentru Ziua Următoare

More information

Updating the Nomographical Diagrams for Dimensioning the Concrete Slabs

Updating the Nomographical Diagrams for Dimensioning the Concrete Slabs Acta Technica Napocensis: Civil Engineering & Architecture Vol. 57, No. 1 (2014) Journal homepage: http://constructii.utcluj.ro/actacivileng Updating the Nomographical Diagrams for Dimensioning the Concrete

More information

Mulțumim anticipat tuturor acelora care vor transmite critici/observații/sugestii

Mulțumim anticipat tuturor acelora care vor transmite critici/observații/sugestii Mulțumim anticipat tuturor acelora care vor transmite critici/observații/sugestii ilincamircea@yahoo.com TEMA III.1 v1 : ORGANIZAREA DATELOR UNUI PROGRAM C/C++ ÎN MO postat 02.11.2016 (sinteză) Coținutul

More information

Baze de date distribuite și mobile

Baze de date distribuite și mobile Universitatea Constantin Brâncuşi din Târgu-Jiu Facultatea de Inginerie Departamentul de Automatică, Energie şi Mediu Baze de date distribuite și mobile Lect.dr. Adrian Runceanu Curs 3 Model fizic şi model

More information

2. SCHEME LOGICE ŞI PSEUDOCOD

2. SCHEME LOGICE ŞI PSEUDOCOD REPREZENTRE LGORITMILOR PRIN PSEUDOCOD 2. SCHEME LOGICE ŞI PSEUDOCOD 2.1 Reprezentarea algoritmilor prin scheme logice Primitivele utilizate în schemele logice sunt simboluri grafice, cu funcţiuni (reprezentând

More information

.. REGISTRE Registrele sunt circuite logice secvenţiale care primesc, stochează şi transferă informaţii sub formă binară. Un registru este format din mai multe celule bistabile de tip RS, JK sau D şi permite

More information

3.2 Arhitectura setului de instrucţiuni ISA. Copyright Paul GASNER

3.2 Arhitectura setului de instrucţiuni ISA. Copyright Paul GASNER 3.2 Arhitectura setului de instrucţiuni ISA Copyright Paul GASNER Programarea CPU Programele scrise în limbaje de nivel înalt trebuie compilate pentru a obţine un program executabil Din punctul de vedere

More information

1. Creaţi un nou proiect de tip Windows Forms Application, cu numele MdiExample.

1. Creaţi un nou proiect de tip Windows Forms Application, cu numele MdiExample. Aplicaţia MdiExample Aplicaţia implementează: Deschiderea şi închiderea ferestrelor child. Minimizarea şi maximizarea ferestrelor. Aranjarea ferestrelor. Tratarea mesajului de atenţionare la ieşirea din

More information

Nume şi Apelativ prenume Adresa Număr telefon Tip cont Dobânda Monetar iniţial final

Nume şi Apelativ prenume Adresa Număr telefon  Tip cont Dobânda Monetar iniţial final Enunt si descriere aplicatie. Se presupune ca o organizatie (firma, banca, etc.) trebuie sa trimita scrisori prin posta unui numar (n=500, 900,...) foarte mare de clienti pe care sa -i informeze cu diverse

More information

PROIECTAREA ALGORITMILOR

PROIECTAREA ALGORITMILOR Universitatea Constantin Brâncuşi Târgu-Jiu Facultatea de Inginerie Departamentul de Automatică, Energie şi Mediu 3 PROIECTAREA ALGORITMILOR Lect. univ. dr. Adrian Runceanu 1 Curs 3 Alocarea dinamică de

More information

Itemi Sisteme de Operare

Itemi Sisteme de Operare Itemi Sisteme de Operare 1. Pentru a muta un dosar (folder) de pe partiţia C: pe partiţia D: folosim: a. New Folder b. Ctrl + C din bara de instrumente şi Copy; c. Ctrl + X şi Ctrl + V; d. Edit Paste;

More information

Preţul mediu de închidere a pieţei [RON/MWh] Cota pieţei [%]

Preţul mediu de închidere a pieţei [RON/MWh] Cota pieţei [%] Piaţa pentru Ziua Următoare - mai 217 Participanţi înregistraţi la PZU: 356 Număr de participanţi activi [participanţi/lună]: 264 Număr mediu de participanţi activi [participanţi/zi]: 247 Preţ mediu [lei/mwh]:

More information

MODELUL UNUI COMUTATOR STATIC DE SURSE DE ENERGIE ELECTRICĂ FĂRĂ ÎNTRERUPEREA ALIMENTĂRII SARCINII

MODELUL UNUI COMUTATOR STATIC DE SURSE DE ENERGIE ELECTRICĂ FĂRĂ ÎNTRERUPEREA ALIMENTĂRII SARCINII MODELUL UNUI COMUTATOR STATIC DE SURSE DE ENERGIE ELECTRICĂ FĂRĂ ÎNTRERUPEREA ALIMENTĂRII SARCINII Adrian Mugur SIMIONESCU MODEL OF A STATIC SWITCH FOR ELECTRICAL SOURCES WITHOUT INTERRUPTIONS IN LOAD

More information

HEAPSORT I. CONSIDERAŢII TEORETICE

HEAPSORT I. CONSIDERAŢII TEORETICE I. CONSIDERAŢII TEORETICE HEAPSORT Algoritm de sortare care combină calităţile sortării prin inserţie cu cele ale sortării prin interclasare. A fost inventat de Williams 1964. Prin heapsort se ordonează

More information

Excel Advanced. Curriculum. Școala Informală de IT. Educație Informală S.A.

Excel Advanced. Curriculum. Școala Informală de IT. Educație Informală S.A. Excel Advanced Curriculum Școala Informală de IT Tel: +4.0744.679.530 Web: www.scoalainformala.ro / www.informalschool.com E-mail: info@scoalainformala.ro Cuprins 1. Funcții Excel pentru avansați 2. Alte

More information

Programare în limbaj de asamblare 16. Formatul instrucţiunilor (codificare, moduri de adresare).

Programare în limbaj de asamblare 16. Formatul instrucţiunilor (codificare, moduri de adresare). Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Programare în limbaj de asamblare 16. Formatul instrucţiunilor (codificare, moduri de adresare). Formatul instrucţiunilor

More information

Tema 1 - Transferuri de date DMA intr-o arhitectura de tip Cell

Tema 1 - Transferuri de date DMA intr-o arhitectura de tip Cell Tema 1 - Transferuri de date DMA intr-o arhitectura de tip Cell Termen de trimitere a temei: Luni, 31 martie 2008, ora 23:55 1. Specificatii functionale O arhitectura de tip Cell consta din urmatoarele

More information

Proiectarea bazelor de date. PL/SQL Înregistrări și Colecții # 13. Adrian Runceanu

Proiectarea bazelor de date. PL/SQL Înregistrări și Colecții # 13. Adrian Runceanu Proiectarea bazelor de date # 13 PL/SQL Înregistrări și Colecții 2016 Adrian Runceanu www.runceanu.ro/adrian Curs 13 Înregistrări și Colecții Proiectarea bazelor de date 2 Înregistrări și Colecții în PL/SQL

More information

Generarea şi validarea numerelor prime mari

Generarea şi validarea numerelor prime mari Generarea şi validarea numerelor prime mari 1 Modalităţi de generare a numerelor prime mari Metoda cea mai naturală este de a genera aleator un număr n de mărime adecvată şi de a verifica dacă acesta este

More information

Grafuri bipartite. Lecție de probă, informatică clasa a XI-a. Mihai Bărbulescu Facultatea de Automatică și Calculatoare, UPB

Grafuri bipartite. Lecție de probă, informatică clasa a XI-a. Mihai Bărbulescu Facultatea de Automatică și Calculatoare, UPB Grafuri bipartite Lecție de probă, informatică clasa a XI-a Mihai Bărbulescu b12mihai@gmail.com Facultatea de Automatică și Calculatoare, UPB Colegiul Național de Informatică Tudor Vianu București 27 februarie

More information

Interogarea (query), este operaţia prin care se obţin datele

Interogarea (query), este operaţia prin care se obţin datele CAPITOLUL 3 INTEROGAREA BAZELOR DE DATE Interogarea (query), este operaţia prin care se obţin datele dorite dintr-o bază de date, selectate conform unui anumit criteriu (condiţie). Întrucât operaţia de

More information

5.3 OSCILATOARE SINUSOIDALE

5.3 OSCILATOARE SINUSOIDALE 5.3 OSCILATOARE SINUSOIDALE 5.3.1. GENERALITĂŢI Oscilatoarele sunt circuite electronice care generează la ieşire o formă de undă repetitivă, cu frecvenţă proprie, fără a fi necesar un semnal de intrare

More information

Proiectarea bazelor de date # 11. PL/SQL Funcții în PL/SQL (partea a II-a) Adrian Runceanu

Proiectarea bazelor de date # 11. PL/SQL Funcții în PL/SQL (partea a II-a) Adrian Runceanu Proiectarea bazelor de date # 11 PL/SQL Funcții în PL/SQL (partea a II-a) 2018 Adrian Runceanu www.runceanu.ro/adrian Curs 11 Funcţii în PL/SQL (partea II) Proiectarea bazelor de date 2 Cuprins Funcţii

More information

9. CURSOARE. Obiective. În acest Capitol, vom învăţa despre: Manipularea cursoarelor. Folosirea Cursor FOR Loops şi Nesting Cursors.

9. CURSOARE. Obiective. În acest Capitol, vom învăţa despre: Manipularea cursoarelor. Folosirea Cursor FOR Loops şi Nesting Cursors. 9. CURSOARE Obiective. În acest Capitol, vom învăţa despre: Manipularea cursoarelor. Folosirea Cursor FOR Loops şi Nesting Cursors. Cursoare sunt zone de memorie care ne permit să alocam o zonă de memorie

More information

DECLARAȚIE DE PERFORMANȚĂ Nr. 101 conform Regulamentului produselor pentru construcții UE 305/2011/UE

DECLARAȚIE DE PERFORMANȚĂ Nr. 101 conform Regulamentului produselor pentru construcții UE 305/2011/UE S.C. SWING TRADE S.R.L. Sediu social: Sovata, str. Principala, nr. 72, judetul Mures C.U.I. RO 9866443 Nr.Reg.Com.: J 26/690/1997 Capital social: 460,200 lei DECLARAȚIE DE PERFORMANȚĂ Nr. 101 conform Regulamentului

More information

Lucrarea Nr.1. Sisteme de operare. Generalitati

Lucrarea Nr.1. Sisteme de operare. Generalitati Lucrarea Nr.1 Sisteme de operare. Generalitati Scopul lucrarii Lucrarea îsi propune familiarizarea studentilor cu sistemele de operare disponibile în laborator, respectiv acele sisteme de operare cu ajutorul

More information

Prima. Evadare. Ac9vity Report. The biggest MTB marathon from Eastern Europe. 7th edi9on

Prima. Evadare. Ac9vity Report. The biggest MTB marathon from Eastern Europe. 7th edi9on Prima Evadare Ac9vity Report 2015 The biggest MTB marathon from Eastern Europe 7th edi9on Prima Evadare in numbers Par%cipants subscribed 3.228, 2.733 started the race and 2.400 finished the race 40 Photographers

More information

Calculatoare Numerice II Interfaţarea unui dispozitiv de teleghidare radio cu portul paralel (MGSH Machine Guidance SHell) -proiect-

Calculatoare Numerice II Interfaţarea unui dispozitiv de teleghidare radio cu portul paralel (MGSH Machine Guidance SHell) -proiect- Universitatea Politehnica Bucureşti Facultatea de Automaticăşi Calculatoare Calculatoare Numerice II Interfaţarea unui dispozitiv de teleghidare radio cu portul paralel (MGSH Machine Guidance SHell) -proiect-

More information

Proiectarea Sistemelor Software Complexe

Proiectarea Sistemelor Software Complexe Proiectarea Sistemelor Software Complexe Curs 3 Principii de Proiectare Orientată pe Obiecte Principiile de proiectare orientată pe obiecte au fost formulate pentru a servi ca reguli pentru evitarea proiectării

More information

:= 950; BEGIN DELETE FROM

:= 950; BEGIN DELETE FROM Cursori în PLSQL La fiecare execuţie a unei instrucţiuni SQL serverul Oracle deschide o zonă de memorie în care este analizată şi executată instrucţiunea. Această zonă de memorie se numeşte cursor. Există

More information

EN teava vopsita cu capete canelate tip VICTAULIC

EN teava vopsita cu capete canelate tip VICTAULIC ArcelorMittal Tubular Products Iasi SA EN 10217-1 teava vopsita cu capete canelate tip VICTAULIC Page 1 ( 4 ) 1. Scop Documentul specifica cerintele tehnice de livrare pentru tevi EN 10217-1 cu capete

More information

MANAGEMENTUL CALITĂȚII - MC. Proiect 5 Procedura documentată pentru procesul ales

MANAGEMENTUL CALITĂȚII - MC. Proiect 5 Procedura documentată pentru procesul ales MANAGEMENTUL CALITĂȚII - MC Proiect 5 Procedura documentată pentru procesul ales CUPRINS Procedura documentată Generalități Exemple de proceduri documentate Alegerea procesului pentru realizarea procedurii

More information

Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic

Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Proiect nr. 154/323 cod SMIS 4428 cofinanțat de prin Fondul European de Dezvoltare Regională Investiții pentru viitorul

More information

USING SERIAL INDUSTRIAL ROBOTS IN CNC MILLING PROCESESS

USING SERIAL INDUSTRIAL ROBOTS IN CNC MILLING PROCESESS BULETINUL INSTITUTULUI POLITEHNIC DIN IAŞI Publicat de Universitatea Tehnică Gheorghe Asachi din Iaşi Tomul LXI (LXV), Fasc. 3, 2015 Secţia CONSTRUCŢII DE MAŞINI USING SERIAL INDUSTRIAL ROBOTS IN CNC MILLING

More information

SIMULAREA DESCRIERILOR VHDL

SIMULAREA DESCRIERILOR VHDL 1 SIMULAREA DESCRIERILOR VHDL În prima parte a acestei lucrări de laborator se prezintă principiul simulatoarelor și al simulării asistate de calculator pentru sistemele digitale. În continuare, sunt descrise

More information

5.2 Interogări în SQL

5.2 Interogări în SQL 5.2 Interogări în SQL Cererile de interogare exprimate în SQL prezintă un aspect declarativ deoarece sunt specificate proprietăţile rezultatului şi nu modul de obţinere (SQL urmăreşte principiile calculului

More information

Capitolul IV. Programarea în limbajul C

Capitolul IV. Programarea în limbajul C Capitolul IV. Programarea în limbajul C 1. Scurt istoric Părintele limbajului C este Dennis Ritchie (Bell Laboratories) Limbajul a fost proiectat în 1972 pentru implementarea unui sistem de operare pentru

More information

ANTICOLLISION ALGORITHM FOR V2V AUTONOMUOS AGRICULTURAL MACHINES ALGORITM ANTICOLIZIUNE PENTRU MASINI AGRICOLE AUTONOME TIP V2V (VEHICLE-TO-VEHICLE)

ANTICOLLISION ALGORITHM FOR V2V AUTONOMUOS AGRICULTURAL MACHINES ALGORITM ANTICOLIZIUNE PENTRU MASINI AGRICOLE AUTONOME TIP V2V (VEHICLE-TO-VEHICLE) ANTICOLLISION ALGORITHM FOR VV AUTONOMUOS AGRICULTURAL MACHINES ALGORITM ANTICOLIZIUNE PENTRU MASINI AGRICOLE AUTONOME TIP VV (VEHICLE-TO-VEHICLE) 457 Florin MARIAŞIU*, T. EAC* *The Technical University

More information

Prelucrarea numerică a semnalelor

Prelucrarea numerică a semnalelor Prelucrarea numerică a semnalelor Assoc.Prof. Lăcrimioara GRAMA, Ph.D. http://sp.utcluj.ro/teaching_iiiea.html 27 februarie 2017 Lăcrimioara GRAMA (sp.utcluj.ro) Prelucrarea numerică a semnalelor 27 februarie

More information

Cap.5 Normalizarea relaţiilor

Cap.5 Normalizarea relaţiilor CAPITOLUL 5 NORMALIZAREA RELAŢIILOR Dependenţele de date reprezintă constrângeri care se impun valorilor atributelor unei relaţii şi determină proprietăţile relaţiei în raport cu operaţiile de inserare,

More information