Documente Academic
Documente Profesional
Documente Cultură
Fișa de lucru
1. Fie graful orientat G=(X,U) cu n vârfuri, reprezentat prin matricea de adiacență. Numărul de
vârfuri și matricea de adiacență se citesc din fișierul text matrice.in.
Se definesc următoarele mulţimi:
+ (x) = { yX | ( x, y ) U } mulţimea succesorilor lui x
- (x) = { yX | ( y, x ) U } mulţimea predecesorilor lui x
+ (x) = { u = ( x , y) | u U } mulţimea arcelor care ies din nodul x
- (x) = { u = ( y , x) | u U } mulţimea arcelor care intră din nodul x
a. Scrieţi o funcţie care calculează pentru un nod dat, mulţimea +
b. Scrieţi o funcţie care calculează pentru un nod dat, mulţimea -
c. Scrieţi o funcţie care calculează pentru un nod dat, mulţimea +
d. Scrieţi o funcţie care calculează pentru un nod dat, mulţimea -
Afișați pe câte o linie a ecranului, fiecare dintre cele 4 mulțimi, pentru fiecare vârf în parte.
2. În fişierul date.in se memorează, pe prima linie numărul de vârfuri şi pe următoarele linii câte
două numere reprezentând extremităţile arcelor.
a. Scrieţi o funcţie care calculează gradul interior al fiecărui nod al grafului.
b. Scrieţi o funcţie care calculează gradul exterior al fiecărui nod al grafului.
c. Scrieţi o funcţie care afişează acele noduri care au gradul interior egal cu gradul exterior.
d. Afișați nodurile izolate.
3. Se dă o hartă hidrografică care conţine n ape (izvoare, râuri şi mări). Un izvor se varsă într-un râu
şi nu are nici un afluent, o mare are unul sau mai mulţi afluenţi dar nu se varsă în alte ape, restul
sunt râuri. Se cere să se determine:
a. Izvoarele şi numarul lor
b. Care dintre cele n ape sunt mări
c. Care este râul cu cei mai mulţi afluenţi
Scrieţi programul corespunzător în C++.
4. Se citește dintr-un fișier text matrice.txt ordinul unui graf și matricea sa de adiacență.
a) Afișați matricea pe ecran
b) Stabiliți dacă graful este neorientat sau orientat (se va folosi proprietatea de simetrie a MA
a grafului neorientat)
c) Dacă graful este orientat, se citește din fișierul noduri.txt un număr natural k>2 și apoi cele
k elemente numere naturale ale unui vector v. Stabiliti dacă succesiunea de numere
memorate în vectorul v reprezintă pentru graful dat: