Files
CONTROLE_DEV51_bridja/Ex2
2025-10-15 17:52:55 +02:00
..
2025-10-15 17:52:28 +02:00
2025-10-15 17:52:28 +02:00
2025-10-15 17:52:28 +02:00

gcc -g -pg racineCarree.c ./a.out gprof ./racineCarree

Profilling

J'ai peut etre un probleme sur ça.

Flat profile

% cumulative self self total
time seconds seconds calls Ts/call Ts/call name
0.00 0.00 0.00 6 0.00 0.00 racinecarre 0.00 0.00 0.00 2 0.00 0.00 racineCarreeTab

Call profile

index % time self children called name 0.00 0.00 1/6 main [6] 0.00 0.00 5/6 racineCarreeTab [2] [1] 0.0 0.00 0.00 6 racinecarre [1]

            0.00    0.00       1/2           main [6]
            0.00    0.00       1/2           atexit [3]

[2] 0.0 0.00 0.00 2 racineCarreeTab [2] 0.00 0.00 5/6 racinecarre [1]


Complexité cyclomatique

RacineCarree()

- Il y a 4 
- On sort dans le 1er quand n < 0 (doit etre entier positif ) 
- Boucle for il y a un if qui verifie la condition qui est vrai i * i = entier positif qui permet la racine 5 * 5 = 25 
- if qui est faux car pas egal à l'entier positif donné
- Sortie boucle for pour le resultat et return -1 si tout les cas sont faux

Complixité cyclonique de 4

racineCarreeTab()

- Fonction recurcise qui retourne lui meme donc 1

Complixité cyclonique de 1

Complexité algorithmique

racineCarree() => 0(1) car on choisit la cas en fonction de n entier positif , un choix parmi les if racineCarreeTab => O(n!) fonction recursive qui appele la racineCarre