Documente Academic
Documente Profesional
Documente Cultură
1. Scrieţi funcţia CreareLista care citeşte din fişierul numere.txt un şir de n numere naturale şi creează o listă care
memorează în noduri cele n numere.
2. Scrieţi funcţia Afisare care afişează informaţiile din nodurile listei.
3. Scrieţi funcţia Elimina, care primind ca parametru un pointer la primul nod al listei şi un întreg x, caută primul nod
care memorează valoarea x, îl elimină şi returnează valoarea 1. Dacă x nu apare în listă, funcţia va returna 0.
4. Scrieţi funcţia Adauga care primind ca parametru un pointer la primul nod din listă, inserează la începutul listei un
nod ce memorează valoarea 99, iar la sfârşitul listei un nod ce memorează valoarea 999.
5. Scrieţi funcţia EliminaPare care elimină toate nodurile din listă ce memorează numere pare cuprinse între 12 şi 18,
folosind apeluri ale funcţiei Elimina.
6. Scrieţi funcţia Numara care primind ca parametru un pointer la o listă, returnează numărul de noduri memorate
înaintea celui de informaţie minimă. De exemplu, dacă lista este 10, 21, 3, 4, 6, 3, 5, se va returna valoarea 2, deoarece
sunt două noduri înaintea nodului cu valoarea minimă 3. Mai există un nod ce memorează 3, dar primul este cel care
contează.
Funcţia main a programului vostru va fi următoarea:
int main()
{
CreareLista(L) ;
Adauga(L) ;
cout<< “\n Lista initiala : ” ;
Afisare() ;
EliminaPare() ;
cout<< “\n Lista dupa eliminarea numerelor pare intre 12 si 18 : ” ;
Afisare() ;
cout<< “\n Numar de noduri inaintea celei cu informatie minima : ”<< Numara(L) ;
return 0 ;
}
Exemplu:
numere.txt Se va fişa la ecran:
10 Lista initiala : 99 12 7 18 12 4 55 16 16 23 11 999
12 7 18 12 4 55 16 16 23 11 Lista dupa eliminarea numerelor pare intre 12 si 18:
99 7 4 55 23 11 999
Numar de noduri inaintea celei cu informatie minima : 2