WorksheetsLes Structures de données Quiz 1
Total questions: 60
Worksheet time: 2hrs 47mins
Quelle affirmation concernant les identificateurs des objets est juste ?
Un identificateur peut avoir des espaces.
Un identificateur ne doit pas contenir les signes suivants : @, $, &, #.
Un identificateur ne doit pas se terminer par un chiffre.
Un identificateur doit commencer par une lettre alphabétique.
Choisir la déclaration PASCAL correcte d'une constante ep de valeur 0.002
CONST ep:=0.002;
CONST ep=0.002;
CONST ep:0.002;
CONST: ep=0.002;
CONSTANTE ep=0.002;
Choisir la déclaration PASCAL correcte d'une variable entière X peut contenir un entier de 10 chiffres.
VAR x:integer;
VAR x:word;
VAR x:byte;
VAR x:longint;
VAR x:shortint;
Choisir la déclaration PASCAL correcte d'une variable entière X signée et codée sur un octet dans la mémoire RAM.
VAR x:integer;
VAR x:word;
VAR x:byte;
VAR x:longint;
VAR x:shortint;
Choisir la déclaration PASCAL correcte d'une variable entière X non signée et codée sur un octets dans la mémoire RAM.
VAR x:integer;
VAR x:word;
VAR x:byte;
VAR x:longint;
VAR x:shortint;
Choisir la déclaration PASCAL correcte d'une variable entière X non signée et codée sur deux octets dans la mémoire RAM.
VAR x:integer;
VAR x:word;
VAR x:byte;
VAR x:longint;
VAR x:shortint;
Soit l'instruction suivante:
X:= 15/3 ;
Choisir la déclaration PASCAL correcte de la variable X.
VAR x:integer;
VAR x:Real;
VAR x:byte;
VAR x:longint;
Choisir la déclaration PASCAL correcte d'une variable C de type caractère.
VAR C=string;
VAR C:char;
VAR C:string;
VAR C:caractère;
VAR C:=char;
Choisir la déclaration PASCAL correct d'une variable email de type chaîne de caractères.
VAR email=string;
VAR email:char;
VAR email:string;
VAR email:chaine;
VAR: email:string;
Choisir la déclaration PASCAL correcte d'une variable logique appelée B .
VAR B=Boolean;
VAR B=Booléen;
VAR B:Boolean;
VAR B:Booléen;
Parmi les nombres suivants, lesquels sont des entiers?
-2
150 DIV 5
14/8
5.08E+14
17 MOD 7
Parmi les nombres suivants, lesquels sont des réels?
-14.3
10 mod 3 = 2
14/8
5.08E+14
'7'
Soit la séquence d’instructions suivante avec A=0, B=3 et C=2:
A ← A*B
B ← C div 2
C ← B*2
Après exécution de cette séquence, donner les valeurs du couple (A, B, C).
(0, 1, 2)
(1, 0, 6)
(0, 0, 6)
Evaluer les instructions suivantes:
A ← 15 DIV 2
B ← 15 MOD 2
A=1 , B=7
A=7 , B=1
A=7.5 , B=0
A=0 , B=7.5
Evaluer les instructions suivantes:
A ← 150 DIV 2 MOD 3
B ← 103 MOD 4 DIV 3
A=75 , B=0
A=75 , B=1
A=0 , B=1
A=0 , B=0
Evaluez les expressions suivantes :
X:=Trunc(7.25)+Round(7.25)+Ent(7.25)
Y:=Trunc(7.50)+Round(7.50)+Ent(7.50)
x=21.5 , y=22
x=21 , y=22
x=21 , y=22.5
x=21.5 , y=22.5
Evaluer l'instruction suivante:
A ← aléa(90)+10
A contient un nombre aléatoire de trois chiffres
A contient un nombre aléatoire de deux chiffres
A contient un nombre aléatoire de l'intervalle [0..100]
A contient un nombre aléatoire de l'intervalle [10..99]
Evaluer les instructions suivantes (x et y sont de type entier) :
X ← 14 DIV 3 + 5 * (10 MOD 6) - Carré (4)
Y ← 6*ABS (X - 10) - X MOD 3 DIV 2
x=8 , y=11
x=6 , y=24
x=6 , y=18
x=8 , y = -13
Soit la séquence d’instructions suivantes :
X := 5 ;
Y:= X / 2 ;
R := Trunc (Y) ;
Z := X MOD 2 ;
W := X+Y ;
Choisir les déclarations des variables correctes
Var x,r,z : integer;
y,w: real;
Var x,r,z : real;
y,w: integer;
Var x,z : integer;
y,w,r: real;
Var x,z : real;
y,w,r: integer;
Evaluer l'instruction suivante:
SQR (a + b) / (c + d)
avec a=5.7, b=2.3 , c=6 et d=4
0.28
6.4
2.8E-01
0.64
Evaluer Les expressions suivantes sachant que a=5, b=8, c=-2
a ← NON ((a<b) ET NON (b>c))
b ← (a<b) OU (a<c) ET (b<c)
c ← NON (a>b) ET (c>b)
a=vrai
b=vrai
c=faux
a=vrai
b=faux
c=vrai
a=faux
b=faux
c=vrai
a=vrai
b=faux
c=faux
Evaluer Les expressions suivantes sachant que
(a,b,c,d)=(5,7,2,7)
A := (b=d) AND NOT(a<c)
B := NOT ((c+a<=b) XOR (a>d))
C:= (a+c<d) XOR (b*d>c)
A=false
b=false
c=true
A=false
b=true
c=false
A=true
b=true
c=false
A=true
b=false
c=true
Evaluez les expressions suivantes :
B1 ← "a">"A"
B2 ← (SUCC ("v") > PRED ("r")) OUex ("a" > "1")
B1=vrai
B2=vrai
B1=vrai
B2=faux
B1=faux
B2=vrai
B1=faux
B2=faux
Evaluez les expressions suivantes :
B1← ORD ("A") + ORD ("a")
B2 ← (MAJUS ("a") >= MAJUS ("A")) ET (CHR (65) > "A")
B1=162
B2=vrai
B1=vrai
B2=faux
B1=faux
B2=vrai
B1=162
B2=faux
Parmi les fonctions suivantes, lesquelles sont applicables sur les variables de types caractère?
Succ
Ord
Upcase
Pred
Chr
Le code ASCII peut être assimilé à un tableau de correspondance entre :
Une valeur et son adresse
Un caractère et sa valeur numérique
Un nombre et son inverse
Une adresse mémoire et un contenu mémoire
Evaluez les expressions suivantes pour
c1="a" , c2="Z" , x=-2 , y=3 , t=5 et z=2.
A := ORD (SUCC (c1)) + (ORD (c2))-100 ;
B := CHR(x+ORD ("E")) ;
C := ORD (SUCC (Upcase(c1))) + ABS ( ORD(PRED(c2)) DIV 3 * x) ;
D := (t>z) XOR (NOT (y>z) OR (t>ORD ('a'))) ;
(A,B,C,D) = (88 , 'c' , 66 , False)
(A,B,C,D) = (56, 'c' , 124 , True)
(A,B,C,D) = (88 , 'C' , 124 , True)
(A,B,C,D) = (56, 'C' , 66 , False)
Parmi les fonctions suivantes, lesquelles sont applicables sur les variables de types chaîne de caractères?
Str
Ord
Upcase
Pos
Val
qu'affiche les instructions ci-dessous:
ch← "Nous t'achèterons des balles de tennis."
écrire(long(ch))
37
38
39
40
qu'affiche les instructions ci-dessous:
ch1← "Nous sortons"
ch2← "en promenade"
écrire(long(ch1+" "+ch2))
22
23
24
25
qu'affichent les instructions suivantes:
N:=length('Réviser intelligemment le bac.');
writeln(N);
29
30
31
32
Déterminer les valeurs du quadruplet (A,B,C,D)
(Vrai, Faux, Vrai, Faux)
(Faux, Faux, Vrai, Faux)
(Faux, Faux, Vrai, Vrai)
(Vrai, Faux, Vrai, Vrai)
Evaluer les instructions suivantes et déterminer les valeurs des variables X, Y et Z.
Y:= 'ORNATEUR';
X:= COPY (Y, 3,6);
DELETE (Y, 3,6);
Y:= CONCAT (Y, 'DI');
INSERT (X, Y, 5)
Z:= POS ('DI', Y);
X='NATEUR' , Y='ORDINATEUR' , Z=3
X='Nateur' , Y='Ordinateur' , Z=3
X='ORDINATEUR' , Y='NATEUR' , Z=0
X='Ordinateur' , Y='Nateur' , Z=0
Soient les variables suivantes :
ch1 = ′′Lunette′′ ch2=′′si′′ ch3=′′une′′
Compléter le tableau suivant :
("une", "Tunisie" , "usine", "lune")
(3, "tunis" , "usine", "lune")
(3, "tunisie" , "usine", "Lune")
("une", "tunisie" , "sunei", "Lu")
soit les instructions suivantes:
ch1:='Où habitent-ils ?';
ch2:='ville';
ch3:='Dans cette ';
ch:=concat(ch1,' ',ch3,ch2,' ?');
la variable ch contient:
Où habitent-ils ?Dans cette ville ?
Où habitent-ils ? Dans cette ville ?
Où habitent-ils ? Dans cette ville?
Où habitent-ils ? Dans cetteville ?
soit les instructions suivantes:
ch1←"Elle collectionne des timbres depuis son enfance."
ch2←Sous-chaine(ch1,19,11)
la variable ch2 contient:
"tionne des timbres"
"des timbres"
" des timbres"
"Des timbres"
soit les instructions suivantes:
ch1:='Je voudrais poser une question';
ch2:=copy(ch1,3,8);
' voudrai'
'voudrais'
' voudrais'
'rai'
Quel est l'instruction qui permet de copier les trois derniers caractères d'une variable ch ?
copy(ch,3,length(ch)-3)
copy (ch , 3 , length(ch)-2 )
copy( ch , length(ch)-3 , 3 )
copy( ch, length(ch)-2 , 3 )
Quel est l'instruction qui permet de copier la première moitié d'une variable ch ?
copy( ch , 1 , (length(ch)+1) div 2 )
copy( ch , (length(ch)+1) div 2 , 1 )
copy( ch , 1 , (length(ch)+1)/2 )
copy( ch , (length(ch)+1)/2 , 1 )
soit les instructions suivantes:
ch1←"Connais-toi-même"
ch2←" toi"
Insérer(ch2,ch1,12)
le résultat de ces instructions est:
ch1="Connais-toi-toi même"
ch2="Connais-toi-toi même"
ch1="Connais-toi toi-même"
ch2="Connais-toi toi-même"
soit les instructions suivantes:
ch1:='J''étais absent la semaine ';
ch2:='dernière';
insert(ch2,ch1,length(ch1)+1);
le résultat de ces instructions est:
ch1='J’étais absent la semaine dernière'
ch2='J’étais absent la semaine dernière'
ch1='J’étais absent la semainedernière '
ch2='J’étais absent la semainedernière '
soit les instructions suivantes:
ch:='Il faut apprendre à philosopher, et non pas la philosophie';
x:=Pos('philo',ch);
la variable x contient:
48
21
0
20
soit les instructions suivantes:
ch:='Il faut apprendre à philosopher, et non pas la philosophie';
x:=Pos('il faut',ch);
la variable x contient:
1
0
-1
erreur
soit les instructions suivantes:
ch:='Je pense, donc je suis';
delete(ch,9,14);
la variable ch contient:
", donc je suis"
"Je pense, don"
"Je pense,"
"Je pense"
soit les instructions suivantes:
ch←"Le bonheur est une fin en soi"
efface(ch,11,19)
la variable ch contient:
" est une fin en soi"
"Le bonheur"
"Le bonheur est une "
"le bonheur "
soit les instructions suivantes:
x := 3.14157;
STR(x,ch);
le résultat de ces instructions est:
x="3.14157"
ch="3.14157"
soit les instructions suivantes:
x ← -5/2
convch(x,y)
le résultat de ces instructions est:
y="-2.5"
y="-2.5000000000E+00"
y="-5/2"
y=-5/2
soit les instructions suivantes:
ch ← "01/10/2018"
valeur(ch,x,e)
le résultat de ces instructions est:
( x=0 , e=3 )
(x=3 , e=0 )
( x=1/10/2018 , e=3 )
( x=1/10/2018 , e=0 )
soit les instructions suivantes:
ch ← "2018"
valeur(ch,x,e)
le résultat de ces instructions est:
x=0
e=3
x=2018
e=0
soit les instructions suivantes:
ch := '490,5';
val(ch,x,e);
le résultat de ces instructions est:
(x=490,5 , e=0 )
(x=0 , e=4 )
(x=490.5 , e=0 )
(x=4905 , e=0 )
soit les instructions suivantes:
ch := '-013.50';
val(ch,x,e);
le résultat de ces instructions est:
x=0
e=4
x=-13.5
e=0
x=-13,5
e=0
x=0
e=1
Parmi les types suivants, lesquels sont des types scalaires?
Integer
Real
String
Char
Un type énuméré
Que dire de juste à propos d'un tableau ?
Sa longueur peut varier au cours du déroulement du programme.
Tous ses éléments doivent appartenir au même type de variable.
Son nombre de dimension ne doit pas excéder trois.
Les cases d'un tableau peuvent être de type différents.
Parmi les types suivants, lequel est juste ?
type pair = (2, 4, 6, 8,10) ;
type repos = (dimanche, lundi, vendredi) ;
type voyelle = ('a', 'e', 'i', 'o', 'u', 'y') ;
Parmi les affirmations suivantes, laquelle est juste ?
On peut écrire et lire une variable de type énuméré.
On peut seulement écrire une variable de type énuméré
On ne peut ni lire ni écrire une variable de type énuméré.
Laquelle des déclarations suivantes est fausse ?
Var tab : Array [ 1..10 ] Of Integer ;
Type tab = Array [ 1..10 ] Of Integer ;
Const tab = Array [ 1..10 ] Of Integer ;
De quels types doivent dériver les types intervalles ?
De n'importe quel type de base du Pascal.
D'un type scalaire.
Seulement du type Integer
Parmi les déclarations suivantes, laquelle est fausse ?
Var tableau : Array[-20..20] Of Real ;
Var tableau : Array['M'..'b'] Of Char ;
Var tableau : Array[10..0] Of Integer ;
Parmi les déclarations suivantes, laquelle(s) est fausse(s) ?
Var T : Array [Real] Of Integer ;
Var T : Array [0..50] Of string ;
Var T : Array [100..10] Of integer;
Var T : Array ['A'..'Z'] Of LongInt;
Laquelle(s) des instructions suivantes sont applicables à une variable de type énuméré?
WriteLn
Ord
Succ
Read
Chr
