1
ICC MT & EL Test 1 vendredi 23 octobre 2015
Ne PAS retourner ces feuilles avant d’en être autorisé!
Merci de poser votre carte CAMIPRO en évidence sur la table.
Vous pouvez déjà compléter et lire les informations ci-dessous:
NOM ____________________________________________________________
Prénom _____________________________________________________________
Numéro SCIPER _________________________________________________________
Signature _______________________________________________________________
BROUILLON : Ecrivez aussi votre NOM-Prénom sur la feuille de brouillon fournie.
Toutes vos réponses doivent être sur cette copie d’examen. Les feuilles de
brouillon sont ramassées puis détruites.
Le test écrit commence à: 14h15
Retourner les feuilles avec la dernière page face à vous à : 15h30
les contrôles écrits ICC sont SANS document autorisé,
ni appareil électronique
Total sur 20 points = 12 points pour la partie Quizz et 8 points pour les questions ouvertes
La partie Quizz (QCM) comporte 12 questions : chaque question n’a qu’une seule réponse
correcte parmi les 4ponses proposées. Chaqueponse correcte donne 1 point. Il n’y a pas
de pénalité en cas de mauvaise réponse. Aucun point n’est donné en cas de réponses multiples,
de rature, ou deponse incorrecte. Vous pouvez utiliser un crayon à papier et une gomme.
Indiquez vos réponses à la partie Quizz dans le tableau en bas de cette page.
La partie « question ouverte » comporte 2 questions. Chaque question rapporte 4 points.
Questions du Quizz
1
2
3
4
5
6
7
8
9
10
11
12
A
A
B
B
C
C
D
D
2
QUIZZ
Notation: on utilise dans ce quizz la virgule pour séparer les puissances positives des puissances
négatives de la base dans la notation positionnelle des nombres.
--------------------------------------------------------------------------------------------------------------------------
Question 1 : l’algorithme « glouton » utilisé pour le problème du sac à dos est caractérisé par :
B
C
Un usage important de la mémoire pour mémoriser des résultats intermédiaires
Un ordre de complexi polynomial pour résoudre le problème
Il est indécidable parce qu’il est autoréférent
Il prend toujours une décision locale qui n’est jamais remise en question
--------------------------------------------------------------------------------------------------------------------------
Soit l’algorithme Algo_X qui reçoit deux listes de caractères A et B en entrée. Un élément d’une
liste L peut être accédé avec la notation L(i), avec i compris entre 1 et Taille(L). L’ordre de
complexité de Taille(L) est O(1).
Algo_X
entrée : 2 listes de caractères A et B
sortie : ???
n Taille(A)
m Taille(B)
Si m n
Pour i allant de 1 à n+1-m
j 0
Tant que A(i+j) = B(j+1)
Si j+1 = m
sortir : Vrai
j j+1
sortir : Faux
Question 2 : soit les listes :
A1 = {a,a,c,d,b,c,c,a,g,f,b}, B1 ={d,b,c,a}, A2 = {b,d,c,f,f}, B2 = {g,f,a,b,d,c,f}
A
B
C
D
Algo_X(A1,B1) donne Vrai et Algo_X(A2,B2) donne Faux
Algo_X(A1,B1) donne Faux et Algo_X(A2,B2) donne Faux
Algo_X(A1,B1) donne Vrai et Algo_X(A2,B2) donne Vrai
Algo_X(A1,B1) donne Faux et Algo_X(A2,B2) entre dans une boucle infinie
Question 3 : Que fait cet algorithme ?
B
C
D
Indique si la liste A est contenue dans la liste B
Indique si les deux listes sont lesmes
Indique si la liste B est contenue dans la liste A
Trie la liste A en conservant seulement les éléments de la liste B
Question 4 : quel est son ordre de complexité si m = n/2 ?
B
C
O(log
2
(n))
O(n2)
O(n)
O(2
n
)
3
--------------------------------------------------------------------------------------------------------------------------
Question 5 : Représentation en virgule fixe non-signée sur 8 bits avec 5 bits de partie entière
et 3 bits de partie fractionnaire. Le nombre décimal 20,4 est :
A
B
C
D
Exactement représenpar le motif binaire : 10100,011
représenté par le motif binaire 10100,011 avec une approximation par troncation
produisant une erreur absolue de 0,025
représenté par le motif binaire 10100,
011 avec une approximation par troncation
produisant une erreur relative de 0,125 (c’est-à-dire 12,5 %)
représenté par le motif binaire 10100,011 avec une approximation
par troncation
produisant une erreur relative de 0,025 (c’est-à-dire 2,5%)
--------------------------------------------------------------------------------------------------------------------------
Question 6 : retirée
--------------------------------------------------------------------------------------------------------------------------
Question 7 : On représente un nombre entier signé sur 8 bits en utilisant la représentation du
complément à 2. Comment s’écrit le nombre 53 avec cette représentation ?
A
B
C
D
11010111
11001011
11010011
10101011
--------------------------------------------------------------------------------------------------------------------------
Question 8: quel est le résultat, en hexadécimal (base 16), de l’addition des 2 nombres
suivants exprimés en hexadécimal sur 4 chiffres: 0ABC + 0CBA.
A
B
C
D
1676
1776
1766
0DCD
--------------------------------------------------------------------------------------------------------------------------
Question 9 : Parmi les affirmations suivantes sur la représentation des entiers signés avec le
complément à deux sur n bits, laquelle est vraie ?
A
B
C
D
Le maximum des entiers positifs est 2n -1
Le minimum des entiers négatifs est -2n-1-1
Le complément à deux de -2n-1 est égal à lui-même
Le domaine couvert est symétrique
4
--------------------------------------------------------------------------------------------------------------------------
On considère l’algorithme correct suivant :
Algo_F
entrée : n, un entier naturel strictement positif
sortie : factorielle de n
c 1
Si n > 1
Pour i allant de 2 à n
c c*i
sortir : c
Question 10 : L’algorithme Algo_F
A
B
C
D
est récursif et son ordre de complexité est O(n2) mais pas O(n)
est récursif et son ordre de complexité est O(2n)
n’est pas récursif et son ordre de complexité est O(n)
n’est pas récursif et son ordre de complexité est O(n
2
) mais pas O(n)
Question 11 : Pour cette question on suppose que les 3 variables n, c et i de Algo_F sont des
nombres entiers positifs qui sont tous représentés avec seulement 8 bits. On s’intéresse au
résultat de Algo_F(n) quand les 3 variables utilisent la même représentation, soit R1, soit R2,
(pas de mélange de R1 et R2). Les deux représentations sont non-signées :
Représentation R1: les 8 bits sont tous utilisés pour représenter un entier positif avec la
notation positionnelle en base 2.
Représentation R2 : une représentation en virgule flottante est utilisée avec 3 bits pour un
exposant positif et 5 bits pour la mantisse, avec la forme normalisée : 2exposant x 1,mantisse
La représentation mentionnée dans les propositions suivantes est celle qui est utilisée pour
les 3 variables. Quelle est la proposition vraie ?
A
B
C
D
Algo_F(n) donne un résultat appartenant au domaine couvert de R1 pour toutes les
valeurs de n appartenant au domaine couvert de R1
Algo_F(6) appartient au domaine couvert de R2
Algo_F(5) appartient au domaine couvert de R2 avec une erreur relative nulle
Algo_F(5) appartient au domaine couvert de R2 mais avec une erreur absolue non-nulle
5
--------------------------------------------------------------------------------------------------------------------------
Question 12 : Lequel de ces 4 algorithmes ne fonctionne PAS correctement ?
A
algo_A
entrée : n, un entier
sortie : un nombre entier
Si n < 0
sortir : 0
Si n = 0
sortir : 1
sortir : 2*n + algo_A(n/2)
C
algo_C
entrée : n, un entier
sortie : un nombre entier
Si n < 0
sortir : 2*n + algo_C(n+1)
Si n = 0
sortir : 1
sortir : algo_C(n-1)
B
algo_B
entrée : n, un entier
sortie : un nombre entier
Si n > 0
sortir : 2*n
Si n = 0
sortir : 1
sortir : algo_B(n-1)
D
algo_D
entrée : n, un entier
sortie : un nombre entier
Si n < 0
sortir : 2*n + algo_D(n+1)
Si n = 0
sortir : 1
sortir : algo_D(-n)
--------------------------------------------------------------------------------------------------------------------------
Questions Ouvertes
Question 1 : algorithme de conversion. Soit un système de numération des nombres entiers
strictement positifs à l’aide de l’ensemble S des 7 symboles suivants S = {T,U,R,W,X,Y,Z}. Dans
ce système primitif, que nous notons P, la position des symboles n’est pas associée à une
puissance de la base comme dans le système décimal. Dans le système P, un symbole
représente toujours la même quantité quelle que soit sa place dans un nombre. Chaque
symbole de l’ensemble S repsente la quantité entière correspondante de l’ensemble V avec
V= {1, 5, 10, 50, 100, 500, 1000}. Par exemple, le symbole T vaut 1, le symbole U vaut 5, etc...
Règles à respecter pour écrire un nombre dans le système P : un nombre N est représenté par
une liste de symboles de l’ensemble S. Le premier symbole de la liste, noté N(1), est celui ayant
la plus faible valeur ; c’est le premier symbole sur la droite du nombre N (voir exemples). Le
symbole N(2) est celui qui vient immédiatement à gauche de N(1) dans le nombre, etc… Le
symbole N(k+1) dans la liste peut être le même que N(k), sans limite de répétition, ou un
symbole de valeur supérieure. Par contre il est interdit de trouver un symbole de valeur
inférieure lorsqu’on va de la droite vers la gauche.
Exemples : le nombre ZUT représente la quantité 1006 = 1000 + 5 + 1
le nombre XXXRRU représente la quantité 325 = 100 + 100 + 100 + 10 + 10 + 5
le nombre UXT est incorrect car le symbole U est de valeur plus faible que le
symbole X qui le précède à droite.
a) Ecrire le pseudocode de l’algorithme Algo_Val qui reçoit un seul symbole en entrée et qui
renvoie la valeur entière correspondant à ce symbole dans le système P. Si le symbole
n’appartient pas à l’ensemble S on renvoie la valeur zéro. On demande d’utiliser une
itération pour réaliser cette action élémentaire.
1 / 8 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans l'interface ou les textes ? Ou savez-vous comment améliorer l'interface utilisateur de StudyLib ? N'hésitez pas à envoyer vos suggestions. C'est très important pour nous!