Professional Documents
Culture Documents
A universal machine Which can be made to do the work of any special purpose machine.
Alan M. Turing. EXERCICE I : 1) a) AjoutBut doit tre une fonction car aprs toutes les mises jour, on renvoie le fichier. b) Pseudo-code : /* objectifs : Mettre jour le fichier */ Variable entier i,j,k Debut appeler FichierVersBordereau(bordereau,fichiBut) ecrire(Veuillez entrez le nom du buteur : ) lire(X) i RechercheButeur (bordereau, X) Si (i= -1 ) alors Pour (j taille(1) 49999 ) faire Si bordereau- tab[i].nom = X alors Flag Vrai Vrai Finsi Finpour Si flag alors bordereau.tab[k].compteur + 1
bordereau.taille + 1
bordereau.tab[i-1].compteur +1
FENELON SG AEENSPY
PAGE 1
bordereau.tab[i].compteur
SI bordereau.tab[i].compteur= 0 alors Bordereau.taille Finsi Appeler Sinon Ecrire(Ce joueur nest pas fich ! ) Finsi Renvoyer bordereauVersFichier( bordereau , fichbuteur) Finfonction
SUPERVISION GENERALE: NDONGO CEDRIC
bordereau.taille -1
classement(bordereau)
FENELON SG AEENSPY
PAGE 2
a) Meilleurbut devrait tre une procdure car il peut y avoir plusieurs meilleurs buteurs , donc plusieurs rsultats fournir. b) Pseudo-code procedure Meilleurbut (fichier f par @) /* objectifs : affiche le ou les meilleurs buteurs*/ Debut i 0 appeler fichieVersBordereau ( bordereau, fichbut) tantque bordereau.tab[i].compteur= bordereau.tab[i+1].compteur et i<bordereau.taille=1 faire i i+1 fintantque si i= bordereau.taille-1 alors ecrire( Il nya pas de meilleur buteur, les joueurs ont tous bordereau.tab[i].compteur buts) sinon pour j 0(1) i-1 faire ecrire(le joueur bordereau.tab[j].nom a bordereau.tab[j].compteur buts) finpour finsi fin 4) Algorithme menu /*objectif : large plage et action sur le fichier */ Variable entier choix Debut Choix 0 Ecrire(Quelle action voulez-vous effectuer ) Tantque choix <> 3 faire Ecrire( 1 : ajouter un but un joueur 2 : tester si le footballeur est fich et retirer un but 3 : affiche le meilleur buteur et quitte ) Lire(choix) Cas : choix 1 : fichbuteur 2 : fichbuteur ajout ( chbuteur) retraitbut( chbuteur)
FENELON SG AEENSPY
PAGE 3
EXERCICE II ; Procedure nombre() /* objectifs : affiche le nbre minimal de billets */ Variable entier i, tmp Debut Nb 0 Pour i n-1 (-1) 0 faire Tmp s div tab[i] s mod tab[i] nb nb + tmp finpour ecrire(nb) fin 2) a) on aura laffichage : 4. b) lobjectif nest pas atteint car le nombre de billets affich nest pas minimal. On aurait pu avoir 2 billets de 4, et 1 billets de 1. Ce qui nous donne 3 billets < 4.
1)
3) a) Affichage : 9 3
4 b) modification :
FENELON SG AEENSPY
PAGE 4