0% ont trouvé ce document utile (0 vote)
98 vues8 pages

Chapitre 2 Info

Transféré par

Abdelkader Barraj
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
98 vues8 pages

Chapitre 2 Info

Transféré par

Abdelkader Barraj
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Professeur : Abdelkader BARRAJ Programmation - 3ème année Sciences informatiques

Chapitre II : Les structures de données


1. Types de données
En programmation, pour résoudre un problème informatique, il faut utiliser des ………………….
Chaque variable possède un nom (identifiant), un type et un contenu (valeur).

1.1 – Le type numérique :


Une variable numérique peut être de type entier (…………..) ou réel (……………)
• Une variable de type entier contient une valeur sans virgule : 2, -17, 1254, 0 , -5
• Une variable de type réel contient une valeur avec virgule : 5.2 , -7.0 , 2.55, 15.

a) Les opérateurs arithmétiques et de comparaison :

Pour calculer la puissance xy en python on peut utiliser l’opérateur **


Exemple 25 = 2**5 = 32

Exercice 4

Complétér le tableau suivant par l’instruction algorithmique, en python ou la valeur de x :


Instruction algorithmique En python Valeur de x
x 15 + 3 * 2 + 5
x (18 mod 5 ) / 2
x = (3 % 5 ) // 2
x  abs(-12.5)
x (15+2*3+4/2+6 ) div 2
x 17>17 False
x = ( 10 != (9+1)) or (12 > -1)

Page 1
Professeur : Abdelkader BARRAJ Programmation - 3ème année Sciences informatiques
b) Les fonctions prédéfinies sur les types numériques :

le réel x = 12 . 75
Partie …………….………

Partie …………………..

Syntaxe Syntaxe Rôle de la fonction Exemples


Algorithmique Python
Abs(x) abs(x) Donne la valeur absolue de x Abs(-12.5) = 12.5
Ent(x) int(x) Supprime la partie décimale Ent(15.63) = 15
Ent(-4.5) = -4
round(x) Donne l’entier le plus proche Arrondi(12.9) = 13
Arrondi(x) NB : si la partie décimale =0.5 la fonction Arrondi(-4.2)=-4
retourne l’entier pair le plus proche Arrondi(1.5) = 2
Arrondi(2.5)=2
Racine_carrée(x) sqrt(x) Retourne la racine carrée d’un nombre Racine_carré(16)= 4.0
prositif
Aléa(vi,vf) randint(vi,vf) Donne un entier aléatoire de l’intervalle Aléa(10,202) = 15
[vi, vf] Aléa(0,1) = 1

- En python pour utiliser la fonction sqrt :


- En python pour utiliser la fonction randint :

Exercice 5
Complétér le tableau suivant par la valeur ainsi que le type de x (en python) :
Instruction algorithmique Valeur de x Type de x
x 15 + 3 * 2 + Ent(5.56)
x 15. + 3 * 2 + Ent(5.56)
x(7+ Arrondi (14.36) ) div 2
x Aléa(10,20) > 30
x  Arrondi(abs(-12.9)) + Racine_carrée (16)
1.2 – Le type booléen :
Une variable logique est de type booléen (………….)
• Une variable booléenne ne peut contenir que les valeurs Vrai (True) ou Faux (False)

a) Les opérateurs logiques et leurs priorités :

x y non(x) x et y x ou y x ouex y
Vrai Vrai Faux Vrai Vrai Faux
Vrai Faux Faux Faux Vrai Vrai
Faux Vrai Vrai Faux Vrai Vrai
Faux Faux Vrai Faux Faux Faux

La priorité des opérateurs logiques :


1- non (not)
2- et (and)
3- ou (or)
4- ouex (^)

Page 2
Professeur : Abdelkader BARRAJ Programmation - 3ème année Sciences informatiques
Exercice 6

Evaluer les expressions logiques suivantes :


Expression logique Valeur de K
K non ((15+2) = Ent(15.2))
K non (10>9) ou (Arrondi(12.59)=12) et (12 div 2 = 6)
K 1*2*3*4*5*6*7*8*0 = 0
K ("Anis" = "anis") ouex (10= Arrondi(11.58))
1.3 – Le type textuel :
Une variable textuelle est de type chaine de caractères (………………..)
En algorithmique, on distingue 2 types de variables textuelles : caractère et chaine de caractères
a) Caractère :
Ne peut contenir qu’un seul caractère : "a", "b", …,"A", "B", … ,"0", … ,"9", "*", "=", …
Les fonctions prédéfinies sur le type caractère :
Syntaxe Syntaxe Rôle de la fonction Exemples
Algorithmique Python
ord("A") = ……
ord(c) ord(c) Donne le code ASCII du caractère c ord("a") = ……
ord("0") = ……
chr(n) chr(n) Donne le caractère ayant le code ASCII n chr(48) = "0"
chr(66) = "B"
b) Chaine de caractères :
Peut contenir un ensemble de caractères : " ", "Algorithme", "Bac 2023", …
Les fonctions prédéfinies sur le type chaine de caractères :
Syntaxe Syntaxe Rôle de la fonction Exemples
Algorithmique Python
long(ch) len(ch) Donne le nombre de caractères long("prog") = …………………
de la chaine ch
pos(ch1,ch2) ch2.find(ch1) Donne la 1ère position de ch1 pos("o","foot") = ………………..
dans ch2.
convch(d) str(d) Convertit un nombre décimal en convch(123)="123"
chaine
valeur(ch) int(ch) Convertit une chaine en valeur valeur("12.9") = 12.9
float(ch) numérique
Donne Vrai si la chaine est estnum("2598") = …………..
estnum(ch) ch.isdigit() convertible en une valeur estnum("25 98") = ………….
numérique, sinon elle donne .
Faux
sous_chaine ch[d :f] Retourne une partie de la chaine sous_chaine("Python", 0,4)= …….
(ch,d,f) ch à partir de la position d jusqu’à
la position f-1
efface(ch,d,f) ch[:d]+ch[f :] Retourne la chaine formée par la efface('Python', 1,4) ="Pon"
partie de la position 1 jusqu’à la
position f-1
majus(ch) ch.upper() Retourne la chaine en majuscule majus("Python") = "PYTHON"
ch.lower() Retourne la chaine en minuscule
Retourne la chaine formée par la "Prog" + "Pyth" = ……………..
ch1+ch2+ch3 ch1+ch2+ch3 concaténation des chaines ch1,
ch2 et ch3
Donne vrai si la chaine ch est
ch.isalpha() formée uniquement par des
lettres alphabétiques

Page 3
Professeur : Abdelkader BARRAJ Programmation - 3ème année Sciences informatiques

Exercice 7

Soit le code Python suivant, donner pour chaque instruction la valeur de k :

En Python il existe d’autres fonctions :

* replace : remplacer un mot par un autre un certain nombre de fois dans un texte
Exemple :

→ three three was a race horse, two two was one too."

* count : compter le nombre d’élément dans une liste, tuple ou chaine de caractères
Exemples :

Page 4
Professeur : Abdelkader BARRAJ Programmation - 3ème année Sciences informatiques

1.4 – Le type vecteur :


a) Présentation :
Appelé aussi tableau à une dimension (unidimensionnelle) permet le regroupement d’un
ensemble d’éléments de même type (algorithmiquement) .

T = L’identifiant (nom) du tableau


T contient 6 éléments de type entier

T 15 -199 6 0 17 216
0 1 2 3 4 5

La 5ème case = la case d’indice 4


Les ……………………………………….
T[4]=17 : le contenu de la case d’indice 4 = 17

b) Déclaration algorithmique :
Méthode 1 Méthode 2

c) Implémentation en Python :
Pour implémenter un tableau en Python, plusieurs solutions sont possibles :
Les listes, les tuples, les tableaux numpy. Dans ce cours nous utiliserons la bibliotèque numpy.

Déclaration en Python en utilisant la bibliothèque Numpy


Déclaration dans le cas général
import numpy as np
Nom_Tableau = np.array ([Type_élément ( )] * N [,dtype = object] )

Exemples de déclarations en Python


Déclaration Explication
import numpy as np Pour déclarer un tableau de 20 entiers avec importation
T = np.array ([int ( )] * 20) de la bibliothèque Numpy.
import numpy as np Pour déclarer un tableau de 100 réels avec importation de
T = np.array ([float ()] * 100) la bibliothèque Numpy.
import numpy as np
Pour déclarer un tableau de 50 chaînes de caractères avec
T = np.array ([str ( )] * 50 , dtype = object)
importation de la bibliothèque Numpy.
ou bien T = np.array ([str] * 50)
import numpy as np Pour déclarer un tableau de 10 booléens avec importation
T = np.array ([bool ( )] * 10) de la bibliothèque Numpy.

Page 5
Professeur : Abdelkader BARRAJ Programmation - 3ème année Sciences informatiques
N.B. :
• Pour initialiser un tableau, on pourra utiliser la déclaration suivante :
Nom_Tableau = np.array ([valeur_initiale] * N , Type_élément)
• Les éléments d’un tableau à une seule dimension doivent être de même type.
• Les indices des éléments d’un tableau sont de type scalaire.
• En Python, pour déclarer un tableau de chaînes de caractères et éviter que chaque case contiendra
uniquement le premier caractère de la chaîne saisie, on peut procéder comme suit :
o ajouter "dtype = object" à la déclaration,
o supprimer les parenthèses après le "str".
• L’indice de la 1ère case d’un tableau est, par défaut, égal à Zéro.
• Pour accéder à un élément d’indice « i » d’un tableau : Nom_Tableau [ i ]

Exercice 8

Soit le vecteur T suivant remplit par 5 réels :


15.5 10. 3.5 5. 10.5
0 1 2 3 4
1- Déclarer le tableau T en algorithmique et en python :

2- Donner les instructions Python permettant de remplir le tableau T par les valeurs ci-dessus :

Page 6
Professeur : Abdelkader BARRAJ Programmation - 3ème année Sciences informatiques

1.5 – Le type Matrice :


a) Présentation :
Appelé aussi tableau à deux dimensions (bidimensionnelle). C’est une structure de données formée
par des lignes et des colonnes et contenant des objets de même type (algorithmiquement).

Exemples : Ligne d’indice 0 de la matrice A

Colonne d’indice 1 de la matrice A

• La matrice A est formée par 3 lignes et 4 colonnes


• La matrice M est formée par 4 lignes 4 colonnes
• La matrice M s’appelle matrice carrée d’ordre 4 (car le nombre de ses lignes est égal au
nombre de ses colonnes)

• Pour la matrice M suivante :


Le nombre de lignes L=4 et le nombre de colonnes C= 3.
Donc la matrice contient 4*3 éléments de type entier

M[0,0] M[0,1]
M[0,2]

101 20 36
M[1,0] 6 550 22
M[1,1] 96 1 96
M[1,2] 130 158 7

b) Déclaration algorithmique :
Méthode 1 Méthode 2

Page 7
Professeur : Abdelkader BARRAJ Programmation - 3ème année Sciences informatiques

c) Implémentation en Python :
Pour implémenter une matrice en Python, plusieurs solutions sont possibles :
Les listes, les tuples, les matrices numpy. Dans ce cours nous utiliserons la bibliothèque numpy
Déclaration en Python en utilisant la bibliothèque Numpy
Déclaration dans le cas général
import numpy as np
Nom_Matrice = np.array ([ [Type_élément ( ) ] * M] * N [,dtype = object]))

N.B. :
• N est le nombre de lignes.
• M est le nombre de colonnes.
• Il est obligatoire d’importer la bibliothèque Numpy de Python.

Exemple de déclaration en Python


Pour déclarer une matrice M de 6 lignes et de 5 colonnes d’Entiers :
import numpy as np
M = np.array ( [ [ int ( )] * 5 ] * 6 )

N.B. :
• Pour initialiser une matrice, on pourra utiliser la déclaration suivante :
Nom_Matrice = np.array ( [ [ valeur_initiale ] * M ] * N , Type_élément )
• Les éléments d’une matrice doivent être de même type.
• En Python, pour déclarer une matrice de chaînes de caractères, on ajoute "dtype = object" à la
déclaration ou on supprime les parenthèses après le "str".
• En algorithmique, les indices des éléments d’une matrice sont de type scalaire.
• Les indices de la 1ère ligne et de la 1ère colonne d’une matrice sont, par défaut, égaux à Zéro.
• Pour accéder à un élément d’une matrice : Nom_Matrice [ Ligne, Colonne ]
Exercice 9

Soit la matrice M suivante :

0 1 2 3
0 100 2 3 75
1 14 19 22 4
2 5 10 8 11
1- Déclarer la matrice M en algorithmique.

2- Donner les instructions Python permettant d’initialiser la matrice M par les valeurs données :

Page 8

Vous aimerez peut-être aussi