ALGORITHME SECONDE Exercice 5.1 Ecrire un algorithme qui
Exercice 5.1. Ecrire un algorithme qui demande à l'utilisateur un nombre compris entre 1 et 3 jusqu'à ce que la réponse convienne. corrigé - retour au cours.
Exercices avec Solutions
Exercices Corrigés d'Algorithmique – 1ére Année MI 5. EXERCICE 1. Ecrire un algorithme qui demande un nombre à l'utilisateur puis calcule et affiche le
SUJET + CORRIGE
SUJET + CORRIGE. Avertissement DS Terminal Année 2012/2013 ... Dans cet exercice
Langage C : énoncé et corrigé des exercices IUP GéniE
soit éga l au no mb re de j ours du ièm e m ois de l'année pour i a ll ant de 1 à 12 (iNb-jours [0] sera inutil isé ) . Ecrire une procédure d 'initia l
livre-algorithmes.pdf
Mini-exercices. 1. Pour un entier n fixé combien y-a-t-il d'occurrences du chiffre 1 dans l'écriture des nombres de 1 à n ?
Exercices corrigés
année. 2010 – 2011. Informatique Scientifique version 2.2. Python 3. Exercices corrigés Écrire l'algorithme du calcul de : m3 = m1?m2.
1 N.B. On suppose que tous les tableaux utilisés ont une dimension
printf (''année non bissextile'') ;. } Exercice 11 : Page 6. D. El Ghanami. 6. Écrire un algorithme qui détermine le numéro d'un jour dans l'année en fonction
Exercices Corrigés Matrices Exercice 1 – Considérons les matrices
Puis calculer A-1. Exercice 8 – Appliquer avec précision aux matrices M et N suivantes l'algorithme du cours qui détermine si une matrice est inversible et
Corrigé Série dexercices n°4 : Les fonctions et procédures
Exercice 13 : Ecrire un algorithme (en utilisant fonction et/ou procédure) qui permet de calculer le cosinus de x € [0. ?/
Exercices de mathématiques - Exo7
2 pgcd ppcm
[PDF] Exercices avec Solutions
Exercices Corrigés d'Algorithmique – 1ére Année MI 5 EXERCICE 1 Ecrire un algorithme qui demande un nombre à l'utilisateur puis calcule et affiche le
[PDF] exercices corrigés algorithmepdf - fustel-yaoundenet
EXERCICES – ALGORITHME SECONDE Exercice 5 1 Ecrire un algorithme qui demande à l'utilisateur un nombre compris entre 1 et 3 Corrigés des Exercices
[PDF] TD-Algorithmique (Exercices corrigés)pdf
Exercice 10 : Écrire un algorithme qui détermine si une année est bissextile ou non On rappelle que les années bissextiles sont multiples de 4
Les exercices en algorithme - Coode Maroc
28 mai 2021 · Exercice 49 Écrire un algorithme permettant de décaler les valeurs nulles vers la fin du tableau en gardant l'ordre des éléments Exemple 1
[PDF] Initiation à lAlgorithmique Cours et exercices corrigés
Centre Universitaire Belahdj Bouchaib - Ain Témouchent Initiation à l'Algorithmique Cours et exercices corrigés 1ère année tronc commun MI ST et SM
[PDF] livre-algorithmespdf - Exo7 - Cours de mathématiques
PREMIÈRE ANNÉE Exo7 Arithmétique – Algorithmes récursifs mais ce n'est pas le cas ici (c'est un bon exercice de le prouver)
[PDF] Algorithmique et programmation : les bases (Algo) Corrigé - F2School
L'algorithme se termine avec l'affichage du périmètre pour que l'utilisateur puisse le voir sur l'écran Exercice 1 : Lien entre raffinage et algorithme Donner
[PDF] SUJET + CORRIGE
SUJET + CORRIGE Avertissement DS Terminal Année 2012/2013 Dans cet exercice nous allons adapter des algorithmes de tri vus
ALGORITHMIQUE 83 ExerciceS corrigés By ExoSup - Academiaedu
ALGORITHMIQUE 83 ExerciceS corrigés By ExoSup Download Free PDF un algorithme qui a près avoir demandé un numéro de jour de mois et d'année à
(PDF) EXERCICES CORRIGEE ALGORITHME misis siham
Download Free PDF ALGORITHMIQUE 83 ExerciceS corrigés By ExoSup Ecrivez un algorithme qui a près avoir demandé un numéro de jour de mois et d'année
Comment corriger un algorithme ?
Pour s'assurer qu'un algorithme est correct, il faut démontrer deux choses: il faut démontrer que l'algorithme se termine (terminaison), autrement dit qu'il ne boucle pas ou ne diverge pas, produisant au moins un résultat et que le résultat de l'algorithme est effectivement de la forme énoncée par la spécification (Comment apprendre l'algorithme facilement ?
Préoccupez-vous d'abord du fond puis de la forme du problème. Concentrez-vous uniquement sur le problème donné et ne pas vous préoccupez de ce que vous ne maîtrisez pas encore très bien. Rédigez directement votre algorithme dans votre langage de programmation comme vous le penser et au feeling.Comment trouver le bon algorithme ?
Résumé des étapes de la méthode
1Lisez bien le sujet, et reformulez-le.2Faites la liste des dimensions du sujet.3Cherchez une bonne représentation visuelle du problème.4Générez des exemples, et résolvez-les entièrement à la main.5Décrivez la solution naïve, puis essayez de l'améliorer.- Pour prouver qu'un algorithme termine, il suffit de montrer qu'il ne boucle pas à l'infini.
Master BioInformatiqueAnn
ee :2013/2014Semestre de decembre 2013PARCOURS :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).QuestionPointsScoreMise 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/2013Solution: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 brespouri=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 partipouri=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 algorithmequelconque 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 jResultat: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]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]Temps (meilleur des cas)
(n2) (nr)Temps (pire des cas)O(n2)O(nr)Espace (meilleur des cas) (1) (1)Espace (pire des cas)O(1)O(1)Non demande :Il est facile d'ameliorer (un peu) la solution en selectionnant les valeurs minimales
(comme ici) lorsquer < n=2, et en selectionnant les valeurs maximales lorsquern=2. Les complexites s'expriment alors en remplacantrparmin(r;nr).(b)Solution adapt eedu tri abulle vu en cours. deftriBulle (T): foriinrange ( len (T)1,0,1): forjinrange ( i ): ifT[ j]>T[ j +1]: echange(T, j , j+1)Algorithme 9:TriBulle(T)Donnees:Un tableau T de nom bresResultat:Le tableau T tri een ordre
croissant pouri=len(T)-1a1 decroissantfairepourj=0ai-1fairesiT[j]>T [j+1]alorsEchange(T,j,j+1);Il semble evident qu'une fois la valeur desireebien placeedans le tableau, il est inutile de continuer
le tri. i. (2 p oints) Ecrire un algorithmerangBulle(T,r)fortement inspire de l'algorithme ou du programme pythontriBulle(T)qui resout le probleme de la selection. Ne pas oublier de s'assurer que le rang desire correspond a un indice du tableau.Page 4 sur 10
UE J1MI2013 : Algorithmes et Programmes DS Terminal, Annee 2012/2013Solution:Deux solutions parmi d'autres.
defrangBulle (T, r ): ifr<0orr>=len (T): returnNone foriinrange ( len (T)1,r1,1): forjinrange ( i ): ifT[ j]>T[ j +1]: echange(T, j , j+1) returnT[ r ]Algorithme 10:RangBulle(T,r)Donnees:Un tableau T de nom breset un indice rResultat:L' elementde rang r du tableau T
sir<0 OU rlongueur(T)alorsretournernil;pouri=len(T)-1ar, decroissantfairepourj=0ai-1fairesiT[j]>T [j+1]alorsEchange(T,j,j+1);
retournerT[r];ii.(1 p oint)Compl eterle tableau des complexit esen fonction d en=longueur(T)et du rangr.
Solution:TriBulle(T)RangBulle(T,r)
Temps (meilleur des cas)
(n2) (n(nr))Temps (pire des cas)O(n2)O(n(nr))Espace (meilleur des cas) (1) (1)Espace (pire des cas)O(1)O(1)Non demande :Il est facile d'ameliorer (un peu) la solution en faisant monter les grosses bulles
(comme ici) lorsquern=2, et en faisant descendre les petites bulles lorsquer < n=2. Les complexites s'expriment alors en remplacantnrparmin(r;nr).(c)Solution adapt eedu tri rapide vu e ncours. Soit la variante suivante de l'algorithme de partition basee sur l'algorithme du drapeau Hollandais vu en cours. Cet algorithmepartitionnele tableau en trois zones : la premiere contient des valeurs strictement inferieures a la valeur du pivot; la seconde contient des valeurs egales a la valeur du pivot; et la troisieme des valeurs strictement superieures a la valeur du pivot.Page 5 sur 10
UE J1MI2013 : Algorithmes et Programmes DS Terminal, Annee 2012/2013 deftroisPartitionner (T,g ,d): pivot = T[ g ] i = g j = i k = d whilej<= k: ifT[ j ] == pivot : j += 1 elifT[ j ][PDF] exercice svt la phalène du bouleau
[PDF] exercice sélection naturelle 3ème
[PDF] tentoxine
[PDF] exercice php en ligne
[PDF] exercices corrigés php debutant pdf
[PDF] exercice corrigé php pdf
[PDF] livre php5 pdf
[PDF] les types de phrases exercices ? imprimer
[PDF] exercices les types de phrases 6ème ? imprimer
[PDF] isomérie z e exercices corrigés pdf
[PDF] exercice représentation de lewis 1ere s
[PDF] puissance et énergie électrique exercices corrigés
[PDF] exercice transfert thermique sti2d
[PDF] adaptation hormonale ? l'exercice