[PDF] SUJET + CORRIGE



Previous PDF Next PDF







Algorithmes : Exercices et corrigés Corrigés Des Exercices

Exercice 1 7 Début D C C B B A A D Fin En fait, quel que soit le nombre de variables, une seule variable temporaire suffit Exercice 1 8 Il ne peut produire qu’une erreur d’exécution, puisqu’on ne peut pas additionner des caractères Exercice 1 9 En revanche, on peut les concaténer A la fin de l’algorithme, C vaudra donc



Algorithme pdf exercice

Algorithme : L’algorithme d’exercice de cours, de résumé et corrigé est un ensemble ordonné d’instructions qui indique comment résoudre un certain nombre de problèmes équivalents Algorithme : Description du langage naturel du reste des activités effectuées par le programme structuré



Les types utilisateurs (Algo) Corrigé - ENSEEIHT

Exercice 1 : Occurrences des chiffres d’un entier Intéressons nous aux chiffres qui constituent un nombre 1 1 Écrire un programme qui compte le nombre d’occurrences des 10 chiffres dans un entier naturel donné Par exemple, l’entier 4214 a une occurrence du chiffre 1, une de 2 et deux de 4 Solution : 1 Algorithme nb_occurrences 2



Programmation C Corrige du TD#7: Structures

/* Exercice 1 1 Définition de nom de type Définir un type Date pour des variables formées d’un numéro de jour, d’un nom de mois et d’un numéro d’année Exercice 4 1 Fiche • Ecrire des fonctions de lecture et d’écriture d’une variable de type Date Dans un premier temps, on ne se préocupera pas de la validité de la date



SUJET + CORRIGE

Exercice 1 : Mise en bouche (7 points) (a)(1 point) Deux nombres sont oppos es si leur somme est egale a 0 Deux nombres sont inverses si leur produit est egal a 1 Ecrire un algorithme sontInvOuOpp(a,b) ou a et b sont deux nombres, qui retourne Vrai si a et b sont inverses ou oppos es, Faux sinon Solution: Deux solutions parmi d’autres



SUJET + CORRIGE

Exercice 2 (Une structure de asT plus complète (16 points)) L'objectif de l'exercice est d'optimiser légèrement deux de esc primitives et d'ajouter la suivante : ModifierCle(T, i, k) qui emplacre la clé de T[i] arp une valeur k et maintient une structure de tas



ALGORITHME - ALGORIGRAMME

1) Structure séquentielle : Structure dans laquelle plusieurs opérations sont effectuées successivement et sans condition Algorithme Algorigramme Opération 1 Opération 2 Opération 3 2) Structure alternative: Structure dans laquelle l’opération effectuée est fonction d’une condition Algorithme Algorigramme SI Condition vraie



Travaux dirigés 2 : pointeurs et tableaux

UniversitéParis-Nord L1 InstitutGalilée Année2008-2009 Licence1-2ièmesemestre Travaux dirigés 2 : pointeurs et tableaux Correction

[PDF] structure itérative exercice corrigé

[PDF] structure alternative

[PDF] algorithme cours pdf

[PDF] algorithme cours seconde

[PDF] la boucle tant que algorithme

[PDF] algorithme boucle tant que exercice corrigé pdf

[PDF] algorithme boucle pour exemple

[PDF] exercice algorithme boucle tant que pdf

[PDF] la boucle pour

[PDF] les fonctions en javascript

[PDF] cours javascript debutant pdf

[PDF] les evenements en javascript

[PDF] javascript pour les nuls pdf gratuit

[PDF] boucle for liste python

[PDF] openclassroom python

Master BioInformatiqueAnn

ee :2013/2014Semestre de decembre 2013

PARCOURS :Master 1

UE J1BS7202 :Algorithmique et Programmation

Epreuve :Examen

Date :Jeudi 19 decembre 2013

Heure :9 heures

Duree :2 heures

Documents : autorises

Epreuve de M. AlainGriffaultSUJET + CORRIGE

Avertissement

La plupart des questions son tind ependantes.

A chaque question, vous pouvez au choix

repondre par un algorithme ou bien par un programme python.

Les inden tationsdes f onctions ecritesen Python

doivent ^etre respectees. L'espace laiss ep ourles r eponsesest susan t(sauf si vous utilisez ces feuilles comme brouillon, ce qui est fortement deconseille).QuestionPointsScore

Mise en bouche7

Algorithmes de rang14

Liste doublement chainee9

Total:30

Exercice 1 : Mise en bouche (7 points)

(a) (1 p oint)Deux nom bresson topp osessi le ursom meest egale a0. Deux nombres sont inverses si leur produit est egal a1.Ecrire un algorithmesontInvOuOpp(a,b)ouaetbsont deux nombres, qui retourneVraisiaetbsont inverses ou opposes,Fauxsinon.

Solution:Deux solutions parmi d'autres.

defsontInvOuOpp(a ,b): returna+b==0orab==1Algorithme 1:SontInvOuOpp(a,b)Donnees:Deux nom bresa et b retourner(a+b=0) OU (a*b=1);(b)(2 p oints) Ecrire un algorithmeexisteInvOuOppConsecutifs(T)ouTest un tableau de nombres, qui retourneVraisiTcontient deux nombresconsecutifsopposes ou inverses,Fauxsinon.

Solution:Deux solutions parmi d'autres.

defexisteInvOuOppConsecutifs (T): foriinrange ( len (T)1): ifsontInvOuOpp(T[ i ] ,T[ i +1]): returnTrue returnFalseAlgorithme 2:ExisteInvOuOppConsecutifs(T)Donnees:Un tabl eauT de n ombres pouri=0alen(T)-2fairesisontInvOuOpp(T[i],T[i+1])alorsretournerTrue;retournerFalse;(c)(2 p oints) Ecrire un algorithmeexisteInvOuOpp(T)ouTest un tableau de nombres, qui retourne VraisiTcontient deux nombres,ayant des indices dierents, opposes ou inverses,Fauxsinon. UE J1MI2013 : Algorithmes et Programmes DS Terminal, Annee 2012/2013

Solution:Deux solutions parmi d'autres.

defexisteInvOuOpp(T): foriinrange ( len (T)1): forjinrange ( i +1,len (T)): ifsontInvOuOpp(T[ i ] ,T[ j ] ) : returnTrue returnFalseAlgorithme 3:ExisteInvOuOpp(T)Donnees:Un tableau T de nom bres

pouri=0alen(T)-2fairepourj=i+1alen(T)-1fairesisontInvOuOpp(T[i],T[j])alorsretournerTrue;retournerFalse;(d)(2 p oints)

Ecrire un algorithmenbInvOuOpp(T)ouTest un tableau de nombres, qui retourne le nombre de paires d'indices(i,j)telles que : d'une partiSolution:Deux solutions parmi d'autres. defnbInvOuOpp(T): nb = 0 foriinrange ( len (T)1): forjinrange ( i +1,len (T)): ifsontInvOuOpp(T[ i ] ,T[ j ] ) : nb = nb+1 returnnbAlgorithme 4:NbInvOuOpp(T)Donnees:Un tableau T de nom bres nb 0;

pouri=0alen(T)-2fairepourj=i+1alen(T)-1fairesisontInvOuOpp(T[i],T[j])alorsnb nb+1;retournernb;Exercice 2 : Algorithmes de rang (14 points)

Le probleme de la selection consiste a trouver dans un tableau de nombres l'element dit de rangi. Pour cet exercice, du fait que les indices d'un tableauTsont compris entre0etlongueur(T)-1, nous admettrons que l'element de rang0est le plus petit element du tableau, et que l'element de rang longueur(T)-1est le plus grand.

Exemple :SoitT= [8;6;53;8;2;9;3;10], alors :

Les elementsde rang <0sont indenis.

L' elementde rang 0est 2.

L' elementde rang 1est 3.

L' elementde rang 2est 6.

L' elementde rang 3est 8.

L' elementde rang 4est 8.

L' elementde rang 5est 9.

L' elementde rang 6est 10.

L' elementde rang 7est 53.

Les elementsde rang >7sont indenis.

Page 2 sur 10

UE J1MI2013 : Algorithmes et Programmes DS Terminal, Annee 2012/2013 Remarque 1 :Une solution simple au probleme de la selection consiste a utiliser un algorithme

quelconque de tri, puis de retourner l'element de rang souhaite.Algorithme 5:Rang(T,rang)Donnees:Un tabl eauT de n ombres,et rang un en tier

Resultat:Si rang est un indice, alors T[rang] apr esa voirtri eT sirang<0 OU ranglongueur(T)alorsretournernil;Trier(T);

retournerT[rang];Remarque 2 :Il est facile de se persuader qu'il n'est pas utile de triertoutle tableau pour avoir une

solution au probleme de la selection. Dans cet exercice, nous allons adapter des algorithmes de tri vus

en cours an d'obtenir des algorithmes de rang plusecacesque le precedent.

Dans toute la suite de l'exercice, vous pourrez utiliser la fonction classiqueEchange(T,i,j)qui echange

les valeurs du tableauTindicees parietj. defechange(T, i , j ):

TMP = T[ i ]

T[ i ] = T[ j ]

T[ j ] = TMPAlgorithme 6:Echange(T,i,j)Donnees:Un tableau T de nom bres,et deux indices i et j

Resultat:T[i] et T[j] echanges

aux T[i];

T[i] T[j];

T[j] aux;(a)Solution adapt eedu tri par s electionvu en cours. deftriSelection (T): foriinrange ( len (T)): iMin = i forjinrange ( i +1,len (T)): ifT[ j]Resultat:Le tableau T tri een ordre croissant pouri=0alongueur(T)-1faireiMin i; pourj=i+1alongueur(T)-1fairesiT[j]Il semble evident qu'une fois la valeur desireebien placeedans le tableau, il est inutile de continuer

le tri.

Page 3 sur 10

UE J1MI2013 : Algorithmes et Programmes DS Terminal, Annee 2012/2013 i. (2 p oints) Ecrire un algorithmerangSelection(T,r)fortement inspire de l'algorithme ou du programme pythontriSelection(T)qui resout le probleme de la selection. Ne pas oublier de s'assurer que le rang desire correspond a un indice du tableau.

Solution:Deux solutions parmi d'autres.

defrangSelection (T, r ): ifr<0orr>=len (T): returnNone foriinrange ( r+1): iMin = i forjinrange ( i +1,len (T)): ifT[ j]