Exercices avancé sur les structures conditionnelles
- Écrivez un algorithme qui détermine lequel des deux nombres entrés par l’utilisateur est le plus grand. Prévenez l’utilisateur si les nombres sont égaux.
Correction
Generic
DÉBUT
VARIABLE a, b: ENTIER
LIRE "Quelle est la valeur de a:", a
LIRE "Quelle est la valeur de b?", b
SI a == b:
ECRIRE "Les valeurs sont identiques"
SINON SI a > b:
ECRIRE "a est plus grand que b"
SINON
ECRIRE "b est plus grand que a"
FIN SI
FINPython
a = int(input("Quelle est la valeur du premier nombre?"))
b = int(input("Quelle est la valeur du second nombre?"))
if a==b:
print("Les valeurs sont identiques")
elif a>b:
print("a est plus grand que b")
else:
print("b est plus grand que a")C
#include <stdio.h>
int main(void) {
int a, b;
scanf("%d", &a);
scanf("%d", &b);
if( a == b ) {
printf("Les valeurs sont identiques\n");
}
else if( a > b ) {
printf("a est plus grand que b\n");
}
else {
printf("b est plus grand que a\n");
}
}- Écrivez un algorithme qui détermine si la série de trois nombres entrés par l’utilisateur est croissante, décroissante, ou indéterminée.
Correction
Generic
DÉBUT
VARIABLE a, b, c: ENTIER
LIRE "Quelle est la valeur de a:", a
LIRE "Quelle est la valeur de b?", b
LIRE "Quelle est la valeur de c?", c
SI a == b ET b == a:
ECRIRE "La série de nombre est égale"
SINON SI a <= b ET b <= c:
ECRIRE "La série est croissante"
SINON SI a >= b ET b >= c :
ECRIRE "a est plus grand que b"
SINON:
ECRIRE "La série de nombre n'est ni croissante, ni décroissante"
FIN SI
FINPython
a = int(input("Quelle est la valeur du premier nombre?"))
b = int(input("Quelle est la valeur du second nombre?"))
c = int(input("Quelle est la valeur du troisième nombre?"))
if a==b and b==c:
print("La série de nombre est égale")
elif a <= b and b <= c:
print("La série est croissante")
elif a >= b and b >= c:
print("la série est décroissante")
else:
print("La série de nombre n'est ni croissante, ni décroissante")C
#include <stdio.h>
int main(void) {
int a, b, c;
scanf("%d", &a);
scanf("%d", &b);
scanf("%d", &c);
if( a==b && b==c )
printf("La série de nombre est égale\n");
else if( a <= b && b <= c)
printf("La série est croissante\n");
else if a >= b && b >= c)
printf("la série est décroissante\n");
else
printf("La série de nombre n'est ni croissante, ni décroissante\n");
}- Écrivez un algorithme qui détermine lequel des trois nombres entrés par l’utilisateur est le plus grand.
Correction
Generic
DÉBUT
VARIABLE a, b, c: ENTIER
LIRE "Quelle est la valeur de a:", a
LIRE "Quelle est la valeur de b?", b
LIRE "Quelle est la valeur de c?", c
SI a == b et b == C:
ECRIRE "Les trois nombres sont égaux."
SINON:
SI a >= b ET a >= c:
ECRIRE "a est le plus grand"
SINON SI b >= a ET b >= c:
ECRIRE "b est le plus grand"
SINON:
ECRIRE "c est le plus grand"
FIN SI
FINPython
a = int(input("Quelle est la valeur du premier nombre?"))
b = int(input("Quelle est la valeur du second nombre?"))
c = int(input("Quelle est la valeur du troisième nombre?"))
if a==b and b==c:
print("Les nombres sont égaux")
else:
if a >= b and a >= c:
print("a")
elif b >= a and b >= c:
print("b")
else:
print("c")C
#include <stdio.h>
int main(void) {
int a, b, c;
scanf("%d", &a);
scanf("%d", &b);
scanf("%d", &c);
if( a==b && b==c) {
printf("Les nombres sont égaux\n")
}
else {
if( a >= b && a >= c)
printf("a\n");
else if( b >= a && b >= c)
printf("b\n");
else
printf("c\n");
}
}- Écrivez un algorithme qui affiche les 2 nombres les plus grands des trois nombres entrés par l’utilisateur.
Correction
Generic
DÉBUT
VARIABLE a, b, c: ENTIER
LIRE "Quelle est la valeur de a:", a
LIRE "Quelle est la valeur de b?", b
LIRE "Quelle est la valeur de c?", c
SI a == b ET a == c,:
ECRIRE "Les trois nombres sont égaux."
SINON:
SI a <= b ET a <= c:
ECRIRE "b et c sont les plus grands"
SINON SI b <= a ET b <= c:
ECRIRE "a et c sont les plus grands"
SINON:
ECRIRE "a et b sont les plus grands"
FIN SI
FINPython
a = int(input("Quelle est la valeur du premier nombre?"))
b = int(input("Quelle est la valeur du second nombre?"))
c = int(input("Quelle est la valeur du troisième nombre?"))
if a==b and b==c:
print("Les nombres sont égaux")
else:
if a <= b and a <= c:
print("b et c")
elif b <= a and b <= c:
print("a et c")
else:
print("a et b")C
#include <stdio.h>
int main(void) {
int a, b, c;
scanf("%d", &a);
scanf("%d", &b);
scanf("%d", &c);
if( a==b && b==c) {
printf("Les nombres sont égaux\n")
}
else {
if( a <= b && a <= c)
printf("b et c\n");
else if( b <= a && b <= c)
printf("a et c\n");
else
printf("a et b\n");
}
}- Écrivez un algorithme qui arbitre le jeu “Pierre, Papier, Ciseaux”
Correction
Generic
DÉBUT
VARIABLE a, b: CHAINE
LIRE "Quelle est le choix du joueur 1:", a
LIRE "Quelle est le choix du joueur 2:", b
SI (a == "pierre" OU a == "papier" OU a == "ciseaux") ET (b == "pierre" OU b == "papier" OU b == "ciseaux"):
SI (a == "pierre" ET b == "ciseaux") OU (a == "papier" ET b == "pierre") OU (a == "ciseaux" et b == "papier"):
ECRIRE "Le joueur 1 gagne la manche"
SINON SI (b == "pierre" ET a == "ciseaux") OU (b == "papier" ET a == "pierre") OU (b == "ciseaux" et a == "papier"):
ECRIRE "Le joueur 2 gagne la manche"
SINON:
ECRIRE "Il y'a égalité"
FIN SI
SINON:
ECRIRE "Il y'a une erreur de saisie."
FIN SI
FINPython
a = input("Quelle est le choix du joueur 1:")
b = input("Quelle est le choix du joueur 2:")
if (a == "pierre" or a == "papier" or a == "ciseaux") and (b == "pierre" or b == "papier" or b == "ciseaux"):
if (a == "pierre" and b == "ciseaux") or (a == "papier" and b == "pierre") or (a == "ciseaux" and b == "papier"):
print("Le joueur 1 gagne la manche")
elif (b == "pierre" and a == "ciseaux") or (b == "papier" and a == "pierre") or (b == "ciseaux" and a == "papier"):
print("Le joueur 2 gagne la manche")
else:
print("Il y'a égalité")
else:
print("Il y'a une erreur de saisie.")C
#include <stdio.h>
int main(void) {
char a, b;
scanf("%c %c", &a, &b);
if (a == 'P' || a == 'F' || a == 'C') && (b == 'P' || b == 'F' || b == 'C') {
if (a == 'P' && b == 'C') || (a == 'F' && b == 'P') || (a == 'C' && b == 'F')
printf("Le joueur 1 gagne la manche\n");
elif (b == 'P' && a == 'C') || (b == 'F' && a == 'P') || (b == 'C' && a == 'F')
printf("Le joueur 2 gagne la manche\n");
else:
printf("Il y'a égalité\n");
}
else {
printf("Il y'a une erreur de saisie.\n");
}
}