ALGORITHMIQUE SOMMAIRE. 1) Définitions... 2

Documents pareils

Cours d Informatique

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Définitions. Numéro à préciser. (Durée : )

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51

Feuille TD n 1 Exercices d algorithmique éléments de correction

Bases de programmation. Cours 5. Structurer les données

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Créer le schéma relationnel d une base de données ACCESS

Algorithmique et programmation : les bases (VBA) Corrigé

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

PROJET ALGORITHMIQUE ET PROGRAMMATION II

Introduction à MATLAB R

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Initiation à la programmation en Python

Organigramme / Algorigramme Dossier élève 1 SI

Chap III : Les tableaux

CORRECTION EXERCICES ALGORITHME 1

Algorithmique et Programmation, IMA

Cours Informatique Master STEP

L exclusion mutuelle distribuée

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

Python - introduction à la programmation et calcul scientifique

Algorithmique avec Algobox

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java

TP 1. Prise en main du langage Python

Introduction à l algorithmique et à la programmation M1102 CM n 3

Programmation C++ (débutant)/instructions for, while et do...while

Rappels sur les suites - Algorithme

Cours d initiation à la programmation en C++ Johann Cuenin

Représentation des Nombres

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

Algorithme. Table des matières

Conventions d écriture et outils de mise au point

ALGORITHMIQUE ET PROGRAMMATION En C

DU BINAIRE AU MICROPROCESSEUR - D ANGELIS CIRCUITS CONFIGURABLES NOTION DE PROGRAMMATION

Cours d algorithmique pour la classe de 2nde

MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C

2 Comment fonctionne un ordinateur, dans les grandes lignes

Calcul Formel et Numérique, Partie I

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

Chap 4: Analyse syntaxique. Prof. M.D. RAHMANI Compilation SMI- S5 2013/14 1

Initiation à LabView : Les exemples d applications :

Déroulement. Evaluation. Préambule. Définition. Définition. Algorithmes et structures de données 28/09/2009

L informatique en BCPST

La mémoire. Un ordinateur. L'octet. Le bit

Adama MBODJI MBODJ.SYSTEM

CAPTURE DES PROFESSIONNELS

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

UE Programmation Impérative Licence 2ème Année

Conception de circuits numériques et architecture des ordinateurs

alg - Classes, instances, objets [oo] Exercices résolus

Langage C. Patrick Corde. 22 juin Patrick Corde ( Patrick.Corde@idris.fr ) Langage C 22 juin / 289

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Algorithmique et structures de données I

URECA Initiation Matlab 2 Laurent Ott. Initiation Matlab 2

STAGE IREM 0- Premiers pas en Python

Cours 1 : La compilation

Utilisation d objets : String et ArrayList

Présentation du langage et premières fonctions

Licence Sciences et Technologies Examen janvier 2010

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

Les chaînes de caractères

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

Initiation à la Programmation en Logique avec SISCtus Prolog

Langages et Concepts de Programmation Introduction à la programmation en langage C

Cours d Algorithmique et de Langage C v 3.0

Comme chaque ligne de cache a 1024 bits. Le nombre de lignes de cache contenu dans chaque ensemble est:

SUPPORT DE COURS. Langage C

Rappels d architecture

Plus courts chemins, programmation dynamique

Découverte de Python

Les structures. Chapitre 3

ASR1 TD7 : Un microprocesseur RISC 16 bits

Représentation d un entier en base b

Programmation C. Apprendre à développer des programmes simples dans le langage C

Sub CalculAnnuite() Const TITRE As String = "Calcul d'annuité de remboursement d'un emprunt"

Microprocesseur + Logiciel

IV- Comment fonctionne un ordinateur?

Notions fondamentales du langage C# Version 1.0

COMPTABILITE SAGE LIGNE 30

Initiation à l algorithmique

Algorithmique, Structures de données et langage C

Projet Active Object

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes

Création et Gestion des tables

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, , ISBN :

Cours de C++ François Laroussinie. 2 novembre Dept. d Informatique, ENS de Cachan

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN ING

CM2 L architecture MIPS32

Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION

Algorithmique & Langage C IUT GEII S1. Notes de cours (première partie) cours_algo_lgc1.17.odp. Licence

Système de Gestion de Fichiers

Guide de formation avec cas pratiques. Programmation. Philippe Moreau Patrick Morié. Daniel-Jean David

Logiciel de Base. I. Représentation des nombres

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Transcription:

SOMMAIRE 1) Définitions.... 2 2) Organisation d un programme.... 2 2.1) Déclaration des constantes... 2 2.2) Déclaration des variables... 3 2.3) Définition du programme principal... 3 2.4) Définition des fonctions et procédures... 3 3) Affectation... 4 4) Opérateurs - Conditions.... 4 4.1) Opérateurs... 4 4.2) Conditions... 4 5) Les Structures algorithmiques.... 5 5.1) Séquencement linéaire... 5 5.2) Structures de choix (ou conditionnelles)... 5 5.2.1) Structure SI... ALORS... 5 5.2.2) Structure SI... ALORS...SINON...... 6 5.2.3) Structure de choix multiple... 6 5.3) Structures itératives (ou répétitives)... 7 5.3.1) Structure REPETER... JUSQUA... 7 5.3.2) Structure TANT QUE... FAIRE... 8 5.3.3) Structure POUR Indice ALLANT DE... A... FAIRE... 8 Philippe LECARDONNEL - GRANVILLE - 2003 - page 1

1) DEFINITIONS. Algorithme : Description en langage naturel de la suite des actions effectuées par un programme. : Traduction graphique de l algorithme. Parfois appelé Ordinogramme ou Organigramme. : Règles d écriture d un langage donné. Type de données : Un programme peut être amené à manipuler différents types de données : - booléen : valeur pouvant être soit Vraie, soit Fausse. - entiers : valeur numériques entières pouvant être signées ou non signées (codées sur un ou plusieurs octets). - réels : valeurs numériques codées avec une mantisse et un exposant. - caractère : octet correspondant à un code ASCII. - chaîne de caractères : ensemble de caractères. - tableau de données : ensemble de données de même type (exemple : tableau d entiers, tableau de réels). Toutes ces données sont codées sous forme d'octets en mémoire. Constante : donnée manipulée par un programme et ne pouvant être modifiée. Exemple : Constante Pi = 3.141559 : donnée manipulée par un programme et pouvant être modifiée. Ce peut être : - une donnée d entrée ; - le résultat final d un calcul ; - un résultat intermédiaire de calcul. Identificateur : nom explicite d une constante, d une variable ou d une fonction. Exemples : Conversion_BCD, Resultat, Lettre Procédures et fonctions : Une procédure ou une fonction effectue une suite d actions élémentaires constituant un tout. Une fonction se différencie d une procédure par le fait qu elle fournit un résultat. 2) ORGANISATION D UN PROGRAMME. L algorithme d un programme est organisé en plusieurs parties : déclaration des constantes déclaration des variables définition du programme principal définition des fonctions et procédures 2.1) Déclaration des constantes : Constante NomConstante : [Type] = Valeur Exemples : Constante Pi : Reel = 3.141559 Constante NombreLettres : Entier = 10 Philippe LECARDONNEL - GRANVILLE - 2003 - page 2

2.2) Déclaration des variables : Nom : [Type] Exemples : Rayon : Reel Compteur : Entier Lettre : Caractere 2.3) Définition du programme principal Le programme principal consiste en une suite d opérations élémentaires faisant souvent appel à des fonctions ou procédures. Ces différentes opérations sont mentionnées en utilisant les structures algorithmiques décrites au paragraphe 5. Le programme principal est délimité par les mots clefs et 2.4) Définition des fonctions et procédures Les procédures et fonctions peuvent nécessiter éventuellement un ou plusieurs paramètres d entrée ou de sortie. Un paramètre d entrée est la référence à une variable manipulée par la procédure ou la fonction. Un paramètre de sortie est une valeur renvoyée par une fonction. Une fonction ou une procédure peut elle-même appeler une ou plusieurs fonctions et procédures. de la déclaration d une procédure : Procédure NomProcédure (NomEntrée1 : [Type], NomEntrée2 : [Type], ) Constante ~ déclaration des constantes locales ~ ~ déclaration des variables locales ~ ~ description des actions effectuées par la procédure ~ de l appel d une procédure : NomProcédure (NomEntrée1, NomEntrée2 ) de la déclaration d une fonction : Fonction NomFonction (NomEntrée1 : [Type], NomEntrée2 : [Type], ) : [TypeDuRésultat] Constante ~ déclaration des constantes locales ~ ~ déclaration des variables locales ~ ~ description des actions effectuées par la fonction ~ de l appel d une fonction : NomFonction (NomEntrée1, NomEntrée2 ) Exemples d appels de fonctions et procédures : Procédure sans paramètre :...Ex : Effacer_Ecran Procédure avec un paramètre d entrée :... Ex : Afficher ( Bonjour ) Fonction avec paramètres d entrée et de sortie :... Ex : Resultat Racine (69) Exemple de déclaration de fonction : Fonction Moyenne (Note1 : Reel, Note2 : Reel) : Reel Intermediaire : Reel Intermediaire Note1 + Note2 Intermediaire Intermediaire / 2 Moyenne Intermediaire Exemples d utilisation de la fonction : Afficher (Moyenne(10.5,15)) ou NouvelleNote Moyenne (10,5.5) Philippe LECARDONNEL - GRANVILLE - 2003 - page 3

3) AFFECTATION. Une affectation consiste à attribuer une valeur à une variable. La syntaxe générale est la suivante : Nom Expression «Expression» peut être : une constante....ex : surface 40 une autre variable....ex : Donnee ValeurMemorisee le résultat d une fonction.... Ex : resultat racine (nombre) un calcul portant sur ces différents éléments.... Ex : surface (PI * Carre (Diametre)) / 4 4) OPERATEURS - CONDITIONS. 4.1) Opérateurs Les opérateurs permettent d élaborer une expression en vue d effectuer un calcul ou une comparaison. L usage des parenthèses est vivement conseillé dans le cas d expressions complexes. Nature s utilisées Notation Signification + Addition - Soustraction Opérateurs arithmétiques Entier * Multiplication Réel / Division (réelle) DIV Division entière MOD Reste de la division entière et Fonction ET Opérateurs logiques Booléen ou Fonction OU Entier ouex Fonction OU EXCLUSIF non Fonction NON Opérateur de concaténation Chaîne de caractères + Concaténation Booléen = Egal Entier Différent Opérateurs de comparaison Réel < Inférieur Caractère > Supérieur Chaîne de caractères Inférieur ou égal Supérieur ou égal 4.2) Conditions Dans les structures algorithmiques qui vont suivre, le terme «Condition» peut représenter : une condition simple : Ex : x 0 Indice 80 une condition complexe : Ex : (x > 0) ET ((y > 0) OU (z > 0)) (Indice 1) ET (Indice 10) ~ pour 1 Indice 10 ~ Philippe LECARDONNEL - GRANVILLE - 2003 - page 4

5) LES STRUCTURES ALGORITHMIQUES. Les structures algorithmiques sont réparties en 3 catégories : - succession linéaire d'opérations; - structures conditionnelles ou de choix : en fonction d'une condition, le programme exécute des opérations différentes; - structures itératives ou répétitives: sous contrôle d'une condition, une séquence d'opérations est exécutée répétitivement. 5.1) Séquencement linéaire Les actions successives sont mentionnées les unes après les autres. Action1 Action2... ActionN Action1 Action2 ActionN Remarque : dans la suite, la notation ou «N» représentera une succession d actions comme ci-dessus. Exemple : Calcul d un produit de 2 nombres a,b : réel ~ opérandes ~ p : réel ~ résultat du produit ~ Afficher ( Saisir le nombre a ) Saisir (a) Afficher ( Saisir le nombre b ) Saisir (b) p a * b afficher (p) 5.2) Structures de choix (ou conditionnelles) 5.2.1) Structure SI... ALORS... Une condition est testée pour déterminer si l action ou le groupe d actions suivant doit être exécuté. Si Condition Alors Si Condition Philippe LECARDONNEL - GRANVILLE - 2003 - page 5

Exemple : Calcul d une racine carrée x: réel ~ opérande ~ r: réel ~ résultat de la racine carrée ~ Afficher ( Saisir le nombre x ) Saisir (x) Si x > 0 Alors r racine (x) afficher (r) Si 5.2.2) Structure SI... ALORS...SINON... Une condition est testée pour déterminer quelle action ou quel groupe d actions doit être exécuté. Si Condition Alors 1 Sinon 2 Si 1 Condition 2 Exemple : Calcul d une racine carrée s : x: réel ~ opérande ~ r: réel ~ résultat de la racine carrée ~ Afficher ( Saisir le nombre x ) Saisir (x) Si x < 0 Alors afficher ( x est négatif ) Sinon r racine (x) afficher (r) Si 5.2.3) Structure de choix multiple Une donnée est comparée successivement à des valeurs constantes : Cas Ou Donnée Vaut Valeur1 : 1 Valeur2 : 2... ValeurN : N Autre : Défaut Cas Donnée = Valeur1 1 Donnée = Valeur2 2 Donnée = ValeurN N Defaut Remarques : la partie «Défaut» peut ne pas exister. Plusieurs valeurs différentes peuvent être regroupées sur une même ligne si les actions correspondantes sont identiques. Philippe LECARDONNEL - GRANVILLE - 2003 - page 6

Exemple : Affichage de la nature d un caractère c: caractère ~ caractère saisi au clavier ~ Afficher ( Taper un caractère ) Saisir (c) Cas Ou c Vaut A.. Z : afficher ( Lettre majuscule ) a.. z : afficher ( Lettre minuscule ) 0.. 9 : afficher ( Chiffre ) autre : afficher ( Ni Lettre Ni Chiffre ) Cas 5.3) Structures itératives (ou répétitives) 5.3.1) Structure REPETER... JUSQUA... Une action ou un groupe d actions est exécuté répétitivement jusqu'à ce qu une condition soit vérifiée. Répéter Jusqu a Condition Condition Remarque : la vérification de la condition s effectue après les actions. Celles-ci sont donc exécutées au moins une fois. Exemple : exécution répétitive d un programme s : a,b : réel ~ opérandes ~ p : réel ~ résultat du produit ~ c : caractère ~ réponse de l utilisateur ~ Répéter Afficher ( Saisir le nombre a ) Saisir (a) Afficher ( Saisir le nombre b ) Saisir (b) p a * b afficher (p) afficher ( encore un calcul? Non touche N ; Oui autre touche ) saisir (c) Jusqu'à c = N Philippe LECARDONNEL - GRANVILLE - 2003 - page 7

5.3.2) Structure TANT QUE... FAIRE... Une action ou un groupe d actions est exécuté répétitivement tout le temps où une condition est vraie. TantQue Condition Faire Faire Condition Remarque : la vérification de la condition s effectue avant les actions. Celles-ci peuvent donc ne jamais être exécutées. Exemple : Exécution répétitive d une action Tant Que Non (ToucheAppuyée) Faire Afficher ( Attente ) Faire 5.3.3) Structure POUR Indice ALLANT DE... A... FAIRE... Une action ou un groupe d actions est exécuté répétitivement un certain nombre de fois : le nombre dépend des valeurs initiale et finale données à la variable «Indice». Indice Valeur1 Pour Indice Allant De Valeur1 A Valeur2 Faire Faire Indice> Valeur2 Indice Indice+1 Remarque : les valeurs initiale (Valeur1) et finale (Valeur2) sont comprises. Il est éventuellement possible de spécifier un autre pas d incrémentation (+2,+10,- 1...) Exemple : Affichage d une ligne d étoiles i : entier ~ compteur de boucles ~ Pour i allant de 1 à 80 Faire Afficher ( * ) Faire Philippe LECARDONNEL - GRANVILLE - 2003 - page 8

Remarque : cette structure algorithmique peut en fait être remplacée par une structure TANT QUE... FAIRE i : entier ~ compteur de boucles ~ i 1 Tant Que i 80 Faire Afficher ( * ) i i +1 Faire Philippe LECARDONNEL - GRANVILLE - 2003 - page 9