ALGORITHMIQUE IUT Vélizy – DUT Info - 1ère année Laurent Marsan

Slides:



Advertisements
Présentations similaires
Les Structures.
Advertisements

Tris.
Initiation à la programmation et algorithmique cours 4
DECLARATION DE VARIABLES
Algorithmique Résume.
C.
Tableaux Certains problèmes nécessitent beaucoup de variables du même type. Exemple : relevé de températures matin et soir dans 10 villes pour 10 jours.
INTRODUCTION.
8. Les tableaux P. Costamagna – ISEN N1.
Section VIII Modularité Partie II
Les sous-programmes Chapitre n° 5: Objectifs : Activité:
Initiation à la programmation et algorithmique cours 3
Les bases de l’Algorithmique
Points importants de la semaine Les commentaires. Les variables. Les instructions conditionnelles. Les instructions itératives (les boucles).
Conception et analyse des algorithmes
CPI/BTS 2 Programmation Web Introduction au PHP
Initiation à la programmation et algorithmique
Partie 1 Etude de l'existant
Introduction à l’algorithmique
Démarche de résolution de problèmes
Section XI Traitement de fichiers
Algorithmique et Programmation
8PRO100 Éléments de programmation Comment faire prendre une décision à un ordinateur?
Les éléments de base de l’algorithmique
Création d’un programme :
RESUMES Module II1 SOMMAIRE CYCLE 1 : Saisir – Afficher – Données
Algorithmique et Programmation
Introduction au langage PHP Réfs : Chap 3 p 49. Présentation PHP (Hypertext PreProcessor) est un langage de développement Web créé en 1994 par Rasmus.
CYCLE 1 : Saisir – Afficher – Données Déclarer des Constantes dans un programme 1- Rôle de la déclaration de constante 2- Syntaxe de la déclaration de.
Les pointeurs Modes d’adressage de variables. Définition d’un pointeur. Opérateurs de base. Opérations élémentaires. Pointeurs et tableaux. Pointeurs et.
Structures de données IFT-2000
Semaine #1 INF135 par Frédérick Henri.
8PRO107 Éléments de programmation
Chapitre 3 Syntaxe et sémantique.
Analyse d’algorithmes
Structures alternative et répétitive
Types de données fondamentaux
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 ?
1 Notations Asymptotiques Et Complexité Notations asymptotiques : 0 et  Complexité des algorithmes Exemples de calcul de complexité.
LA LOGIQUE ALGORITHMIQUE
Le Bloc Case Cours LCS N°3 Présenté par Mr: LALLALI.
Institut de Formation aux Métiers de l’industrie Automobile.
INTRODUCTION.
3 Les instructions. Cours 32 Plan du cours 3 Instruction Bloc Portée L’alternative Affectations =, +=, *=… Comment comparer –Comparer des réels –Comparer.
ALGORITHMIQUE ET PROGRAMMATION C
8INF856 Programmation sur architectures parallèles
Algorithmique et programmation (1)‏
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à.
Décomposition et paramétrage des algorithmes
 Syntaxe du langage PHP
Module I3 algorithmique et programmation
Le langage Z minimal Pr ZEGOUR DJAMEL EDDINE
La programmation.
Sémantique des instructions pour le langage Z minimal Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Interprétation/Génération de code pour le langage Z minimal Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Algorithmique : Introduction
Introduction et Généralités sur l’Algorithmique
Initiation à l’Algorithmique
Module 3 : Algorithme et Programmation
Module algorithmique et programmation
Algorithmique Tableaux de données
Objets et Actions Élémentaires.
Algorithmique Conditions et Itérations Cours de BTS/CPI 1ère année Algo – Prog CPI/BTS1 – M. Dravet – 17/09/2003 Dernière modification: 17/09/2003.
Algorithmique Boucles et Itérations
Algorithmique et programmation
L'exécution d'un programme nécessite l'utilisation des ressources de l'ordinateur : temps de calcul pour exécuter les opérations, et l'occupation de la.
Introduction à l’Informatique Licence SPI Mme Delmotte.
Algorithmique - Lecture / Ecriture - M me DJEBOURI. D. Faculté de Médecine salle informatique Année universitaire
Transcription de la présentation:

ALGORITHMIQUE IUT Vélizy – DUT Info - 1ère année Laurent Marsan Algorithmique - Cours 1 - Introduction ALGORITHMIQUE IUT Vélizy – DUT Info - 1ère année Laurent Marsan Algorithmique - Cours 1 - Introduction

Algorithmique - Cours 1 - Introduction Problème Solution Programme Algorithme Programme Algorithmique - Cours 1 - Introduction

Algorithmique - Cours 1 - Introduction Qu’est-ce qu’un algorithme? Étape préliminaire au programme: expose les mécanismes du programme final, en particulier les points délicats. Permet de décrire une solution d’un problème en mettant « de côté » les aspects techniques (langage de programmation et architecture de l’ordinateur). Permet d’estimer le coût théorique (complexité) d’une solution en temps et en mémoire, et donc de comparer deux solutions. Quand doit-on écrire l’algorithme d’un problème? Étape obligatoire dans la résolution d’un problème présentant un certain niveau de difficulté. Dépend de l’importance d’un éventuel gain de performance pour l’utilisateur. Algorithmique - Cours 1 - Introduction

Algorithmique - Cours 1 - Introduction Objectifs du cours d’algorithmique première année Vous apprendre à : organiser votre réflexion expliquer clairement une solution Ex: Interro, sortez une feuille Commencer à découvrir les algorithmes et structures qui constituent le bagage minimal d’un programmeur en programmant, vous aurez parfois à inventer des algorithmes nouveaux (tout n’est pas déjà dans les livres) il faut à tout prix éviter de réinventer l’eau chaude! Vous convaincre que : vous ne pouvez pas vous passer de ce bagage minimal, vous ne pouvez pas tout réinventer pour accélérer un programme, une optimisation algorithmique est généralement beaucoup plus intéressante que l’achat d’un ordinateur plus puissant Algorithmique - Cours 1 - Introduction

Algorithmique - Cours 1 - Introduction Un exemple: le tri d’entiers Nb entiers Tri naïf 400 n.m. 4.000 0.01 sec. 40.000 1.59 sec. 400.000 3 mn. 40 4.000.000 Trop long! (~ 5 h.) 40.000.000 Trop long! (~ 20 j.) « Quick sort » n.m. 0.03 sec. 0.32 sec. 3.64 sec. 36.7 sec. Bac+4, Bac+5: Algos de haut niveau (ex: graphisme:Bresenham) Algorithmique - Cours 1 - Introduction

Algorithmique - Cours 1 - Introduction 2 – Qu’est-ce qu’un algorithme? Un algorithme décrit une façon de résoudre un problème sous la forme d’une suite d’opérations à effectuer. Contraintes: Opérations non ambiguës. Opérations réalisables par la machine virtuelle. La machine virtuelle sur laquelle on simule l’exécution des algorithmes est composée : d’un clavier (lire); d’un écran (écrire); d’une mémoire pour stocker et manipuler les données d’une unité de calcul qui effectue les opérations arithmétiques et logiques. Elle ne peut traiter qu’une seule opération à la fois (pas de parallèlisme). L’algorithme doit se terminer et fournir un résultat. Algorithmique - Cours 1 - Introduction

Algorithmique - Cours 1 - Introduction 2 – Qu’est-ce qu’un algorithme? Avantages par rapport à un vrai programme : Syntaxe souple. Ne nécessite pas de connaissances techniques (C, C++, Java…) Ne détaille pas nécessairement tout le contenu d’une solution. On peut décider de remettre l’écriture de certaines parties à plus tard sans bloquer l’avancement général. Ex: bâtiment Ex: café Une difficulté réside dans le choix du niveau de détail à employer: seules les informations pertinentes doivent apparaître. Algorithmique - Cours 1 - Introduction

Algorithmique - Cours 1 - Introduction 3 – Nomenclatures Une variable représente une portion de la mémoire dans laquelle on peut stocker une valeur (Ex: t:=3) lire et afficher la valeur contenue dans la variable (Ex: écrire(t) ) en indiquant l'identificateur de cette variable. Par convention, lorsque aucune valeur n’a été attribuée à une variable, celle-ci est indéfinie. Un identificateur est un nom (variable, programme, sous-programme…). Le type d’une variable détermine les valeurs possibles de cette variable, les opérations que l’on peut lui appliquer, et, d’un point de vue plus interne, la représentation en mémoire de la variable. (Ex: entier, flottant, booléen…) Algorithmique - Cours 1 - Introduction

Algorithmique - Cours 1 - Introduction 3 – Nomenclatures Une instruction est un ordre qui sera exécuté par la machine virtuelle: Ex: lire(a); t:=2; Chaque instruction se termine par un « ; ». On précise toujours : le nom de l’instruction (ici lire ou :=) ; les données sur lesquelles agit l’instruction, ces données pouvant être : des variables (Ex: t:=a;) des constantes (Ex: t:=7;) des expressions* dont la valeur est calculée avant l’exécution de l’instruction (Ex: t:=a+7;) * une expression étant elle-même composée de variables et/ou de constantes liées entre elles par des opérations. Algorithmique - Cours 1 - Introduction

Algorithmique - Cours 1 - Introduction Pour écrire des algorithmes, nous utiliserons les notations suivantes : Algorithme <nom> < liste de paramètres > { … } contient, si nécessaire, des contraintes de nature logique que les entrées (paramètres) et sorties doivent remplir. // … commentaire décrivant ce que fait l’algorithme, les saisies requises, les affichages obtenus, ou la nature des paramètres. aux … déclaration des variables auxiliaires utilisées par l’algorithme. début … instructions à exécuter (corps de l’algorithme). fin <nom> Algorithmique - Cours 1 - Introduction

Algorithmique - Cours 1 - Introduction Exemple Algorithme moyenne_deux_notes // calcule la moyenne de deux notes sur 20 aux a,b,m : flottant; // on stockera la moyenne dans m début écrire (“ Entrez 2 notes  ” ) ; lire (a,b); // lecture au clavier m:=(a+b)/2; écrire (“ Voici la moyenne :”, m ); fin moyenne_deux_notes Algorithmique - Cours 1 - Introduction