11. EXERCICES TYPIQUES/2

11.1. Exercice - boucles et calculs

Réaliser le programme suivant.

Le programme demande un entier N > 1. Le programme redemande la valeur de N tant que celle-ci n’est pas strictement plus grande que 1.

Ensuite le programme calcule et affiche le terme de rang N de la suite définie de la façon suivante:

U_0 = 2 et U_1 = 4

si U_i est un multiple de 3 alors U_{i+1} = 2 + U_i - U_{i-1}

sinon U_{i+1} = 3 + U_i + U_{i-1}

Tester le programme pour les rangs suivants:

rang N =  2  U(N) =  9
rang N =  3  U(N) =  7
rang N =  4  U(N) =  19
rang N =  5  U(N) =  29
rang N =  6  U(N) =  51
rang N =  7  U(N) =  24

11.2. Exercice - boucles et fonctions

  1. Réaliser une fonction generationApresRepetitions, qui reçoit un paramètre N (strictement positif) et réalise le traitement suivant:
  • la fonction tire au hasard un nombre entier qui sera soit 0 soit 1 et l’affiche. Elle répète ces tirages (avec affichage de la valeur tirée) jusqu’à avoir obtenu N fois le 1 de façon consécutive.
  • ensuite la fonction réalise un nouveau tirage (toujours soit 0 soit 1) et renvoie cette valeur comme résultat (elle renvoie donc 0 ou 1).
  1. Réaliser le programme principal qui réalise les tâches suivantes:
  • le programme demande à l’utilisateur un nombre entier K strictement positif (ne pas faire de vérification).
  • le programme affiche alors le nombre de 1 renvoyés par 1000 appels de generationApresRepetitions(K). Cette valeur est en moyenne de 500 (tester avec des valeurs de K de 1 à 7).

11.3. Exercice - listes et fonctions

Réaliser les fonctions et le programme suivants.

  1. Réaliser une fonction genereListe qui renvoie une liste de 100 nombres entiers tirés au hasard dans l’intervalle [0,99] (bornes incluses).
  2. Réaliser une fonction combienNonPresents qui reçoit en paramètre une liste V d’entiers dans l’intervalle [0,99] et renvoie combien d’entiers entre 0 et 99 (inclus) ne sont pas présents dans la liste V.
  3. Réaliser le programme principal qui utilise ces fonctions pour estimer combien l’on a d’éléments non représentés en moyenne. Pour cela le programme calculera la moyenne du nombre d’éléments non représentés pour 30 listes tirées avec la fonction genereListe. (Pour tester: la valeur de cette moyenne devrait fluctuer, avec une très forte probabilité, entre environ 35 et 38.)