stage algo - 2-me partie - enonces des exercices[1]

Upload: gerioka

Post on 07-Jul-2018

212 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/18/2019 Stage ALGO - 2-Me Partie - Enonces Des Exercices[1]

    1/9

    Stage ALGORITHMIQUE - Documents élèves - page 1

    ?

    ?

    ? ?

    Algorithme 2de

     - Fiche 1 : À la découverte de " Scratch "  

    Ouvrir le logiciel Scratch sur le Bureau.

    1°) a)  Construire le script et cliquer .

    b) Faire calculer 2 + 5×3 ; (2 + 5)×3 ; ( 2 + 5×3 )² ; 58  ; 5

    3  .

    2°) a)  Construire le script ci-dessous et déterminer ce qu'il permet de calculer.

    b)  Calculer et restituer le reste de la division de 128 par 36 , puis le quotient entier.

    c)  Calculer et restituer le reste de la division de 135 par 24 , puis le quotient entier.Idem avec 12 524 et 584 .

    3°) a)  Calculer et restituer le reste de la division de 128 par 36 .Puis calculer et restituer le reste de la division de 36 par le reste trouvéprécédemment.

    b)  Avec un bon vieux stylo et une feuille, écrire en ligne ces deux premières divisionseuclidiennes.

    c)  En continuant à diviser chaque quotient par son reste, que se passera-t-il ?

    d)  Continuer les calculs et restitutions de restes jusqu'à obtenir 0 .

    e)  Restituer alors le PGCD de 128 et 36 .

    4°) a)  Calculer et restituer le PGCD de 406 et 119 .

    b)  Calculer et restituer le PGCD de 57 et 33 .

    c)  Calculer et restituer le PGCD de 219 et 183 .

    d)  Que faire pour que le script restitue chacun des deux PGCD demandés au b)  etau c)  ?

    5°) On a décidé d'améliorer le script précédent enutilisant le moins de variables possibles.

    a)  Que faut-il placer dans les deuxespaces vides pour que le 2ème resterestitué soit 16 ?

    b)  Compléter le script pour faire apparaîtresuccessivement les quatre restes 20 ,16 , 4 et 0 .

    Remplir le tableau de valeurs donné enannexe.

    c)  Compléter le script ci-contre en utilisant lacommande " répéter " pour faire apparaîtresuccessivement les quatre restes 20 , 16 ,4 et 0 , puis le PGCD de 128 et 36 .

    Remplir le tableau de valeurs donné enannexe.

    d)  Alléger ce script pour ne restituer que le PGCD de 128 et 36 .

    e)  Ce nouveau script convient-il pour calculer et restituer le PGCD de 57 de 33 , etcelui de 219 de 183 ?Pour calculer n'importe quel PGCD ?

    6°) a)  Dans le script précédent,

    remplacer la commande par la commande

    Remplir le tableau de valeurs donné en annexe.

    b)  Ce nouveau script convient-il pour calculer et restituer le PGCD de 57 de 33 , etcelui de 219 de 183 ?Pour calculer n'importe quel PGCD ?

    ?

    ?

    ?

  • 8/18/2019 Stage ALGO - 2-Me Partie - Enonces Des Exercices[1]

    2/9

    Stage ALGORITHMIQUE - Documents élèves - page 2

    Annexe à la Fiche 1 : Tableaux de valeur s àrempli r  

    Tableau de valeurs des variables pour la question 5°) b)

    Valeur

    de a

    Valeur

    de b 

    Valeur

    de r  

    128

    128 36

    Valeur

    de a

    Valeur

    de b 

    Valeur

    de r  

     Répétition n°1 Répétition n°2 Répétition n°3

    Valeur

    de a

    Valeur

    de b 

    Valeur

    de r  

    Valeur

    de a

    Valeur

    de b 

    Valeur

    de r  

    Tableau de valeurs des variables pour la question 5°) c)

    a b  r  

    r  = . . .  0 donc

     

    r  = . . . . . . . . . . . . .

    a b  r  

    r  = . . . . . . . . . . . . .

     

    a b  r  

    r  = . . . . . . . . . . . . .

     

    a b  r  

    Tableau de valeurs des variables pour la question 6°) a)

  • 8/18/2019 Stage ALGO - 2-Me Partie - Enonces Des Exercices[1]

    3/9

    Stage ALGORITHMIQUE - Documents élèves - page 3

    Algorithme 2de

     - Fiche 2 : Exercices avec " Scratch "  

    Exercice 1  

    Règle du jeu :

    On lance deux dés.On veut faire une somme de 12 .

    1°) a)  Écrire un scri

    pt permettant de simuler ce lancer en faisant afficher la somme.Utiliser . .

    b)  Peut-on prévoir le nombre de lancers qu'il faut pour obtenir une somme de 12 ?

    2°) On décide de lancer jusqu'à obtenir la somme 12 .

    Définir une variable

    destinée à compter le nombre delancers nécessaires.

    Compléter le script ci-contre :

    3°) Adapter le script précédent pour compter le nombre de lancers de 3 dés nécessairespour obtenir une somme de 18 .

    4°) Adapter le script précédent pour compter le nombre de lancers de 4 dés nécessairespour obtenir une somme de 24 .

    Exercice 2  

    Règle du jeu :

    On lance deux dés.Si la somme des faces est paire, on gagne.Sinon, on perd.

    1°) Écrire un script permettant de simuler ce jeu en faisant afficher ou .

    Utiliser et .

    2°) crire un script permettant de simuler 20 lancers successifs.

    Définir une variable contenant le nombre total de lancers gagnants.

    Restituer ce nombre pendant 2 secondes, puis la fréquence des lancers gagnants.

    3°) Augmenter la simulation à 500 lancers successifs.On continuera à restituer le nombre total de lancers gagnants pendant 2 secondes,puis la fréquence des lancers gagnants.Mais on ne fera plus afficher les « Gagné » et les « Perdu ».

    Exercice 3  

    Placement à intérêts composés 

    Un client d'une banque place une somme de 2 000 € à un taux d'intérêt de 3,5 % par an. 

    1°) Compléter le script ci-contre pour connaître lasomme capitalisée au bout de 12 ans.

    2°) Transformer le script pour connaître au bout de combien d'années la somme capitaliséedépassera 3 500 €. 

    Exercice 4  

    Jeu des multiples 1°) Écrire un script permettant de restituer pendant 1 seconde chaque entier de 1 à 30 .

    2°) Transformer le script pour que chaque multiple de 3 soit remplacé par un son (à choisir).

    3°) Transformer le script pour que chaque multiple de 5 soit remplacé par un 2ème son, touten conservant le son pour les multiples de 3 .

     Attention à l'entier 15 ...

    ?

    ?

  • 8/18/2019 Stage ALGO - 2-Me Partie - Enonces Des Exercices[1]

    4/9

    Stage ALGORITHMIQUE - Documents élèves - page 4

    Algorithme 2de

     - Fiche 3 : À la découverte de " Python "  

    Ouvrir le logiciel Python sur le Bureau.

    1°) a)  Faire calculer par Python 2 + 5×3 ; (2 + 5)×3 .

    b)  Taper les commandes suivantes, observer etcomprendre ce qui se passe :

    >>> 127//10 

    >>> 127%10 

    Que sont ces deux valeurs pour 127 et 10 ?

    >>> 127/10 

    >>> 5/3 

    >>> int(5/3) 

    c)  Taper, observer et comprendre :

    >>> 5**2 

    >>> 2**5 

    >>> sqrt(121) 

    >>> from math import* 

    >>> sqrt(121) 

    >>> pi 

    >>> cos(pi/3) 

    d)  Taper, observer et comprendre :

    >>> a=5 

    >>> a+2 

    >>> b=a+2 

    >>> b+3 

    >>> a=a*2 

    >>> a 

    >>> m,n=2,1.5 

    >>> m+n 

    2°) a)  Taper, observer et comprendre :

    >>> print("Bonjour !") 

    >>> print(a) 

    >>> print("La valeur de a est ",a) 

    >>> nom=input("Comment t'appelles-tu ? ") 

    puis répondre avec un nom ou un prénom 

    >>> nom  

    >>> print("Tu t'appelles ",nom," !") 

    b)  Dans le menu File\Open...

    (ou [Ctrl+O] ) ,

    double-cliquer sur le fichier " BONJOUR " .Une nouvelle fenêtre s'ouvre, contenant un texte (appeléscript ).

    Taper sur la touche F5  du clavier, et répondre polimentà la question posée.

    3°) L'objectif est de préparer un petit questionnaire du mêmegenre à l'attention d'un autre élève de la classe, que nousappellerons « l'utilisateur  » .

    a)  Ouvrir une nouvelle fenêtre

    File\New Window(ou [Ctrl+N] ) .

    Tu remarques l'absence des >>> .Le texte que tu y écriras est inactif :

    essaie de taper 2+3 .

    Efface et tape une série de deux ou trois questions que

    Python posera à l'utilisateur et construis des répliquesfonction des réponses.Inspire-toi du script vu dans le fichier " BONJOUR " .

    Sauvegarde ( File\Save ou [Ctrl+S] ) sous le nomessai01.py , puis tape sur la touche F5  pour le

    tester.Présente-le à un utilisateur de ton choix.

    b)  Construis un script :- demandant à un utilisateur un nombre entierde son choix,- répondant avec le double et le carré de sonnombre.

    c)  Construis un script :

    - demandant à un utilisateur deux nombresentiers de son choix,- répondant avec la somme et le produit deses nombres.

    4°) Phrase 1 :

    « Jusqu'à ce que tu aies 18 ans, tu seras mineur. »

    Phrase 2  :

    « Tant que tu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ,tu seras mineur. »

    Compléter la  phrase 2   pour qu'elle signifie la mêmechose que la  phrase 1 .

    5°) On a retrouvé le script permettant de calculer lePGCD de 128 et 36 obtenu avec Scratch (voirdocument en annexe). 

    Le traduire en langage courant, puis, en langagePython.

    Le texte en langage courant est appelé algorithme.

    Remplir le tableau de valeurs donné en annexe.

    6°) Construire un algorithme et un script pour Python :- demandant à un utilisateur deux nombresentiers de son choix,- répondant avec le PGCD de ses nombres.

  • 8/18/2019 Stage ALGO - 2-Me Partie - Enonces Des Exercices[1]

    5/9

    Stage ALGORITHMIQUE - Documents élèves - page 5

    Langage "Scratch" Langage courant Langage "Python"

    Tant que condition, faire  

    action

    action

    Fin du Tant que  

    Tant que condition, faire  action

    action

    while condition : 

    action 

    action 

     Attention ! « Répéter jusqu'à   r = 0 » revient à « Tant que r 0 » : les conditions sont contraires... 

    r 0 r==0 

    r 0 r!=0 

    Annexe à la Fiche 3 : Pour l a question 5°)

     Langage courant Langage Python 

  • 8/18/2019 Stage ALGO - 2-Me Partie - Enonces Des Exercices[1]

    6/9

    Stage ALGORITHMIQUE - Documents élèves - page 6

    Algorithme 2de

     - Fiche 4 :

    Exercices avec " Python "  

    Exercice 1  

    Écrire un algorithme qui :

    - demande à l’utilisateur une vitesse en km/h , - et lui convertit cette vitesse en m/s .

    Exercice 2  

    Un distributeur d'argent dispose de billets de 100 et de 50, de pièces de 10 et de 1.Écrire l'algorithme qui le nombre maximum de chacun des objets correspondant à unesomme d'argent demandée par l'utilisateur.

    Exercice 3  

    a)  Écrire un algorithme qui :- demande à l’utilisateur une fonction  f   affine non constante ,- et lui donne la solution de l'équation  f ( x) = 0 .

    b)  Écrire un algorithme qui :- demande à l’utilisateur une fonction  f   affine non constante et un nombre k  ,- et lui donne la solution de l'équation  f ( x) = k  .

    c)  Écrire un algorithme qui :- demande à l’utilisateur les valeurs de a , b , c  et d  , avec a  b ,- et lui donne la solution de l'équation ax + b = cx + d  .

    Exercice 4  

    a)  Écrire un algorithme qui :- demande à l’utilisateur le numérateur et le dénominateur d'une fraction , - et lui donne la forme irréductible de cette fraction.

    b)  Écrire un algorithme qui :- demande à l’utilisateur les valeurs de a , b , c  et d  ,

    - et lui donne la forme irréductible dea

    b +

    c

    d  . 

  • 8/18/2019 Stage ALGO - 2-Me Partie - Enonces Des Exercices[1]

    7/9

    Stage ALGORITHMIQUE - Documents élèves - page 7

    Algorithme 2de

     - Fiche 5 : Exercices sur l ' instru ction SI ... SINON ...

    Exercice 1  

    a) Écrire un algorithme qui :- demande à l’utilisateur un nombre non nul, - et l’informe si ce nombre est positif ou négatif. 

    b) Écrire un algorithme qui :

    - demande à l’utilisateur un nombre, - et l’informe si ce nombre est nul, positif ounégatif.

    Exercice 2  

    En athlétisme, les coureurs sont répartis suivant lesclasses d'âge suivantes :

    Eveil : avant 10 ansPoussin: de 10 à 11 ansBenjamin: de 12 à 13 ansMinime: de 14 à 15 ansCadet: de 16 à 17 ans

    Junior: de 18 à 19 ansEspoir: de 20 à 22 ansSenior: de 23 à 39 ansVétéran : 40 et plus

    a)  Écrire un algorithme qui :- demande à l’utilisateur son âge, - et l’informe de sa catégorie. 

    b)  Écrire un algorithme qui :- demande à l’utilisateur son âge, - et l’informe s'il est ou non Benjamin. 

    Exercice 3  

    a)  Écrire un algorithme qui :- demande à l’utilisateur deux nombres différents,- et lui donne le plus grand des deux.

    b)  Même exercice avec trois nombres distincts.

    c)  Même exercice avec quatre nombres distincts.

    Exercice 4  

    On décide d'un code à quatre chiffres.

    Écrire un algorithme qui :- demande à l’utilisateur un nombre à quatre chiffres,- et lui donne combien de chiffres sont corrects.

    Exercice 5  

    Écrire un algorithme qui :- demande à l’utilisateur l'heure qu'il est,  - et l’informe de l'heure qu'il sera 5 minutes plustard.

    Exercice 6  

    Écrire un algorithme qui :- demande à l’utilisateur les valeurs de a , b , c et d ,

    - et lui donne la solution de l'équationax + b = cx + d  , ou l'informe qu'il n'y a pas desolution, ou l'informe que tous les nombres sontsolutions.

    Exercice 7  

    a)  Écrire un algorithme qui :- demande à l’utilisateur deux nombres,- et l'informe s'il y a au moins un positif.

    b)  Écrire un algorithme qui :- demande à l’utilisateur deux nombres,- et l'informe s'il y a deux, un ou pas de positif.

    Exercice 8  

    Quatre candidats, A , B, C et D participent à desélections obéissant à la règle suivante :

    •  lorsque l'un des candidats obtient plus de 50%des suffrages, il est élu dès lepremier tour.

    •  en cas de deuxième tour, peuvent participeruniquement les candidats ayant obtenu au moins12,5% des voix au premier tour.

    crire un algorithme qui :- demande à l’utilisateur le nombre de voix obtenues 

    par chaque candidat,- et l’informe qui est élu au 1er  tour, ou quels

    candidats participent au second tour.

    Exercice 9  Une compagnie d'assurance automobile propose à sesclients quatre familles de tarifs identifiables par unecouleur, du moins au plus onéreux : tarifs bleu, vert,orange et rouge.Le tarif dépend de la situation du conducteur :

    • un conducteur de moins de 25 ans et titulairedu permis depuis moins de deux ans, se voitattribuer le tarif rouge, si toutefois il n'a jamaisété responsable d'accident. Sinon, lacompagnie refuse de l'assurer.

    •  un conducteur de moins de 25 ans et titulairedu permis depuis plus de deux ans, ou de plusde 25 ans mais titulaire du permis depuis moinsde deux ans a le droit au tarif orange s'il n'a

     jamais provoqué d'accident, au tarif rouge pourun accident, sinon il est refusé.

    •  un conducteur de plus de 25 ans titulaire dupermis depuis plus de deux ans bénéficie dutarif vert s'il n'est à l'origine d'aucun accident etdu tarif orange pour un accident, du tarif rougepour deux accidents, et refusé au-delà.

    Écrire un algorithme qui :- demande à l’utilisateur tous les renseignements

    nécessaires,- et l’informe du tarif de son assurance. 

    Exercice 10  

    Un utilisateur pense à un nombre entier dans [ 1 ; 100 ] .

    Écrire un algorithme qui permet à l'ordinateur de trouverce nombre si, à chaque proposition qu'il fait, l'utilisateurtape P  pour un nombre trop grand, M pour un nombretrop petit et G pour la bonne réponse.

    http://fr.wikipedia.org/wiki/Poussinhttp://fr.wikipedia.org/wiki/Benjaminhttp://fr.wikipedia.org/wiki/Minimeshttp://fr.wikipedia.org/wiki/Cadethttp://fr.wikipedia.org/wiki/Juniorhttp://fr.wikipedia.org/wiki/Espoirhttp://fr.wikipedia.org/wiki/Seniorhttp://fr.wikipedia.org/w/index.php?title=V%C3%A9t%C3%A9ran_1&action=edit&redlink=1http://fr.wikipedia.org/w/index.php?title=V%C3%A9t%C3%A9ran_1&action=edit&redlink=1http://fr.wikipedia.org/wiki/Seniorhttp://fr.wikipedia.org/wiki/Espoirhttp://fr.wikipedia.org/wiki/Juniorhttp://fr.wikipedia.org/wiki/Cadethttp://fr.wikipedia.org/wiki/Minimeshttp://fr.wikipedia.org/wiki/Benjaminhttp://fr.wikipedia.org/wiki/Poussin

  • 8/18/2019 Stage ALGO - 2-Me Partie - Enonces Des Exercices[1]

    8/9

    Stage ALGORITHMIQUE - Documents élèves - page 8

    Algorithme 2de

     - Fiche 6 :

    Exercices sur l ' instruction FOR ...

    Exercice 1  

    Écrire un algorithme qui écrit tous les multiples de 5 jusqu'à 60 . 

    Exercice 2  

    On demande à l’utilisateur un entier naturel non nul. 

    a)  Écrire un algorithme qui donne la liste des entiers de 1 à ce nombre.

    b)  Écrire un algorithme qui donne la liste des carrés de 1 au carré dece nombre.

    Exercice 3  

    On connaît les premières conversions ci-dessous :

    1 € = 11,30 dhs 2 € = 22,60 dhs 3 € = 33,90 dhs 

    Écrire un algorithme qui donne la liste des conversions de 1 € à 1 000 € . 

    Exercice 4  

    Écrire un algorithme qui donne la liste des entiers de 1 à 100 telle que chaque multiplede 5 soit suivi de la lettre C et que chaque multiple de 8 soit suivi de la lettre H .

    Exercice 5  

     Il était une fois un empereur hindou, Chiram, qui voulut récompenser l'unde ses sujets, Seta, pour son invention merveilleuse : le jeu des échecs.« Comment veux-tu être récompensé ? demanda Chiram.- Donne-moi 2 grains de blé pour la première case de mon échiquier,

    répondit Seta. Puis 4 grains pour la deuxième case, 8 grains pour latroisième, et encore le double pour la quatrième et ainsi de suite jusqu’à lasoixante-quatrième case.- Accordé ! répondit Chiram, qui trouvait ridicules ces quelques grains ... 

    Écrire un algorithme qui affiche :- le nombre de grains de riz sur chacune des 64 cases de l'échiquier,- le nombre total de grains,- la masse de grains en tonnes (prendre 1 g pour un grain de riz).

    (Production mondiale actuelle 600 millions de tonnes...)

     

  • 8/18/2019 Stage ALGO - 2-Me Partie - Enonces Des Exercices[1]

    9/9

    Stage ALGORITHMIQUE - Documents élèves - page 9

    Algorithme 2de

     - Fiche 7 : Exercices sur les tableaux  

    2 3 4 5 6 7 8 9 10

    11 12 13 14 15 16 17 18 19 20

    21 22 23 24 25 26 27 28 29 30

    31 32 33 34 35 36 37 38 39 40

    41 42 43 44 45 46 47 48 49 50

    51 52 53 54 55 56 57 58 59 60

    61 62 63 64 65 66 67 68 69 70

    71 72 73 74 75 76 77 78 79 80

    81 82 83 84 85 86 87 88 89 90

    91 92 93 94 95 96 97 98 99 100

    Exercice 1  

    1°) a)  Taper les commandes suivantes, observer etcomprendre ce qui se passe :

    >>> semaine=['lu','ma','me','je',

    've','sa','di'] 

    >>> semaine 

    >>> semaine[2] 

    >>> semaine[0] 

    >>> semaine[1]='mardi' 

    >>> semaine 

    b)  Taper, observer, comprendre :

    >>> t=[0,3,6,9,12,15,18,21,24,27] 

    >>> t 

    >>> t[3] 

    >>> t[3]+1 

    >>> t[3]==6 

    >>> t[3]==9 

    c)  Taper, observer, comprendre :

    >>> len(t) 

    >>> del(t[9]) 

    >>> t 

    >>> len(t) 

    >>> t.append(27) 

     Ajouter 30 à la liste. 

    d)  Taper, observer, comprendre :

    >>> for i in range (2,7) : print(t[i]) 

     Afficher les multiples de 3 allant de 18 à 30 .

    e)  Taper, observer, comprendre :

    >>> for i in range (0,11) : if i%4==0 : 

    print(t[i]) 

     Afficher les multiples de 6 appartenant à cette liste. 

    f)  Taper, observer, comprendre :

    >>> tpair=[t[0],t[2],t[4],t[6],

    t[8],t[10]] 

    >>> tpair 

    Créer une liste timpair  des multiples impairsde 3 .

    Créer une liste tsix  des multiples de 6 allantde 0 à 60 .

    Exercice 2  

    2°) a)  Taper, observer, comprendre :

    >>> cent=[] 

    >>> cent 

    >>> cent.append(0) 

    >>> cent 

    >>> for i in range (1,8) : cent.append(i) 

    >>> cent 

    b)  Créer la liste des entiers de 0 à 100 .

    c)  Créer une liste tsixbis  des multiples de 6allant de 0 à 60 .

    3°) a)  Écrire un script créant la liste des carrés desentiers de 1 à 15 .

    b)  Écrire un script créant les listes des 10 premiersmultiples des entiers de 2 à 7 :

    [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20]

    [0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30][0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40]

    [0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50]

    [0, 6, 12, 18, 24, 30, 36, 42, 48, 54, 60]

    [0, 7, 14, 21, 28, 35, 42, 49, 56, 63, 70]

    Exercice 3  

    Écrire un algorithme qui :- demande à l’utilisateur successivement dixnombres entiers,- et crée une liste tab  avec ces dix valeurs.

    Exercice 4  

    Écrire un algorithme qui :- demande à l’utilisateur une liste de dix nombresentiers,- et lui donne le plus grand de ces nombres.

    Exercice 5  

    Écrire un algorithme qui :- demande à l’utilisateur une liste de dix nombresentiers,- et lui donne la même liste mais classée dans l'ordreinverse.

    Exercice 6  

    a)  Écrire un algorithme qui :- demande à l’utilisateur dix nombres entiers,- et lui donne le nombre de 1 dans sa liste.

    b)  Même exercice mais avec une liste de longueur nonimposée.

    Exercice 7  

    Le crible d'Eratosthène consiste à barrer tous les multiplesde 2 auf 2. Puis à recommencer avec le premier entier quin'a pas été barré, 3 . Puis à recommencer avec 5 ( 4 a étébarré) et ainsi de suite (voir ci-dessous) : 

    Les nombres qui restent non barrés après épuisement sontles nombres premiers.

    Écrire un algorithme qui :- crée une liste des 99 premiers entiers de 2 à 100 ,- en extrait la liste des nombres premiers inférieurs à 100