Cycle de vie Définitions Recette Efficacité Rubik s cube Pourquoi Algo simple Les briques De l algorithme au programme Py

Dimension: px
Commencer à balayer dès la page:

Download "Cycle de vie Définitions Recette Efficacité Rubik s cube Pourquoi Algo simple Les briques De l algorithme au programme Py"

Transcription

1 Cycle de vie Définitions Recette Efficacité Rubik s cube Pourquoi Algo simple Les briques De l algorithme au programme Py M Algorithmique et informatique Chapitre 1 : présentation Ludovic Grossard Département Mesures Physiques, IUT du Limousin Université de Limoges M Algorithmique et informatique Chapitre 1 : présentation

2 Cycle de vie Définitions Recette Efficacité Rubik s cube Pourquoi Algo simple Les briques De l algorithme au programme Py Plan 1 Cycle de vie d un projet logiciel 2 Définitions 3 La recette de cuisine est un algorithme 4 La recette de cuisine n est pas un algorithme 5 Efficacité d un algorithme 6 Rubik s cube 7 Pourquoi apprendre l algorithmique? 8 Premier algorithme simple 9 Les briques de base 10 De l algorithme au programme M Algorithmique et informatique Chapitre 1 : présentation

3 Cycle de vie Définitions Recette Efficacité Rubik s cube Pourquoi Algo simple Les briques De l algorithme au programme Py I. Cycle de vie d un projet logiciel M Algorithmique et informatique Chapitre 1 : présentation

4 Cycle de vie Définitions Recette Efficacité Rubik s cube Pourquoi Algo simple Les briques De l algorithme au programme Py Cycle de vie d un projet logiciel M Algorithmique et informatique Chapitre 1 : présentation

5 Cycle de vie Définitions Recette Efficacité Rubik s cube Pourquoi Algo simple Les briques De l algorithme au programme Py II. Définitions Algorithme ensemble des règles opératoires qui permettent la résolution d un problème par l application d un nombre fini d opérations de calcul à exécuter en séquence. Pseudo-code façon de décrire un algorithme sans référence à un langage de programmation en particulier. Il n existe pas de réelle convention pour le pseudo-code. Code texte qui représente les instructions qui doivent être exécutées par un microprocesseur, généralement écrit dans un langage de programmation M Algorithmique et informatique Chapitre 1 : présentation

6 Cycle de vie Définitions Recette Efficacité Rubik s cube Pourquoi Algo simple Les briques De l algorithme au programme Py III. La recette de cuisine est un algorithme Vous avez des algorithmes à la maison Tout comme une recette de cuisine, un algorithme est caractérisé par : des données en entrée (les ingrédients) des opérations à exécuter en séquence (préparation / cuisson) un résultat (les sablés nappés de chocolat) M Algorithmique et informatique Chapitre 1 : présentation

7 Cycle de vie Définitions Recette Efficacité Rubik s cube Pourquoi Algo simple Les briques De l algorithme au programme Py IV. La recette n est pas un algorithme Une recette est ambigüe (termes vagues, plusieurs options) nécessite également le «coup de main» du chef ne mène pas toujours au résultat attendu Un algorithme est non ambigü et conduit toujours au même résultat M Algorithmique et informatique Chapitre 1 : présentation

8 Cycle de vie Définitions Recette Efficacité Rubik s cube Pourquoi Algo simple Les briques De l algorithme au programme Py V. Efficacité d un algorithme On mesure l efficacité d un algorithme par : sa durée de calcul (complexité de l algorithme) sa consommation de mémoire, l exactitude du résultat obtenu (méthodes probabilistes), sa scalabilité (aptitude à être efficacement parallélisé). M Algorithmique et informatique Chapitre 1 : présentation

9 Cycle de vie Définitions Recette Efficacité Rubik s cube Pourquoi Algo simple Les briques De l algorithme au programme Py VI. Le Rubik s cube combinaisons recherche de la solution au hasard : > 100 fois l âge de l Univers (à une combinaison par seconde) recherche de la solution par des algorithmes M Algorithmique et informatique Chapitre 1 : présentation

10 Cycle de vie Définitions Recette Efficacité Rubik s cube Pourquoi Algo simple Les briques De l algorithme au programme Py Le Cubestormer II en action Vidéo cubestormer (disponible sur claroline) M Algorithmique et informatique Chapitre 1 : présentation

11 Cycle de vie Définitions Recette Efficacité Rubik s cube Pourquoi Algo simple Les briques De l algorithme au programme Py VII. Pourquoi apprendre l algorithmique? et pas apprendre directement un langage de programmation L algorithme exprime les instructions résolvant un problème donné indépendamment des particularités de tel ou tel langage ; Il est écrit en pseudo-code permet d apprendre à manier la structure logique d un programme informatique quel que soit le langage de programmation ; si un programme était une dissertation, l algorithmique serait le plan ; vous pourrez ensuite passer facilement d un langage à un autre. M Algorithmique et informatique Chapitre 1 : présentation

12 Cycle de vie Définitions Recette Efficacité Rubik s cube Pourquoi Algo simple Les briques De l algorithme au programme Py VIII. Premier algorithme simple Distributeur de boissons VARIABLES monnaieintroduite : réel numeroboisson : entier prixboisson : réel monnaierendue : réel DEBUT_ALGORITHME # On fixe le prix d une boisson prixboisson 0.5 # On attend la monnaie Écrire "Introduisez votre monnaie" Lire monnaieintroduite # On attend que le client choisisse la boisson Écrire "choisissez votre boisson" Lire numeroboisson # On prépare la boisson Écrire "Préparation en cours" Écrire "Terminé. Prenez votre boisson" # On rend la monnaie monnaierendue monnaieintroduite - prixboisson Écrire "Monnaie rendue : ", monnaierendue L algorithme a quelques limitations : on ne vérifie pas si la somme introduite est suffisante on ne permet pas d introduire plusieurs pièces une fois la boisson servie et la monnaie rendue, on ne recommence pas au début FIN_ALGORITHME M Algorithmique et informatique Chapitre 1 : présentation

13 Cycle de vie Définitions Recette Efficacité Rubik s cube Pourquoi Algo simple Les briques De l algorithme au programme Py IX. Les briques de base Un algorithme, aussi complexe soit-il, est composé de quatre familles d instructions : l affectation de variables la lecture / écriture les tests les boucles M Algorithmique et informatique Chapitre 1 : présentation

14 Cycle de vie Définitions Recette Efficacité Rubik s cube Pourquoi Algo simple Les briques De l algorithme au programme Py X. De l algorithme au programme L algorithme ne représente que la suite des opérations à effectuer, sa mise en œuvre se fait via un langage de programmation, le résultat de cette transcription s appelle le code Il existe un grand nombre de langages de programmation (661 selon wikipedia), chacun ayant ses spécificités. Nous utiliserons le langage Python M Algorithmique et informatique Chapitre 1 : présentation

15 Cycle de vie Définitions Recette Efficacité Rubik s cube Pourquoi Algo simple Les briques De l algorithme au programme Py XI. Python c est quoi cette bête? créé en 1990 idéal pour débuter la programmation logiciel libre multiplateforme grande communauté de développeurs nombreuses bibliothèques de fonctions... j aime bien :) Guido van Rossum M Algorithmique et informatique Chapitre 1 : présentation

16 Cycle de vie Définitions Recette Efficacité Rubik s cube Pourquoi Algo simple Les briques De l algorithme au programme Py Premier programme Python Distributeur de boissons 1 # variables 2 # monnaieintroduite :réel 3 # numeroboisson :entier 4 # prixboisson :réel 5 # monnaierendue :réel 6 7 # on fixe le prix d une boisson 8 prixboisson = # on attend que le client insère la monnaie 11 monnaieintroduite = input("introduisez votre monnaie : ") # on attend que le client choisisse la boisson 14 numeroboisson = input("choisissez votre boisson : ") # on prépare la boisson 17 print "Préparation en cours" 18 print "Terminé. Prenez votre boisson" # on rend la monnaie 21 monnaierendue = monnaieintroduite - prixboisson 22 print "Monnaie rendue : ", monnaierendue M Algorithmique et informatique Chapitre 1 : présentation

17 Définitions Types de données Noms des variables Déclaration des variables Affectation à une variable Déclaration des variables M124 - Algorithmique et informatique Chapitre 2 : les variables Ludovic Grossard Département Mesures Physiques, IUT du Limousin Université de Limoges M124 - Algorithmique et informatique Chapitre 2 : les variables

18 Définitions Types de données Noms des variables Déclaration des variables Affectation à une variable Déclaration des variables Plan 1 Définitions 2 Types de données 3 Noms des variables 4 Déclaration des variables 5 Affectation à une variable 6 Déclaration des variables 7 Les opérateurs Opérateurs et opérandes Opérateurs mathématiques Priorité des opérateurs 8 Lire et afficher des variables 9 Exemple M124 - Algorithmique et informatique Chapitre 2 : les variables

19 Définitions Types de données Noms des variables Déclaration des variables Affectation à une variable Déclaration des variables I. Définitions Variable Emplacement mémoire dans lequel on peut lire et écrire des données permet au programme de travailler sur des données et de stocker le résultat les variables sont indispensables en programmation leur emplacement dans la mémoire s appelle l adresse mais on les désigne généralement par un nom (une étiquette) attention, la mémoire est volatile (son contenu disparaît à la fin du programme) M124 - Algorithmique et informatique Chapitre 2 : les variables

20 Définitions Types de données Noms des variables Déclaration des variables Affectation à une variable Déclaration des variables II. Types de données Les variables peuvent accueillir des données simples : des nombres (entiers, réels) du texte (caractère unique ou chaîne de caractères) des booléens (vrai / faux) et des structures de données plus complexes : nombres complexes tableaux, matrices structures définies par l utilisateur (matrice de complexes, tableau de chaînes de caractères...) M124 - Algorithmique et informatique Chapitre 2 : les variables

21 Définitions Types de données Noms des variables Déclaration des variables Affectation à une variable Déclaration des variables III. Noms des variables Chaque variable possède un nom, choisi par le programmeur Quelques règles : le nom de la variable doit indiquer de manière claire son rôle (prixboisson, monnaieintroduite...) les compteurs sont généralement nommés avec une seule lettre : i, j, k... pas d espaces, pas d accents ou caractères spéciaux ($#!@...) on évite les noms compliqués ou sans signification : toto, zz42, nbptsdsplan (difficiles à retenir, risque d erreur de saisie) ne pas hésiter à prendre un nom long si besoin : vitessemoyenneenkmh M124 - Algorithmique et informatique Chapitre 2 : les variables

22 Définitions Types de données Noms des variables Déclaration des variables Affectation à une variable Déclaration des variables III. Noms des variables Conventions généralement utilisées pour nommer les variables CamelCase (chatmot) vitessemoyenneenkmh lowercase / underscore vitesse_moyenne_en_kmh Une fois la convention fixée, il faut s y tenir tout au long du projet. M124 - Algorithmique et informatique Chapitre 2 : les variables

23 Définitions Types de données Noms des variables Déclaration des variables Affectation à une variable Déclaration des variables IV. Déclaration des variables Au début de chaque algorithme, on déclare les variables utilisées et le type de données qu elles accueilleront VARIABLES monnaieintroduite : réel numeroboisson : entier... Certains langages nécessitent que les variables soient déclarées ce n est pas le cas du langage Python mais nous les déclarerons en commentaires 1 # variables 2 # monnaieintroduite : réel 3 # numeroboisson : entier 4... M124 - Algorithmique et informatique Chapitre 2 : les variables

24 Définitions Types de données Noms des variables Déclaration des variables Affectation à une variable Déclaration des variables V. Affectation à une variable Pour donner une valeur à une variable, on utilise l opérateur d affectation prixboisson 0.5 L expression à droite du symbole est évaluée, puis placée dans la variable située à gauche. on peut (ré)affecter une variable à n importe quel moment Cette expression peut être : une constante (a 1) une autre variable (a b) une expression (a b + c) Exemple : l incrémentation : a a + 1 M124 - Algorithmique et informatique Chapitre 2 : les variables

25 Définitions Types de données Noms des variables Déclaration des variables Affectation à une variable Déclaration des variables VI. Affectation à une variable Attention Avant de pouvoir utiliser une variable dans un algorithme, elle doit être initialisée VARIABLES a : entier b : entier c : entier DEBUT_ALGORITHME a 1 c a + b # Problème! Que vaut b? FIN_ALGORITHME M124 - Algorithmique et informatique Chapitre 2 : les variables

26 Définitions Types de données Noms des variables Déclaration des variables Affectation à une variable Déclaration des variables VII. Opérateurs 1) Opérateurs et opérandes opérateur symbole utilisé pour effectuer un calcul entre des opérandes opérande variable ou expression expression suite valide d opérateurs et d opérandes Par exemple, dans l expression : x y + 1 Il y a deux opérateurs ( et +) et trois opérandes (x,y et 1). M124 - Algorithmique et informatique Chapitre 2 : les variables

27 Définitions Types de données Noms des variables Déclaration des variables Affectation à une variable Déclaration des variables VII. Opérateurs 1) Opérateurs et opérandes Il existe différents types d opérateur : d affectation mathématiques de comparaison logiques M124 - Algorithmique et informatique Chapitre 2 : les variables

28 Définitions Types de données Noms des variables Déclaration des variables Affectation à une variable Déclaration des variables VII. Opérateurs 2) Opérateurs mathématiques Les opérateurs suivants sont disponibles : + addition x y + z - soustraction x y - z * multiplication x y * z ** élévation à la puissance x y ** 3 / division x y / z % modulo x y % z attention à la division par 0! y et z entiers exemple : 17 % 3 = 2 (car 17 = 3*5 + 2) M124 - Algorithmique et informatique Chapitre 2 : les variables

29 Définitions Types de données Noms des variables Déclaration des variables Affectation à une variable Déclaration des variables VII. Opérateurs 3) Priorité des opérateurs de la précédence la plus forte à la plus faible : ** Exponentiation *, /, % Multiplication, Division et Reste +, - Addition et soustraction Les opérateurs avec la même précédence sont listés dans la même ligne Par exemple, + et - ont la même précédence. Exemple x * 2**2 x vaut 17 Pour modifier l ordre d évaluation, on utilise des parenthèses : x (5 + 3) * 2**2 x vaut 32 M124 - Algorithmique et informatique Chapitre 2 : les variables

30 Définitions Types de données Noms des variables Déclaration des variables Affectation à une variable Déclaration des variables VIII. Lire et afficher des variables Un programme doit pouvoir dialoguer avec l utilisateur lire les données qu il saisit au clavier afficher des informations à l écran Remarque : lorsque le programme lit des données, l utilisateur écrit. Lorsque le programme affiche des données, l utilisateur les lit. M124 - Algorithmique et informatique Chapitre 2 : les variables

31 Définitions Types de données Noms des variables Déclaration des variables Affectation à une variable Déclaration des variables VIII. Lire et afficher des variables VARIABLES x : réel # nombre choisi par l utilisateur carre : réel # son carré DEBUT_ALGORITHME # on demande à l utilisateur de saisir x Écrire "Saisissez x : " Lire x # on calcule le carré de x carre x*x # on affiche le carré Écrire "le carré de ", x, " vaut ", carre Lire demande à l utilisateur de saisir au clavier un nombre ou du texte Écrire "texte" affiche du texte à l écran Écrire var affiche le contenu de la variable var FIN_ALGORITHME M124 - Algorithmique et informatique Chapitre 2 : les variables

32 Définitions Types de données Noms des variables Déclaration des variables Affectation à une variable Déclaration des variables VIII. Lire et afficher des variables VARIABLES x : réel DEBUT_ALGORITHME x 2 Écrire x Écrire "x" Écrire x affiche le contenu de la variable x : 2 Écrire "x" affiche le texte x FIN_ALGORITHME M124 - Algorithmique et informatique Chapitre 2 : les variables

33 Définitions Types de données Noms des variables Déclaration des variables Affectation à une variable Déclaration des variables IX. Exemple calcul du bénéfice mensuel réalisé par un transporteur 200 voyageurs par jour à 2e TTC le ticket et une TVA à 7% 600 km par jour consommation : 10 l/100 km prix du litre : 1.5 e coût d entretien journalier : 50e jours ouvrés dans le mois : 20 VARIABLES prixdubillet : réel # en e tauxtva : réel nombredevoyageursparjour : entier recettes : réel # en e prixlitreessence : réel # en e consommation : réel # au 100 km nombredekmparjour : réel coutentretien : réel # coût journalier fixe en e depenses : réel # en e beneficejournalier : réel # en e joursouvres : entier beneficemensuel : réel # en e M124 - Algorithmique et informatique Chapitre 2 : les variables

34 Définitions Types de données Noms des variables Déclaration des variables Affectation à une variable Déclaration des variables IX. Exemple (suite) DEBUT_ALGORITHME # Recettes prixdubillet 2 tauxtva 0.07 nombredevoyageursparjour 200 recettes ( prixdubillet * nombredevoyageursparjour ) * (1/(1+tauxTVA)) # Dépenses prixlitreessence 1.5 consommation 10 nombredekmparjour 600 coutentretien 50 depenses ( consommation * nombredekmparjour / 100 ) * prixlitreessence + coutentretien ) # calcul du bénéfice beneficejournalier recettes - depenses joursouvres 20 beneficemensuel beneficejournalier * joursouvres # affichage du résultat Écrire "bénéfice mensuel : ", beneficemensuel, " e" FIN_ALGORITHME M124 - Algorithmique et informatique Chapitre 2 : les variables

35 définition Les alternatives Les opérateurs logiques Les boucles M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle Ludovic Grossard Département Mesures Physiques, IUT du Limousin Université de Limoges M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

36 définition Les alternatives Les opérateurs logiques Les boucles Plan 1 définition Structure de contrôle Les opérateurs de comparaison 2 Les alternatives Test si Test si sinon Test sinon si 3 Les opérateurs logiques L opérateur logique ET L opérateur logique OU L opérateur logique NON Tables de vérité 4 Les boucles Définition Un exemple pour illustrer La boucle Tant que Retour sur l exemple Boucle Tant que et compteur Boucles imbriquées M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

37 définition Les alternatives Les opérateurs logiques Les boucles I. Définition 1) Structure de contrôle Les instructions d un algorithme sont exécutées dans leur ordre d apparition cependant, un algorithme doit souvent évaluer des conditions, et prendre des décisions il existe pour cela les structures de contrôles Structure de contrôle Commande qui contrôle l ordre dans lequel les différentes instructions d un algorithme ou d un programme informatique sont exécutées Nous étudierons deux types de structures de contrôles : les alternatives les boucles M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

38 définition Les alternatives Les opérateurs logiques Les boucles I. Définition 2) Les opérateurs de comparaison Ils permettent d effectuer des tests. == égal à!= différent de < inférieur à <= inférieur ou égal à > supérieur à >= supérieur ou égal à Le résultat d une comparaison est de type booléen et vaut : vrai si la condition est vérifiée faux si elle ne l est pas M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

39 définition Les alternatives Les opérateurs logiques Les boucles II. Les alternatives 1) Test si ( if) Le test si est la forme d alternative la plus simple Si (Test) Alors instruction1 Fin Si instruction2 si Test est vérifié on exécute Instruction 1 puis Instruction 2 si Test n est pas vérifié on exécute directement Instruction 2 Test est un booléen. Il vaut vrai ou faux. M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

40 définition Les alternatives Les opérateurs logiques Les boucles II. Les alternatives Test si : exemple Le pseudo-code suivant demande deux nombres entiers x et y à l utilisateur, et affiche si x est multiple de y ou non. VARIABLES x,y : entiers DEBUT_ALGORITHME Écrire "Saisissez x : " Lire x Écrire "Saisissez y : " Lire y Si (x % y == 0) Alors Écrire Fin Si FIN_ALGORITHME x, " est multiple de ", y Problème : rien n est affiché si x n est pas multiple de y! M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

41 définition Les alternatives Les opérateurs logiques Les boucles II. Les alternatives Test si : exemple Version modifiée :... Si (x % y == 0) Alors Écrire Fin Si Si (x % y!= 0) Alors Fin Si Écrire x, " est multiple de ", y x, " n est pas multiple de ", y Le second test est en réalité inutile car les deux tests sont exclusifs si x % y n est pas égal à 0, c est qu il est forcément différent de 0! M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

42 définition Les alternatives Les opérateurs logiques Les boucles II. Les alternatives 2) Test si sinon ( if else) Le test si sinon permet d exécuter des instructions si le test n est pas vérifié Si (Test) Alors instruction1 Sinon instruction2 Fin Si instruction3 si Test est vérifié, on exécute instruction1 puis instruction3 sinon, on exécute Instruction 2 puis Instruction 3 M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

43 définition Les alternatives Les opérateurs logiques Les boucles II. Les alternatives Test si sinon : exemple Version modifiée avec un test si puis sinon :... Si (x % y == 0) Alors Écrire x, " est multiple de ", y Sinon Écrire x, " n est pas multiple de ", y Fin Si M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

44 définition Les alternatives Les opérateurs logiques Les boucles II. Les alternatives 3) Test sinon si ( if elif) Le test si sinon si permet d enchaîner des tests si Si (Test1) Alors instruction1 Sinon Si (Test2) Alors instruction2 Fin Si Fin Si instruction3 On peut enchaîner autant d instructions sinon si que désiré : seule la première dont la condition sera vérifiée sera exécutée. On peut généralement associer une clause sinon qui sera exécutée uniquement si aucune clause sinon si n a été vérifiée. M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

45 définition Les alternatives Les opérateurs logiques Les boucles II. Les alternatives Test sinon si : exemple Ce pseudo-code détermine le signe du discriminant d un polynôme d ordre 2 VARIABLES a,b,c : réels # coefficients du polynôme delta : réel # discriminant du polynôme DEBUT_ALGORITHME # On suppose que les coefficients sont déjà saisis delta b**2-4ac Si (delta > 0) Alors Écrire "Le discriminant est positif" Sinon Si (delta < 0) Alors Sinon Écrire Écrire "le discriminant est négatif" "le discriminant est nul" Fin Si Fin Si FIN_ALGORITHME M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

46 définition Les alternatives Les opérateurs logiques Les boucles III. Les opérateurs logiques 1) L opérateur logique ET ( and) Comment tester si la variable x est paire et supérieure à 10? Si (x % 2 == 0) Alors Si (x > 10) Alors Fin Si Fin Si # x est bien pair et supérieur à 10 Il est possible d utiliser un seul if et une condition composée grâce à un opérateur logique : Si ((x % 2 == 0) Fin Si ET (x>10)) Alors # x est bien pair et supérieur à 10 Le test vaut vrai si les deux conditions sont vraies simultanément, sinon le test vaut faux. M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

47 définition Les alternatives Les opérateurs logiques Les boucles III. Les opérateurs logiques 2) L opérateur logique OU ( or) Comment tester si la variable x est paire ou supérieure à 10? Si (x % 2 == 0) Alors Instructions Fin Si Si (x > 10) Alors Instructions Fin Si Problème : les instructions sont dupliquées. À éviter en programmation. Il est possible d utiliser un seul if et une condition composée : Si ((x % 2 == 0) Fin Si OU (x>10)) Alors # x est bien pair ou supérieur à 10 Le test vaut vrai si une des deux conditions est vraie (ou les deux), sinon le test vaut faux. M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

48 définition Les alternatives Les opérateurs logiques Les boucles III. Les opérateurs logiques 3) L opérateur logique NON ( not) Comment tester si une condition est fausse? Si (polynomeseconddegre == faux) Alors Instructions Fin Si que l on peut écrire également : Si (NON polynomeseconddegre) Alors Instructions Fin Si L opérateur NON renvoie vrai si son opérande est faux, et inversement Si polynomeseconddegre est faux, alors NON polynomeseconddegre est vrai, et on exécute les instructions. M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

49 définition Les alternatives Les opérateurs logiques Les boucles III. Les opérateurs logiques 4) Tables de vérité C1 ET C2 C2 vrai C2 faux C1 vrai vrai faux C1 faux faux faux NON C1 C1 vrai C1 faux faux vrai C1 OU C2 C2 vrai C2 faux C1 vrai vrai vrai C1 faux vrai faux C1 XOR C2 C2 vrai C2 faux C1 vrai faux vrai C1 faux vrai faux M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

50 définition Les alternatives Les opérateurs logiques Les boucles IV. Les boucles 1) Définition Boucle Structure de contrôle qui permet d exécuter plusieurs fois le même bloc d instructions M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

51 définition Les alternatives Les opérateurs logiques Les boucles IV. Les boucles 2) Un exemple pour illustrer Exemple d une saisie au clavier L utilisateur doit répondre par O (oui) ou N (non) à une question le programme doit vérifier que la saisie est correcte VARIABLES Reponse : chaîne de caractères # le texte saisi par l utilisateur DEBUT_ALGORITHME Écrire "Voulez-vous un café? (0/N)" Lire Reponse Si ((Reponse!= O ) ET (Reponse!= N )) Alors Écrire "Saisie erronnée. Recommencez" Lire Reponse Fin Si FIN_ALGORITHME M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

52 définition Les alternatives Les opérateurs logiques Les boucles IV. Les boucles 2) Un exemple pour illustrer VARIABLES Reponse : chaîne de caractères # le texte saisi par l utilisateur DEBUT_ALGORITHME Écrire "Voulez-vous un café? (0/N)" Lire Reponse Si ((Reponse!= O ) ET (Reponse!= N )) Alors Écrire "Saisie erronnée. Recommencez" Lire Reponse Problème : ne marche qu une fois Pas question de recopier N fois cette portion de code Le copier/coller est à éviter en programmation Solution : utiliser une structure de boucle Tant que Fin Si FIN_ALGORITHME M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

53 définition Les alternatives Les opérateurs logiques Les boucles IV. Les boucles 3) La boucle Tant que ( while) Tant que (test) faire... instructions... Fin Tant que Principe : Le programme examine la valeur du test s il vaut vrai, les instructions qui suivent sont exécutées jusqu à ce qu il rencontre la ligne Fin Tant que il retourne à la ligne du Tant que, et ainsi de suite L exécution des intructions ne s arrête que lorsque le test vaut faux M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

54 définition Les alternatives Les opérateurs logiques Les boucles IV. Les boucles 4) Retour sur l exemple... Écrire "Voulez-vous un café? (0/N)" Tant que ((Reponse!= O ) ET (Reponse!= N )) faire Lire Reponse Fin Tant que Cet algorithme a un gros défaut : Reponse n est pas initialisé avant le Tant que Impossible d évaluer le test M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

55 définition Les alternatives Les opérateurs logiques Les boucles IV. Les boucles 4) Retour sur l exemple Solution : il faut affecter Reponse avant d arriver au premier tour de boucle... Écrire... Lire Reponse Tant que (...) faire... Fin Tant que M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

56 définition Les alternatives Les opérateurs logiques Les boucles IV. Les boucles 4) Retour sur l exemple Autre solution souvent employée : on initialise la variable avec une valeur telle qu on soit sûr de rentrer dans la boucle... Écrire... Reponse "X" Tant que (...) faire... Fin Tant que On peut affecter à Reponse n importe quelle valeur, sauf "O" et "N" car dans ce cas, on ne rentrera pas dans la boucle M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

57 définition Les alternatives Les opérateurs logiques Les boucles IV. Les boucles 4) Retour sur l exemple Comparez : VARIABLES Reponse : chaîne de caractères # le texte saisi par l utilisateur DEBUT_ALGORITHME Écrire "Voulez-vous un café? (0/N)" Lire Reponse Tant que ((Reponse!= "O") ET (Reponse!= "N")) faire Lire Reponse VARIABLES Reponse : chaîne de caractères # le texte saisi par l utilisateur DEBUT_ALGORITHME Écrire "Voulez-vous un café? (0/N)" Reponse "X" Tant que ((Reponse!= "O") ET (Reponse!= "N")) faire Lire Reponse Fin Tant que FIN_ALGORITHME Fin Tant que FIN_ALGORITHME Différence fondamentale : à gauche, on peut ne jamais entrer dans la boucle à droite, on entre au moins une fois dans la boucle Important si d autres instructions sont à exécuter dans la boucle (initialisations par exemple) M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

58 définition Les alternatives Les opérateurs logiques Les boucles IV. Les boucles 5) Boucle contrôlée par un compteur Permet d effectuer des boucles dont on connaît à l avance le nombre d itérations. Elle exige : une variable de contrôle, ou compteur une valeur initiale du compteur une condition qui vérifie si la valeur finale du compteur est atteinte l incrémentation (ou la décrémentation) du compteur afin de modifier sa valeur à chaque passage dans la boucle M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

59 définition Les alternatives Les opérateurs logiques Les boucles IV. Les boucles 5) Boucle contrôlée par un compteur pseudo-code : VARIABLES compteur : entier # la variable de contrôle DEBUT_ALGORITHME initialisation_du_compteur Tant que (condition) faire instructions incrementation_du_compteur Fin Tant que FIN_ALGORITHME 1 L initialisation doit avoir lieu avant la boucle 2 la condition doit porter sur le compteur 3 l incrémentation se fait généralement à la fin de la boucle M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

60 définition Les alternatives Les opérateurs logiques Les boucles IV. Les boucles 5) Boucle contrôlée par un compteur Exemple : affichage des nombres de 1 à 10 : VARIABLES i : entier # la variable de contrôle DEBUT_ALGORITHME i 1 # initialisation Tant que (i<=10 ) faire Écrire i i i+1 # incrémentation Fin Tant que FIN_ALGORITHME On peut également utiliser la condition i<11 que se passe-t-il si on place l incrémentation avant les instructions? affiche les nombres de 2 à 11 que se passe-t-il si on oublie l incrémentation? boucle infinie. M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

61 définition Les alternatives Les opérateurs logiques Les boucles IV. Les boucles 5) Boucle contrôlée par un compteur Autre exemple : affichage des puissances de 2 inférieures à 1000 : VARIABLES i : entier # la variable de contrôle DEBUT_ALGORITHME i 1 # initialisation Tant que (i<1000 ) faire Écrire i i i*2 # incrémentation Fin Tant que FIN_ALGORITHME affichera le compteur n est pas forcément linéaire M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

62 définition Les alternatives Les opérateurs logiques Les boucles IV. Les boucles 6) Boucles imbriquées Définition boucle dans une boucle. Pour chaque itération de la première boucle, la deuxième sera exécutée en entier. M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

63 définition Les alternatives Les opérateurs logiques Les boucles IV. Les boucles 6) Boucles imbriquées VARIABLES i,j : entiers # les deux compteurs DEBUT_ALGORITHME i 0 j 0 Tant que (i<5) faire Tant que (j<5) faire Écrire i+j,"\t" j j+1 On s attend à obtenir : Fin Tant que Écrire "\n" i i+1 Fin Tant que FIN_ALGORITHME M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

64 définition Les alternatives Les opérateurs logiques Les boucles IV. Les boucles 6) Boucles imbriquées VARIABLES i,j : entiers # les deux compteurs DEBUT_ALGORITHME i 0 j 0 Tant que (i<5) faire Tant que (j<5) faire Écrire i+j,"\t" j j+1 Fin Tant que Écrire "\n" i i+1 Fin Tant que FIN_ALGORITHME mais on obtient : Quel est le bogue? chaque fois que la boucle interne est effectuée, il faut réinitialiser j à 0 sinon, il reste à 5, et cette boucle n est plus effectuée. M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

65 définition Les alternatives Les opérateurs logiques Les boucles IV. Les boucles 6) Boucles imbriquées Pseudo-code corrigé : VARIABLES i,j : entiers # les deux compteurs DEBUT_ALGORITHME i 0 Tant que (i<5) faire j 0 Tant que (j<5) faire Écrire i+j,"\t" j j+1 Fin Tant que Écrire "\n" i i+1 Fin Tant que FIN_ALGORITHME À retenir : faire l initialisation du compteur juste avant la ligne Tant que M124 - Algorithmique et informatique Chapitre 3 : les structures de contrôle

66 définition Création d une liste Accès aux données d une liste Listes multidimensionnelles M124 - Algorithmique et informatique Chapitre 4 : les listes Ludovic Grossard Département Mesures Physiques, IUT du Limousin Université de Limoges M124 - Algorithmique et informatique Chapitre 4 : les listes

67 définition Création d une liste Accès aux données d une liste Listes multidimensionnelles Plan 1 définition 2 Création d une liste Initialisation directe Ajout de données 3 Accès aux données d une liste Accès à un élément Balayer tous les éléments 4 Listes multidimensionnelles Définition Exemple : table de multiplications Les limites des listes M124 - Algorithmique et informatique Chapitre 4 : les listes

68 définition Création d une liste Accès aux données d une liste Listes multidimensionnelles I. Définition liste Variable contenant une collection d éléments (texte, nombres entiers, nombres réels...). Chaque élément dans la liste est accessible grâce à son indice le premier élément de la liste correspond à l indice 0 Pour une liste de N éléments, les indices vont de 0 à N-1 Dans d autres langages que le python, les listes sont appelées tableaux. En python, les listes peuvent contenir des éléments de natures différentes (mélange de texte et de nombres) M124 - Algorithmique et informatique Chapitre 4 : les listes

69 définition Création d une liste Accès aux données d une liste Listes multidimensionnelles II. Création d une liste 1) Initialisation directe VARIABLES notes : liste de réels # inutile d indiquer le nombre d éléments DEBUT_ALGORITHME notes [12.5, 8.5, 16,...] FIN_ALGORITHME On sépare les éléments par des virgules et on les place entre crochets M124 - Algorithmique et informatique Chapitre 4 : les listes

70 définition Création d une liste Accès aux données d une liste Listes multidimensionnelles II. Création d une liste 2) Ajout de données On peut également créer une liste vide, puis ajouter les données dans la liste une par une méthode obligatoire lorsque les données proviennent de l extérieur (saisie par l utilisateur, fichier...) # Création d une liste vide notes [] M124 - Algorithmique et informatique Chapitre 4 : les listes

71 définition Création d une liste Accès aux données d une liste Listes multidimensionnelles II. Création d une liste 2) Ajout de données Python est un langage objet. Chaque objet possède des méthodes, qui permettent d agir sur cet objet méthode ajouter pour ajouter un élément en fin de liste objet_liste.ajouter( élément ) exemple : notes.ajouter(12.5) M124 - Algorithmique et informatique Chapitre 4 : les listes

72 définition Création d une liste Accès aux données d une liste Listes multidimensionnelles II. Création d une liste 2) Exemple On demande à l utilisateur de saisir 5 nombres, qui sont placés dans une liste. VARIABLES nombres : liste de réels i : entier # compteur x : réel # chaque nombre saisi DEBUT_ALGORITHME # On crée une liste vide nombres [] # boucle pour saisir les 5 nombres i 0 Tant que (i < 5) faire Écrire "Nombre n ", i, " : " Lire x nombres.ajouter(x) i i+1 Fin Tant que FIN_ALGORITHME M124 - Algorithmique et informatique Chapitre 4 : les listes

73 définition Création d une liste Accès aux données d une liste Listes multidimensionnelles III. Accès aux donnés d une liste 1) Accès à un élément on écrit le nom de la liste, suivi de l indice de l élément entre crochets : notes [12.5, 8.5, 16 ] Écrire notes[1] # affiche la valeur 8.5 Remarques : l indice est obligatoirement un nombre entier ne confondez pas la valeur de l indice (entier i), et le contenu de la liste pour cet indice. notes[3] provoquera une erreur car le 4 e élément de la liste notes n existe pas. M124 - Algorithmique et informatique Chapitre 4 : les listes

74 définition Création d une liste Accès aux données d une liste Listes multidimensionnelles III. Accès aux donnés d une liste 2) Balayer tous les éléments on utilise une boucle Tant que on utilise la fonction longueur pour connaître le nombre d éléments dans la liste : longueur(notes) VARIABLES notes : liste de réels i : entier # compteur DEBUT_ALGORITHME notes [12.5, 8.5, 16] # boucle pour afficher les trois notes i 0 Tant que (i < longueur(notes)) faire Écrire notes[i] i i+1 Fin Tant que FIN_ALGORITHME M124 - Algorithmique et informatique Chapitre 4 : les listes

75 définition Création d une liste Accès aux données d une liste Listes multidimensionnelles III. Accès aux donnés d une liste 2) Balayer tous les éléments On peut utiliser Pour... dans... pas besoin de connaître le nombre d éléments dans la liste VARIABLES notes : liste de réels DEBUT_ALGORITHME notes [12.5, 8.5, 16] # boucle pour afficher les trois notes Pour note dans notes faire Écrire note Fin Pour FIN_ALGORITHME À chaque passage dans la boucle Pour... dans..., note prend la valeur suivante dans la liste notes. M124 - Algorithmique et informatique Chapitre 4 : les listes

76 définition Création d une liste Accès aux données d une liste Listes multidimensionnelles IV. Listes multidimensionnelles 1) Définition liste multidimensionnelle Liste dont les éléments sont caractérisés par plusieurs coordonnées Exemple : une liste à 2 dimensions est une liste dont chaque élément est lui même une liste (une liste de liste). Sa représentation graphique est une grille, chaque cellule étant repérée par 2 coordonnées, et contenant un élément. M124 - Algorithmique et informatique Chapitre 4 : les listes

77 définition Création d une liste Accès aux données d une liste Listes multidimensionnelles IV. Listes multidimensionnelles 1) Initialisation et accès On initialise la liste en y plaçant d autres listes : VARIABLES liste : liste d entiers DEBUT_ALGORITHME liste [[ 2, 3, 1 ], [ 6, 3, 5 ], [ 8, 7, 6 ]] FIN_ALGORITHME définit la liste suivante : i/j où i et j sont les coordonnées de chaque élément. Accès aux valeurs On utilise deux paires de crochets : liste[1][2] donne la valeur 5 M124 - Algorithmique et informatique Chapitre 4 : les listes

78 définition Création d une liste Accès aux données d une liste Listes multidimensionnelles IV. Listes multidimensionnelles 2) Exemple : table de multiplications j i ligne table M124 - Algorithmique et informatique Chapitre 4 : les listes

79 définition Création d une liste Accès aux données d une liste Listes multidimensionnelles IV. Listes multidimensionnelles 2) Exemple : table de multiplications VARIABLES table : liste de liste d entiers # la table de multiplication ligne : liste d entiers # une ligne de la table i,j : entiers # compteurs DEBUT_ALGORITHME # Initialisation de la liste table et des compteurs table [] i 0 # Boucle de remplissage de la table Tant que (i<=10) faire # on crée une ligne vide ligne [] # et on la remplit grâce à une boucle j 0 Tant que (j<=10) faire ligne.ajouter( i * j ) j j + 1 Fin Tant que # On place la ligne dans la table table.ajouter(ligne) i i + 1 Fin Tant que FIN_ALGORITHME M124 - Algorithmique et informatique Chapitre 4 : les listes

80 définition Création d une liste Accès aux données d une liste Listes multidimensionnelles IV. Listes multidimensionnelles 3) Les limites des listes initialisation laborieuse (boucles imbriquées, liste de listes) ne permettent pas aisément de faire du calcul numérique par exemple du calcul matriciel on se tournera pour cela vers des bibliothèques scientifiques spécialisées (numpy par exemple) Dans le cadre de ce cours, les listes à une dimension suffiront à nos besoins M124 - Algorithmique et informatique Chapitre 4 : les listes

81 définition fonctions prédéfinies Fonctions personnalisées M124 - Algorithmique et informatique Chapitre 5 : les fonctions Ludovic Grossard Département Mesures Physiques, IUT du Limousin Université de Limoges M124 - Algorithmique et informatique Chapitre 5 : les fonctions

82 définition fonctions prédéfinies Fonctions personnalisées Plan 1 définition 2 fonctions prédéfinies 3 Fonctions personnalisées Écriture en pseudo-code Choix du nom de la fonction Renvoi du résultat Exemple de procédure Exemple de fonction M124 - Algorithmique et informatique Chapitre 5 : les fonctions

83 définition fonctions prédéfinies Fonctions personnalisées I. Définition fonction Sous-programme pouvant accepter des paramètres, et pouvant renvoyer un résultat les fonctions permettent de décomposer un problème compliqué en plusieurs problèmes plus simples le programme principal fait appel à des fonctions qui peuvent elles même faire appel à d autres fonctions M124 - Algorithmique et informatique Chapitre 5 : les fonctions

84 définition fonctions prédéfinies Fonctions personnalisées II. Fonctions prédéfinies Les différents langages de programmation disposent d un grand nombre de fonctions prédéfinies. Ces fonctions sont caractérisées par : leur nom. Exemple : sin pour la fonction sinus deux parenthèses, une ouvrante, une fermante : sin() Ces parenthèses sont obligatoires, même si on ne met rien à l intérieur une liste de paramètres, indispensables au bon fonctionnement de la fonction. Une fonction peut avoir aucun, un ou plusieurs paramètres. Exemple : la fonction sin nécessite un paramètre, l angle en radians : sin(1.234) M124 - Algorithmique et informatique Chapitre 5 : les fonctions

85 définition fonctions prédéfinies Fonctions personnalisées II. Fonctions prédéfinies les paramètres des fonctions peuvent être des variables : x Écrire sin(x) Les fonctions peuvent renvoyer un résultat. Ce peut être un nombre, du texte, une liste, ou tout autre élément géré par le langage de programmation. le résultat peut être utilisé directement, soit placé dans une variable : x y sin(x) Dans ce cas, pour affecter la valeur à y, le programme doit d abord évaluer la fonction, c est-à-dire : 1 lui transmettre le ou les paramètres 2 récupérer le résultat 3 et enfin l affecter à la variable y M124 - Algorithmique et informatique Chapitre 5 : les fonctions

86 définition fonctions prédéfinies Fonctions personnalisées II. Fonctions prédéfinies Attention N utilisez jamais de variables portant le même nom que des fonctions. Exemple Écrire sin(1.234) # fonctionne sin 2 # la fonction sin n existe plus! Écrire sin # affiche le nombre 2 Écrire sin(x) # provoque une erreur... M124 - Algorithmique et informatique Chapitre 5 : les fonctions

87 définition fonctions prédéfinies Fonctions personnalisées III. Fonctions personnalisées 1) Écriture en pseudo-code Elles permettent d étendre un langage de programmation par ajout de nouvelles fonctions. En pseudo-code : Fonction nom_de_la_fonction(paramètres) Corps de la fonction Fin fonction M124 - Algorithmique et informatique Chapitre 5 : les fonctions

88 définition fonctions prédéfinies Fonctions personnalisées III. Fonctions personnalisées 2) Choix du nom de la fonction le choix du nom est libre, sauf : mots réservés du langage (Si, Alors, Pour...) caractères spéciaux ou accentués (caractère de soulignement _ autorisé) nom de fonction prédéfinie, à moins de vouloir les redéfinir On privilégirea les noms de fonction avec des caractères de soulignement (nom_de_la_fonction) plutôt qu en camelcase (nomdelafonction). le nom de la fonction doit indiquer au mieux ce qu elle fait M124 - Algorithmique et informatique Chapitre 5 : les fonctions

89 définition fonctions prédéfinies Fonctions personnalisées III. Fonctions personnalisées 3) Renvoi du résultat Lors de l éxécution du programme, la fonction se termine : dès qu elle rencontre une instruction retourner ou qu elle arrive à la fin de la fonction (dans ce cas, elle ne retourne rien) Il peut y avoir plusieurs instructions retourner dans le corps de la fonction. Une fonction ne peut renvoyer au plus qu un résultat. Si elle ne renvoie rien, on ne parle pas de fonction, mais de procédure M124 - Algorithmique et informatique Chapitre 5 : les fonctions

90 définition fonctions prédéfinies Fonctions personnalisées III. Fonctions personnalisées 4) Exemple de procédure Pseudo-code d une procédure qui affiche une table de multiplication : Procédure affiche_table(n) VARIABLES i : entier # compteur i 0 Tant que (i <= 10) faire Fin Tant que Fin Procédure Écrire i, " * ", n, " = ", i*n i i + 1 affiche_table(3) afficherait : 0 * 3 = 0 1 * 3 = 3 2 * 3 = 6 3 * 3 = * 3 = 30 M124 - Algorithmique et informatique Chapitre 5 : les fonctions

91 définition fonctions prédéfinies Fonctions personnalisées III. Fonctions personnalisées 5) Exemple de fonction Fonction qui renvoie le plus grand des deux nombres passés en paramètre Fonction maxi( a, b ) Si (a > b ) Alors Retourner a Sinon Retourner b Ecrire maxi( 1.2, 3.4 ) 3.4 Fin Si Fin fonction Remarques : une fonction peut contenir plusieurs instructions Retourner ici, l ordre des paramètres n a pas d importance M124 - Algorithmique et informatique Chapitre 5 : les fonctions

92 définition fonctions prédéfinies Fonctions personnalisées III. Fonctions personnalisées 5) Exemple de fonction FONCTIONS Fonction maxi( a, b ) Si (a > b ) Alors Retourner a Sinon Retourner b Fin Si Fin fonction VARIABLES n1,n2 : nombres réels maximum : réel DEBUT_ALGORITHME Écrire "n1 = " Lire n1 Écrire "n2 = " Lire n2 maximum maxi(n1,n2) Écrire "le maximum est : ",maximum a et b sont des paramètres formels se sont des variables locales à la fonctions, elles n existent pas en dehors. n1 et n2 sont les paramètres réels n1 est copié dans a, et n2 dans b on pourrait écrire Écrire maxi(n1,n2) sans passer par une variable maximum FIN_ALGORITHME M124 - Algorithmique et informatique Chapitre 5 : les fonctions

93 définition fonctions prédéfinies Fonctions personnalisées III. Fonctions personnalisées 5) Remarques Le programme principal n a pas besoin de connaître le fonctionnement interne de chaque fonction, Les seuls éléments à connaître sont : les paramètres nécessaires (type, ordre), le type de résultat renvoyé, ces informations doivent se trouver dans la documentation de la fonction, il est indispensable de documenter les fonctions que vous écrivez. M124 - Algorithmique et informatique Chapitre 5 : les fonctions

94 définition fonctions prédéfinies Fonctions personnalisées III. Fonctions personnalisées 5) Affichage d une table de fonction FONCTIONS Fonction f( a ) Retourner a * a + 3 Fin fonction VARIABLES x_min, x_max, pas : réels x : réel DEBUT_ALGORITHME # initialisations x_min 0 x_max 10 pas 0.1 # affichage de l en-tête Écrire "x\tf(x)" x x_min Tant que (x < x_max) faire Écrire x, "\t", f(x) # incrémentation x x + pas Fin Tant que FIN_ALGORITHME Sortie du programme : x f(x) M124 - Algorithmique et informatique Chapitre 5 : les fonctions

Algorithme. Table des matières

Algorithme. Table des matières 1 Algorithme Table des matières 1 Codage 2 1.1 Système binaire.............................. 2 1.2 La numérotation de position en base décimale............ 2 1.3 La numérotation de position en base binaire..............

Plus en détail

STAGE IREM 0- Premiers pas en Python

STAGE IREM 0- Premiers pas en Python Université de Bordeaux 16-18 Février 2014/2015 STAGE IREM 0- Premiers pas en Python IREM de Bordeaux Affectation et expressions Le langage python permet tout d abord de faire des calculs. On peut évaluer

Plus en détail

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par

Plus en détail

Initiation à la programmation en Python

Initiation à la programmation en Python I-Conventions Initiation à la programmation en Python Nom : Prénom : Une commande Python sera écrite en caractère gras. Exemples : print 'Bonjour' max=input("nombre maximum autorisé :") Le résultat de

Plus en détail

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)

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) 1/4 Objectif de ce cours /4 Objectifs de ce cours Introduction au langage C - Cours Girardot/Roelens Septembre 013 Du problème au programme I passer d un problème exprimé en français à la réalisation d

Plus en détail

Algorithmique et Programmation, IMA

Algorithmique et Programmation, IMA Algorithmique et Programmation, IMA Cours 2 : C Premier Niveau / Algorithmique Université Lille 1 - Polytech Lille Notations, identificateurs Variables et Types de base Expressions Constantes Instructions

Plus en détail

Présentation du langage et premières fonctions

Présentation du langage et premières fonctions 1 Présentation de l interface logicielle Si les langages de haut niveau sont nombreux, nous allons travaillé cette année avec le langage Python, un langage de programmation très en vue sur internet en

Plus en détail

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

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application 1 Ordinateur Un

Plus en détail

Licence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter

Plus en détail

Rappels sur les suites - Algorithme

Rappels sur les suites - Algorithme DERNIÈRE IMPRESSION LE 14 septembre 2015 à 12:36 Rappels sur les suites - Algorithme Table des matières 1 Suite : généralités 2 1.1 Déition................................. 2 1.2 Exemples de suites............................

Plus en détail

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

Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2 éducalgo Manuel d utilisation 26 juin 2011 Table des matières 1 Tâche à effectuer : écrire un algorithme 2 2 Comment écrire un algorithme? 3 2.1 Avec quoi écrit-on? Avec les boutons d écriture........

Plus en détail

Algorithmique et structures de données I

Algorithmique et structures de données I Algorithmique et structures de données I Riadh Ben Messaoud Université 7 novembre à Carthage Faculté des Sciences Économiques et de Gestion de Nabeul 1ère année Licence Fondamentale IAG 1ère année Licence

Plus en détail

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

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Cours d introduction à l informatique Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Qu est-ce qu un Une recette de cuisine algorithme? Protocole expérimental

Plus en détail

Cours d Informatique

Cours d Informatique Cours d Informatique 1ère année SM/SMI 2007/2008, Info 2 Département de Mathématiques et d Informatique, Université Mohammed V elbenani@hotmail.com sayah@fsr.ac.ma 2007/2008 Info2, 1ère année SM/SMI 1

Plus en détail

Initiation à LabView : Les exemples d applications :

Initiation à LabView : Les exemples d applications : Initiation à LabView : Les exemples d applications : c) Type de variables : Créer un programme : Exemple 1 : Calcul de c= 2(a+b)(a-3b) ou a, b et c seront des réels. «Exemple1» nom du programme : «Exemple

Plus en détail

Organigramme / Algorigramme Dossier élève 1 SI

Organigramme / Algorigramme Dossier élève 1 SI Organigramme / Algorigramme Dossier élève 1 SI CI 10, I11 ; CI 11, I10 C24 Algorithmique 8 février 2009 (13:47) 1. Introduction Un organigramme (ou algorigramme, lorsqu il est plus particulièrement appliqué

Plus en détail

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

Cours d initiation à la programmation en C++ Johann Cuenin Cours d initiation à la programmation en C++ Johann Cuenin 11 octobre 2014 2 Table des matières 1 Introduction 5 2 Bases de la programmation en C++ 7 3 Les types composés 9 3.1 Les tableaux.............................

Plus en détail

Licence Sciences et Technologies Examen janvier 2010

Licence Sciences et Technologies Examen janvier 2010 Université de Provence Introduction à l Informatique Licence Sciences et Technologies Examen janvier 2010 Année 2009-10 Aucun document n est autorisé Les exercices peuvent être traités dans le désordre.

Plus en détail

L informatique en BCPST

L informatique en BCPST L informatique en BCPST Présentation générale Sylvain Pelletier Septembre 2014 Sylvain Pelletier L informatique en BCPST Septembre 2014 1 / 20 Informatique, algorithmique, programmation Utiliser la rapidité

Plus en détail

Solutions du chapitre 4

Solutions du chapitre 4 Solutions du chapitre 4 Structures de contrôle: première partie 4.9 Identifiez et corrigez les erreurs (il peut y en avoir plus d une par segment de code) de chacune des proposition suivantes: a) if (

Plus en détail

EXCEL TUTORIEL 2012/2013

EXCEL TUTORIEL 2012/2013 EXCEL TUTORIEL 2012/2013 Excel est un tableur, c est-à-dire un logiciel de gestion de tableaux. Il permet de réaliser des calculs avec des valeurs numériques, mais aussi avec des dates et des textes. Ainsi

Plus en détail

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

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java Info0101 Intro. à l'algorithmique et à la programmation Cours 3 Le langage Java Pierre Delisle, Cyril Rabat et Christophe Jaillet Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique

Plus en détail

Cours Informatique Master STEP

Cours Informatique Master STEP Cours Informatique Master STEP Bases de la programmation: Compilateurs/logiciels Algorithmique et structure d'un programme Programmation en langage structuré (Fortran 90) Variables, expressions, instructions

Plus en détail

MATLAB : COMMANDES DE BASE. Note : lorsqu applicable, l équivalent en langage C est indiqué entre les délimiteurs /* */.

MATLAB : COMMANDES DE BASE. Note : lorsqu applicable, l équivalent en langage C est indiqué entre les délimiteurs /* */. Page 1 de 9 MATLAB : COMMANDES DE BASE Note : lorsqu applicable, l équivalent en langage C est indiqué entre les délimiteurs /* */. Aide help, help nom_de_commande Fenêtre de travail (Command Window) Ligne

Plus en détail

IN 102 - Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C

IN 102 - Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C IN 102 - Cours 1 Qu on le veuille ou non, les systèmes informatisés sont désormais omniprésents. Même si ne vous destinez pas à l informatique, vous avez de très grandes chances d y être confrontés en

Plus en détail

Algorithmique avec Algobox

Algorithmique avec Algobox Algorithmique avec Algobox 1. Algorithme: Un algorithme est une suite d instructions qui, une fois exécutée correctement, conduit à un résultat donné Un algorithme doit contenir uniquement des instructions

Plus en détail

Représentation d un entier en base b

Représentation d un entier en base b Représentation d un entier en base b 13 octobre 2012 1 Prérequis Les bases de la programmation en langage sont supposées avoir été travaillées L écriture en base b d un entier est ainsi défini à partir

Plus en détail

Algorithmique et programmation : les bases (VBA) Corrigé

Algorithmique et programmation : les bases (VBA) Corrigé PAD INPT ALGORITHMIQUE ET PROGRAMMATION 1 Cours VBA, Semaine 1 mai juin 2006 Corrigé Résumé Ce document décrit l écriture dans le langage VBA des éléments vus en algorithmique. Table des matières 1 Pourquoi

Plus en détail

Débuter avec Excel. Excel 2007-2010

Débuter avec Excel. Excel 2007-2010 Débuter avec Excel Excel 2007-2010 Fabienne ROUX Conseils & Formation 10/04/2010 TABLE DES MATIÈRES LE RUBAN 4 LE CLASSEUR 4 RENOMMER LES FEUILLES DU CLASSEUR 4 SUPPRIMER DES FEUILLES D UN CLASSEUR 4 AJOUTER

Plus en détail

Corrigé des TD 1 à 5

Corrigé des TD 1 à 5 Corrigé des TD 1 à 5 1 Premier Contact 1.1 Somme des n premiers entiers 1 (* Somme des n premiers entiers *) 2 program somme_entiers; n, i, somme: integer; 8 (* saisie du nombre n *) write( Saisissez un

Plus en détail

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Anne Tasso Java Le livre de premier langage 10 e édition Avec 109 exercices corrigés Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Table des matières Avant-propos Organisation de l ouvrage..............................

Plus en détail

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores INTRODUCTION AUX SYSTEMES D EXPLOITATION TD2 Exclusion mutuelle / Sémaphores Exclusion mutuelle / Sémaphores - 0.1 - S O M M A I R E 1. GENERALITES SUR LES SEMAPHORES... 1 1.1. PRESENTATION... 1 1.2. UN

Plus en détail

Chapitre 2. Eléments pour comprendre un énoncé

Chapitre 2. Eléments pour comprendre un énoncé Chapitre 2 Eléments pour comprendre un énoncé Ce chapitre est consacré à la compréhension d un énoncé. Pour démontrer un énoncé donné, il faut se reporter au chapitre suivant. Les tables de vérité données

Plus en détail

Introduction à MATLAB R

Introduction à MATLAB R Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d

Plus en détail

LES TYPES DE DONNÉES DU LANGAGE PASCAL

LES TYPES DE DONNÉES DU LANGAGE PASCAL LES TYPES DE DONNÉES DU LANGAGE PASCAL 75 LES TYPES DE DONNÉES DU LANGAGE PASCAL CHAPITRE 4 OBJECTIFS PRÉSENTER LES NOTIONS D ÉTIQUETTE, DE CONS- TANTE ET DE IABLE DANS LE CONTEXTE DU LAN- GAGE PASCAL.

Plus en détail

Initiation à la Programmation en Logique avec SISCtus Prolog

Initiation à la Programmation en Logique avec SISCtus Prolog Initiation à la Programmation en Logique avec SISCtus Prolog Identificateurs Ils sont représentés par une suite de caractères alphanumériques commençant par une lettre minuscule (les lettres accentuées

Plus en détail

I. Introduction aux fonctions : les fonctions standards

I. Introduction aux fonctions : les fonctions standards Chapitre 3 : Les fonctions en C++ I. Introduction aux fonctions : les fonctions standards A. Notion de Fonction Imaginons que dans un programme, vous ayez besoin de calculer une racine carrée. Rappelons

Plus en détail

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

Bases de programmation. Cours 5. Structurer les données Bases de programmation. Cours 5. Structurer les données Pierre Boudes 1 er décembre 2014 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. Types char et

Plus en détail

Vision industrielle et télédétection - Détection d ellipses. Guillaume Martinez 17 décembre 2007

Vision industrielle et télédétection - Détection d ellipses. Guillaume Martinez 17 décembre 2007 Vision industrielle et télédétection - Détection d ellipses Guillaume Martinez 17 décembre 2007 1 Table des matières 1 Le projet 3 1.1 Objectif................................ 3 1.2 Les choix techniques.........................

Plus en détail

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

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux. UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases

Plus en détail

Chapitre 2 Devine mon nombre!

Chapitre 2 Devine mon nombre! Python 3 : objectif jeux Chapitre 2 Chapitre 2 Devine mon nombre! 2.1. Thèmes abordés dans ce chapitre commentaires modules externes, import variables boucle while condition : if... elif... else la fonction

Plus en détail

Factorisation Factoriser en utilisant un facteur commun Fiche méthode

Factorisation Factoriser en utilisant un facteur commun Fiche méthode Factorisation Factoriser en utilisant un facteur commun Fiche méthode Rappel : Distributivité simple Soient les nombres, et. On a : Factoriser, c est transformer une somme ou une différence de termes en

Plus en détail

TP 1. Prise en main du langage Python

TP 1. Prise en main du langage Python TP. Prise en main du langage Python Cette année nous travaillerons avec le langage Python version 3. ; nous utiliserons l environnement de développement IDLE. Étape 0. Dans votre espace personnel, créer

Plus en détail

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits Architecture des ordinateurs TD1 - Portes logiques et premiers circuits 1 Rappel : un peu de logique Exercice 1.1 Remplir la table de vérité suivante : a b a + b ab a + b ab a b 0 0 0 1 1 0 1 1 Exercice

Plus en détail

Correction TD algorithmique

Correction TD algorithmique Affectation Correction TD algorithmique Exercice 1 algo affect1b b 5 a b+1 b 2 Il vaut faire passer la notion de variable et la notion de stockage mémoire. Une variable n a donc pas d historique et à un

Plus en détail

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot Chapitre 5 Arithmétique binaire L es codes sont manipulés au quotidien sans qu on s en rende compte, et leur compréhension est quasi instinctive. Le seul fait de lire fait appel au codage alphabétique,

Plus en détail

Algorithmes récursifs

Algorithmes récursifs Licence 1 MASS - Algorithmique et Calcul Formel S. Verel, M.-E. Voge www.i3s.unice.fr/ verel 23 mars 2007 Objectifs de la séance 3 écrire des algorithmes récursifs avec un seul test rechercher un élément

Plus en détail

GUIDE Excel (version débutante) Version 2013

GUIDE Excel (version débutante) Version 2013 Table des matières GUIDE Excel (version débutante) Version 2013 1. Créer un nouveau document Excel... 3 2. Modifier un document Excel... 3 3. La fenêtre Excel... 4 4. Les rubans... 4 5. Saisir du texte

Plus en détail

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

Feuille TD n 1 Exercices d algorithmique éléments de correction Master Sciences, Technologies, Santé Mention Mathématiques, spécialité Enseignement des mathématiques Algorithmique et graphes, thèmes du second degré Feuille TD n 1 Exercices d algorithmique éléments

Plus en détail

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

Programmation C++ (débutant)/instructions for, while et do...while Programmation C++ (débutant)/instructions for, while et do...while 1 Programmation C++ (débutant)/instructions for, while et do...while Le cours du chapitre 4 : le for, while et do...while La notion de

Plus en détail

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Ces exercices portent sur les items 2, 3 et 5 du programme d informatique des classes préparatoires,

Plus en détail

Représentation des Nombres

Représentation des Nombres Chapitre 5 Représentation des Nombres 5. Representation des entiers 5.. Principe des représentations en base b Base L entier écrit 344 correspond a 3 mille + 4 cent + dix + 4. Plus généralement a n a n...

Plus en détail

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

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation impérative et structures de données simples Introduction au langage C Sandrine Blazy - 1ère année 24 octobre 2007 Cours d Algorithmique-Programmation

Plus en détail

Cours 7 : Utilisation de modules sous python

Cours 7 : Utilisation de modules sous python Cours 7 : Utilisation de modules sous python 2013/2014 Utilisation d un module Importer un module Exemple : le module random Importer un module Exemple : le module random Importer un module Un module est

Plus en détail

Poker. A rendre pour le 25 avril

Poker. A rendre pour le 25 avril Poker A rendre pour le 25 avril 0 Avant propos 0.1 Notation Les parties sans * sont obligatoires (ne rendez pas un projet qui ne contient pas toutes les fonctions sans *). Celles avec (*) sont moins faciles

Plus en détail

Recherche dans un tableau

Recherche dans un tableau Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6

Plus en détail

Découverte du logiciel ordinateur TI-n spire / TI-n spire CAS

Découverte du logiciel ordinateur TI-n spire / TI-n spire CAS Découverte du logiciel ordinateur TI-n spire / TI-n spire CAS Mémento Ouvrir TI-Nspire CAS. Voici la barre d outils : L insertion d une page, d une activité, d une page où l application est choisie, pourra

Plus en détail

Nombres, mesures et incertitudes en sciences physiques et chimiques. Groupe des Sciences physiques et chimiques de l IGEN

Nombres, mesures et incertitudes en sciences physiques et chimiques. Groupe des Sciences physiques et chimiques de l IGEN Nombres, mesures et incertitudes en sciences physiques et chimiques. Groupe des Sciences physiques et chimiques de l IGEN Table des matières. Introduction....3 Mesures et incertitudes en sciences physiques

Plus en détail

Cours d algorithmique pour la classe de 2nde

Cours d algorithmique pour la classe de 2nde Cours d algorithmique pour la classe de 2nde F.Gaudon 10 août 2009 Table des matières 1 Avant la programmation 2 1.1 Qu est ce qu un algorithme?................................. 2 1.2 Qu est ce qu un langage

Plus en détail

Note de cours. Introduction à Excel 2007

Note de cours. Introduction à Excel 2007 Note de cours Introduction à Excel 2007 par Armande Pinette Cégep du Vieux Montréal Excel 2007 Page: 2 de 47 Table des matières Comment aller chercher un document sur CVMVirtuel?... 8 Souris... 8 Clavier

Plus en détail

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

Définitions. Numéro à préciser. (Durée : ) Numéro à préciser (Durée : ) On étudie dans ce problème l ordre lexicographique pour les mots sur un alphabet fini et plusieurs constructions des cycles de De Bruijn. Les trois parties sont largement indépendantes.

Plus en détail

Calcul Formel et Numérique, Partie I

Calcul Formel et Numérique, Partie I Calcul Formel et Numérique N.Vandenberghe nvdb@irphe.univ-mrs.fr Table des matières 1 Introduction à Matlab 2 1.1 Quelques généralités.......................... 2 2 Où trouver des informations 2 3 Opérations

Plus en détail

Utilisation d objets : String et ArrayList

Utilisation d objets : String et ArrayList Chapitre 6 Utilisation d objets : String et ArrayList Dans ce chapitre, nous allons aborder l utilisation d objets de deux classes prédéfinies de Java d usage très courant. La première, nous l utilisons

Plus en détail

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes. 1 Définitions, notations Calcul matriciel Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes. On utilise aussi la notation m n pour le

Plus en détail

Python - introduction à la programmation et calcul scientifique

Python - introduction à la programmation et calcul scientifique Université de Strasbourg Environnements Informatique Python - introduction à la programmation et calcul scientifique Feuille de TP 1 Avant de commencer Le but de ce TP est de vous montrer les bases de

Plus en détail

Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite.

Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite. Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite. Mots-clés : Niveau : Bases de données relationnelles, Open Office, champs, relations,

Plus en détail

Introduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski cegielski@u-pec.fr

Introduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski cegielski@u-pec.fr Introduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski cegielski@u-pec.fr Mars 2002 Pour Irène et Marie Legal Notice Copyright c 2002 Patrick Cégielski Université

Plus en détail

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

DU BINAIRE AU MICROPROCESSEUR - D ANGELIS CIRCUITS CONFIGURABLES NOTION DE PROGRAMMATION 145 NOTION DE PROGRAMMATION 1/ Complétons notre microprocesseur Nous avons, dans les leçons précédentes décrit un microprocesseur théorique, cependant il s inspire du 6800, premier microprocesseur conçu

Plus en détail

http://cermics.enpc.fr/scilab

http://cermics.enpc.fr/scilab scilab à l École des Ponts ParisTech http://cermics.enpc.fr/scilab Introduction à Scilab Graphiques, fonctions Scilab, programmation, saisie de données Jean-Philippe Chancelier & Michel De Lara cermics,

Plus en détail

LES DECIMALES DE π BERNARD EGGER

LES DECIMALES DE π BERNARD EGGER LES DECIMALES DE π BERNARD EGGER La génération de suites de nombres pseudo aléatoires est un enjeu essentiel pour la simulation. Si comme le dit B Ycard dans le cours écrit pour le logiciel SEL, «Paradoxalement,

Plus en détail

Probabilités Loi binomiale Exercices corrigés

Probabilités Loi binomiale Exercices corrigés Probabilités Loi binomiale Exercices corrigés Sont abordés dans cette fiche : (cliquez sur l exercice pour un accès direct) Exercice 1 : épreuve de Bernoulli Exercice 2 : loi de Bernoulli de paramètre

Plus en détail

RACCOURCIS CLAVIERS. DEFINITION : Une «combinaison de touches» est un appui simultané sur plusieurs touches.

RACCOURCIS CLAVIERS. DEFINITION : Une «combinaison de touches» est un appui simultané sur plusieurs touches. S Vous n aimez pas la souris Les raccourcis clavier sont là pour vous faciliter la vie! INTRODUCTION : Vous avez du mal à vous habituer à la manipulation de la souris Des solutions existent : les raccourcis

Plus en détail

03/04/2007. Tâche 1 Tâche 2 Tâche 3. Système Unix. Time sharing

03/04/2007. Tâche 1 Tâche 2 Tâche 3. Système Unix. Time sharing 3/4/27 Programmation Avancée Multimédia Multithreading Benoît Piranda Équipe SISAR Université de Marne La Vallée Besoin Programmes à traitements simultanés Réseau Réseau Afficher une animation en temps

Plus en détail

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

Programmation C. Apprendre à développer des programmes simples dans le langage C Programmation C Apprendre à développer des programmes simples dans le langage C Notes de cours sont disponibles sur http://astro.u-strasbg.fr/scyon/stusm (attention les majuscules sont importantes) Modalités

Plus en détail

Support de TD ArcGIS 10.1. Introduction à l automatisation et au développement avec ArcGIS 10.1 JEAN-MARC GILLIOT 2014-2015. 3 e année ingénieur

Support de TD ArcGIS 10.1. Introduction à l automatisation et au développement avec ArcGIS 10.1 JEAN-MARC GILLIOT 2014-2015. 3 e année ingénieur JEAN-MARC GILLIOT 2014-2015 Durée 1,5 heures Introduction à l automatisation et au développement avec ArcGIS 10.1 3 e année ingénieur Support de TD ArcGIS 10.1 Grande école européenne d'ingénieurs et de

Plus en détail

INSERER DES OBJETS - LE RUBAN INSERTION... 3 TABLEAUX

INSERER DES OBJETS - LE RUBAN INSERTION... 3 TABLEAUX TABLE DES MATIERES Livret Utilisateur Excel 2007 Niveau 2 INSERER DES OBJETS - LE RUBAN INSERTION... 3 TABLEAUX... 4 Les tableaux croisés dynamiques... 4 Création d un tableau croisé... 5 Comparer des

Plus en détail

Créer un tableau avec LibreOffice / Calc

Créer un tableau avec LibreOffice / Calc Créer un tableau avec LibreOffice / Calc Réaliser des tableaux LibreOffice / Calc permet de créer des tableaux facilement en utilisant les cellules. En premier lieu, il faut prévoir le nombre de colonnes

Plus en détail

La Clé informatique. Formation Excel XP Aide-mémoire

La Clé informatique. Formation Excel XP Aide-mémoire La Clé informatique Formation Excel XP Aide-mémoire Septembre 2005 Table des matières Qu est-ce que le logiciel Microsoft Excel?... 3 Classeur... 4 Cellule... 5 Barre d outil dans Excel...6 Fonctions habituelles

Plus en détail

COURS ALGORITHMIE. Mathématiques. Le monde merveilleux des algorithmes!! Croyez-moi, vous allez les adorer. Julien Bordas T.S 3

COURS ALGORITHMIE. Mathématiques. Le monde merveilleux des algorithmes!! Croyez-moi, vous allez les adorer. Julien Bordas T.S 3 Mathématiques COURS ALGORITHMIE Le monde merveilleux des algorithmes!! Croyez-moi, vous allez les adorer Julien Bordas T.S 3 La Nativité Mathématiques A qui s adresse ce cours? COURS ALGORITHMIE Ce cours

Plus en détail

Conversion d un entier. Méthode par soustraction

Conversion d un entier. Méthode par soustraction Conversion entre bases Pour passer d un nombre en base b à un nombre en base 10, on utilise l écriture polynomiale décrite précédemment. Pour passer d un nombre en base 10 à un nombre en base b, on peut

Plus en détail

V- Manipulations de nombres en binaire

V- Manipulations de nombres en binaire 1 V- Manipulations de nombres en binaire L ordinateur est constitué de milliards de transistors qui travaillent comme des interrupteurs électriques, soit ouverts soit fermés. Soit la ligne est activée,

Plus en détail

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview. ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview. Sciences et Technologies de l Industrie et du Développement Durable Formation des enseignants parcours : ET24 Modèle de

Plus en détail

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

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface

Plus en détail

Priorités de calcul :

Priorités de calcul : EXERCICES DE REVISION POUR LE PASSAGE EN QUATRIEME : Priorités de calcul : Exercice 1 : Calcule en détaillant : A = 4 + 5 6 + 7 B = 6 3 + 5 C = 35 5 3 D = 6 7 + 8 E = 38 6 3 + 7 Exercice : Calcule en détaillant

Plus en détail

TD3 - Facturation avec archivage automatisé

TD3 - Facturation avec archivage automatisé TD3 - Facturation avec archivage automatisé Objectifs Insérer les formules nécessaires aux calculs d une facture. Créer une macro- commande avec l enregistreur de macros et l affecter à un bouton. Utiliser

Plus en détail

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

MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C Haute Ecole d Ingénierie et de Gestion Du Canton du Vaud MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C Programmation en mode simulation 1. DOCUMENTS DE RÉFÉRENCE...

Plus en détail

Initiation à l algorithmique

Initiation à l algorithmique Informatique S1 Initiation à l algorithmique procédures et fonctions 2. Appel d une fonction Jacques TISSEAU Ecole Nationale d Ingénieurs de Brest Technopôle Brest-Iroise CS 73862-29238 Brest cedex 3 -

Plus en détail

F7n COUP DE BOURSE, NOMBRE DÉRIVÉ

F7n COUP DE BOURSE, NOMBRE DÉRIVÉ Auteur : S.& S. Etienne F7n COUP DE BOURSE, NOMBRE DÉRIVÉ TI-Nspire CAS Mots-clés : représentation graphique, fonction dérivée, nombre dérivé, pente, tableau de valeurs, maximum, minimum. Fichiers associés

Plus en détail

Correction de l examen de la première session

Correction de l examen de la première session de l examen de la première session Julian Tugaut, Franck Licini, Didier Vincent Si vous trouvez des erreurs de Français ou de mathématiques ou bien si vous avez des questions et/ou des suggestions, envoyez-moi

Plus en détail

1 de 46. Algorithmique. Trouver et Trier. Florent Hivert. Mél : Florent.Hivert@lri.fr Page personnelle : http://www.lri.fr/ hivert

1 de 46. Algorithmique. Trouver et Trier. Florent Hivert. Mél : Florent.Hivert@lri.fr Page personnelle : http://www.lri.fr/ hivert 1 de 46 Algorithmique Trouver et Trier Florent Hivert Mél : Florent.Hivert@lri.fr Page personnelle : http://www.lri.fr/ hivert 2 de 46 Algorithmes et structures de données La plupart des bons algorithmes

Plus en détail

Les algorithmes de base du graphisme

Les algorithmes de base du graphisme Les algorithmes de base du graphisme Table des matières 1 Traçage 2 1.1 Segments de droites......................... 2 1.1.1 Algorithmes simples.................... 3 1.1.2 Algorithmes de Bresenham (1965).............

Plus en détail

Puissances d un nombre relatif

Puissances d un nombre relatif Puissances d un nombre relatif Activités 1. Puissances d un entier relatif 1. Diffusion d information (Activité avec un tableur) Stéphane vient d apprendre à 10h, la sortie d une nouvelle console de jeu.

Plus en détail

Résolution de systèmes linéaires par des méthodes directes

Résolution de systèmes linéaires par des méthodes directes Résolution de systèmes linéaires par des méthodes directes J. Erhel Janvier 2014 1 Inverse d une matrice carrée et systèmes linéaires Ce paragraphe a pour objet les matrices carrées et les systèmes linéaires.

Plus en détail

Introduction à l informatique en BCPST

Introduction à l informatique en BCPST Introduction à l informatique en BCPST Alexandre Benoit BCPST L informatique en BCPST «L enseignement de l informatique en classes préparatoires de la filière BCPST a pour objectif d introduire puis de

Plus en détail

1 Année LMD-STSM Algorithmique et Programmation. Série de TD 2

1 Année LMD-STSM Algorithmique et Programmation. Série de TD 2 Série de TD 2 Exercice 2.1 Quel résultat produit le programme suivant? Var val, double : entier ; Val := 231 ; Double := Val * 2 ; Ecrire (Val) ; Ecrire (Double) ;. Exercice 2.2 Ecrire un programme qui

Plus en détail

Algorithmes et Programmes. Introduction à l informatiquel. Cycle de vie d'un programme (d'un logiciel) Cycle de vie d'un programme (d'un logiciel)

Algorithmes et Programmes. Introduction à l informatiquel. Cycle de vie d'un programme (d'un logiciel) Cycle de vie d'un programme (d'un logiciel) Algorithmes et Programmes Introduction à l informatiquel! Vie d'un programme! Algorithme! Programmation : le langage! Exécution et test des programmes Chapitre : Algorithmes et Programmes 2 Cycle de vie

Plus en détail

GESTION WINPRO ** PRISE EN MAIN RAPIDE **

GESTION WINPRO ** PRISE EN MAIN RAPIDE ** GESTION WINPRO ** PRISE EN MAIN RAPIDE ** Gestion WinPro «INFORMATIONS GENERALES» I - Le programme est multi - dossiers, la première opération est de créer votre propre dossier par l option Nouveau du

Plus en détail

Exercices - Polynômes : corrigé. Opérations sur les polynômes

Exercices - Polynômes : corrigé. Opérations sur les polynômes Opérations sur les polynômes Exercice 1 - Carré - L1/Math Sup - Si P = Q est le carré d un polynôme, alors Q est nécessairement de degré, et son coefficient dominant est égal à 1. On peut donc écrire Q(X)

Plus en détail