Cours d’ Algorithmique 2012 Algorithmique. Cours d’ Algorithmique 2012 Qu’est ce que l’Algorithmique ? Avez-vous déjà suivi une recette ? Avez-vous déjà.

Slides:



Advertisements
Présentations similaires
Algorithmique (suite)
Advertisements

EXERCICE 2.1 : APRES AVOIR DEMANDE LA SAISIE DUN NOMBRE POSITIF (ERREUR DE SAISIE A TRAITER). AFFICHER LE DECOMPTE EN PARTANT DE CE NOMBRE JUSQUÀ ARRIVER.
DECLARATION DE VARIABLES
BUT DE LALGORITHME Afficher la table de multiplication dune valeur saisie au clavier (valeur comprise entre 1 et 9). Gérer lerreur de saisie.
LA LOGIQUE ALGORITHMIQUE. Algorithme Définition Ensemble dopérations Effectuées dans un ordre logique Afin dobtenir un résultat, Afin de résoudre un problème.
Algorithmique Résume.
Ch 3: les structures simples. Objectif: -Distinguer entre les différents données (entrée, sortie..).
Jean-Philippe PERNIN Université Stendhal Département Informatique Pédagogique Bureau I113 Mél. : Actions nommées, Procédures.
Lecture et Ecriture.
1)Boucle for 2)Boucle while
Les bases de l’Algorithmique
Cours algorithme 2 S. Tabbone.
Initiation à la programmation et algorithmique
Les bases algorithmiques
Introduction à l’algorithmique
Partie Informatique Algorithmique Introduction A. LOTFI
Les éléments de base de l’algorithmique
Quelques algorithmes sur calculatrices
RESUMES Module II1 SOMMAIRE CYCLE 1 : Saisir – Afficher – Données
Logiciels.
1 Exercice : longueur d’un mot est-elle paire ?  Test fonctionnel  Quel ensemble de valeur choisir / spécification  Test structurel  Soit le code d’un.
Le microprocesseur Comment ça marche ?
Nouveaux programmes de mathématiques Terminales L, ES, S, STI2D, STL et cycle terminal STMG Octobre 2012.
Algorithmes au lycée. Extrait Bac S Métropole Juin 2012.
INFORMATIQUE et SCIENCES du NUMERIQUE Lycée Descartes - 15 mai 2012.
Algorithmique et Programmation
Introduction à l’algorithmique
Semaine #1 INF130 par Frédérick Henri.
Semaine #1 INF135 par Frédérick Henri.
Algorithmique et structure de données
Les fichiers texte en C++
IA IPR Académie de Rennes L’algorithmique une nouveauté ? Regard sur les programmes et les ressources ; quelques pistes.
Python Fonction et procédure
RAPPEL Qu’est ce qu’une structure de contrôle itérative ?
Chapitre IX Gestion de flux.
1 Notations Asymptotiques Et Complexité Notations asymptotiques : 0 et  Complexité des algorithmes Exemples de calcul de complexité.
LA LOGIQUE ALGORITHMIQUE
Programmer des systèmes automatisés
ALGORITHME DE TRI Le tri par insertion.
Cours Architecture des Systèmes Informatiques
Institut de Formation aux Métiers de l’industrie Automobile.
Sous-programmes.
TD n°10 Fonctions récursives
Série S spécialité ISN Informatique et Sciences du Numérique
Déclaration des données constantes Déclaration des données variables
1 Septi è me journ é e La programmation impérative.
8INF856 Programmation sur architectures parallèles
ALGORITHMIQUE IUT Vélizy – DUT Info - 1ère année Laurent Marsan
Fiche séquence n° 01 : INTRODUCTION GENERALE GENERALITES
La Modélisation Orientée Objet Concevoir un programme : modélisation du problème à résoudre Notion de programme : machine de Turing Pouvoir d’expression.
8PRO100 Éléments de programmation Comment répéter plusieurs fois une séquence d’instructions.
1 Algorithmique et programmation en Itérations (boucles) Types numériques simples (suite)
TD0 - Rappels. Acquis du programme 1 ère année Analyser et modéliser : un problème, une situation ; Imaginer et concevoir : une solution algorithmique.
Décomposition et paramétrage des algorithmes
Les tests.
Exemple à faire: N°2 Ecrire l’Algorithme et le Programme PASCAL qui affiche la somme de deux nombres entiers donnés.
La programmation.
Algorithmique Introduction Qu’est-ce que l’algorithme ?
Méthodes et outils de conception Introduction à la programmation Paramètre de retour Appel d’une fonction Portée des variables Définition Pourquoi les.
Algorithmique : Introduction
Démarche de résolution
Initiation à l’Algorithmique
Simulation de lectures d’algorithmes
Module algorithmique et programmation
Les Structures simples
Algorithmique Algorithmique  Pascal
Seconde 8 Module 7 M. FELT 03/11/ Module 7: Algorithmique #2  Objectifs:  AlgoBox.  Définition d’un algorithme.  Affectation de variable. 
Algorithmique et programmation
BASE DE L’ALGORITHMIE.  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.
©Hachette Livre – Mathématiques Cycle 4 – Collection Kiwi
Transcription de la présentation:

Cours d’ Algorithmique 2012 Algorithmique

Cours d’ Algorithmique 2012 Qu’est ce que l’Algorithmique ? Avez-vous déjà suivi une recette ? Avez-vous déjà suivi un itinéraire ? Avez-vous déjà monter un meuble ? Avez-vous déjà lu une partition ? Avez-vous déjà écris une lettre anonyme stipulant comment procéder à une remise de rançon ? Tout est question d’algorithmique.

Cours d’ Algorithmique 2012 Qu’est ce qu’un algorithme ? Un algorithme, c’est une suite d’instructions pour aboutir à un résultat voulu. – Si l’algorithme est bon, le résultat est le résultat voulu

Cours d’ Algorithmique 2012 Qu’est ce qu’un algorithme ? Un algorithme doit contenir uniquement des instructions compréhensibles par la personne qui va l’exécuter. – En informatique, ce sont aux ordinateurs que l’on donne les instructions

Cours d’ Algorithmique 2012 Faut il être bon en math pour être bon en algorithme ? ET bien non ! Il faut être rigoureux, méthodique. Il faut avoir de l’intuition.

Cours d’ Algorithmique 2012 Qu’est ce qu’un algorithme ? L’algorithmique n’est pas un langage de programmation. Un algorithme + Un langage = un programme. Algorithme : utilisation d’un pseudo code.

Cours d’ Algorithmique 2012 Conventions du pseudo code Commence par : début Fini par : fin Pour afficher à l’écran : écrire. – instructions permettant au programme de communiquer des valeurs à l’utilisateur en les affichant à l’écran Pour lire une variable tapée au clavier : lire. – instruction permettant à l’utilisateur de rentrer des valeurs au clavier Un algorithme, c’est une suite d’instructions qui programme la machine, pas l’utilisateur !

Cours d’ Algorithmique 2012 Les bases de l’algorithmique Les variables La lecture / l’écriture Les tests Les boucles

Cours d’ Algorithmique 2012 Les variables Elles servent à stocker temporairement une information. L’association d’une étiquette et d’une boite pouvant contenir une donnée. x<- 12 voiture <- Clio

Cours d’ Algorithmique 2012 Les noms de variables Peut contenir des lettres et des chiffres. Pas de majuscule ni de chiffre pour le premier caractère. Pas de ponctuation (sauf ‘ _ ’) Pas d’espaces Pas d’accent Certains noms réservés aux langages

Cours d’ Algorithmique 2012 Les types de variables Les booléennes (vrai/faux) – True /false - 1/0 Les numériques (entiers ou décimaux) – int, short, long – float Les chaînes de caractères. – String Les tableaux. – array

Cours d’ Algorithmique 2012 Affectation des variables Permet de stocker la valeur dans la variable x <- 12 voiture <- « clio »

Cours d’ Algorithmique 2012 Les opérateurs Addition / Concaténation : + Soustraction : _ Multiplication : * Division /

Cours d’ Algorithmique 2012 Exercices

Cours d’ Algorithmique 2012 Les tests Choisir les instructions à exécuter en fonction de conditions vrai condition SI faux Instruction(s)

Cours d’ Algorithmique 2012 Les tests Si (condition) alors { Instructions } Si ( Ferrari ) alors { direction l’autoroute } Si ( Radar ) alors { Ralentir }

Cours d’ Algorithmique 2012 Les conditions Les conditions sont toujours des booléennes. Si ( je vais bien ) alors { instructions } Si ( c’est un garçon ) alors { instructions } Si ( 42 ) alors { instructions }

Cours d’ Algorithmique 2012 Les tests vrai condition SI faux Instruction(s)

Cours d’ Algorithmique 2012 Les tests Si (condition) alors { Instructions } sinon { Instructions } Si ( Ferrari ) alors { direction l’autoroute } sinon { direction RN10 } Si ( Radar ) alors { Ralentir } sinon { accélérer }

Cours d’ Algorithmique 2012 Exercices

Cours d’ Algorithmique 2012 Les conditions composées Si (condition 1 ou condition 2) alors { Instructions } Si (condition 1 et condition 2) alors { Instructions }

Cours d’ Algorithmique 2012 Les conditions composées Si (sur l’A10 ou l’A11) alors { rouler à 130km/h } Si (sur l’A10 et pas de radar) alors {rouler à 135km/h }

Cours d’ Algorithmique 2012 Les conditions composées Attention aux conditions qui ne sont jamais réalisables Si (x 15 ) { instructions }

Cours d’ Algorithmique 2012 L’imbrication de tests SI Condition 1 Condition 2 Instruction faux vrai faux

Cours d’ Algorithmique 2012 L’imbrication de tests Si (sur l’A10 ) alors si (Ferrari) alors { rouler à 135km/h } sinon si (R5) alors { rouler à 90km/h } sinon { rouler à 130km/h } sinon si (départementale) { rouler à 90km/h } sinon { rouler à 50km/h }

Cours d’ Algorithmique 2012 Exercices

Cours d’ Algorithmique 2012 Remarques sur les tests. Les conditions peuvent être des composées de ET et de OU Si ( Ferrari ET (autoroute OU circuit ) ) alors { rouler à 135km/h} != Si ( (Ferrari ET autoroute) OU circuit ) alors { rouler à 135km/h}

Cours d’ Algorithmique 2012 Remarques sur les tests. Toute structure de test requérant une condition composée faisant intervenir l’opérateur ET peut être exprimée de manière équivalente avec un opérateur OU, et réciproquement. Si ( pas de Radar ET autoroute) alors { rouler à 135km/h} sinon {rouler à 130km/h} = Si ( (Radar ou pas autoroute) OU circuit ) alors { rouler à 130km/h} sinon {rouler à 135km/h}

Cours d’ Algorithmique 2012 Les boucles While Condition vrai faux Tant que Instruction

Cours d’ Algorithmique 2012 Les boucles while Tant que ( je ne me fais pas arrêter ) { je fais du 135 km/h} Tant que ( j’ai des points ) { je prends ma voiture} While ( condition ){Instruction}

Cours d’ Algorithmique 2012 Intérêt de la boucle While Différence avec test : se répète tant que le test n’est pas validé. Exemple d’un contrôle de saisie au clavier.

Cours d’ Algorithmique 2012 Boucle While En pseudo code : TANT QUE booléen Instructions FIN TANT QUE

Cours d’ Algorithmique 2012 Erreurs avec la Boucle While Condition jamais vraie. – Ne passera jamais par la boucle. Condition toujours vraie – Ne sortira jamais de la boucle. Bug de la machine – plantage…

Cours d’ Algorithmique 2012 Les boucles Do While Condition vrai faux Instruction

Cours d’ Algorithmique 2012 Les boucles do while { je fais du 135 km/h} tant que( je ne me fais pas arrêter ) { je prends ma voiture} tant que ( j’ai des points ) Do {Instruction} while ( condition )

Cours d’ Algorithmique 2012 Exercices

Cours d’ Algorithmique 2012 Les boucles for Condition vrai faux Initialisation instruction Fin de bloc

Cours d’ Algorithmique 2012 Les boucles for Du (Km=0 ; Km<=250 ; Km++) { je vais à 135km/h } For (Initialisation; condition ; Fin de bloc ){Instruction}

Cours d’ Algorithmique 2012 Les boucles for en pseudo-code Pour Compteur ← Initial à Final Pas ValeurDuPas … Instructions … Compteur suivant

Cours d’ Algorithmique 2012 Quand utiliser WHILE ou FOR ? While : quand on ne connaît pas la quantité – le contrôle d’une saisie. – la gestion des tours d’un jeu (tant que la partie n’est pas finie, on recommence) For : Pour un nombre de fois déterminé. – Les tableaux (prochain chapitre)…

Cours d’ Algorithmique 2012 Imbrication de while ou de for Les WHILE et les FOR peuvent tout à fait s’imbriquer. Les WHILE et les FOR peuvent être successives.

Cours d’ Algorithmique 2012 Erreur à ne pas commettre Les WHILE et les FOR ne peuvent pas se croiser

Cours d’ Algorithmique 2012 Exercices

Cours d’ Algorithmique 2012 Les tableaux : array Var voitures = ["Ferrari F40", "Clio","207","307" ];

Cours d’ Algorithmique 2012 Les tableaux : array Var voitures[0] -> "Ferrari F40";

Cours d’ Algorithmique 2012 Les tableaux : array Var voitures = [ ["Ferrari ", "F40"], ["Peugeot","307" ], ["Renault","Clio" ] ]; voitures[0] -> ["Ferrari ", "F40"] voitures[0][0] -> "Ferrari " voitures[0][1] -> "F40"

Cours d’ Algorithmique 2012 Exercices

Cours d’ Algorithmique 2012 Les fonctions Certains traitements ne peuvent être effectués par un algorithme. D’autres traitements peuvent être longs et fastidieux

Cours d’ Algorithmique 2012 Les fonctions Pour faire gagner du temps aux programmeurs, les langages de programmation intègrent des fonctions prédéfinies. A ← Sin(35) A ← Len(chaîne) A ← Mid(chaîne,n1,n2)

Cours d’ Algorithmique 2012 Les fonctions maFonction (arg1, arg 2) NomArguments (ou paramètres)

Cours d’ Algorithmique 2012 Les fonctions de texte Tous les langages proposent des fonctions de texte. Len(chaîne) : renvoie le nombre de caractères d’une chaîne Mid(chaîne,n1,n2) : renvoie un extrait de la chaîne, commençant au caractère n1 et faisant n2 caractères de long. Trouve(chaîne1,chaîne2) : renvoie un nombre correspondant à la position de chaîne2 dans chaîne1. Si chaîne2 n’est pas comprise dans chaîne1, la fonction renvoie -1.

Cours d’ Algorithmique 2012 Exercices

Cours d’ Algorithmique 2012 Les fonctions numériques Tous les langages proposent des fonctions numériques. Ent(7.328): renvoie la partie entière du nombre Mod(10,4) : permet de récupérer le reste de la division d’un nombre par un deuxième nombre. Alea() : génère un nombre aléatoire entre 0 et 1 a=alea() -> 0<=a<1

Cours d’ Algorithmique 2012 Exercices

Cours d’ Algorithmique 2012 Les fonctions personnalisées Pour éviter les répétitions de code. Pour simplifier le code. Pour simplifier la modification du code

Cours d’ Algorithmique 2012 Les fonctions personnalisées function carre(nombre) {... return nombre * nombre; } NomParamètres (0, 1 ou n paramètres)

Cours d’ Algorithmique 2012 Le scope : variables locales et globales var x = 42 function olala() { var y = 33; Ecrire (x); // 42 } Ecrire (y); // undefined