• Aucun résultat trouvé

Algorithmique et programmation

N/A
N/A
Protected

Academic year: 2021

Partager "Algorithmique et programmation"

Copied!
2
0
0

Texte intégral

(1)

Un peu de vocabulaire et quelques conventions d'écriture (qui peuvent varier un peu d'un professeur à l'autre mais qui sont compréhensibles par tous... et qui seront celles utilisées dans le cours de première S du LFAY en 2015-2016...)

Voici un algorithme écrit en « pseudo-code » (Exercice 5 de la fiche « Statistiques inférentielles ») : Variables : N, h, alea, effectif : entiers

rayon, taux : réels L : liste

début_algo Entrée : saisir N

Traitement : pour i allant de 1 à N faire L[i] ← 0

finpour

pour i allant de 1 à N faire h ← 0

pour j allant de 1 à 731 faire

alea ← nombre pseudo-aléatoire dans {0 ; 1} h ← h + alea finpour L[i] ← h/731 finpour rayon ← 0 taux ← 0

tant que taux < 0,95 faire effectif ← 0

pour i allant de 1 à N faire

si 0,5 – rayon  L[i]  0,5 + rayon alors faire effectif ← effectif + 1 finsi finpour taux ← effectif/N rayon ← rayon + 0,000 1 fintantque

Sortie : afficher la valeur minimum de la liste L afficher la valeur maximum de la liste L afficher l'intervalle [0,5 – rayon ; 0,5 + rayon] fin_algo

Remarques :

- Il est possible de mettre en œuvre cet algorithme sans savoir à quoi il sert...

- Un algorithme se lit de haut en bas, mais se construit souvent de la partie la plus « intérieure » jusqu'à la partie la plus « extérieure » (de l'indentation la plus à droite jusqu'à l'indentation la plus à gauche) en finissant pas la déclaration des variables.

- Un algorithme n'est pas un programme informatique mais peut être implémenté dans un langage de

programmation. Il y a plusieurs points de vue, discutables : le mien est que la phase d'écriture d'un algorithme précède la phase d'écriture d'un programme. Pour écrire un algorithme, on utilise une feuille (que l'on commence à remplir par le centre et non par le haut), un crayon et une gomme, et non pas un

ordinateur !

Algorithmique et programmation

déclaration des variables

boucle itérative

boucle conditionnelle test

initialisation de la variable h

pour effecter une valeur à une variable

indentation

la variable effectif est un « compteur » : elle est incrémentée de 1 à chaque fois que la condition du test est vérifiée.

(2)

Programmation

Il existe de nombreux langages de programmation. Certains d'entre vous ont appris à programmer avec AlgoBox (qui est un logiciel d'aide à l'apprentissage de l'algorithmique et permet de construire des programmes écrits en « pseudo-code », d'autres ont été initié au Python 3 ou au langage LOGO (avec Géotortue). Xcas possède aussi un module de programmation (assez proche de Python dans la structure, possédant comme AlgoBox un système de « boutons » pour l'aide à la rédaction du programme, mais avec une syntaxe dérivée du langage C). La calculatrice graphique CASIO permet aussi de construire des programmes (en langage BASIC). Le logiciel Scratch possède son langage de programmation propre et permet aussi de faire des choses sympathiques.

Qui sait interpréter un algorithme écrit en « pseudo-code » arrivera facilement à l'implémenter dans n'importe quel langage... une fois qu'il en aura appris la syntaxe.

En première S, nous utiliserons Python 3. L'acquisition de la syntaxe prend un peu de temps et demande une certaine pratique. Afin d'accompagner cet apprentissage (pour lequel les seules heures de cours ne suffiront pas à acquérir de l'aisance), il est fortement conseillé de suivre les deux premiers niveaux du cours proposé par France -IOI . Pour s'inscrire à ce cours, voir le document joint à l'article du site. Ce sont les seuls exercices proposés dans cette partie !

Références

Documents relatifs

Pour saisir une lettre, il faut déjà appuyer sur alpha En faisant 2nde suivi de alpha, on verrouille les lettres pour déverrouiller, on recommence : 2nde suivi de alpha =

Il faudrait que le paramètre se comporte comme une « variable à laquelle on peut donner une valeur

Le programmeur doit instancier ce package générique afin de créer un nouveau package spécialisé pour le type énuméré considéré!. Un package ainsi créé par instanciation

[r]

[r]

Si ce livre présente comme ses prédécesseurs les notions fondamentales du langage, avec bien sûr des exemples originaux, des choix dans la présentation de certains modules, et

Erire une fontion réursive et une fontion itérative pour aluler n !.. Comparer les

1) Lancer l’éditeur MU. 2) Reprendre les scripts suivants.. 3) En déduire le rôle de la structure for.