La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

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

Présentations similaires


Présentation au sujet: "ALGORITHMIQUE IUT Vélizy – DUT Info - 1ère année Laurent Marsan"— Transcription de la présentation:

1 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

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

3 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

4 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

5 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. 3 mn. 40 Trop long! (~ 5 h.) 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

6 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

7 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

8 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

9 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

10 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

11 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


Télécharger ppt "ALGORITHMIQUE IUT Vélizy – DUT Info - 1ère année Laurent Marsan"

Présentations similaires


Annonces Google