corrigé chap. 4

Transcription

corrigé chap. 4
288
INTRODUCTION À LA PROGRAMMATION EN PASCAL/DELPHI
Chapitre 4
LES TYPES DE DONNÉES DU LANGAGE PASCAL
4.1
4.2
a)
Voir les sections 4.2.1 et 4.2.2.
b)
Voir la section 4.2.1.
a)
Comme on a n = 32, il peut traiter les entiers allant de 0 à 2n–1 donc de 0 à
2 147 483 647. Ainsi, ils sont au nombre de 2n-1 = 2 147 483 647.
b)
Comme on va travailler sur des entiers positifs et négatifs, un bit doit être consacré au signe. On se retrouve ainsi avec : –2n–1 < nombres < 2n–1 – 1, soit
–231 < n < 231 – 1.
4.3
Voir la section 4.2.2.
4.4
VAR prénom, nom : STRING[30];
poste : STRING[30];
4.5
mmax = 26 – 1 = 63;
emax = 24 – 1 = 15;
donc rmax = 0.63 × 1015 (ou 0.63E15).
4.6
Le nombre peut être réécrit comme suit : 0.548753628914 × 106.
17 bits dont la mantisse
15 bits dont l’exposant
(1 signe + 16 caractères)
(1 signe + 14 caractères)
s
c
s
c
0 1101011001011011
0 00000000000110
car le nombre 6 correspond en binaire à 110 (1 × 22 + 1 × 21 + 0 × 20, tandis que si on
mettait des 1 partout dans l’espace alloué à la mantisse, le plus grand nombre représenté
serait de 216 – 1, soit environ 65 535.
LE CORRIGÉ DES EXERCICES
Pourdoit
la mantisse,
n'a retenudes
que 5lespremiers
5 premières
décimales
(54 875)
parcedécimal;
que la nombre
On
alors seoncontenter
chiffres
suivant
le point
54875
le plus grandàque
l'on0110
puisse0101
former
avecComme
16 bits est
2 -1 soit
65 535.
correspond
1101
1011.
l’espace
alloué
ne permet que 16
En binaire, 54 875 est représenté par 1101011001011011.
bits, nous devons éliminer un autre nombre, ici le dernier 5 pour insérer dans l’espace
les
bits suivants:
0101001010000111.
En résumé, on perd la partie 53628914 en
Pour16l'exposant,
6 représente
sur 14 bits par 00000000000110.
précision.
4.7
4.8
a)
Voir la section 4.3.4.
b)
VAR E1, E2, E3, E4, E5 : BOOLEAN;
Un livre est un exemple d’objet en trois dimensions puisqu’il présente des informations
en deux dimensions (lignes et colonnes) sur une seule page, et qu’il comprend plus
d’une page (chaque page est une tranche constituée de lignes et de colonnes).
Oui, objet [1, 2, 3] désigne le caractère se situant à la 3e colonne de la 2e ligne de la
1re page.
4.9
a)
Voir les sections 4.4.1 et 4.4.2.
b)
Un tableau à trois dimensions comportant 5 tranches, 5 lignes et 10 colonnes.
4.10
Voir la section 4.4.1.
4.11
TYPE
employe = RECORD
numero : INTEGER;
nom, prenom : STRING[30];
nas : STRING[11];
adresse = RECORD
no : INTEGER;
rue : STRING[20];
apt : STRING[5];
ville : STRING[25];
END;
END;
289
290
INTRODUCTION À LA PROGRAMMATION EN PASCAL/DELPHI
4.12
VAR
fich1, fich2 : FILE OF employe;
4.13
Puisque l’on ignore le nombre de personnes de la liste, le type « tableau » (ARRAY)
ne convient pas; on doit utiliser une structure dynamique comme type de données :
TYPE
adres = RECORD
numero : INTEGER;
rue : STRING[30];
apt : STRING[5];
ville : STRING[25];
END;
listepers = ^ personne;
personne = RECORD
nom, prenom : STRING[20];
adresse : adres;
age : 1..150;
suivant : listepers;
END;
4.14
4.15
a)
30
b)
1.56
c)
4.50
d)
900
e)
8
a)
Déclaration d’un type « note » prenant les valeurs entières entre 50 et 100 (déclaration par intervalle).
b)
Déclaration d’un type « formation » correspondant à une chaîne de caractères de
longueur 30.
c)
Déclaration d’une variable « reponse » de type booléen.
d)
Déclaration d’un tableau « tabool » de 5 lignes et de 8 colonnes dont les éléments
ont pour valeur « oui » ou « non ».