1 Septi è me journ é e La programmation impérative.

Slides:



Advertisements
Présentations similaires
La boucle for : init7.c et init71.c
Advertisements

Les fonctions A quoi ça sert ?
1 Bases de donn é es relationnelles. 2 Introduction au mod è le relationnel les donn é es sont repr é sent é es par des tables, sans pr é juger de la.
la programmation en langage C
C.
Mise en œuvre d’un programme
Paramètres et pointeurs
FLSI602 Génie Informatique et Réseaux
Introduction à la programmation (420-PK2-SL) cours 15 Gestion des applications Technologie de linformation (LEA.BW)
Points importants de la semaine Les fonctions. La portée. La passage par copie. Les tableaux.
1 Objectifs de ce cours (I21) Cours JAVA (I21) -Licence 1 Semestre 2 / Y.Laborde Maintenant !
Introduction à la programmation (420-PK2-SL) cours 12 Gestion des applications Technologie de linformation (LEA.BW)
RESUMES Module II1 SOMMAIRE CYCLE 1 : Saisir – Afficher – Données
Algorithmique et Programmation
Leçon 2 : Surcharge des opérateurs IUP 2 Génie Informatique Méthode et Outils pour la Programmation Françoise Greffier Université de Franche-Comté.
Les pointeurs Enormément utilisé en C/C++ ! Pourquoi? A quoi ça sert?
Structures de données IFT Abder Alikacem Transtypage Module 1 Département d’informatique et de génie logiciel Édition Septembre 2009.
Structures de données IFT-2000
Structures de données IFT Abder Alikacem La classe string Département dinformatique et de génie logiciel Édition Septembre 2009 Département dinformatique.
Points importants de la semaine Le préprocesseur. La conversion de types. Les fonctions.
Points importants de la semaine Les constantes de compilation. Les fonctions.
LIFI-Java 2004 Séance du Jeudi 9 sept. Cours 1. La notion de langage Décrire une tâche à effectuer –programme Écrire à un haut niveau –facile pour lutilisateur.
COURS DE PROGRAMMATION ORIENTEE OBJET :
Tableaux Introduction aux tableaux à une dimension. Déclaration, stockage, initialisation et accès en lecture ou en écriture aux composantes d’un tableau.
PHP 2° PARTIE : FONCTIONS ET FORMULAIRE
Exemple de mise en équation d’un système
Les Types de données complexes
Types de données fondamentaux
Les fichiers texte en C++
Les assertions en Java.
LES PARAMETRES DE REGLAGE SUR CENTRE D’USINAGE
PHP 1° PARTIE : LES BASES © BTS IRIS 2002 [tv] Présentation Historique
Chapitre IX Gestion de flux.
LA LOGIQUE ALGORITHMIQUE
Programmer en langage c
4 Introduction des objets. Les chaînes et tableaux
9ième Classe (Mardi, 4 novembre) CSI2572. H Nous avons vu comment utiliser les directives #define #ifndef #endif Pour s’assurer de l’inclusion unique.
Cliquez pour modifier le style du sous-titre Cliquez pour modifier le style du titre.
Ce que les hommes pr é f è rent … … vous savez bien, c ’ est d ’ avoir une bonne copine …
Les pointeurs Suite.
ALGORITHMIQUE IUT Vélizy – DUT Info - 1ère année Laurent Marsan
Université de Sherbrooke
8PRO100 Éléments de programmation Comment répéter plusieurs fois une séquence d’instructions.
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à.
Labo 4 : Les structures et les entrées et sorties
1 Quatrième journée Les flots de données Les entrées/sorties Les flots de données Les entrées/sorties.
HistoriqueHistorique Langage C++, parution du livre Bjarne Stroustrup Normalisation ANSI.
1 Sixième journée Éléments de C++ La programmation typée Éléments de C++ La programmation typée.
Les types composés Les enregistrements.
1 Deuxième journée La programmation procédurale. 2 Unité de programmation : la procédure ou fonction Très semblable au math Un programme est un ensemble.
Conception de Programmes - IUT de Paris - 1ère année – Cours 8 – Les entrées/sorties Comment fonctionnent les opérateurs > pour les types élémentaires.
Conception de Programmes - IUT de Paris - 1ère année Cours 2 – Références et passage de paramètres Les Références –Introduction aux références.
Scripts et fonctions Instructions de contrôle
Philippe Gandy - 8 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Objets et Actions Élémentaires.
Directives Ocaml Définition
Conception de Programmes - IUT de Paris - 1ère année Les classes Introduction Déclaration d’une classe Utilisation d’une classe Définition des.
Algorithmique Boucles et Itérations
1 Les bases de données Séance 7 Les fonctions avancées : Opérateurs ensemblistes, Sous-requêtes et transactions.
Quatrième 4 Chapitre 11: Inégalités Ordre et opérations M. FELT 1.
Opérations courantes Guillaume PHILIPPON. Sommaire Mise à jour des QWG Gestion des utilisateurs Ajout/Suppression d’un programme Préparation des « OS.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 1 Support de cours rédigé par Bernard COFFIN Université.
FACTORY systemes Module 5 Page 5-1 Les outils clients Wonderware FORMATION InSQL 7.0.
Informatique 2A Langage C 3 ème séance.
Cours de Langage C Les structures
Informatique 2A Langage C 4ème séance
1 Initiation aux bases de données et à la programmation événementielle Construction d’un état Support de TD rédigé par Bernard COFFIN Université Paris.
FACTORY systemes Module 9 Section 1 Page 9-3 La sécurité d’une application FORMATION INTOUCH 7.0.
La factorisation Formule. Résoudre une équation de la forme ax 2 + bx + c = 0 1 ère Partie Présentation de la formule 2- On ajoute un terme constant et.
Prénom : Date : Les multiplications 1 Calcul
Transcription de la présentation:

1 Septi è me journ é e La programmation impérative

2 Programmation imp é rative Le programme utilise des variables qui sont modifiées au cours du programme C’est le programmeur qui les modifie Différent de la lecture d’un état Le flot de données contrairement en Scheme est modifié Le programme utilise des variables qui sont modifiées au cours du programme C’est le programmeur qui les modifie Différent de la lecture d’un état Le flot de données contrairement en Scheme est modifié

3 Les donn é es Données : valeur du programme pouvant être modifiée durant le cours de l’exécution –fournies en entrée par le clavier (par exemple) –lues dans un fichier –calculées au besoin –produites en sorties Mémorisées dans des variables Éventuellement dans une constante Données : valeur du programme pouvant être modifiée durant le cours de l’exécution –fournies en entrée par le clavier (par exemple) –lues dans un fichier –calculées au besoin –produites en sorties Mémorisées dans des variables Éventuellement dans une constante

4 Le flots de donn é es Les entrées et les sorties peuvent être vues comme des flots Un flot est modifié au fur et à mesure des transformateurs qu’il traverse : les fonctions En Scheme, le flot est constitué des sorties d’une fonction qui deviennent les entrées d’une autre fonction En C++, il peut y avoir des variables qui s’interposent dans le processus Les entrées et les sorties peuvent être vues comme des flots Un flot est modifié au fur et à mesure des transformateurs qu’il traverse : les fonctions En Scheme, le flot est constitué des sorties d’une fonction qui deviennent les entrées d’une autre fonction En C++, il peut y avoir des variables qui s’interposent dans le processus

5 D é finition d ’ une variable gabarit : type nom [= valeur] ; est une valeur qui change durant l’exécution du programme est toujours définie localement dans la fonction où elle sera utilisée utilisable seulement dans cette fonction gabarit : type nom [= valeur] ; est une valeur qui change durant l’exécution du programme est toujours définie localement dans la fonction où elle sera utilisée utilisable seulement dans cette fonction

6 Commandes atomiques Lecture –obtenu par l ’ op é rateur >> –transmet une valeur d ’ un « m é dium » vers une variable –le m é dium le plus utilis é est cin (clavier) –exemple int nb ; // variable cin >> nb ; Lecture –obtenu par l ’ op é rateur >> –transmet une valeur d ’ un « m é dium » vers une variable –le m é dium le plus utilis é est cin (clavier) –exemple int nb ; // variable cin >> nb ;

7 Commandes atomiques Modification / assignation –permet de modifier la valeur d ’ une variable –la syntaxe est nom_variable = expression_math ; –attention à ne pas confondre le signe = qui d é note une assignation et == qui d é note le pr é dicat d ’é galit é. Modification / assignation –permet de modifier la valeur d ’ une variable –la syntaxe est nom_variable = expression_math ; –attention à ne pas confondre le signe = qui d é note une assignation et == qui d é note le pr é dicat d ’é galit é.

8 Exemple int nombre ; cout << "Entrer un nombre:" << endl; cin >> nombre ; cout << "Le predecesseur de " << nombre << " est " << predecesseur(nombre) << endl; int nombre ; cout << "Entrer un nombre:" << endl; cin >> nombre ; cout << "Le predecesseur de " << nombre << " est " << predecesseur(nombre) << endl;

9 Nouvelles boucles itératives Deux nouvelles boucles – while – do-while. Ce sont les boucles générales. Le while correspondant à la boucle tantque vu avant. L’indice du for peut être utilisé dans son bloc d’instruction. Deux nouvelles boucles – while – do-while. Ce sont les boucles générales. Le while correspondant à la boucle tantque vu avant. L’indice du for peut être utilisé dans son bloc d’instruction.

10 Cr é ation d ’ un while while ( test ) bloc_d_instructions est l’instruction de l’itération de manière générale Attention à trois éléments : –l’entrée dans la boucle (avant le while ) –la condition d’arrêt de la boucle (le test) –la modification de la valeur du test au cours de l’exécution de la boucle (dans le corps) while ( test ) bloc_d_instructions est l’instruction de l’itération de manière générale Attention à trois éléments : –l’entrée dans la boucle (avant le while ) –la condition d’arrêt de la boucle (le test) –la modification de la valeur du test au cours de l’exécution de la boucle (dans le corps)

11 Exemple cout << "Rentrer \"0\" pour continuer." << endl; cin >> nombre ; while ( nombre != 0 ) { cout << "nombre != \"0\"." << endl; cout << "Rentrer un nouveau nombre." << endl; cin >> nombre; } cout << "Rentrer \"0\" pour continuer." << endl; cin >> nombre ; while ( nombre != 0 ) { cout << "nombre != \"0\"." << endl; cout << "Rentrer un nouveau nombre." << endl; cin >> nombre; }

12 Cr é ation d ’ un do-while do bloc_d_instructions while ( test ) ; équivalent à une boucle while qui commence par une exécution du bloc au lieu de commencer par un test do bloc_d_instructions while ( test ) ; équivalent à une boucle while qui commence par une exécution du bloc au lieu de commencer par un test

13 Exemple cout << "Entrer des mots." << "Pour arreter taper \"FIN\"." << endl; do { cin >> mot; cout << "Mot entre : " << mot << endl; } while ( mot != "FIN" ); cout << "Entrer des mots." << "Pour arreter taper \"FIN\"." << endl; do { cin >> mot; cout << "Mot entre : " << mot << endl; } while ( mot != "FIN" );

14 Indice dans une boucle for On peut utiliser l’indice dans une boucle for de manière explicite. C’est très utile pour la manipulation de tableau. for (int i = 1; i < nombre ; i++) { cout << "carre de " << i << " = " << i*i << endl; } On peut utiliser l’indice dans une boucle for de manière explicite. C’est très utile pour la manipulation de tableau. for (int i = 1; i < nombre ; i++) { cout << "carre de " << i << " = " << i*i << endl; }

15 Tableau Permet de réunir sous un seul nom un ensemble d’élément du même type type nom[] = {e0,e1,...,en}; On accède aux éléments du tableau avec nom[i] où i est l’indice Attention i commence à 0 et finit à n-1 Permet de réunir sous un seul nom un ensemble d’élément du même type type nom[] = {e0,e1,...,en}; On accède aux éléments du tableau avec nom[i] où i est l’indice Attention i commence à 0 et finit à n-1

16 It é ration sur un tableau les boucles for sont utiles pour manier tous les éléments d’un tableau : for (int i=0; i < TAILLE; i++) { cout << "e " << i << "= " << tab[i] << endl ; } TAILLE est la taille du tableau du tableau (indices de 0 à TAILLE-1 ) les boucles for sont utiles pour manier tous les éléments d’un tableau : for (int i=0; i < TAILLE; i++) { cout << "e " << i << "= " << tab[i] << endl ; } TAILLE est la taille du tableau du tableau (indices de 0 à TAILLE-1 )

17 Tableau et proc é dure Un tableau peut se passer en paramètre dans une fonction –Déclaration de la fonction int moyenneT (int suite[], int t) –Utilisation de la fonction int maSuite [] = {7, 4, 9, 2, 5}; int moyenne ; moyenne = moyenneT(maSuite, 5); Un tableau peut se passer en paramètre dans une fonction –Déclaration de la fonction int moyenneT (int suite[], int t) –Utilisation de la fonction int maSuite [] = {7, 4, 9, 2, 5}; int moyenne ; moyenne = moyenneT(maSuite, 5);

18 Tableau et valeur de retour Un tableau ne peut pas être transmis en valeur de retour Un tableau pass é en param è tre est modifiable à l ’ ext é rieur : c ’ est une entorse au principe d ’ encapsulation On é vite ceci avec le mot cl é const int moyenneTableau (const int suite[]) Nous n ’é tudierons pas ces cas ici. Un tableau ne peut pas être transmis en valeur de retour Un tableau pass é en param è tre est modifiable à l ’ ext é rieur : c ’ est une entorse au principe d ’ encapsulation On é vite ceci avec le mot cl é const int moyenneTableau (const int suite[]) Nous n ’é tudierons pas ces cas ici.