Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parVictor Sergerie Modifié depuis plus de 8 années
1
BASE DE L’ALGORITHMIE
2
Un système d’instructions. Pour résoudre d’un problème ou d’une classe de problèmes Recette de cuisine pour faire un gâteau Algorithme : KEZAKO ?
3
Jeu de construction Livret de petits dessins Joli de camion Meuble en KitNotice de montagePenderie Pelote de laine et aiguille PatronnagePull en laine IngrédientsRecette de cuisineUne tarte au citron Algorithme : KEZAKO ?
4
L’algorithme est donc un ensemble organisé d’instructions en interaction les unes avec les autres permettant la résolution d’un problème. Un programme est l’expression d’un algorithme pour une machine donnée dans un langage de programmation donné, en utilisant le répertoire d’actions (opérations-instructions) et les règles de composition propres à cette machine et ce langage donné. Quelques définitions
5
Une machine est dotée de cinq fonctionnalités : entrer les données, exécuter le programme (suite d’instructions) définir la séquence des instructions (donc mémoriser le programme) mémoriser les données (résultats intermédiaires) sortir les résultats Quelques définitions
6
Mots – clés: action, ajout, algorithme, alors, autre, à, booléen, caractère, cas, chaîne, constante, début, écriture, entier, et, faire, faux, fermer, fichier, fin, fois, fonction, itérer, jusqu’à, lecture, mettre, non, ou, ouvrir, pas, pour, prendre, remarque, retourner, répéter, réel, selon, si, sinon, tantque, type, variable, vrai. Structure de base
7
Identifiant: Valides : Date, DATE, _201,JourDS Non valides : 101_Dalmatiens (ne commence pas par une lettre ou le blanc souligné), Cout Achat (l’espace n’est pas accepté), Paie&Bonus (les caractère spéciaux autres que le souligné sont interdits), fin (les mots-clés ne sont pas autorisés) Structure de base
8
Séparateurs: Structure de base Rôle : Les deux points séparent un identifiant de son type dans une liste []Les crochets symbolisent le début et la fin d’un tableau.Le point permet l’accès à un sous élément,La virgule sépare les éléments d’une liste ;Le point virgule sépare les éléments de déclaration ‘ ’Les quotes encadrent les caractères « »Les guillemets encadrents une chaîne de caractères #Le dièse annonce une ligne de commentaire //La double barre commence un commentaire sur une ligne d’instruction
9
algorithme vide #Déclarations des variables et des constantes début #instruction 1 #instruction 2 fin Structure de base Mots clés Identifiant du nom de l’algorithme En tête: déclaration importante Corps de l’algorithme: Description des instructions
10
algorithme Fairebouillir début Décrocher la casserole Remplir la casserole d’eau froide Déposer la casserole sur les plaques de cuisson Allumer les plaques de cuisson fin Séquence linéaire
11
a ← 3,b ← 4 a←ba←b b←ab←a afficher a,b a ← 3,b ← 4 b←ab←a a←ba←b afficher a,b Séquence linéaire a=4 b=4 b=3 a=3 Les instructions s’exécutent de façon linéaire c’est-à-dire les unes après les autres dans l’ordre d’écriture du script.
12
Fonction ou procédure FONCTION Données en entrée Un unique résultat en sortie PROCEDURE Données en entrée 0 à N résultats en sortie
13
Fonction
14
Mot clé Nom Donnée et type Sortie et type Mots clés Utilisation de la fonction
15
Variable globale -> définie en dehors de la fonction Variable locale -> définie uniquement dans une fonction et masque tout autre variable portant le même nom Fonction
16
x=6 def fonction(y) : x = 3*y+2 return x x = 5 def fonction2(y): return (2*fonction(y)**2+2*y) x=fonction(x)+2*fonction2(x)-3 Fonction 3*5+2 2*17^2+2*5=588 1190
17
N=3 def mult_3(N) return N*N Fonction N=3 def mult_3(x) return N*x N=4 def mult_3(x) N=3 return N*x N=3 def mult_3(x) N=4 return N*x Quelle fonction multiplie l’entrée par 3 ?
18
Permet de choisir entre de séquence d’instructions suivant une condition Structure alternative
19
EXERCICES a=24 ! a-4 <25 VRAI ou FAUX ? b,c=3,2 b-c/2==2 and c^10<1000 VRAI ou FAUX ? Structure alternative
20
valeur absolue d’un nombre : nombre ← Lire « Donnez une année » valeur = 0 Debut si nombre<0 Alors valeur ← - nombre Sinon valeur ← +nombre Fin si Afficher (« la valeur absolue est : »,valeur) Structure alternative En Python ?
21
Structure alternative algorithme ValAbsolue variable nombre,valeur :réel début nombre ← Lire « Donnez une année » valeur = 0 début si nombre<0 alors valeur ← - nombre sinon valeur ← nombre fin si afficher (« la valeur absolue est : »,valeur) fin En Python ?
22
Année bissextile Règle 1 : Une année divisible par 4 est une année bissextile. Règle 2 : Une année divisible par 100 n’est pas une année bissextile. Règle 3: Une année divisible par 400 est une année bissextile. Arbre des choix (ou des décisions)
23
Divisible par 400 Divisible par 100 Divisible par 4 Oui bissextile Oui Non bissextile Non bissextile
24
algorithme AnneeBissextile variable annee : entier, bissextile :booleen #Séquence de test de l’année bissextile debut si annee divisible par 4 alors debut si annee divisible par 100 alors debut si annee divisible par 400 alors bissextile ← vrai fin si Arbre des choix (ou des décisions) sinon bissextile ← vrai fin si #Affichage de la réponse debut si bissextile alors afficher(« c’est une année bisextile ») sinon afficher(« ce n’est pas une année bisextile ») fin si
25
# Déclaration des variables annee = input("Saisissez une annee : ") annee = int(annee) # Pour forcer le type entier bissextile = False # initialisation de bissextile if annee % 400 == 0: bissextile = True elif annee % 100 == 0: bissextile = False elif annee % 4 == 0: bissextile = True else: bissextile = False Arbre des choix (ou des décisions) if bissextile: # Vrai si l'année est bissextile print("L'année saisie est bissextile.") else: print("L'année saisie n'est pas bissextile.")
26
Structure bouclée (POUR...FAIRE)
27
Structure bouclée (POUR...FAIRE)
28
algorithme Somme variable somme :réel début somme=0 Pour i allant de 1 à 100 Faire somme ← somme +1/i**2 fin pour afficher (« la somme est : », somme) fin Structure bouclée
29
(TANT QUE...FAIRE)
30
Structure bouclée (TANT QUE...FAIRE)
31
algorithme CalculPi variable somme: réel,test:booleen,k:entier constante erreur=10 -6 début somme ← 0, test ← vrai, k ← 1 tant que test Faire somme ← somme +(-1)**k/(2*k+1) debut si 4 /(2*k+1)<erreur alors test ← faux fin si k ← k+1 fin tantque afficher (« la valeur de pi à », erreur, « près est : », somme) fin Structure bouclée
32
Jeu de Nim Ce jeu se joue à deux en commençant avec n allumettes (par exemple 9). Chacun sont tour, un joueur retire 1,2 ou 3 allumettes. Le gagnant est le joueur qui ramasse la dernière allumette. Le nombre de position de ce jeu est fini. Illustrer par un arbre de décision l’ensemble des solutions de ce jeu. Déterminer alors une stratégie gagnante. Proposer alors un algorithme permettant de s’assurer la victoire. Intelligence artificielle
33
Jeu de nim 5 7 6 7 3 4 6 5 3 4 2 1 Gagné 5 3 4 2 1 Perdu 3 4 2 1 Gagné 3 2 1 Perdu 9 6 8 GagnéGagné
34
Jeu de nim 5 7 6 7 3 4 4 9 6 8 Il faut donc se ramener à une position où le nombre d’allumettes est un multiple de 4
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.