2. 2
Pag.:
• Tema de proiect … 3
• Consideratii generale … 4
• Algoritmul de rezolvare – pasul 1 … 5
• Algoritmul de rezolvare – pasul 2 … 6
• Algoritmul de rezolvare – pasul 3 … 7
Cuprins
3. 3
Să se scrie un program C++ care determină
câte perechi de elemente consecutive egale
sunt memorate într-o listă simplu înlănțuită de
intregi.
Tema de proiect
4. 4
In conformitate cu tema data, pentru
realizarea proiectului, s-a folosit o lista simplu
inlantuita de elemente ales arbitrar:
Consideratii generale
info info info
HEA
D
●●●
next next next
NUL
L
5. 5
• Pasul 1: initializrea variabilelor:
– Variabila de tip intreg pentru numararea perechilor
de elemente egale consecutive – i se atribuie initial
valoarea 0,
– Variabila de control de tip Boolean care
gestioneaza incrementarea corecta a variabilei de
numarare a perechilor – i se atribuie initial
valaoarea ADEVARAT,
– Pointer de tipul nodului listei initializat dinamic
pentru parcurgerea elementelor din lista simplu
inlantuita – i se atribuie adresa primului element
din lista.
Algoritmul de rezolvare – pasul 1
6. 6
• Pasul 2: numararea perechilor:
– 2.1 parcurgerea listei simplu inlantuite
Se parcurge lista simplu inlantuita pana la penultimul element folosind
o instructiune repetitiva de tip “cat timp” atribuind pointerului adresa
urmatorului element.
– 2.2 verificarea egalitatii a doua elemente consecutive
La fiecare pas al parcurgerii listei se verifica daca valoarea variabilei de
control este ADEVARAT si daca valoarea elementului din nodul current
este egala cu cea a elementului din nodul urmator.
Daca ambele conditii sunt indeplinite se incrementeaza variabila de
numarare cu o unitate, se afiseaza perechea de elemente si I se atribuie
variabilei de control valoarea FALS . Atribuind aceasta valoare variabilei
de control se evita includerea unui element din lista in doua perechi
diferite.
Daca oricare dintre aceste conditii nu este indeplinita i se atribuie
variabilei de control valoarea ADEVARAT.
Algoritmul de rezolvare – pasul 2
7. 7
• Pasul 3: afisarea rezultatelor
– Dupa parcurgerea listei (pointerul a ajuns la
penultimul element) se afiseaza numarul de
perechi de elemente consecutive egale,
respectiv valoarea finala a variabilei de
numarare.
Algoritmul de rezolvare – pasul 3