Vous êtes sur la page 1sur 18

20/09/2022

Chapitre 3 :
Les Types Simples

Objectifs du chapitre :

u Connaître le domaine de définition des différents


types simples.

u Comprendre et manipuler les opérations de base


sur chaque type.

K. Jebli Cours Algorithm ique et Program m ation 1 2

1
20/09/2022

I- Introduction :

u 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.
u Dans le présent chapitre, on va passer en revue les types
simples qui sont au nombre de quatre :
u Le Type Entier.
u Le Type Réel.
u Le Type Caractère.
u Le Type Booléen ou Logique.
K. Jebli Cours Algorithm ique et Program m ation 1 3

II- Le Type Entier :

K. Jebli Cours Algorithm ique et Program m ation 1 4

2
20/09/2022

II.1- Définition :

u Le type Entier comprend un sous ensemble fini de


nombres entiers, il représente une restriction de
l’intervalle mathématique des entiers relatifs Z.
u En effet, on ne peut pas représenter l’intervalle

]-∞ , +∞[
u On représente alors un intervalle beaucoup plus restreint

K. Jebli Cours Algorithm ique et Program m ation 1 5

u Plage de valeurs:
Z
-∞ [ … -1 0 1 … ] +∞
Min Max

u 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é.
u En langage C :
Min = -32768
Max = +32767

K. Jebli Cours Algorithm ique et Program m ation 1 6

3
20/09/2022

Les types entiers en C

nombre
définition description domaine min domaine max
d'octets

char caractère -128 127 1

short entier court -32768 32767 2

32767 2 ou
int entier standard -32768
217483647 4
-2147483648

long entier long -9223372036854775808 8


9223372036854775807
K. Jebli Cours Algorithm ique et Program m ation 1 7

En C, on peut rajouter le préfixe unsigned à la définition d'un


type de variables entières, les domaines des variables sont
déplacés comme suit:
domaine nombre
définition description domaine max
min d'octets

unsigned char caractère 0 255 1

unsigned short entier court 0 65535 2

entier 2 ou
unsigned int 0 65535
standard 4
0 4294967295

unsigned long entier long 0


18446744073709551615 8

K. Jebli Cours Algorithm ique et Program m ation 1 8

4
20/09/2022

II.2- Déclaration algorithmique :


Variable
Nomvar : Entier

u Nomvar étant le nom de la variable qui sera utilisée dans


l’algorithme

u Si on a plusieurs variables en même temps et de même type, 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
K. Jebli Cours Algorithm ique et Program m ation 1 9

Partie où
Partie déclarative
déclarer les
variables

K. Jebli Cours Algorithm ique et Program m ation 1 10

5
20/09/2022

II.3- Les opérations de base sur le type


Entier :
Opération Symbole Exemple

Addition + A=15, B=7 ; A+B renvoie 22

Soustraction - A=15, B=7 ; A-B renvoie –8

Multiplication * A=15, B=7 ; A* B renvoie 105

Division (entière) DIV A=15, B=7 ; A DIV B renvoie 2

Reste de la Division MOD A=15, B=7 ; A MOD B renvoie 1


entière

K. Jebli Cours Algorithm ique et Program m ation 1 11

III- Le Type Réel :

K. Jebli Cours Algorithm ique et Program m ation 1 12

6
20/09/2022

III.1- Définition :

u 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é.
u Le type réel représente une restriction de
l’intervalle mathématique des nombre réels R.

K. Jebli Cours Algorithm ique et Program m ation 1 13

u Plage de valeurs:

-∞ [ … -1.0.. -0.00 0 0.0.. 1.0… ] +∞


Min Max

u 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é.

K. Jebli Cours Algorithm ique et Program m ation 1 14

7
20/09/2022

III.2- Déclaration algorithmique :


Variable
Nomvar : Réel

u Nomvar étant le nom de la variable qui sera utilisée dans


l’algorithme

u 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
K. Jebli Cours Algorithm ique et Program m ation 1 15

Types réels en C

Type de donnée Signification Taille (en octets) Plage de valeurs acceptée


-38
float Flottant (réel) 4 3.4*10 à 3.4*1038
-308
double Flottant double 8 1.7*10 à 1.7*10308
-4932
long double Flottant double 10 3.4*10 à 3.4*104932
long

K. Jebli Cours Algorithm ique et Program m ation 1 16

8
20/09/2022

III.3- Les opérations de base sur le


type Réel :
Opération Symbole Exemple
Addition + A=5.5, B=7.0 ; A+B renvoie 12.5
Soustraction - A=5.5, B=7.0 ; A-B renvoie –2.5
Multiplication * A=5.5, B=7.0 ; A* B renvoie 38.5
Division réelle / A=5.5, B=7.0 ; A / B renvoie 0.79
Fonctions prédéfinies
Carré(X) Retourne le carré de X
RacineCarré(x) Retourne la racine carré de X si X>=0, sinon elle
retourne erreur
K. Jebli Cours Algorithm ique et Program m ation 1 17

IV- Le Type Caractère :

K. Jebli Cours Algorithm ique et Program m ation 1 18

9
20/09/2022

IV.1- Définition :

u Le type Caractère est ensemble de caractères comportant :


u Les 26 lettres alphabétiques en majuscules (‘A’ jusqu’à ‘Z’)
u Les 26 lettres alphabétiques en minuscules (‘a’ jusqu’à ‘z’)
u Les 10 chiffres arabes (‘0’ jusqu’à ‘9’).
u Et des caractères spéciaux.

u Remarque : Chaque valeur d’un caractère est délimitée par


deux apostrophes ‘’.

Exemples : ‘A’, ‘a’, ‘+’, ‘1’….


K. Jebli Cours Algorithm ique et Program m ation 1 19

IV.2- Représentation algorithmique :


u 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.
Variable
Nomvar: Caractère
u Nomvar étant le nom de la variable qui sera utilisé dans l’algorithme

u 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 : Caractère

K. Jebli Cours Algorithm ique et Program m ation 1 20

10
20/09/2022

IV.3- Ordre d’apparition des éléments du


type Caractère :

u Tous les caractères sont ordonnés selon leurs codes ASCII


u L'ASCII, pour American Standard Code for Information Interchange,
désigne dans le monde informatique une norme de codage de
caractères.
u Dans le système de codage ASCII, chaque caractère est codé sur un
octet.
u En effet, comme les ordinateurs fonctionnent en binaire, un
numéro est attribué à chaque caractère. Ce nombre peut
être codé avec des chiffres binaires (bits). À la fin du XX e siècle, 8
bits (c'est-à-dire un octet) étaient assez habituelles et permettait de
représenter 256 nombres, donc 256 caractères différents.
K. Jebli Cours Algorithm ique et Program m ation 1 21

IV.3- Ordre d’apparition des éléments du


type Caractère : (suite)
u 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…

K. Jebli Cours Algorithm ique et Program m ation 1 22

11
20/09/2022

La table ASCII

K. Jebli Cours Algorithm ique et Program m ation 1 23

IV.4- Les Opérations de base sur le type


Caractère :

u Sur le type Caractère, on distingue deux catégories


d’opérations :
u Les opérations propres aux caractères
u Les opérations algorithmiques telles que la lecture, l’écriture,
etc ; elles feront l’objet du chapitre suivant.

Opération Symbole Exemple


Suivant Suiv Si A=’C’ alors Suiv(A) renvoie ‘D’
Précédent Prec Si A=’C’ alors Prec(A) renvoie ‘B’

K. Jebli Cours Algorithm ique et Program m ation 1 24

12
20/09/2022

IV.4- Les Opérations de base sur le type


Caractère :

u Il existe aussi dans tous les langages de programmation


une fonction qui renvoie le caractère correspondant à un
code Ascii donné (fonction Chr), et l’inverse, qui fournit le
code Ascii d'un caractère (fonction Asc) .

u Exemple:
Asc(‘N’) vaut 78
Chr(63) vaut ‘?’

K. Jebli Cours Algorithm ique et Program m ation 1 25

V- Le Type Booléen ou Logique :

K. Jebli Cours Algorithm ique et Program m ation 1 26

13
20/09/2022

V.1- Définition

u 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.
u Le type booléen contient deux valeurs logiques Vrai et
Faux

K. Jebli Cours Algorithm ique et Program m ation 1 27

V.2- Représentation algorithmique


u 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.
Variable
Nomvar: Booléen
u Nomvar étant le nom de la variable qui sera utilisé dans l’algorithme

u 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 : Booléen
K. Jebli Cours Algorithm ique et Program m ation 1 28

14
20/09/2022

V.3- Opérateurs Logiques :

u Sur le type booléen, on applique des opérateurs logiques


pour constituer une expression logique.
u Ces opérateurs sont :
NON (NOT) : la négation (qui est une opération unaire)
ET (AND) : la conjonction (qui est une opération binaire)
OU (OR): la disjonction (qui est une opération binaire)

K. Jebli Cours Algorithm ique et Program m ation 1 29

u Soient X et Y deux variables booléennes, en leur


appliquant les opérateurs logiques, on obtient la table de
vérité suivante:

X Y Non X X Et Y X Ou Y
Faux Faux Vrai Faux Faux
Faux Vrai Vrai Faux Vrai
Vrai Faux Faux Faux Vrai
Vrai Vrai Faux Vrai Vrai

K. Jebli Cours Algorithm ique et Program m ation 1 30

15
20/09/2022

Remarque
u En plus de ces types prédéfinis, le programmeur a la possibilité de définir
lui-même de nouveaux types en fonction de ses besoins.
u Exemple
Types
Saison = (”A”,”H”,”P”,”E”)
Tnote = 0.0 .. 20.0
Variables
s : Saison
note : Tnote

u La variable s de type saison ne peut prendre que les valeurs ”A”, ”H”, ”P”
ouCours”E”.
K. Jebli Algorithm ique et Program m ation 1 31

VII- Les expressions

K. Jebli Cours Algorithm ique et Program m ation 1 32

16
20/09/2022

VII.1- Définitions

u Les opérateurs <, ≤, =, <>, >, ≥ permettent de comparer


les valeurs de type entier, réel et caractère.
u Les expressions sont des combinaisons entre des variables
et des constantes à l’aide d’opérateurs.
u Elles expriment un calcul (expressions arithmétiques) ou
une relation (expressions logiques).

K. Jebli Cours Algorithm ique et Program m ation 1 33

Leçon 1 : Introduction à la programmation

Exemple : x * 53.4 / (2 + pi)

L’ordre selon lequel se déroule chaque opération de calcul est important.


Afin d’éviter les ambiguïtés dans l’écriture, on se sert des parenthèses et
des Ordre
u depriorité
relations de priorité́ des
entre les operateurs
opérateurs arithmétiques
arithmétiques :
Ordre de priorité des opérateurs arithmétiques
Priorité Opérateurs
1 - signe négatif (oprérateur unaire)
2 () parenthèses
3 ^ puissance
4 * et / multiplication et division
5 + et - addition et soustraction

En cas de conflit entre deux opérateurs de même priorité, on commence


par celui situé le plus à gauche.
u En cas de conflit entre
VII. 2. Les expressions logiques
deux operateurs de même priorité,
on commence par celui situé etledesplus
Ce sont des combinaisons entre des variables à gauche.
constantes à l’aide
d’opérateurs relationnels (=, <, <=, >, >=, #) et/ou des combinaisons entre
des variables et des constantes logiques à l’aide d’opérateurs logiques
(NON , ET, OU, …).
Ici encore, on utilise les parenthèses et l’ordre de priorité entre les
différents opérateurs pour résoudre les problèmes de conflits.
K. Jebli Cours Algorithm ique et Program m ation 1 34

Opérateurs logiques Opérateurs relationnels


Priorité Opérateur Priorité Opérateur
1 NON 1 >
2 ET 2 >=
3 OU 3 <
4 <=
5 =
6 # 17
EXERCICES D APPLICAION

Exercice 1.1
Exemple : x * 53.4 / (2 + pi)
Exemple : x * 53.4 / (2 + pi)
L’ordre selon lequel se déroule chaque opération de calcul est important.
Afin d’éviter
L’ordre leslequel
selon ambiguïtés dans l’écriture,
se déroule on se sert
chaque opération des parenthèses
de calcul et
est important.
desAfin
relations de les
d’éviter priorité entre lesdans
ambiguïtés opérateurs arithmétiques
l’écriture, : parenthèses et
on se sert des 20/09/2022
des relations de priorité entre les opérateurs arithmétiques :
Ordre de priorité des opérateurs arithmétiques
Ordre de priorité des opérateurs arithmétiques
Priorité Opérateurs
1
Priorité - signe négatif (oprérateur unaire)
Opérateurs
2 1 ( )- parenthèses
signe négatif (oprérateur unaire)
3 2 ^ ( ) puissance parenthèses
4 3 * et ^ / multiplication
puissance et division
5 4 + et - / addition
* et et soustraction
multiplication et division
5 + et - addition et soustraction
VII.3- Les expressions logiques
En cas de conflit entre deux opérateurs de même priorité, on commence
parEncelui
cas situé le plusentre
de conflit à gauche.
deux opérateurs de même priorité, on commence
par celui situé le plus à gauche.
u Ce
VII.sont
2. Lesdes combinaisons
expressions logiquesentre des variables et des constantes à
l’aide
Ce sontd’opérateurs
VII. 2. Les expressions
des combinaisons relationnels
logiques (=, <, <=,
entre des variables >,constantes
et des >=, <>) et/ou
à l’aidedes
combinaisons
d’opérateurs entre des
Ce sont desrelationnels variables
(=, <,
combinaisons <=, >,
entre et des et
des>=,variables
#) et/ou constantes
desdes logiques
combinaisons
constantes l’aideà l’aide
àentre
d’opérateurs
desd’opérateurs logiques
variables etrelationnels (NON
des constantes , ET,
(=, <, logiques
<=, OU,
>, >=, ...).
à #)l’aide
et/ou d’opérateurs logiques
des combinaisons entre
(NON , ET, OU, et…).
des variables des constantes logiques à l’aide d’opérateurs logiques
u Ici (NON
encore,
, ET,on utilise
OU, …). les parenthèses et l’ordre de priorité entre les
Ici encore, operateurs
différents on utilise lespour
parenthèses et l’ordre
résoudre de priorité de
les problèmes entre les
conflits.
différents
Ici encore, opérateurs
on utilisepour les
résoudre les problèmes
parenthèses de conflits.
et l’ordre de priorité entre les
différents opérateurs pour résoudre les problèmes de conflits.
Opérateurs logiques Opérateurs relationnels
Opérateurs logiques Opérateurs relationnels
Priorité Opérateur Priorité Opérateur
1
Priorité NON
Opérateur 1
Priorité >
Opérateur
21 ETNON 21 >=>
32 OUET 32 <>=
3 OU 43 <=<
54 =<=
K. Jebli Cours Algorithm ique et Program m ation 1
6 5 #= 35

EXERCICES D APPLICAION 6 #
EXERCICES D APPLICAION
Exercice 1.1
Exercice 1.1

9
9

EXERCICES D’APPLICATION

u 1- Quel est l’ordre de priorité des différents operateurs


de l’expression suivante :
((3 * a) – x ^ 2) – (((c – d) / (a / b)) / d)

u 2- Evaluer l’expression suivante :


5 + 2 * 6 – 4 + (8 + 2 ^ 3) / (2 – 4 + 5 * 2)

K. Jebli Cours Algorithm ique et Program m ation 1 36

18

Vous aimerez peut-être aussi