CC - Contrôle continu 1

publicité
HLIN101
CC
Mercredi 1 Octobre 2014
CC - Contrôle continu 1
Dans ce contrôle continu, nous allons évaluer vos connaissances sur les types, les
conditionnels, les algorithmes impératifs et récursifs
Nom :
Prénom :
1. Question 1
On suppose à présent que x et y sont des paramètres de type Nombre et que z est un paramètre de type Booléen. Quel est le type des expressions suivantes ?
On suppose définis l’algorithme suivant :
Algorithme : max
Données : a : Nombre, b : Nombre
Résultat : Nombre, qui vaut a si a > b sinon b
Le résultat est : Si a >= b alors a sinon b
fin algorithme
1. x + y - max (x, y)
2. x < y ou x + y
3. z et (x = y)
4. max(x) + y
5. (z = y) et (x < y)
6. max(x, y) = max(y, z)
7. (x + y) quo max(x, y)
8. si max(z) alors true sinon (x + y)
Solution:
1.
2.
3.
4.
5.
6.
7.
8.
2. Question 2
Écrire un algorithme qui résout automatiquement les équations du type ax + b = c, où a, b
et c sont trois nombres réels donnés, et x est l’inconnue réelle. Si il existe un cas d’erreur,
l’algorithme retourne 0.
HLIN101
CC - Contrôle continu 1, Page 2 sur 3
Mercredi 1 Octobre 2014
Nom :
Prénom :
Solution:
3. Question 3
Écrire un algorithme qui, à partir de trois longueurs a, b et c, détermine si le triangle
correspondant est rectangle.
Solution:
4. Question 4
On se propose d’écrire un algorithme récursif qui calcul la factorielle d’un nombre entier n.
Pour rappel, la factorielle de n noté n! vaut n! = 1 ∗ 2 ∗ ... ∗ n pour n entier positif. De plus,
0! = 1.
Solution:
HLIN101
CC - Contrôle continu 1, Page 3 sur 3
Mercredi 1 Octobre 2014
Nom :
Prénom :
5. Question 5
On se propose d’écrire un algorithme récursif qui calcul le PGCD de deux entiers naturels
strictement positifs a et b. Pour rappel, le plus grand commun diviseur, abrégé en général
PGCD, de deux nombres entiers naturels non nuls est le plus grand entier qui divise simultanément ces deux entiers. Par exemple le PGCD de 20 et 30 est 10. En effet, leurs diviseurs
communs sont 1, 2, 5 et 10.
Indice : vous pouvez utiliser la méthode soustractive. Supposons que a soit plus grand que
b, on a le PGCD de a et b qui est égal au PGCD de a − b et b.
Solution:
Téléchargement