Laborator Nr. 4 Elemente de Bază Ale Limbajului C. Instrucțiuni Pentru Repetiție
Laborator Nr. 4 Elemente de Bază Ale Limbajului C. Instrucțiuni Pentru Repetiție
Laborator Nr. 4 Elemente de Bază Ale Limbajului C. Instrucțiuni Pentru Repetiție
Pentru nici una din problemele care se vor rezolva la disciplina Programarea Calculatoarelor
NU SE FOLOSESC VARIABILE GLOBALE
LABORATOR NR. 4
Elemente de bază ale limbajului C. Instrucțiuni pentru repetiție.
Există situații în care pentru a rezolva problema dată trebuie să parcurgem aceeași pași de mai multe
ori. De exemplu în cazul în care trebuie să calculăm suma unui șir de numere procedăm în felul următor:
adunăm primele două numere, la suma obținută adunăm cel de-al treilea număr, la noua sumă adunăm cel
de-al patrulea număr s.a.m.d.
Un alt exemplu: trebuie să citim de la tastatură un șir de numere. Citirea se face atât timp cât nu am
citit un număr negativ. La primul număr negativ citit, operația de citire se termină și trecem mai departe să
prelucrăm datele citite.
Pentru astfel de situații avem la dispoziție structuri repetitive sau iterative. Pașii care se repetă
constituie partea iterată (repetată).
Întotdeauna, pe lângă partea iterată trebuie să existe și un test (ca în structurile de selecție). În funcție
de rezultatul logic al testului se reia execuția părții iterate sau nu.
Partea iterată împreună cu testul (care și el se repetă) formează bucla structurii repetitive.
Repetiția (iterația) este o structură compusă care conține o parte iterată care se execută de zero sau
mai multe ori în funcție de rezultatul unui test logic. Partea iterată poate fi o instrucțiune simplă, o secvență,
o selecție sau o altă iterație.
Acest tip de structură compusă poate fi întâlnită în una din formele
Fals Adevarat
test
Secventa
1
PROGRAMAREA CALCULATOARELOR ____________________________________________ Laborator Nr. 4
while (test)
{
Secventa
}
ei
Fals Adevarat
test
Secventa
em
Instrucțiunea corespunzătoare acestei structuri de control este for. În Figura nr. 2 ei reprezintă o
inițializare a uneia sau mai multor variabile, et reprezintă o expresie care testează îndeplinirea unei condiții.
Dacă condiția (testul) din et este adevărată, atunci se trece la executarea instrucțiunilor din Secventa. em
reprezintă o expresie care modifică variabila (sau variabilele) care sunt prezente și în et.
Forma generală corespunzătoare schemei logice din Figura nr. 2 este:
2
PROGRAMAREA CALCULATOARELOR ____________________________________________ Laborator Nr. 4
În cazul (cel mai întâlnit în aplicațiile care urmează) în care avem o variabilă i care are ca valoare inițială
valoarea 0 (zero), variază prin creșterea valorii sale cu o unitate și această variabilă i trebuie să fie mai mică
(strict) decât n (n număr natural) – adică trebuie să se execute Secventa de n ori –, forma instrucțiunii for
este următoarea:
Secventa
Fals Adevarat
test
3
PROGRAMAREA CALCULATOARELOR ____________________________________________ Laborator Nr. 4
TEMA 2
Problema nr. 2.1
De pe dispozitivul de intrare se citește un număr real b și un șir de valori reale pozitive terminate
printr-o valoare negativă (care nu face parte din șir). Să se stabilească elementul din șir cel mai apropiat de
b . Se va preciza și poziția acestuia (al câtelea element din șir este). Termenii șirului vor fi păstrați în aceeași
variabilă a .
4
PROGRAMAREA CALCULATOARELOR ____________________________________________ Laborator Nr. 4
TEMA 3
Problema nr. 3.1
Se citesc de la tastatură un număr n de numere naturale nenule. Să se stabilească dacă acestea:
- formează un șir strict crescător (tip șir = 6)
- formează un șir crescător (tip șir = 5)
- formează un șir strict descrescător (tip șir = 2)
- formează un șir descrescător (tip șir = 3)
- sunt identice (șirul este constant) (tip șir = 4)
- nu sunt ordonate (tip șir = 1)
Programul are posibilitatea de a analiza mai multe seturi de date (va exista posibilitatea de
reluare a programului).
Observație:
Numerele citite nu se vor memora într-un vector (tablou).
5
PROGRAMAREA CALCULATOARELOR ____________________________________________ Laborator Nr. 4
Indicații:
Intre doua elemente ale șirului se pot stabili următoarele relații de ordine:
- mai mic
- egal
- mai mare
Se determina numărul de relații de ordine de fiecare tip și în funcție de acest număr se stabilește tipul
șirului astfel:
a. numai relații mai mic – șir strict crescător
b. relații mai mic și relații egal – șir crescător
c. numai relații egal – șir constant
d. relații egal si relații mai mare – șir descrescător
e. numai relații mai mare – șir strict descrescător
f. toate tipurile de relații – șir oarecare
6
PROGRAMAREA CALCULATOARELOR ____________________________________________ Laborator Nr. 4
din reprezentarea binară este 1. De exemplu: x13 = x 8 x 4 x pentru că reprezentarea în baza 2 a lui 13 este
1101.
Cifrele reprezentării binare a lui n se obțin ca resturi ale împărțirii succesive a lui n la 2.