1 / 19

Algorithmes et programmes

Algorithmes et programmes. Comment on présent les algorithmes. Algorithmes. Définition de l’Association française de normalisation ”Ensembles des règles opératoires et de procédés définis en vue d’obtenir un résultat déterminé au moyen d’un nombre fini d’opérations”. Algorithmes. Propriétés

roana
Download Presentation

Algorithmes et programmes

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Algorithmes et programmes Comment on présent les algorithmes B.Shishedjiev - Informatique II

  2. Algorithmes • Définition de l’Association française de normalisation ”Ensembles des règles opératoires et de procédés définis en vue d’obtenir un résultat déterminé au moyen d’un nombre fini d’opérations”. B.Shishedjiev - Informatique II

  3. Algorithmes • Propriétés • Fini • Lisible • Fiable • Universel • Correct • Efficace B.Shishedjiev - Informatique II

  4. Langages • Propriétés des langues pour description d’algorithmes • Simplicité • Clarté • Expressivité • Ambiguïté • Efficacité • Translators • Compilateurs • Interpréteurs Source Exécu- table compilateur B.Shishedjiev - Informatique II

  5. Langages graphiques Début • Organigrammes Rédiger Nom.c Compiler Erreurs? Nom.OBJ Oui Non Biblio Editeur theque des liens Erreurs? Oui Nom.EXE Non Mettre en jeu Données Erreurs? Oui Non Résultats Encore? Oui Non B.Shishedjiev - Informatique II Fin

  6. Exemple d’algorithme Comment dire au votre robot de bouillir un œuf? • prends une casserole • va au lavabo • ouvre le robinet • remplis la casserole à moitié • va au frigo • s’il y a d’œufs prends un œuf sinon arrête. • si l’œuf est bon met le dans la casserole sinon mets le dans la poubelle et va vers 5. • Mets la casserole sur la cuisinière • Allume la cuisinière • Attends que l’eau commence à bouillir • si l’œuf doit être à la coque attends 1 minute sinon attends 5 minutes • éteins la cuisinière et sers l’œuf • arrête B.Shishedjiev - Informatique II

  7. début prends une casserole va au lavabo ouvre le robinet remplis la casserole à moitié va au frigo non Y a-t-il œufs oui Prends un non Bon? Dans la poubelle oui mets la casserole sur la cuisinière allume la cuisinière attends que l’eau commence à bouillir oui non A la coque? 1 minute 5 minutes éteins la cuisinière et sers l’œuf arrête fin Exemple d’algorithme B.Shishedjiev - Informatique II

  8. Langages graphiques • Arbres algorithmiques Racine Branche Algorithme Nœud Partie 3 Partie 1 Partie 2 Feuille Partie1.1 Partie1.2 Partie2.1 Partie2.2 Partie3.1 Partie3.2 instr1.1.1 instr1.1.2 instr1.1.3 etc B.Shishedjiev - Informatique II

  9. Langages algorithmiques • Génération des langues algorithmique • Langue-machine (machine language) • Assembleurs (Assemblers) • Langages universels de programmation • Fonctionnels (LISP Scheme) • Structurels (Fortran. Pascal C) • Objet orientés (SmallTalk C++ Java C#) • Langages de quatrième génération (4GPL) B.Shishedjiev - Informatique II

  10. Le langage C • Histoire1972 - Bell Laboratories –Dennis Ritchie langues A B C pour le développment de l’UNIX1979 – Kernigan et Ritchie1983 - ANSI-C • Propriétés • universel; • compact; • moderne (structuré); • près de la machine; • rapide; • indépendant de la machine; • portable; • extensible. B.Shishedjiev - Informatique II

  11. Le langage C • Les caractères utilisés • Lettres - ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz _ • Chiffres – 0123456789 • Caractères spéciaux – .,;:’ ”[ ] { } ( ) - + = * / % < > &  ! ? • Des mots réservés • Identificateurs (noms) – Chaînes de lettres et chiffres, dont le premier caractère est une lettre. • Vrais - interet Compte A25 BASE_3_G un_homme_triste • Faux – A.B un homme 3AB B.Shishedjiev - Informatique II

  12. Objets • Chaque instruction influence plusieurs objets. • Chaque objet a un ensemble de caractéristiques, qui sont: • Un nom (identificateur) • Un type (il définit les valeur dont cet objet peut avoir et les opérations lesquelles il peut subir) • Une valeur • Une adresse dans la mémoire • Un genre (constante, variable) B.Shishedjiev - Informatique II

  13. Le programme • Structure générale d’un programme: B.Shishedjiev - Informatique II

  14. Le programme • Le programme opère sur deux espaces : • la mémoire (où se trouvent les objets avec leurs valeurs) • Le point d’exécution du programme lui-même. • Il y a deux types d’instructions: • Ces qui modifient les valeurs (affectation, lecture) • Ces qui gèrent l’exécution (structures de contrôle) B.Shishedjiev - Informatique II

  15. Exemple #include <stdio.h> /* Inclure les déclarations des variables et fonctions d'entrée/sortie */ void main(void) /* le titre de la fonction */ { /* Debut du block */ printf ("Bonjour tout le monde\n"); /*Instruction */ } /*Fin du block*/ B.Shishedjiev - Informatique II

  16. Types d’objets prédéfinis • Le type entier(int, short, long, unsigned, byte) • Constantes1000 -100 -2 5600 – constantes décimales0234 0123 077 – constantes octales0x34A 0x10 0x123 – constantes hexadécimales3l 45l - long constants 8u 34u – unsigned constantsConstantes nommées#define N 10 #define M 100#define NOMBRE 150 • Variables – on déclare le nom et le type mais la valeur reste indéfinieint un_entier;short i,j,k; long grand_nombre ;constint ma_const = 10; - une variable dont la valeur est constante B.Shishedjiev - Informatique II

  17. Types d’objets prédéfinis • Type réel (float, double) • Constantes 1.5 -7.25 0.675 1.5E20 = 1.5.1020 1E-3 = 0.001#define PI 3.14169265 #define EPS 1E-3 • Variablesfloat a,b,c;double x,y,z ; • Le type logiqueIl est présenté par int: 0 – False; tous les autres - True#define TRUE 1 B.Shishedjiev - Informatique II

  18. Types d’objets prédéfinis • Le type caractère (char) et littérales • Constantes'a' 'A' '%' '3''\062' : '\x41‘#define C1 ‘A’ #define CHAINE1 ”TINTIN”#define CHAINE2  “c\’est un \”exemple\”\?”la valeur de la dernière constante est c’est un “exemple”? B.Shishedjiev - Informatique II

  19. Types d’objets prédéfinis • Les pointeurs – ce sont est un spécial type de données dont la valeur est l’adresse d’une location de la mémoire qui contient la valeur d’un certain type – le type du pointeur. NULL p 10 p • Exemples • int *p ; /* c’est un pointeur sur int */ • double x, *pd /*une variable de type double et un pointeur sur double*/ B.Shishedjiev - Informatique II

More Related