La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Algorithmes et structures de données Cours 8

Présentations similaires


Présentation au sujet: "Algorithmes et structures de données Cours 8"— Transcription de la présentation:

1 Algorithmes et structures de données Cours 8
Patrick Reuter

2 conditions nécessaires
conditions suffisantes

3 Motivation Niklaus Wirth, ETH Zuerich, 1976
« Algorithms + Data Structures = Programs »

4 Algorithme et programmes
Moyen d’atteindre un but en répétant un nombre fini de fois un nombre fini d’instructions. Donc, un algorithme se termine en un temps fini. Programme Un programme est la traduction d’un algorithme en un langage compilable ou interprétable par un ordinateur.

5

6

7 Variables Permet de stocker des données au cours d’un algorithme
 Structure de données la plus élémenataire Caractérisé par leur nom et leur type

8 Variables Caractérisé par leur nom et leur type Noms :
Les noms des variables sont conventionnellement écrits en minuscule. Ils commencent par une lettre ou le caractère souligné (_), puis éventuellement, des lettres, des chiffres ou le caract`ere souligné. Ils doivent être diff´erents des mots réservés de Python.

9 Variables Caractérisé par leur nom et leur type Nom : x y z i
pointsJoueur1 pointsJoueur2

10 Types de variables

11 Variables Type simples: Type booléen Type entier Type flottant
Vrai/faux (p.ex. True, boolean) Type entier Nombre entier (p.ex. 5, int) Type flottant Nombre à virgule flottant (p.ex. 5.12, float)

12 Types simples Type booléen
Deux valeurs possibles : FAUX (False), VRAI (True) Opérateurs de comparaison : ==, !=, >, >=, <, <= 2 > 8 # Faux 2 <= 8 # Vrai Opérateurs logiques : NON (not), OU (or), ET (and) (3 == 3) or (9 > 24) # Vrai (9 > 24) and (3 == 3) # Faux not(2==2) # Faux

13 Types simples Type entier 20 + 3 # 23 20 - 3 # 17 20 * 3 # 60
# 23 # 17 20 * 3 # 60 20 ** 3 # 8000 20 / 3 # 6 (division entière) 20 % 3 # 2 (modulo (reste de la division entière)

14 Types simples Type entier long
Les entiers longs (seulement limités par la mémoire vive) 2 ** 40 # L 3 * 72L # 216L

15 Types simples Type flottant
Les flottants sont not´es avec un « point d´ecimal » ou en notation exponentielle : # 3e8 # 3 * 108 6.023e23 # * 1023 2. # 2 3.0 # 3 Ils supportent les mêmes opérations que les entiers, sauf : 20.0 / 3 # 20.0 // 3 # 6 (division entière forcée)

16 Pour connaître le type d'une variable :
print type(a) b = 3.5 print type(b)

17 Les chaînes de caractères
Notations : Les guillemets c1 = "L’eau de l'océan"

18 Longueur : s = "abcde" print len(s) # 5 Concaténation : s1 = "abc" s2 = "defg" s3 = s1 + s2 # ’abcdefg’

19 On indique, entre crochets, la position d’un caractère par un indice qui commence à 0
s = "abcdefg" print s[0] # a print s[2] # c

20 Les listes

21 Les listes Collection hétérogène, ordonnée et modifiable d’éléments séparés par des virgules, et entourée de crochets. nombres = [17, 38, 10, 25, 72] print nombres[0] # 17 print nombres[4] # 72 print len(nombres) # 5

22 Les listes Collection hétérogène, ordonnée et modifiable d’éléments séparés par des virgules, et entourée de crochets. nombres = [17, 38, 10, 25, 72]

23 Afficher tout les nombres :

24 Afficher tout les nombres :
TANT QUE i < len(nombres) FAIRE afficherLigne(nombres[i]) i = i + 1 FIN TANT QUE

25 Afficher uniquement les nombres pairs :

26 Afficher uniquement les nombres pairs :
TANT QUE i < len(nombres) FAIRE SI nombres[i] % 2 == 0 ALORS afficherLigne(nombres[i]) FIN SI i = i + 1 FIN TANT QUE

27 Affectation nombres = [17, 38, 10, 25, 72]; nombres[0] = 100;
print nombres; Résultat : [100, 38, 10, 25, 72]

28 indice d'une liste ou d'une chaîne de caractères :
s = "Bonjour"; premiereLettre = s[0]; deuxiemeLettre = s[1];

29 Fonctions prédéfinies
par exemple connaître la longueur d'une chaîne : longueur = len(nombres);  parenthèses !

30 Combinaison : derniereLettre = s[len(s) – 1];

31 Solution de quelques exercices :

32 Grilles de sudoku

33 Grilles de sudoku

34 Grilles de sudoku grille0 = [5,3,1,8,7,2,9,4,6];

35 Grilles de sudoku grille0 = [5,3,1,8,7,2,9,4,6];

36 Grilles de sudoku grille = [ [5,3,1,8,7,2,9,4,6], [1,2,5,9,7,8,3,6,4],
[1,2,5,9,7,8,3,6,4] ]; print grille[0][0];


Télécharger ppt "Algorithmes et structures de données Cours 8"

Présentations similaires


Annonces Google