LES TYPES SIMPLES

advertisement
LES TYPES SIMPLES
LES TYPES SIMPLES
Plan du chapitre :
I.
II.
III.
IV.
V.
Introduction …………………………………………………………………………………………………... 12
Le Type Entier ………………………..………………………………………………………………..……. 12
Le Type Réel ……………………………………………….………………………………………………….. 13
Le Type Caractère ………………………………………………………………………..………………. 14
Le Type Booléen ……………………………………………………………………………………………. 16
Objectifs du chapitre :
 Connaître le domaine de définition des différents types simple.
 Comprendre et manipuler les opéraeurs de base sur chaque type.
11
LES TYPES SIMPLES
I. Introduction :
On a vu dans le chapitre précédent que toute variable possède un type et on a distingué deux
familles de types : les types simples et les types composés.
Dans le présent chapitre, on va passer en revue les types simples qui sont au nombre de quatre :




Le Type Entier.
Le Type Réel.
Le Type Caractère.
Le Type Booléen ou Logique.
II. Le Type Entier :
II.1 Définition :
Le type Entier comprend un sous ensemble fini de nombres entiers, il représente une restriction
de l’ensemble mathématique des nombre relatifs Z.
Plage de valeurs:
-∞
[
Z
… -1 0 1 …
Min
]
+∞
Max
La taille de l’ensemble (valeurs de Min et Max) varie en fonction des performances techniques
de la machine et celles du langage de programmation utilisé.
En langage C : Min = -32768
Max = 32767
II.2 Représentation algorithmique :
Le type entier étant reconnu automatiquement, il n’est pas nécessaire de le déclarer dans la partie
des types. Il suffit d’indiquer devant le nom de la variable son type.
Algorithme nomalgo
Constante ………….
Type ……………….
Variable ……………
C’est ici !!!!
Début
<action1>
<action2>
Variable
Nomvar : Entier (Nomvar étant la variable qui sera utilisée dans l’algorithme)
Si on a plusieurs variables en même temps, ce n’est pas la peine de les déclarer séparément ; on
peut les regrouper en les séparant par une virgule.
Variable
Nomvar1, Nomvar2, ……., NomvarN : Entier
12
LES TYPES SIMPLES
II.3 Les opérations de base sur le type Entier :
Sur le type Entier, on distingue deux catégories d’opérations :
o
o
Les opérations arithmétiques.
Les opérations algorithmiques telles que la lecture, l’écriture, etc ; elles feront
l’objet d’un chapitre à part.
Opération
Symbole
Addition
Soustraction
Multiplication
Division (entière)
Reste de la Division entière
+
*
DIV
MOD
Exemple
A=5, B=7 ; A+B renvoie 12
A=5, B=7 ; A-B renvoie –2
A=5, B=7 ; A* B renvoie 35
A=5, B=7 ; A DIV B renvoie 0
A=5, B=7 ; A MOD B renvoie 5
Tableau 2: Opérateurs sur les entiers.
III. Le Type Réel :
III.1 Définition :
Le type Réel comprend un sous ensemble fini de nombres réels, dont la taille varie en fonction
des performances techniques de la machine et celles du langage de programmation utilisé.
Le type réel représente une restriction de l’ensemble mathématique des nombre réels IR.
Plage de valeurs:
-∞
IR
[ … -1.0.. -0.00 0 0.0.. 1.0…
Min
]
+∞
Max
III.2 Représentation algorithmique :
Le type Réel étant reconnu automatiquement, il n’est pas nécessaire de le déclarer dans la partie
des types. Il suffit d’indiquer devant le nom de la variable son type.
Algorithme nomalgo
Constante ………….
Type ……………….
Variable ……………
C’est ici !!!!
Début
<action1>
Variable
Nomvar : Réel (Nomvar étant la variable qui sera utilisée dans l’algorithme)
Si on a plusieurs variables en même temps, ce n’est pas la peine de les déclarer séparément ; on
peut les regrouper en les séparant par une virgule.
Variable
Nomvar1, Nomvar2, ……., NomvarN : Réel
13
LES TYPES SIMPLES
III.3 Ecriture d’un nombre réel :
On distingue deux écritures lors de l’exécution d’un programme : une écriture standard et une
écriture scientifique (comme c’est le cas des machines à calculer).
a. Ecriture Standard :
Un nombre réel s’écrit dans ce cas sous forme d’une partie entière et une partie décimale avec un
séparateur qui n’est plus la virgule mais le point.
Si on veut représenter les réels 5 ; 2,69 et –5,25 on aura l’écriture suivante :5.0, 2.69 et -5.25
b. Ecriture Scientifique :
Un nombre réel s’écrira sous forme d’une mantisse et d’un exposant.
Par exemple, si on veut représenter 6,24 alors on écrira 624 * e -2
III.4 Les opérations de base sur le type Réel :
Sur le type Réel, on distingue deux catégories d’opérations :
o
o
Les opérations arithmétiques
Les opérations algorithmiques telles que la lecture, l’écriture, etc ; elles feront
l’objet d’un chapitre à part.
Opération
Symbole
Addition
Soustraction
Multiplication
Division normale
Fonctions prédéfinies
Carré(X)
RacineCarré(x)
+
*
/
Exemple
A=5.5, B=7.0 ; A+B renvoie 12.5
A=5.5, B=7.0 ; A-B renvoie –2.5
A=5.5, B=7.0 ; A* B renvoie 38.5
A=5.5, B=7.0 ; A / B renvoie 0.79
Retourne le carré de X
Retourne la racine carré de X si X>=0, sinon elle retourne erreur
Tableau 3: Opérateurs et fonctions sur les réels.
Application :
On vous demande de calculer le côté BC d’un triangle ABC rectangle en A.
B
A
C
IV. Le Type Caractère :
IV.1 Définition :
Le type Caractère est ensemble de caractères comportant :
o
o
o
o
Les 26 lettres alphabétiques en majuscules (‘A’ jusqu’à ‘Z’)
Les 26 lettres alphabétiques en minuscules (‘a’ jusqu’à ‘z’)
Les 10 chiffres arabes (‘0’ jusqu’à ‘9’).
Quelques caractères spéciaux.
Remarque :
Chaque valeur d’un caractère est délimitée par deux apostrophes ‘ ’.
Exemples : ‘A’, ‘a’, ‘+’, ‘10’….
14
LES TYPES SIMPLES
IV.2 Représentation algorithmique :
Le type Caractère étant reconnu automatiquement, il n’est pas nécessaire de le déclarer dans la
partie des types. Il suffit d’indiquer devant le nom de la variable son type.
Algorithme nomalgo
Constante ………….
Type ……………….
Variable ……………
C’est ici !!!!
Début
<action1>
Variable
Nomvar : Caractère (Nomvar étant la variable qui sera utilisée dans l’algorithme)
Si on plusieurs variables en même temps, ce n’est pas la peine de les déclarer séparément ; on
peut les regrouper en les séparant par une virgule.
Variable
Nomvar1, Nomvar2, ……., NomvarN : Caractère
IV.3 Ordre d’apparition des éléments du type Caractère :
Tous ces caractères sont ordonnés selon leurs codes ASCII (voir Annexe A).
Exemple d’apparition des différentes valeurs du type caractère :
…‘0’<’1’<’2’<’3’<’4’<’5’<’6’<’7’<’8’<’9’…<’A’<’B’…..<’Y’<’Z’…<’a’<’b’<…....<’y’<’z…
IV.4 Les Opérations de base sur le type Caractère :
Sur le type Caractère, on distingue deux catégories d’opérations :
o
o
Les opérations propres aux caractères
Les opérations algorithmiques telles que la lecture, l’écriture, etc ; elles feront
l’objet d’un chapitre à part.
Opération
Suivant
Précédent
Symbole
Suiv
Prec
Exemple
Si A=’C’ alors Suiv(A) renvoie ‘D’
Si A=’C’ alors Prec(A) renvoie ‘B’
Tableau 4: Opérateurs sur les caractères.
Remarques :


Les opérations suivant et précédent respectent l’ordre d’apparition des caractères
mentionné ci-dessus.
la fonction Suiv et Prec s’appliquent sur des variables de type caractère ou des constantes
caractères.
Exemple: succ(‘A’) envoie ‘B’ par contre succ(A) avec A variable contenant le caractère ‘C’
renvoie ‘D’.
15
LES TYPES SIMPLES
V. Le Type Booléen ou Logique :
V.1 Définition
Un type Booléen dit également logique est un ensemble qui est constitué de deux éléments dont
la valeur de l’un contredit celle de l’autre.
Domaine de valeurs :
Le type booléen contient deux valeurs logiques Vrai et Faux
On peut représenter ces notions abstraites de VRAI et de FAUX :




Pour représenter des nombres binaires, on déclare un type booléen formé de 0 et 1.
Pour représenter une variable réponse, on déclare un type booléen formé de Oui et Non.
Pour représenter une variable logique, on déclare un type booléen formé de Vrai et Faux.
Pour représenter l’état d’une lampe, on déclare un type booléen formé de Allumée et
Eteinte.
 Pour représenter l’état d’un interrupteur, on déclare un type booléen formé de Ouvert et
Fermé.
V.2 Représentation algorithmique
Le type Booléen étant reconnu automatiquement, il n’est pas nécessaire de le déclarer dans la
partie des types. Il suffit d’indiquer devant le nom de la variable son type.
Algorithme nomalgo
Constante ………….
Type ……………….
Variable ……………
C’est ici !!!!
Début
<action1>
<action2>
Variable
Nomvar : Booléen (Nomvar étant la variable qui sera utilisée dans l’algorithme)
Si on plusieurs variables en même temps, ce n’est pas la peine de les déclarer séparément ; on
peut les regrouper en les séparant par une virgule.
Variable
Nomvar1, Nomvar2, ……., NomvarN : Caractère
V.3 Opérateurs Logiques :
Sur le type booléen, on applique des opérateurs logiques pour constituer une expression logique ;
ces opérateurs sont :
 NON (NOT) : la négation.
 ET (AND) : la conjonction.
16
LES TYPES SIMPLES
 OU (OR): la disjonction.
En les appliquant sur des variables booléennes, voilà ce que ça donne :
X
Faux
Faux
Vrai
Vrai
Y
Faux
Vrai
Faux
Vrai
Non X
Vrai
Vrai
Faux
Faux
X Et Y
Faux
Faux
Faux
Vrai
16
X Ou Y
Faux
Vrai
Vrai
Vrai
Tableau 5: Table de vérité pour les opérateurs ET, OU et NON.
Les lois de Morgan :
NON (X ET Y)  NON X OU NON Y
NON (X OU Y)  NON X ET NON Y
Remarque :
Il existe un ordre de priorité entre les opérateurs logiques :
-
la négation NON est prioritaire par apport à la conjonction ET.
la conjonction ET est prioritaire par apport à la disjonction OU.
Exemple :
NON X ET Y : on doit évaluer d’abord NON X puis la conjonction ET
Application :
Soient les propositions u, v, w. Simplifier l’expression suivante : (u ET v) OU NON v.
V.4 Exemples :
Utilisation des opérateurs de comparaison
1)
Algorithme Essai1
Variable
Var1, Var2 : Booléen
Début
Var1=vrai
Var2=Non(Var1)
Fin.
Var2 va contenir la valeur faux
2)
Algorithme Essai2
Variable
Age : Entier
Test : Booléen
Début
Age=20
Test=(Age>20)
Fin.
Test va contenir la valeur faux
17
LES TYPES SIMPLES
17
18
Téléchargement