INFO LISTE 3 D'EXERCICES D'ALGO. OCTOBRE 2011 BTS1
EXERCICE 1
Ecrire un algorithme qui saisit un nombre n, saisit un message et affiche n fois
le message à l'écran.
-----------------------------------------------------------------------------------------------------------------
Réponse:
Voici un programme sur Algobox qui répond.
VARIABLES
N EST_DU_TYPE NOMBRE
T EST_DU_TYPE CHAINE
I EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE N
LIRE T
AFFICHER "On veut afficher "
AFFICHER N
AFFICHER " fois le message "
AFFICHER T
AFFICHER* " "
AFFICHER* "Voici ce que cela donne : "
POUR I ALLANT_DE 1 A N
DEBUT_POUR
AFFICHER* T
FIN_POUR
FIN_ALGORITHME
----------------------- Par exemple pour afficher 10 fois le message : Bravo-----------------
VARIABLES
N EST_DU_TYPE NOMBRE
T EST_DU_TYPE CHAINE
I EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE N
LIRE T
I PREND_LA_VALEUR 0
AFFICHER "On veut afficher "
AFFICHER N
AFFICHER " fois le message "
AFFICHER T
AFFICHER* " "
AFFICHER* "Voici ce que cela donne : "
POUR I ALLANT_DE 1 A N
DEBUT_POUR
AFFICHER* T
FIN_POUR
FIN_ALGORITHME
------------------------------------------------------------------------------
EXERCICE 2
Ecrire un algorithme qui calcule la somme des n premiers nombres entiers
Même chose pour la somme des carrés des n premiers nombres entiers.
--------------------------------------------------------------------------------------------------
Réponse:
Plusieurs méthodes possibles pour la première question.
• Faire calculer et afficher ce que
donne les formules
1 + 2 +... + n = n ( n + 1 ) / 2
12 + 22 +... + n2 = n ( n + 1 )( 2 n+ 1 ) / 6
• Faire utiliser une boucle pour passer de 1 à 1 + 2 puis de 1 + 2 à 1 + 2+ 3
jusqu' à passer de 1 + 2 +.. +( n - 1 ) à 1 + 2 + + n .
Même principe avec les carrés.
• Faire utiliser une chaîne de caractères
- I- PREMIERE METHODE :
Voici un algorithme qui marche
VARIABLES
n EST_DU_TYPE NOMBRE
Sn EST_DU_TYPE NOMBRE
Scn EST_DU_TYPE NOMBRE
m EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE n
m PREND_LA_VALEUR pow(n,2)
AFFICHER " Le nombre de termes est : "
AFFICHER n
Sn PREND_LA_VALEUR n*(n+1)/2
AFFICHER* " "
AFFICHER " 1 + 2 +... + "
AFFICHER n
AFFICHER " = "
AFFICHER Sn
AFFICHER* " "
Scn PREND_LA_VALEUR n*(n+1)*(2*n+1)/6
AFFICHER " 1² + 2² +... +"
AFFICHER m
AFFICHER " = "
AFFICHER Scn
FIN_ALGORITHME
--------------------------------------------------------------------
-II- SECONDE METHODE
Voici un algorithme qui marche
VARIABLES
n EST_DU_TYPE NOMBRE
Sn EST_DU_TYPE NOMBRE
Scn EST_DU_TYPE NOMBRE
m EST_DU_TYPE NOMBRE
K EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE n
m PREND_LA_VALEUR pow(n,2)
AFFICHER " Le nombre de termes est : "
AFFICHER n
POUR K ALLANT_DE 1 A n
DEBUT_POUR
Sn PREND_LA_VALEUR Sn+K
Scn PREND_LA_VALEUR K*K+Scn
FIN_POUR
AFFICHER* " "
AFFICHER " 1 + 2 +... + "
AFFICHER n
AFFICHER " = "
AFFICHER Sn
AFFICHER* " "
AFFICHER " 1² + 2² +... + "
AFFICHER m
AFFICHER " = "
AFFICHER Scn
FIN_ALGORITHME
- III- TROISIEME METHODE
VARIABLES