Outils pour utilisateurs

Outils du site


cours:progra1

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
cours:progra1 [2022/01/28 11:21]
mrcjl [Algorithme]
cours:progra1 [2023/11/26 15:48] (Version actuelle)
mrcjl
Ligne 1: Ligne 1:
 ~~NOTOC~~ ~~NOTOC~~
-======Algorithme======+======Algorithme (B ->D) 4ème======
 Pour piloter le fonctionnement de nombreux objets techniques, on fait appel à des programmes. Mais avant de écrire un programme sur l'ordinateur, il faut réfléchir au problème à résoudre et trouver la solution à appliquer. Un programme ne pourra fonctionner correctement que s'il a été réfléchi et prévoit tous les cas de fonctionnement possible.  Pour piloter le fonctionnement de nombreux objets techniques, on fait appel à des programmes. Mais avant de écrire un programme sur l'ordinateur, il faut réfléchir au problème à résoudre et trouver la solution à appliquer. Un programme ne pourra fonctionner correctement que s'il a été réfléchi et prévoit tous les cas de fonctionnement possible. 
  
Ligne 14: Ligne 14:
 </WRAP> </WRAP>
  
-Nous allons étudier ici l'algorithme qui fait parti de cette étape, la plus importante de la programmation.+Nous allons étudier ici l'algorithme qui est la parti la plus importante de la programmation. L'algorithme est la solution du problème. Il fonctionnera avec n'importe quel langage de programmation.
  
 =====Les étapes de la programmation===== =====Les étapes de la programmation=====
-"Programmer" n'est qu'une des étapes qui mises bout à bout permettra à un ordinateur de résoudre un problème.+"Programmer" n'est que la 2ème étapes qui mises bout à bout permettent à un ordinateur d'exécuter une tâche.
 {{ :cours:etapesprogrammation.png?400 |}} {{ :cours:etapesprogrammation.png?400 |}}
-<WRAP round tip> + 
-Pour résoudre un problème informatique à l'aide d'un ordinateur, il faut : +Pour utiliser un programme informatique afin résoudre un problème à l'aide d'un microcontrôleur ou d'un ordinateur, il faut : 
-  * Écrire **l'algorithme** qui permet, en français, d'expliquer une solution et de vérifier que tous les cas de fonctionnement aient été prévus. +  * **Définir l'algorithme**. Il permet, en français, d'expliquer la solution permettant de résoudre le problème et de vérifier que tous les cas de fonctionnement aient été prévus. Si l'algorithme ne fonctionne pas le programme ne pourra pas fonctionner
-  * Traduire en **un programme** l'algorithme. C'est une étape intermédiaire qui traduit la solution en français dans un langage compréhensible par tous les programmeurs (de n'importe quel pays) et qui en normalise la présentation afin de faciliter l'étape suivante+  * **Traduire l'algorithme en un programme**. En fonction du type de problème et du matériel disponible, l'algorithme doit être traduit dans un des nombreux langages de programmation disponibles. C'est une manière normalisée et compréhensible par tous les programmeurs (de n'importe quel pays) d'exprimer la solution
-  * Interpréter ou compiler le programme en **code machine** (suite de 0 et 1, seule chose compréhensible par l'ordinateur)+  * **Interpréter ou compiler le programme en code machine** le programme, bien que normalisé, est toujours un langage humain. Un programme déjà existant permet toutefois l'effectuer une nouvelle traduction en la seule chose compréhensible par l'ordinateur, une suite de 0 et 1, le code machine. 
 +<WRAP round tip>**Programmer comporte 3 étapes :** 
 +  * Résoudre et expliquer le problème à l'aide d'un langage textuel ou graphique dans le langage natif du programmeur : **L'algorithme ou organigramme** 
 +  * Traduire l'algorithme en un des nombreux langages de programmation existant afin de le mettre sous une forme normalisée et internationale : **Le programme** 
 +  * Faire effectuer à un programme une nouvelle traduction dans le langage de l'ordinateur : **Le code machine**
 </WRAP> </WRAP>
  
 =====Algorithme===== =====Algorithme=====
-<WRAP round tip> +  * Un **algorithme*s'exprime dans le langage textuel naturel au programmeur 
-Un algorithme est une méthode générale pour atteindre la solution d'un problèmes. C'est une suite finie et non ambigüe d’opérations simples permettant de le résoudre. Il est exprimé en langage naturel (français) et en respectant certaines règles comme l'indentation.</WRAP> +  * Il n'est pas réellement un programme mais une méthode à suivre adaptée au problème 
- +
-  Un algorithme s'exprime dans un langage naturel +
-  * Il n'est pas un programme mais une méthode +
   * Il utilise des pseudo instructions (faire, répéter ..., si ... alors ... sinon ...) pour exprimer chaque action   * Il utilise des pseudo instructions (faire, répéter ..., si ... alors ... sinon ...) pour exprimer chaque action
   * Il est structuré grâce à des indentations (décalages en début de lignes) dans le but d'être plus facilement lisible et compréhensible.   * Il est structuré grâce à des indentations (décalages en début de lignes) dans le but d'être plus facilement lisible et compréhensible.
  
 **Une recette de cuisine est un algorithme.** **Une recette de cuisine est un algorithme.**
 +
 +<WRAP round tip>
 +**Un algorithme est une méthode générale pour atteindre la solution d'un problèmes.** C'est une suite finie et non ambigüe d’opérations simples permettant de résoudre le problème. Il est exprimé **en langage naturel** (pour nous en français) et en respectant certaines règles comme l'indentation.</WRAP>
  
 =====Organigramme===== =====Organigramme=====
Ligne 41: Ligne 45:
   * Les rectangles indiquent les actions internes au programme (affectation de variable, calcul ...)   * Les rectangles indiquent les actions internes au programme (affectation de variable, calcul ...)
   * Les parallélogramme indiquent une entrée/sortie d'information   * Les parallélogramme indiquent une entrée/sortie d'information
-  * les losanges indiquent les conditions/choix et disposent de 2 sorties (vrai ou faux) +  * Les losanges indiquent les conditions/choix et disposent de 2 sorties (vrai ou faux) 
-  * Une flèche qui remonte indique une boucle.+  * Les flèches indiquent le sens de lecture. Une flèche qui remonte signale une répétition. 
 + 
 +<WRAP round tip> 
 +Un organigramme est aussi une méthode générale pour atteindre la solution d'un problèmes. Il est exprimé sous une forme plus graphique mais toujours en français et en respectant certaines règles.</WRAP>
  
 =====Exemple===== =====Exemple=====
Ligne 75: Ligne 82:
 Si j'ai correctement pensé la solution de mon problème informatique et si je l'ai correctement rédigé, n'importe qui qui lit mon algorithme ou organigramme doit arriver à un résultat correct quelles que soit les données. Si j'ai correctement pensé la solution de mon problème informatique et si je l'ai correctement rédigé, n'importe qui qui lit mon algorithme ou organigramme doit arriver à un résultat correct quelles que soit les données.
 <WRAP round info> <WRAP round info>
 +  * [[https://jean-rostand.ecollege.haute-garonne.fr/lectureFichiergw.do?ID_FICHIER=32833|Fiche ressource algorigramme PDF]]
   * [[wpfr>Algorithme]] sur Wikipédia   * [[wpfr>Algorithme]] sur Wikipédia
 +  * [[https://jean-rostand.ecollege.haute-garonne.fr/lectureFichiergw.do?ID_FICHIER=32832|Exercices d'entraînement PDF]]
 </WRAP> </WRAP>
  
cours/progra1.1643365274.txt.gz · Dernière modification: 2022/01/28 11:21 de mrcjl