La conception d'un programme (ou d'une partie) s'envisage en trois phases:
• Phase 1: il faut entrer les objets et les données que le logiciel doit utiliser = les entrées;
• Phase 2: le logiciel va traiter les informations = le traitement;
• Phase 3: restitution des résultats cherchés = les sorties.
Un bon algorithme doit avoir quatre principes:
• Principe 1:L'algorithme doit se terminer après un nombre fini d'étapes;
• Principe 2: Chaque étape de l'algorithme doit être clairement définie ;
• Principe 3: L'algorithme doit avoir des entrées (données initiales) et des sorties (résultats) ;
• Principe 4: L'algorithme doit être optimisé pour utiliser le moins de ressources possible (temps, mémoire).
Représentation des Algorithmes:
Les algorithmes peuvent être représentés de différentes manières :
• Pseudocode: Une description textuelle des étapes de l'algorithme, proche du langage naturel.
• Organigrammes: Des diagrammes visuels utilisant des symboles pour représenter les étapes et les flux de l'algorithme.
Exemples d'Algorithmes Simples
Algorithme de la somme de deux nombres :
Pseudocode :
1. Lire le nombre A
2. Lire le nombre B
3. Calculer la somme S = A + B
4. Afficher la somme S
Organigramme :
[Début] --> [Lire A] --> [Lire B] --> [Calculer S = A + B] --> [Afficher S]
A retenir:Variables: Initialisation: ... prend la valeur ... Entrées: Saisir ... Traitement: Sortie: Afficher... |
Explications: → On cite les variables utilisées en donnant leur type. → On donne une valeur à la variable, on n'est pas obligé de demander à l'utilisateur de "rentrer" cette dernière. → On demande à l'utilsateur de donner des valeurs qui seront stockées dans les variables. → On donne les instructions qui permettent à partir des données d'arriver au résultat. → On affiche le contenu de la variable représentant le résultat. |
Exemple:
Calculer la moyenne de trois notes:
Variables:
Entrées: Saisir
Traitement: Sortie: Afficher m |
Explications: → On annonce les quatres variables: les trois notes et la moyenne. → On demande à l'utilsateur de donner les trois notes qui seront stockées dans les variables a, b et c. → On donne les instructions qui permettent à partir des données d'arriver au résultat: l'instruction "m prend la valeur (a+b+c)/3" permet de lancer le calcul puis d'affecter à la variable m le résultat de ce calcul.
|
On va dire à l’algorithme d’exécuter des instructions que si une certaine condition est réalisée.
Exemple:Variables: A et B sont des nombres réels Entrées: Saisir A et B
Traitement et Sortie: FinSi |
Questions et solutions:
|
Boucle "Pour":
Pour (variable) allant de ... à ... faire instruction Fin Pour Exemple: Algorithme qui permet de calculer la somme des entiers de 1 à N, N étant donné par l'utilisateur. |
Boucle "Tant que": Tant que condition faire instruction Fin tant que Exemple: Algorithme qui permet d'afficher les nombres entiers naturels dont le cube est inférieur à 5000. |
Une fonction est comme un outil spécialisé.
Elle permet de regrouper un ensemble d'instructions qui effectuent une tâche précise (par exemple: une fonction "calculer_aire_cercle" qui pourrait calculer l'aire d'un cercle en fonction de son rayon). L'avantage des fonctions ?
Elles rendent le code plus lisible, plus réutilisable et plus facile à maintenir.
Pourquoi utiliser des fonctions ?
Les éléments d'une fonction :
Les listes :
DES CONTENEURS POUR STOCKER DES DONNEES
Une liste est un peu comme une boîte dans laquelle on peut ranger plusieurs éléments.
Ces éléments peuvent être de différents types :
des nombres, des chaînes de caractères, d'autres listes, etc.
L'avantage des listes?
Les listes sont très utiles pour stocker des collections de données et les manipuler facilement.
Les caractéristiques principales d'une liste :
Opérations courantes sur les listes :
Calculer la moyenne des notes d'un élève.
Comment procéder en utilisant un algorithme, des fonctions et des listes :
notes = [12, 15, 18, 14]
def calculer_somme(liste):
somme = 0
for note in liste:
somme = somme + note
return somme
somme_des_notes = calculer_somme(notes)
nombre_de_notes = len(notes)
moyenne = somme_des_notes / nombre_de_notes
print("La moyenne est :", moyenne)