+ All Categories
Home > Documents > Programarearunceanu.utgjiu.ro/wiki/lib/exe/fetch.php?media=docs:... · 2013. 3. 3. · 2. ALGORITMI...

Programarearunceanu.utgjiu.ro/wiki/lib/exe/fetch.php?media=docs:... · 2013. 3. 3. · 2. ALGORITMI...

Date post: 28-Jan-2021
Category:
Upload: others
View: 21 times
Download: 1 times
Share this document with a friend
56
Programarea calculatoarelor Universitatea Constantin Brâncuşi” din Târgu-Jiu Facultatea de Inginerie Departamentul de Automatică, Energie şi Mediu Lect.dr. Adrian Runceanu
Transcript
  • Programarea calculatoarelor

    Universitatea “Constantin Brâncuşi” din Târgu-Jiu Facultatea de Inginerie

    Departamentul de Automatică, Energie şi Mediu

    Lect.dr. Adrian Runceanu

  • Curs 2

    Algoritmi (continuare)

    03.03.2013 Curs - Programarea calculatoarelor 2

  • 2. ALGORITMI

    2.1. Algoritmi elementari (numai cu operatia de atribuire)

    2.2. Algoritmi cu structura de decizie 2.3. Algoritmi cu structura repetitivă cu test iniţial 2.4. Algoritmi cu structura repetitivă cu test final 2.5. Algoritmi cu structura repetitivă cu număr

    cunoscut de pași

    03.03.2013 Curs - Programarea calculatoarelor 3

  • 2.1. Algoritmi elementari

    PROBLEMA 1 Să se calculeze perimetrul şi aria unui dreptunghi,

    ştiind laturile sale. Pas 1: Stabilim care sunt datele de intrare, adică cele care

    vor fi prelucrate cu ajutorul algoritmului, împreună cu datele de ieşire.

    În cazul problemei date, avem: Date de intrare: l şi L numere reale ce reprezintă laturile

    dreptunghiului. Date de ieşire: p şi A numere reale ce reprezintă

    perimetrul, respectiv aria dreptunghiului. 03.03.2013 Curs - Programarea calculatoarelor 4

  • 2.1. Algoritmi elementari

    Pas 2: Analiza problemei Stabilim condiţiile pe care trebuie să le

    îndeplinească datele de intrare pentru a fi prelucrate în cadrul algoritmului.

    În cadrul problemei pe care o avem de rezolvat, cunoaştem formulele pentru calculul perimetrului, respectiv ariei unui dreptunghi dacă se stiu laturile sale:

    Perimetru = 2*( latime + Lungime ) Aria = latime * Lungime

    03.03.2013 Curs - Programarea calculatoarelor 5

  • 2.1. Algoritmi elementari

    Pas 3: Scrierea

    algoritmului în pseudocod:

    03.03.2013 Curs - Programarea calculatoarelor 6

    real l, L, p, A

    citeşte l, L

    p

  • 2.1. Algoritmi elementari PROBLEMA 2 Sa se calculeze si sa se afiseze valoarea distantei

    intre doua puncte, dandu-se coordonatele acestora: A(x1, y1) si B(x2, y2).

    Pas 1: Stabilim care sunt datele de intrare, adică cele care

    vor fi prelucrate cu ajutorul algoritmului, împreună cu datele de ieşire.

    În cazul problemei date, avem: Date de intrare: x1, x2, y1 şi y2 numere reale ce reprezintă

    coordonatele celor doua puncte. Date de ieşire: d = distanta intre cele doua puncte 03.03.2013 Curs - Programarea calculatoarelor 7

  • 2.1. Algoritmi elementari

    Pas 2: Analiza problemei Stabilim condiţiile pe care trebuie să le

    îndeplinească datele de intrare pentru a fi prelucrate în cadrul algoritmului.

    În cadrul problemei pe care o avem de rezolvat, cunoaştem formula de calcul pentru aflarea distantei dintre doua puncte in plan:

    03.03.2013 Curs - Programarea calculatoarelor 8

    )()()()( 21212121 yyyyxxxxd

  • 2.1. Algoritmi elementari

    Pas 3: Scrierea

    algoritmului în pseudocod:

    03.03.2013 Curs - Programarea calculatoarelor 9

    real x1, x2, y1, y2, d

    citeşte x1, y1, x2, y2

    scrie ‘Distanta dintre cele doua puncte este ’, d

    stop

    )21

    ()21

    ()21

    ()21

    ( yyyyxxxxd

  • 2.1. Algoritmi elementari

    PROBLEMA 3 Se dau două numere reale x şi y. Să se calculeze

    următoarele expresii: A = 2 + x - y B = x * A + y C = A – 2 * B + x Pas 1: Stabilim care sunt datele de intrare, şi ce tip de date

    reprezintă, împreună cu datele de ieşire. În cazul problemei date, avem: Date de intrare: x şi y numere reale Date de ieşire: A, B şi C numere reale

    03.03.2013 Curs - Programarea calculatoarelor 10

  • 2.1. Algoritmi elementari

    Pas 2: Analiza problemei Stabilim condiţiile pe care trebuie să le

    îndeplinească datele de intrare pentru a fi prelucrate în cadrul algoritmului.

    În cadrul problemei pe care o avem de rezolvat, cunoaştem formulele pentru fiecare expresie:

    A = 2 + x - y B = x * A + y C = A – 2 * B + x

    03.03.2013 Curs - Programarea calculatoarelor 11

  • 2.1. Algoritmi elementari

    Pas 3: Scrierea

    algoritmului în pseudocod:

    03.03.2013 Curs - Programarea calculatoarelor 12

    real x, y, A, B, C

    citeşte x, y

    A

  • 2. ALGORITMI

    2.1. Algoritmi elementari numai cu operatia de atribuire)

    2.2. Algoritmi cu structura de decizie 2.3. Algoritmi cu structura repetitivă cu test iniţial 2.4. Algoritmi cu structura repetitivă cu test final 2.5. Algoritmi cu structura repetitivă cu număr

    cunoscut de pași

    03.03.2013 Curs - Programarea calculatoarelor 13

  • 2.2. Algoritmi cu structura de decizie

    PROBLEMA 4 Se dau trei numere întregi a, b si c. Să se scrie un

    algoritm care să se determine maximul și minimul acestor valori.

    Pas 1: Stabilim care sunt datele de intrare, adică cele care

    vor fi prelucrate cu ajutorul algoritmului, împreună cu datele de ieşire.

    În cazul problemei date, avem: Date de intrare: a, b și c numere întregi Date de ieșire: min, respectiv max 03.03.2013 Curs - Programarea calculatoarelor 14

  • 2.2. Algoritmi cu structura de decizie

    Pas 2: Analiza problemei Stabilim condiţiile pe care trebuie să le

    îndeplinească datele de intrare pentru a fi prelucrate în cadrul algoritmului.

    i) Comparăm primele două numere (a și b). În funcție de

    care este mai mic sau mai mare am determinat minimul și maximul celor două valori.

    ii) Comparăm valorile de minim, respectiv de maxim cu cel de-al treilea număr si astfel vom determina cea mai mică, respectiv cea mai mare valoare dintre cele trei date.

    03.03.2013 Curs - Programarea calculatoarelor 15

  • 2.2. Algoritmi cu structura de decizie

    Pas 3: Scrierea

    algoritmului în pseudocod:

    03.03.2013 Curs - Programarea calculatoarelor 16

    intreg a, b, c, min, max

    citeşte a, b, c

    dacă a < b atunci

    min

  • 2.2. Algoritmi cu structura de decizie

    PROBLEMA 5 Să se calculeze valoarea funcţiei f(x), ştiind că x este un număr real

    introdus de la tastatură:

    Pas 1: Stabilim care sunt datele de intrare, adică cele care vor fi prelucrate cu ajutorul algoritmului, împreună cu datele de ieşire.

    În cazul problemei date, avem: Date de intrare: x număr real Date de iesire: f număr real, reprezentând valoarea funcţiei date

    03.03.2013 Curs - Programarea calculatoarelor 17

    0,2

    ]0,7(,30

    ]7,(,206

    )(

    xdacax

    xdacax

    xdacax

    xf

  • 2.2. Algoritmi cu structura de decizie

    Pas 2: Analiza problemei

    Stabilim condiţiile pe care trebuie să le

    îndeplinească datele de intrare pentru a fi prelucrate în

    cadrul algoritmului. Căutăm cazurile particulare.

    În cadrul problemei pe care o avem de rezolvat,

    verificăm condiţiile date în expresia funcţiei:

    1) Dacă x -7 si x 0, atunci funcţia are valoarea: sqrt(x) + 2

    03.03.2013 Curs - Programarea calculatoarelor 18

  • 2.2. Algoritmi cu structura de decizie

    Pas 3: Scrierea

    algoritmului în pseudocod:

    03.03.2013 Curs - Programarea calculatoarelor 19

    real x, f

    citeşte x

    dacă x

  • 2.2. Algoritmi cu structura de decizie

    PROBLEMA 6 Să se citească trei valori naturale a, b și c. Să se scrie

    un algoritm care să verifice dacă cele trei numere sunt sau nu numere pitagorice.

    Precizare: Numim numere pitagorice, trei valori care

    îndeplinesc Teorema lui Pitagora, adică verifică una din condițiile:

    03.03.2013 Curs - Programarea calculatoarelor 20

    222

    222

    222

    bac

    cab

    cba

  • 2.2. Algoritmi cu structura de decizie

    Pas 1: Stabilim care sunt datele de intrare, adică cele care vor fi prelucrate cu ajutorul algoritmului, împreună cu datele de ieşire.

    În cazul problemei date, avem: Date de intrare: a, b și c numere naturale Date de ieşire: mesaj corespunzător

    03.03.2013 Curs - Programarea calculatoarelor 21

  • 2.2. Algoritmi cu structura de decizie

    Pas 2: Analiza problemei Stabilim condiţiile pe care trebuie să le îndeplinească

    datele de intrare pentru a fi prelucrate în cadrul algoritmului.

    În cadrul problemei pe care o avem de rezolvat, verificăm condiţiile care trebuie îndeplinite de cele trei valori:

    1) Dacă 𝒂𝟐 = 𝒃𝟐 + 𝒄𝟐, atunci sunt numere pitagorice. Sau 2) Daca 𝒃𝟐 = 𝒂𝟐 + 𝒄𝟐, atunci sunt numere pitagorice. Sau 3) Daca 𝒄𝟐 = 𝒂𝟐 + 𝒃𝟐, atunci sunt numere pitagorice. 03.03.2013 Curs - Programarea calculatoarelor 22

  • 2.2. Algoritmi cu structura de decizie

    Pas 3: Scrierea

    algoritmului în pseudocod:

    03.03.2013 Curs - Programarea calculatoarelor 23

    natural a,b,c citeşte a,b,c dacă 𝑎2 = 𝑏2 + 𝑐2 atunci scrie ‘Numere pitagorice’ altfel dacă 𝑏2 = 𝑎2 + 𝑐2 atunci scrie ‘Numere pitagorice’ altfel dacă 𝑐2 = 𝑎2 + 𝑏2 atunci scrie ‘Numere pitagorice’ altfel scrie ‘NU SUNT nr. pitagorice’ sfârşit dacă sfarşit dacă sfarşit dacă stop

  • 2.2. Algoritmi cu structura de decizie

    Varianta II-a Pas 3: Scrierea

    algoritmului în pseudocod:

    03.03.2013 Curs - Programarea calculatoarelor 24

    natural a,b,c citeşte a,b,c dacă 𝑎2 = 𝑏2 + 𝑐2 sau 𝑏2 = 𝑎2 + 𝑐2 sau 𝑐2 = 𝑎2 + 𝑏2 atunci scrie ‘Numere pitagorice’ altfel scrie ‘NU SUNT nr. pitagorice’ sfarşit dacă stop

  • 2. ALGORITMI

    2.1. Algoritmi elementari (numai cu operatia de atribuire)

    2.2. Algoritmi cu structura de decizie 2.3. Algoritmi cu structura repetitivă cu test iniţial 2.4. Algoritmi cu structura repetitivă cu test final 2.5. Algoritmi cu structura repetitivă cu număr

    cunoscut de pași

    03.03.2013 Curs - Programarea calculatoarelor 25

  • 2.3. Algoritmi cu structura repetitivă cu test iniţial

    PROBLEMA 7 Să se citească un număr natural n. Să se scrie un

    algoritm care afişează toţi divizorii numărului dat. Exemplu: Pentru n = 12, mulţimea divizorilor este formată

    din valorile 1, 2, 3, 4, 6, 12. Pas 1: Stabilim care sunt datele de intrare, adică cele care

    vor fi prelucrate cu ajutorul algoritmului, împreună cu datele de ieşire.

    În cazul problemei date, avem: Date de intrare: n număr natural Date de ieşire: divizorii numărului n

    03.03.2013 Curs - Programarea calculatoarelor 26

  • 2.3. Algoritmi cu structura repetitivă cu test iniţial

    Pas 2: Analiza problemei În cadrul problemei pe care o avem de rezolvat,

    verificăm condiţia ca un număr să fie divizor al altui număr şi anume:

    i este divizor al numărului n dacă se împarte exact la el, adică dacă este adevărată expresia n % i = 0.

    Pentru a găsi toţi divizorii numărului n dat, vom da valori lui i, pornind de la valoarea 1 până la valoarea n.

    Deci vom utiliza o structură repetitivă.

    03.03.2013 Curs - Programarea calculatoarelor 27

  • 2.3. Algoritmi cu structura repetitivă cu test iniţial

    03.03.2013 Curs - Programarea calculatoarelor 28

    Pas 3:

    Scrierea algoritmului în pseudocod:

    natural n, i citeşte n i

  • 2.3. Algoritmi cu structura repetitivă cu test iniţial

    PROBLEMA 8 Să se citească un număr natural n. Să se scrie un algoritm care

    verifică dacă numărul dat este sau nu număr prim. Un număr n este prim dacă are ca divizori doar valorile 1 şi n. Exemplu: Pentru n = 7, se va afişa mesajul ‘numărul este prim’, iar pentru n = 22, se va afişa mesajul ‘numărul NU este prim’.

    Pas 1: Stabilim care sunt datele de intrare, adică cele care vor fi

    prelucrate cu ajutorul algoritmului, împreună cu datele de ieşire. În cazul problemei date, avem: Date de intrare: n număr natural Date de ieşire: număr prim sau nu

    03.03.2013 Curs - Programarea calculatoarelor 29

  • 2.3. Algoritmi cu structura repetitivă cu test iniţial

    Pas 2: Analiza problemei: 1) Vom presupune, la începutul problemei, că numărul n dat

    este prim, şi vom specifica acest lucru cu ajutorul unei variabile de tip logic, căreia îi vom da valoarea ‘adevărat’.

    2) Apoi vom evalua, pe rând, toate valorile începând cu valoarea 2 şi până la n-1, ca să determinăm dacă sunt divizori ai numărului n dat.

    3) Dacă găsim un singur divizor printre aceste numere, atunci vom acorda valoarea ‘fals’ variabilei de tip logic de la începutul algoritmului.

    4) La sfârşit vom verifica care este valoarea variabilei de tip logic şi vom afişa un mesaj corespunzător.

    03.03.2013 Curs - Programarea calculatoarelor 30

  • 2.3. Algoritmi cu structura repetitivă cu test iniţial

    03.03.2013 Curs - Programarea calculatoarelor 31

    Pas 3:

    Scrierea algoritmului în pseudocod:

    natural n, i logic p citeşte n p

  • 2.3. Algoritmi cu structura repetitivă cu test iniţial

    PROBLEMA 9

    Să se calculeze suma şi produsul primelor n numere

    naturale, n fiind introdus de la tastatură.

    Exemplu: Pentru n = 5, se vor afişa valorile

    s = 1 + 2 + 3 + 4 + 5 = 15

    p = 1 * 2 * 3 * 4 * 5 = 120

    Pas 1: Stabilim care sunt datele de intrare, adică cele care vor fi

    prelucrate cu ajutorul algoritmului, împreună cu datele de

    ieşire. În cazul problemei date, avem:

    Date de intrare: n număr natural

    Date de ieşire: s şi p 03.03.2013 Curs - Programarea calculatoarelor 32

  • 2.3. Algoritmi cu structura repetitivă cu test iniţial

    Pas 2: Analiza problemei La începutul problemei, vom iniţializa două

    valori, s pentru sumă cu 0 şi p pentru produs cu 1.

    Apoi vom verifica, pe rând, toate valorile naturale de la 1 la n şi le vom însuma, respectiv înmulţi.

    Soluţiile obţinute le vom afişa.

    03.03.2013 Curs - Programarea calculatoarelor 33

  • 2.3. Algoritmi cu structura repetitivă cu test iniţial

    03.03.2013 Curs - Programarea calculatoarelor 34

    Pas 3:

    Scrierea algoritmului în pseudocod:

    natural n, i, s, p citeşte n s

  • 2. ALGORITMI

    2.1. Algoritmi elementari (numai cu operatia de atribuire)

    2.2. Algoritmi cu structura de decizie 2.3. Algoritmi cu structura repetitivă cu test iniţial 2.4. Algoritmi cu structura repetitivă cu test final 2.5. Algoritmi cu structura repetitivă cu număr

    cunoscut de pași

    03.03.2013 Curs - Programarea calculatoarelor 35

  • 2.4. Algoritmi cu structura repetitivă cu test final

    PROBLEMA 10 Să se scrie un program care verifică dacă un număr n

    este perfect sau nu. Un număr perfect este egal cu suma divizorilor lui,

    inclusiv 1 (exemplu: 6 = 1 + 2 + 3). Exemplu: Pentru n = 28, se va afişa mesajul Numar perfect

    (divizorii lui 28 sunt 1,2,4,7,14) Pas 1: Stabilim care sunt datele de intrare, adică cele care vor fi

    prelucrate cu ajutorul algoritmului, împreună cu datele de ieşire.

    În cazul problemei date, avem: Date de intrare: n număr natural Date de ieşire: mesaj corepunzător

    03.03.2013 Curs - Programarea calculatoarelor 36

  • 2.4. Algoritmi cu structura repetitivă cu test final

    Pas 2: Analiza problemei 1) La începutul problemei, vom verifica initializa o

    variabila de tip suma cu valoarea 0. 2) Pentru fiecare valoare i de la 1 la n-1 o vom

    verifica dacă i este divizor al numarului n. Daca este divizor atunci il insumam la valoarea s.

    3) Verificam daca suma obtinuta este egala cu numarul n. Daca da atunci scriem mesajul ‘Numarul este perfect’.

    03.03.2013 Curs - Programarea calculatoarelor 37

  • 2.4. Algoritmi cu structura repetitivă cu test final

    03.03.2013 Curs - Programarea calculatoarelor 38

    Pas 3:

    Scrierea algoritmului în pseudocod:

    natural n, i, s citeşte n i

  • 2.4. Algoritmi cu structura repetitivă cu test final

    PROBLEMA 11 Fie şirul lui Fibonacci, definit astfel: f(0)=0, f(1)=1, f(n)=f(n-1)+f(n-2) în cazul în care

    n>1. Să se scrie un algoritm care implementează

    valorile şirului lui Fibonacci. Exemplu: Pentru n = 7, se vor afişa valorile 1, 1, 2, 3, 5, 8, 13.

    03.03.2013 Curs - Programarea calculatoarelor 39

  • 2.4. Algoritmi cu structura repetitivă cu test final

    Pas 1: Stabilim care sunt datele de intrare, adică

    cele care vor fi prelucrate cu ajutorul algoritmului, împreună cu datele de ieşire.

    În cazul problemei date, avem: Date de intrare: n număr natural Date de ieşire: numerele din şirul lui Fibonacci

    03.03.2013 Curs - Programarea calculatoarelor 40

  • 2.4. Algoritmi cu structura repetitivă cu test final

    Pas 2: Analiza problemei La începutul problemei, vom iniţializa două

    valori (a şi b) cu primele două elemente ale şirului lui Fibonacci, adică cu valori de 1.

    Apoi, într-un ciclu repetitiv vom calcula cu ajutorul unei a treia valori (variabila c) suma lor şi vom da următoarele valori variabilelor a şi b.

    03.03.2013 Curs - Programarea calculatoarelor 41

  • 2.4. Algoritmi cu structura repetitivă cu test final

    03.03.2013 Curs - Programarea calculatoarelor 42

    Pas 3:

    Scrierea algoritmului în pseudocod:

    natural n, i, a, b, c citeşte n i

  • 2.4. Algoritmi cu structura repetitivă cu test final

    PROBLEMA 12 Fie un număr natural n de cinci cifre. Să se scrie un

    algoritm care să calculeze suma cifrelor numărului dat. Exemplu: Pentru n = 2178, se va afişa valoarea s = 2+1+7+8=18. Pas 1: Stabilim care sunt datele de intrare, adică cele care

    vor fi prelucrate cu ajutorul algoritmului, împreună cu datele de ieşire.

    În cazul problemei date, avem: Date de intrare: n număr natural Date de ieşire: s = suma cifrelor

    03.03.2013 Curs - Programarea calculatoarelor 43

  • 2.4. Algoritmi cu structura repetitivă cu test final

    Pas 2: Analiza problemei La începutul problemei, vom iniţializa

    valoarea sumei cifrelor numărului n dat cu 0. Apoi, într-un ciclu repetitiv vom calcula

    suma cifrelor numărului, ştiind că o cifră a unui număr scris în baza 10 este dată de n%10, iar câtul este dat de n/10.

    03.03.2013 Curs - Programarea calculatoarelor 44

  • 2.4. Algoritmi cu structura repetitivă cu test final

    03.03.2013 Curs - Programarea calculatoarelor 45

    Pas 3:

    Scrierea algoritmului în pseudocod:

    natural n, s citeşte n s

  • 2. ALGORITMI

    2.1. Algoritmi elementari (numai cu operatia de atribuire)

    2.2. Algoritmi cu structura de decizie 2.3. Algoritmi cu structura repetitivă cu test iniţial 2.4. Algoritmi cu structura repetitivă cu test final 2.5. Algoritmi cu structura repetitivă cu număr

    cunoscut de pași

    03.03.2013 Curs - Programarea calculatoarelor 46

  • 2.5. Algoritmi cu structura repetitivă cu număr cunoscut de pași

    PROBLEMA 13 Se citesc două numere întregi a şi b. Să se realizeze

    in pseudocod un algoritm care să verifice dacă cele doua numere sunt prietene.

    Spunem ca două numere sunt prietene dacă suma divizorilor proprii ai unui număr este egală cu celalalt şi invers.

    Exemplu: Pentru n = 220, si m = 284 se vor afişa valorile Divizorii lui 220, sunt 1, 2, 4, 5, 10, 11, 20, 22, 44, 55 și 110 Divizorii lui 284, sunt 1, 2, 4, 71 și 142

    03.03.2013 Curs - Programarea calculatoarelor 47

  • 2.5. Algoritmi cu structura repetitivă cu număr cunoscut de pași

    Pas 1: Stabilim care sunt datele de intrare, adică cele care vor fi prelucrate cu ajutorul algoritmului, împreună cu datele de ieşire.

    În cazul problemei date, avem: Date de intrare: n si m numere naturale Date de ieşire: numerele sunt sau nu prietene

    03.03.2013 Curs - Programarea calculatoarelor 48

  • 2.5. Algoritmi cu structura repetitivă cu număr cunoscut de pași

    Pas 2: Analiza problemei La începutul problemei, vom iniţializa valoarea unei

    variabile pentru suma divizorilor lui n cu 0, iar apoi valoarea unei variabile pentru suma divizorilor lui m cu 0.

    Apoi, într-un ciclu repetitiv avand n/2 pasi vom calcula suma divizorilor lui n.

    Apoi, într-un ciclu repetitiv avand m/2 pasi vom calcula suma divizorilor lui m.

    La sfarsit vom verifica daca cele doua valori sunt egale.

    03.03.2013 Curs - Programarea calculatoarelor 49

  • 2.5. Algoritmi cu structura repetitivă cu număr cunoscut de pași

    03.03.2013 Curs - Programarea calculatoarelor 50

    Pas 3:

    Scrierea algoritmului în pseudocod:

    natural n, m, i, j, suma_n, suma_m citeşte n suma_n

  • 2.5. Algoritmi cu structura repetitivă cu număr cunoscut de pași

    03.03.2013 Curs - Programarea calculatoarelor 51

    Pas 3:

    Scrierea algoritmului în pseudocod:

    suma_m

  • 2.5. Algoritmi cu structura repetitivă cu număr cunoscut de pași

    PROBLEMA 14 Se citesc pe rând, n numere naturale. Să se

    realizeze, în pseudocod, un algoritm care să determine cel mai mare număr dintre cele n date.

    Exemplu: Pentru n = 10, si valorile următoare: -2, 12, 56, -123, 34, 7, -45, 90, 23, 6 Valoarea maximă este 90

    03.03.2013 Curs - Programarea calculatoarelor 52

  • 2.5. Algoritmi cu structura repetitivă cu număr cunoscut de pași

    Pas 1: Stabilim care sunt datele de intrare, adică cele care vor fi prelucrate cu ajutorul algoritmului, împreună cu datele de ieşire.

    În cazul problemei date, avem: Date de intrare: n număr natural, n numere

    naturale Date de ieşire: valoarea maximă

    03.03.2013 Curs - Programarea calculatoarelor 53

  • 2.5. Algoritmi cu structura repetitivă cu număr cunoscut de pași

    Pas 2: Analiza problemei La începutul problemei, vom iniţializa o variabilă, în

    care vom reține valoarea maximă, cu o valoare foarte mică.

    Apoi, într-un ciclu repetitiv având n pași vom compara, pe rând cele n valori citite de la tastatură și vom reține de fiecare valoare mai mare decât cea din variabila max.

    La sfârșit vom avea valoarea cea mai mare în variabila max.

    03.03.2013 Curs - Programarea calculatoarelor 54

  • 2.5. Algoritmi cu structura repetitivă cu număr cunoscut de pași

    03.03.2013 Curs - Programarea calculatoarelor 55

    Pas 3:

    Scrierea algoritmului în pseudocod:

    natural n, i, max, x citeşte n max max atunci max

  • Întrebări?

    03.03.2013 Curs - Programarea calculatoarelor 56


Recommended