Definition D'un Algorithme

Télécharger au format docx, pdf ou txt
Télécharger au format docx, pdf ou txt
Vous êtes sur la page 1sur 11

1RE DEFINITION D’UN ALGORITHME : c’est une suite d’instructions qui permet d’accomplir une tache

et ou résoudre un problème.

Exemple une notice permettant de monter un meuble : le contenu de cette notice est l’algorithme qui
va nous permettre de monter le meuble.

*on associe toujours les algorithmes au système informatique parce qu’ils sont capables de réaliser
les taches bcp plus rapidement et précisément qu’un humain. Donc s’appuyer sur des algorithmes est
indispensable quand il s’agit de réaliser des taches répétitives. Donc l’algorithme peut répéter l’action
à réaliser indéfiniment.

En résumé
 Un algorithme est une suite d'instructions à suivre pour résoudre un problème.
 Chaque appareil informatique utilise des algorithmes pour exécuter ses
fonctions sous la forme de logiciels ou d'applications.
 Les algorithmes prennent l'entrée et exécutent l’ensemble des instructions
avec cette information pour générer une sortie.
 Un programme est essentiellement créé à l'aide d’un ensemble d'algorithmes.

C’EST QUOI UN PROGRAMME INFORMATIQUE :

C’est la structure sous-jacente de n’importe quel logiciel, application et autres programmes.

DE QUOI EST FAIT UN ALGORITHME :

D’un point de vue général un algorithme est fait de lignes de code. Le nombre de lignes de code
définit la complexité du programme.

Pour mieux comprendre un algorithme, il convient de le diviser en plusieurs parties, c’est-à-dire en


plusieurs sous algorithmes.

Néanmoins, pour pouvoir décrire un algorithme et être compréhensible par un humain, il faut utiliser
un langage lisible par un humain. Pour cela on va utiliser ce qu’on appelle du pseudo-code ou LDA
(Langage de Description d’algorithme). C’est un langage sans règles strictes pour aider les
développeurs à décrire un algorithme. Il peut servir de base au développement d’un algorithme, tout
simplement parce qu’on n’a pas besoin de savoir écrire un code informatique pour écrire du pseudo-
code. C’est donc une version conceptuelle de l’algorithme décrite en utilisant un langage naturel ou
visuel.

En résumé
 Pensez à découper votre problème complexe en sous-problèmes plus simples
à résoudre.
 Utilisez le pseudo-code pour décrire votre algorithme.
 Le pseudo-code est simplement une implémentation d'un algorithme sous la
forme d'annotations et de texte informatif écrit en langage clair.
 Les instructions d’un pseudo-code sont délimitées par les mots-clés Début et
Fin.
COMMENT UN ORDINATEUR PEUT EXECUTER LA SUITE D’INSTRUCTIONS :

Pour qu’un ordinateur puisse exécuter la suite d’instructions il faut que l’algorithme soit écrit en
langage informatique.

COMMENT COMMUNIQUER AVEC UN ORDINATEUR ?


Pour communiquer avec un ordinateur, vous avez d’abord besoin d’un langage (de
programmation).
Les langages de programmation utilisent une logique très semblable. Dans ce cours, nous
nous intéresserons à la programmation structurée qui est un des paradigmes de
programmation les plus connus.
Un paradigme est une manière de concevoir une situation à la fois dans ses problématiques
et dans les différentes solutions à apporter.
En programmation structurée, nous découpons un problème en micro tâches indépendantes
les unes des autres, et modulaires.

LA LOGIQUE DU LANGAGE INFORMATIQUE :

Pour comprendre la logique du langage informatique il y a 2 éléments importants à connaitre quon


trouve dans les langages informatiques : les variables et les fonctions.

Les noms : les variables


Une variable est une manière de faire référence à un objet. Dans le langage courant,
c’est exactement ce que nous appelons "nom". Qu’est-ce qu’un mot, sinon une
étiquette que nous avons collée sur un objet pour pouvoir y faire référence plus tard ?
Une variable a donc une valeur, et un mot qui permet d'accéder à cette valeur. Vous
pouvez donc soit lire la valeur soit la modifier.

Les verbes : les fonctions


Les fonctions sont des bouts de code (en quelque sorte un mini-algorithme) qui
servent à accomplir une tache spécifique. L’avantage des fonctions est qu’elles
peuvent être utilisées autant de fois que nécessaires, simplement en les rappelant.

À présent, voyons comment simplifier la mise à jour des deux variables en


regroupant les instructions dans un seul même bloc. Vous avez sûrement pu le
remarquer, nous avons dû écrire plusieurs fois les instructions qui permettent de
changer les valeurs des deux variables.
Nous allons utiliser ce qu’on appelle, en programmation, une fonction. Il s’agit d’un
bloc qui regroupe plusieurs actions. Vous pouvez réutiliser ce bloc autant de fois que
vous le voulez en invoquant son nom. Une fonction peut aussi être vue comme une
moulinette qui va prendre des informations en entrée, les traiter et en renvoyer
d’autres en sortie. C’est en quelque sorte un mini-algorithme.

Lorsqu'une fonction est "appelée", le programme "quitte" la section de code


en cours et commence à exécuter la première ligne à l'intérieur de la fonction.

Exemple : nous allons maintenant créer notre fonction à partir des critères suivants :

Nom maj_déplacement_score

Paramètres  déplacement
d’entrée
 score

 point_de_déplacement (point en fonction du sens de


déplacement)

Instructions  Ajouter +1 à la variable déplacement

 Incrémenter la variable score à l’aide du paramètre


point_de_déplacement

Paramètres de Pas de paramètre de sortie


sortie

Nous pouvons décrire cette fonction à l’aide du pseudo-code :

En langage informatique, la création d’une fonction est ce que nous appelons


une déclaration. Son utilisation est son exécution.

En résumé
 La plupart des langages de programmation ont une structure de
base similaire les uns aux autres.
 Les variables sont utilisées pour stocker des informations à référencer et à
manipuler dans un programme informatique.
 Une fonction est simplement un "morceau" de code que vous pouvez
réutiliser, plutôt que de le réécrire plusieurs fois.
 Les fonctions "prennent" généralement des données en entrée, les traitent et
"renvoient" un résultat.

LES TYPES DE DONNEES LES PLUS FREQUENTS :

Nous devons préciser le type de la valeur pour que l’ordinateur puisse la lire et la
comprendre. En effet, le type d’une variable permet de spécifier plusieurs paramètres
nécessaires à l’ordinateur, par exemple :

 la taille ;
 la disposition de la mémoire de la variable ;
 la plage de valeurs pouvant être stockées dans cette mémoire ;
 l'ensemble des opérations pouvant être appliquées à la variable.

Un type de données est une classification de données qui indique à l'ordinateur comment le
programmeur a l'intention d'utiliser les données.

Il existe plusieurs types de variables, et jusqu’à maintenant nous avons manipulé


seulement un type de données, les nombres. Mais il est tout à fait possible d'utiliser
d'autres types de données, tels que les mots et les booléens, deux autres types
fréquemment utilisés en programmation.

Un booléen est un type de données avec deux valeurs possibles : vrai ou faux. Une condition
est souvent évaluée en tant que booléen – la condition EST vraie ou fausse.

Les nombres
Tout comme en mathématiques, il existe plusieurs sortes de nombres, qui sont
regroupés sous le doux nom de "nombres décimaux". Les nombres décimaux
peuvent être entiers (pas de virgules, integer, en anglais) ou à virgules (float, en
anglais).

Nombres entiers : 1 ; 5 ; 10. Nombres à virgule : 1,3 ; 1,7777 ; 2,3.

En informatique, il est assez compliqué de représenter des nombres qui contiennent


une infinité de chiffres après la virgule, comme pi ou 1/3. Chaque langage propose
des solutions différentes.
Les chaînes de caractères
Une chaîne de caractères est composée d'un ensemble de caractères pouvant
également contenir des espaces et des chiffres. Par exemple : "a", "Algorithme" et
"J’ai 2 frères".
Dans un programme ou dans le pseudo-code, les chaînes de caractères sont
généralement écrites entre guillemets, comme ceci : “Une chaîne de caractères”.
Cette méthode permet de déterminer le début et la fin de la chaîne de caractères.
Les booléens
Enfin, notre petit dernier est un type de données qui indique "Vrai" ou "Faux". Vous
pouvez vous le représenter comme un interrupteur, ou une carte qui aurait deux
faces : "Vrai" et "Faux", ou en anglais, “True” et “False”.

Mais vous allez me dire : à quoi cela sert-il donc ?


À utiliser des conditions ! Lorsque vous vérifiez une condition, c’est une information
de type booléen qui est donnée en réponse.

Vous pouvez maintenant ajouter cette information dans la section des variables lors
de la déclaration d’une variable. Vous pouvez placer après la variable le type de
cette donnée.

ENTIER Un nombre entier

FLOAT Un nombre à virgule

CHAÎNE DE CARACTÈRES Une chaîne de caractères

BOOL Un booléen

Voilà ce que ça peut donner sur le pseudo-code :

Vous avez pu remarquer qu’il n’y a pas grand chose qui change dans la déclaration
des variables, il suffit d’ajouter le type de la variable précédé de deux points : .
LES CONDITIONS ET LES STRUCTURES CONDITIONNELLES
Un programme n’est pas souvent limité à une exécution linéaire. Un programme doit souvent prendre
des chemins différents selon telle ou telle condition, c’est ce qu’on appelle : des structures
conditionnelles, c’est-à-dire que certaines lignes de code seront lu et d’autres pas. Ce qui détermine
ce choix ce sont les conditions que nous définissons pour lui. Pour définir ces conditions on va
utiliser ce qu’on appelle des opérateurs des conditions.

Exemple : Nous souhaitons avoir une fonction qui nous permette d’afficher un message de
victoire ou de défaite à la fin des déplacements. Plus simplement, si à la fin des
déplacements, nous sommes sur la case d’arrivée, le programme affiche Vous avez
gagné ! , sinon, le programme affiche Vous avez perdu ! .
En réalité, dans un algorithme, pour tester une condition nous allons utiliser des
opérateurs de comparaison afin de comparer des paramètres du programme.

Pour effectuer ces tests, il existe des symboles utilisés dans la plupart des langages
de programmation :

Symbole Signification

== Est égal à

> Est supérieur à

< Est inférieur à

>= Est supérieur ou égal à

<= Est inférieur ou égal à

!= Est différent de
Imaginons maintenant que nous ayons une variable qui contient les coordonnées du
joueur sur le labyrinthe ( joueur_coordonnées ), et une variable qui contient aussi les
coordonnées de la case d’arrivée ( arrivée_coordonnées ).

Nous pouvons alors remplacer notre pseudo-code par le suivant :


Consigne
Vous devez maintenant créer une fonction qui permette de modifier les déplacements du
joueur dans le labyrinthe. En effet, cette fonction va demander à l’utilisateur d'entrer le sens
de déplacement qu’il souhaite, et la fonction va modifier les coordonnées x et y du joueur en
fonction du sens de déplacement.

Attention, vous allez devoir prendre en compte les erreurs de frappe de l'utilisateur : seules les
chaînes de caractères prévues ci-dessus sont valables (“Haut”, “Bas”, “Droite” et “Gauche”).
Votre objectif :

1. Demander à l'utilisateur d’entrer le sens de déplacement.


2. Vérifier à l’aide d’une première structure conditionnelle si l’entrée de
l’utilisateur est correcte en fonction des 4 possibilités. Sinon afficher un
message qui stipule que l’entrée n’est pas correcte.
3. Si l’entrée de l’utilisateur est correcte : à l’aide de plusieurs structures
conditionnelles, vous allez devoir mettre à jour les coordonnées du joueur en
fonction de l’entrée de l’utilisateur.
Vérifiez votre travail
Voici le résultat à obtenir à l'issue de l'exercice :

En résumé
 Les structures conditionnelles permettent de contrôler l’exécution ou non de
certaines instructions.
 L'instruction Si est utilisée pour exécuter le code si une condition est vraie.
 L'instruction if-else est une version étendue de l’instruction Si . Grâce au
mot-clé else , vous pouvez choisir quelles instructions lancer si la condition
n’est pas vraie.
 Les mots-clés ET et OU permettent de combiner les conditions dans les
structures conditionnelles.
Dans le chapitre suivant, nous allons partir à la découverte d’une notion très
intéressante de la programmation : les boucles ! D’ailleurs, vous allez pouvoir
continuer à travailler les conditions même sur les boucles. Allez, on y va !

Vous aimerez peut-être aussi