Algorithmes conditionnels
|
|
- Gautier Ledoux
- il y a 6 ans
- Total affichages :
Transcription
1 Licence 1 MASS, parcours SEMS et ESD Introduction à Java et à l algorithmique verel@i3s.unice.fr verel Équipe ScoBi - Université Nice Sophia Antipolis 8 février 2013
2 Votre travail? Avez-vous trouvé un livre en rapport avec java et/et le cours? Avez-vous trouvé au moins un site web en rapport avec l enseignement Avez-vous installé Processing sur votre ordinateur si vous en avez un Avoir travailler le cours et préparer!
3 Synthèse Elèves de synthèse du jour?
4 Objectifs de la séance 2 1 Ecrire un algorithme avec des affectations 2 Ecrire un algorithme qui échange la valeur de deux variables 3 Savoir utilisés les entrées de la souris avec Processing 4 Ecrire un algorithme avec des tests simples 5 Ecrire un algorithme avec un test multiple 6 Ecrire des programmes java avec des tests simples ou multiples Question principale du jour : Comment écrire des algorithmes qui prennent en compte des situations différentes?
5 Plan Tests simples Tests multiples
6 Utilité des variables Lors d un calcul, pendant le traitement de données, quasiment toujours nécessaire de stocker certaines valeurs provisoirement Des exemples? Crible d Erastothène : nombres rayés ou non Euclide : nombres a et b du pgcd..., etc,...
7 Utilité des variables Pour stocker cette information, on emploie des variables A 12 remarque : L étiquette est traduite en machine par une adresse binaire sur 8, 32, 64, 128 bits ( )
8 Type des variables Ces variables peuvent être de types différents : nombre entier : int nombre réel (approché) : float, double caractères : char chaîne de caractères : String booléen (dont la valeur est VRAI ou FAUX) : boolean... Type : considéré comme un ensemble regroupant des valeurs. Sur les éléments de cet ensemble s appliquent certaines opérations spécifiques.
9 Expression Expression Ensemble de valeurs, reliées par des opérateurs binaires, équivalent à une seule valeur. Toute expression a un type.
10 Calcul de types De quel type sont les expressions suivantes? (int, float, double, String, char, boolean, etc.) int float float int
11 Calcul de types De quel type sont les expressions suivantes? int 18 / 3 int float 5.4 % 2 float
12 Déclaration de variable en java Exemples : int x ; float a, b; char premierlettre ; int sumtotal ; type nomdelavariable ; Toute variable utilisée doit être déclarée Convention d écriture en java : première lettre d une variable est en minuscule et les mots suivants commencent par une majuscule.
13 Arithmétique des nombres flottants Combien d entiers peut-on coder sur 4 octets? 2 32 positifs ou 2 31 signés Dans un ordinateur, tout est de taille finie et les float sont codés sur 4 octets (les double sur 8 lorsque possible) Quelle est en la conséquence? Précision des flottants
14 Affectation Attribuer à une variable une valeur. notation en pseudo-code : var expr A A en java : var = expr
15 Exemples en pseudo-code Quelle la valeur des variables après exécution? 1. A 3 1. A 3 2. B A 1. A 3 2. B 5 3. A B 4. B A 1. A 3 2. B 5 3. tmp A 3. A B 4. B tmp (ce dernier est à connaitre!)
16 Exemples en java int a = 5 ; int b = a + 3; int a = 5 ; int b = a + 3; a = a + 1;
17 Dessin en Processing Il existe 2 méthodes (fonctions) par défaut en Processing : setup : exécutée 1 seule fois initialement. Le code de la méthode n est exécutée qu une seule fois draw : exécutée f fois par seconde. Par défaut, le code est exécuté f = 50 fois par seconde Remarque : Le paramètre f peut être modifiée à l aide de la méthode framerate Exemple voir programmes Toujours et Point
18 Souris en Processing Il est facile de connaitre la position du pointeur de la souris avec Processing 2 variables de type int contiennent la position relativement aux dimensions de l écran : mousex : abscisse mousey : ordonnée Exemple voir programmes Mouse
19 George Boole Mathématicien et logicien anglais ( ) but Traduire des idées et des concepts en équations, leur appliquer des lois (des transformations) et traduire inversement l équation en termes de concepts et d idées. Il crée une algèbre binaire : qui n accepte que deux valeurs numériques 0 et 1 (faux, vrai), définie dans un ensemble E muni de deux lois de compositions interne (et, ou) satisfaisant un certain nombre de propriétés (associativité, distributivité). algèbre de Boole
20 Notations Il existe plusieurs types de notations : Vrai V 1 Faux F 0 NON ET OU (attention inclusif!) IMPLICATION EQUIVALENT XOR (ou exclusif : fromage ou dessert)
21 Définitions Littéral variable dont la valeur de vérité est soit VRAI soit FAUX. Proposition Enoncé auquel est associé une valeur de vérité (VRAI ou FAUX) Tautologie Proposition qui est toujours VRAI quelque soit les valeurs de vérité de ces littéraux
22 Exemples a OU b (a OU b) XOR c a ET a a OU VRAI b OU (NON b) NON( b OU a ) (a ET NON b) OU (b ET NON a)
23 Tables de vérité ET Vrai Faux Vrai Faux OU Vrai Faux Vrai Faux XOR Vrai Faux Vrai Faux Vrai Faux Vrai Faux
24 Tables de vérité ET Vrai Faux Vrai Vrai Faux Faux Faux Faux OU Vrai Faux Vrai Vrai Vrai Faux Vrai Faux XOR Vrai Faux Vrai Faux Vrai Faux Vrai Faux Vrai Faux Vrai Vrai Faux Faux Vrai Vrai
25 Zoom sur l implication p q Vrai Vrai Vrai Vrai Faux Faux Faux Vrai Vrai Faux Faux Vrai A = je plonge dans la piscine B = je suis mouillé SI je plonge dans la piscine ALORS je suis mouillé est un théorème VRAI. A B Lorsque A est VRAI, la condition est réalisée, donc B est VRAI. (modum ponens, merci Aristote) A peut aussi être FAUX et B restant VRAI. Peut-on en déduire que le théorème devient FAUX dans ce cas?
26 Zoom sur l implication L implication est vraie si l hypothèse est fausse. p q Vrai Vrai Vrai Vrai Faux Faux Faux Vrai Vrai Faux Faux Vrai Lorqu un théorème p q est vrai, mais que l on a pas l hypothèse, alors on ne peut rien en déduire sur q. Pierre Weis et Xavier Leroy on ne peut rien déduire d un théorème dont l hypothèse n est pas vérifiée un théorème reste vrai même quand il ne s applique pas
27 Tables de vérité Un connecteur logique booléen est défini par une table de vérité et réciproquement. Il existe 16 connecteurs logiques binaires (pourquoi?). Vrai Faux Vrai?? Faux?? D où = 16 connecteurs logiques binaires.
28 Logiquement équivalent Logiquement équivalent F est logiquement équivalent à G si et seulement si F G est une tautologie. Logiquement équivalent F est logiquement équivalent à G si et seulement si F et G ont la même table de vérité.
29 Exemple a b a ET NON b b ET NON a (a b) (b a) Vrai Vrai Faux Vrai Vrai Faux Faux Faux
30 Exemple a b a ET NON b b ET NON a (a b) (b a) Vrai Vrai Faux Faux Faux Faux Vrai Faux Vrai Vrai Vrai Faux Vrai Faux Vrai Faux Faux Faux Faux Faux ( (a ET NON b) OU (b ET NON a) ) logiquement équivalent à (a XOR b)
31 Propriétés algébriques Associativité : p (q r) (p q) r p (q r) (p q) r Commmutativité : p q q p p q q p Distributivité : p (q r) (p q) (p r) p (q r) (p q) (p r) Loi de De Morgan : (p q) q p (p q) q p Contraposée : (p q) ( q p) (p q) ( p q) Preuve par l absurde : p p
32 Une application en biologie C(x) est VRAIE lorsque x est une cellule V (x) est VRAIE lorsque x est un virus I (x, y) est VRAIE lorsque x est infecté par y. R(x, y) est VRAIE lorsque x a reconnu y Toutes les cellules infectées par un virus ne le reconnaissent pas x y, (C(x) V (y) I (x, y)) R(x, y) Il n existe pas de virus qui peuvent infecter toutes les cellules y, V (y) ( x C(x) I (x, y)) technique de model checking : vérification de la formule logique par parcours astucieux des états possibles
33 Quand utiliser un test? Tests simples Tests multiples SI j ai tes clés ALORS je vais pouvoir rentrer tout seul chez toi. SI la voie rapide est bouchée ALORS je prends la prom. SI il y a de la neige ALORS je ne viens pas SINON je passe te prendre. SI b 0 ALORS calculer a b SINON la division est impossible. test Exécution d un morceaux d algorithme selon la situation
34 Tests simples Tests simples Tests multiples si booléen alors morceaux d algo 1 fin si si booléen alors morceaux d algo 1 sinon morceaux d algo 2 fin si booléen est une expression dont la valeur est soit Vrai soit Faux Cette expression peut être : une variable booléenne une condition une suite finie de booléens relier par des connecteurs logiques binaires
35 Tests simples en Java Tests simples Tests multiples if (boolean) { morceaux de prog 1 } if (boolean) { morceaux de prog 1 } else { morceaux de prog 2 } Boolean est une expression qui peut être : true : dans ce cas le morceau de programme 1 s exécute false : dans ce cas le morceau de programme 2 s exécute
36 Bloc en java Tests simples Tests multiples if (a < 0) { println("un"); println("nombre"); println("negatif"); } if (a < 0) println("negatif"); else println("positif"); Les accolades servent à créer un bloc d instructions (= suite d instructions) Lorsqu il y a une seule instruction, on peut omettre les accolades. Remarque : décalage et alignement des instructions d un même bloc (indentation) pour éviter les erreurs classiques d accolades
37 Conditions Tests simples Tests multiples T < 100 Une condition est composée de trois éléments : une expression ayant une valeur dans un ensemble ordonné un opérateur de comparaison sur cet ensemble une expression ayant une valeur dans le même ensemble Les opérateurs de comparaison sont : =,, <, >,,, etc. Les ensembles ordonnées peuvent être par exemple les nombres entiers, les nombres réels, les mots,... Attention! 60 < T < 100 n est pas une condition.
38 Opérateur binaire logique en java Les opérateurs de comparaison : Les connecteurs logiques : Tests simples Tests multiples pseudo-code java = ==! = < < > > <= >= pseudo-code java AND && OR NOT!
39 Tests simples Exemple Tests simples Tests multiples Algorithme valeurabsolue(x : réel) : rien début si x < 0 alors écrire( x) sinon écrire(x) fin si fin
40 Tests simples Exemple Tests simples Tests multiples Algorithme comparaison(a, b : entier) : rien début si a < b alors écrire( a est strictement plus petit que b ) sinon écrire( b est plus petit que a ) fin si fin
41 Tests simples Exemple java Tests simples Tests multiples int a = 5; int b = 12; if (a < b) { print("a est strictement plus petit que b") ; } else { print("b est plus petit que a") ; } a est strictement plus petit que b
42 Une équivalence Tests simples Tests multiples Algorithme test1(x : réel) : rien début si x 10 alors écrire(vrai) sinon écrire(faux) fin si fin Algorithme test2(x : réel) : rien début écrire(x 10) fin Les deux algorithmes test1 et test2 sont strictement équivalents. Puisqu ils produisent les mêmes résultats pour les mêmes données, pourtant l un est plus court à écrire que l autre.
43 Tests multiples Tests simples Tests multiples Test multiples imbriqués si booléen1 alors partie a sinon si booléen2 alors partie b sinon partie c fin si fin si lorsque booléen1 est vrai, la partie a s exécute (quelque soit la valeur de booléen2) lorsque booléen1 est faux et que booléen2 est vrai, la partie b s exécute lorsque booléen1 est faux et que booléen2 est faux, la partie c s exécute
44 Tests multiples Tests simples Tests multiples Attention : ce n est pas équivalent à la succession de 2 tests simples si booléen1 alors partie a fin si si booléen2 alors partie b sinon partie c fin si lorsque booléen1 est vrai, la partie a s exécute Par contre la partie b s exécute seulement lorsque booléen2 est vrai (quelque soit la valeur de booléen1)
45 Tests multiples / imbriqués Exemple Tests simples Tests multiples Algorithme degredecorpulence(t : réel, m : réel) : aucun début i m/t 2 si i < 20 alors écrire( poids inférieur à la normale ) sinon si i < 25 alors écrire( poids normal ) sinon si i < 30 alors écrire( surcharge pondérale ) sinon si i < 40 alors écrire( adiposité ) sinon écrire( obésité ) fin si fin si fin si fin si fin
46 Tests multiples Exemple Tests simples Tests multiples Algorithme test(x : réel) : aucun début si 0 x alors écrire( le nombre est positif ) si i 10 alors écrire( le nombre est compris entre 0 et 10. ) sinon si i 15 alors écrire( le nombre est compris entre 10 et 15. ) sinon si i 20 alors écrire( le nombre est compris entre 15 et 20. ) sinon écrire( le nombre est strictement supérieur à 20. ) fin si fin si fin si sinon écrire( le nombre est strictement négatif ) fin si fin
47 Connecteurs logiques Exemple Tests simples Tests multiples Algorithme ordonner?(a,b,c : réel) : aucun début si a b ET b c alors écrire(vrai) sinon écrire(faux) fin si fin
48 Connecteurs logiques Exemple en java Tests simples Tests multiples int a, b, c; a = 10; b = 3; c = 5; if ((a <= b) && (b <= c)) println(true); else println(false);
49 Equivalence Exemple en java Tests simples Tests multiples int a, b, c; a = 10; b = 3; c = 5; println((a <= b) && (b <= c));
50 Tests multiples Exercice Tests simples Tests multiples Ecrire en java le programme suivant : début rep : entier rep 2 si rep = 1 alors écrire( Vous avez sélectionne le premier choix ) si rep = 2 alors écrire( Vous avez sélectionne le deuxième choix ) sinon si rep = 3 alors écrire( Vous avez sélectionné le troisième choix ) sinon écrire( Votre choix est inconnu ) fin si fin si fin si fin
51 Traduction en java Tests simples Tests multiples int x = 2 ; if (x == 1) println("vous avez selectionne le premier choix"); else if (x == 2) println("vous avez selectionne le deuxieme choix"); else if (x == 3) println("vous avez selectionne le troisieme choix") else println("votre choix est inconnu.");
52 Equivalence avec switch Tests simples Tests multiples int x = 2 ; switch (x) { case 1 : println("vous avez selectionne le premier cho break; case 2 : println("vous avez selectionne le deuxieme ch break; case 3 : println("vous avez selectionne le troisieme c break; default : println("votre choix est inconnu."); }
53 Equivalence avec switch Tests simples Tests multiples switch porte sur une variable de type byte, short, char ou int. Lorsque la variable a la valeur indiquée après case : exécution à partir des : jusqu à l instruction break qui permet la reprise d exécution après le bloc voir aussi : java/nutsandbolts/switch.html
54 Arbres de décision Tests simples Tests multiples Schema qui représente un algorithme avec des tests imbriqués Base des systèmes experts : applications médicales, conseils, filtrage,... Ces arbres s établissent à l aide d algorithmes d apprentissage
55 Exercice Tests simples Tests multiples a - b - Rappeler les deux lois De Morgan. Démontrer que ces deux lois sont logiquement équivalentes à l aide de tables de vérités.
56 Exercice Tests simples Tests multiples Dans un pays lointain, deux tribus existent. La tribu des purs qui disent toujours la vérité et la tribu des pires qui mentent toujours. Un jours en voyageant dans ce pays un peu étrange, j ai rencontré Alain et Bob. Alain m a déclaré 2 choses : l un de nous deux est au moins un pire l un de nous deux au plus est un pire Je les ai salué en partant et je me demande toujours de quelle tribu pouvait bien appartenir Alain et Bob? Questions : a - b - Répondre à la question en résonnant de manière informelle. Confirmer votre résultat à l aide d une table de vérité.
57 Synthèse du jour Tests simples Tests multiples Aujourd hui nous écoutons......
58 Tests simples Tests multiples Travail pour la semaine prochaine Fabriquer ses petits programmes d exemple, m envoyer un pour les présenter la semaine prochaine (eval ++) Explorer les exemples de Processing Travailler le cours à l aide du TP!
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étailLicence 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étail1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.
1. Structure d un programme C Un programme est un ensemble de fonctions. La fonction "main" constitue le point d entrée pour l exécution. Un exemple simple : #include int main() { printf ( this
Plus en détailUEO11 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étailStructure d un programme et Compilation Notions de classe et d objet Syntaxe
Cours1 Structure d un programme et Compilation Notions de classe et d objet Syntaxe POO 1 Programmation Orientée Objet Un ensemble d objet qui communiquent Pourquoi POO Conception abstraction sur les types
Plus en détailPlan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7
Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin
Plus en détail1/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étailAlgorithmique 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étailConventions d écriture et outils de mise au point
Logiciel de base Première année par alternance Responsable : Christophe Rippert Christophe.Rippert@Grenoble-INP.fr Introduction Conventions d écriture et outils de mise au point On va utiliser dans cette
Plus en détailINTRODUCTION A JAVA. Fichier en langage machine Exécutable
INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du
Plus en détailCours 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étailIntroduction à l algorithmique et à la programmation M1102 CM n 3
Introduction à l algorithmique et à la programmation M1102 CM n 3 DUT Informatique 1 re année Eric REMY eric.remy@univ-amu.fr IUT d Aix-Marseille, site d Arles Version du 2 octobre 2013 E. Remy (IUT d
Plus en détailProgrammer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)
Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes
Plus en détailCours 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étailRepré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étailCours 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étailUE Programmation Impérative Licence 2ème Année 2014 2015
UE Programmation Impérative Licence 2 ème Année 2014 2015 Informations pratiques Équipe Pédagogique Florence Cloppet Neilze Dorta Nicolas Loménie prenom.nom@mi.parisdescartes.fr 2 Programmation Impérative
Plus en détailCours 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étailEPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE
EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE QCM Remarque : - A une question correspond au moins 1 réponse juste - Cocher la ou les bonnes réponses Barème : - Une bonne réponse = +1 - Pas de réponse = 0
Plus en détailIV- Comment fonctionne un ordinateur?
1 IV- Comment fonctionne un ordinateur? L ordinateur est une alliance du hardware (le matériel) et du software (les logiciels). Jusqu à présent, nous avons surtout vu l aspect «matériel», avec les interactions
Plus en détailÉléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if
Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Pierre Boudes 28 septembre 2011 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike
Plus en détailExceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;
CNAM NFP121 TP 10 19/11/2013 (Séance 5) Objectif Manipuler les exceptions ; 1 Entrées/sorties Exercice 1 : Lire un entier à partir du clavier Ajouter une méthode readint(string message) dans la classe
Plus en détailDE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51
DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51 PLAN DU COURS Introduction au langage C Notions de compilation Variables, types, constantes, tableaux, opérateurs Entrées sorties de base Structures de
Plus en détailLangage et Concepts de ProgrammationOrientée-Objet 1 / 40
Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr
Plus en détailAlgèbre binaire et Circuits logiques (2007-2008)
Université Mohammed V Faculté des Sciences Département de Mathématiques et Informatique Filière : SMI Algèbre binaire et Circuits logiques (27-28) Prof. Abdelhakim El Imrani Plan. Algèbre de Boole 2. Circuits
Plus en détailArchitecture 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étailINITIATION 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étailNotions fondamentales du langage C# Version 1.0
Notions fondamentales du langage C# Version 1.0 Z 2 [Notions fondamentales du langage Csharp] [Date : 25/03/09] Sommaire 1 Tout ce qu il faut savoir pour bien commencer... 3 1.1 Qu est ce qu un langage
Plus en détailProgrammation 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étailInformatique Générale
Informatique Générale Guillaume Hutzler Laboratoire IBISC (Informatique Biologie Intégrative et Systèmes Complexes) guillaume.hutzler@ibisc.univ-evry.fr Cours Dokeos 625 http://www.ens.univ-evry.fr/modx/dokeos.html
Plus en détailARDUINO DOSSIER RESSOURCE POUR LA CLASSE
ARDUINO DOSSIER RESSOURCE POUR LA CLASSE Sommaire 1. Présentation 2. Exemple d apprentissage 3. Lexique de termes anglais 4. Reconnaître les composants 5. Rendre Arduino autonome 6. Les signaux d entrée
Plus en détailAlgorithme. 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étailLes arbres binaires de recherche
Institut Galilée Année 2010-2011 Algorithmique et arbres L2 TD 6 Les arbres binaires de recherche Type en C des arbres binaires (également utilisé pour les ABR) : typedef struct noeud_s { struct noeud_s
Plus en détailIntroduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf
Introduction à Java Matthieu Herrb CNRS-LAAS http://homepages.laas.fr/matthieu/cours/java/java.pdf Mars 2014 Plan 1 Concepts 2 Éléments du langage 3 Classes et objets 4 Packages 2/28 Histoire et motivations
Plus en détailJava Licence Professionnelle CISII, 2009-10
Java Licence Professionnelle CISII, 2009-10 Cours 4 : Programmation structurée (c) http://www.loria.fr/~tabbone/cours.html 1 Principe - Les méthodes sont structurées en blocs par les structures de la programmation
Plus en détailUSTL - Licence ST-A 1ère année 2005-2006 Codage de l information TP 1 :
USTL - Licence ST-A 1ère année 2005-2006 Codage de l information TP 1 : Objectifs du TP Ce TP a pour but 1. de découvrir quelques opérations logiques sur les nombres 2. et quelques formats de fichiers.
Plus en détailUE C avancé cours 1: introduction et révisions
Introduction Types Structures de contrôle Exemple UE C avancé cours 1: introduction et révisions Jean-Lou Desbarbieux et Stéphane Doncieux UMPC 2004/2005 Introduction Types Structures de contrôle Exemple
Plus en détailINF 321 : mémento de la syntaxe de Java
INF 321 : mémento de la syntaxe de Java Table des matières 1 La structure générale d un programme 3 2 Les composants élémentaires de Java 3 2.1 Les identificateurs.................................. 3 2.2
Plus en détailIN 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étailDécouverte de Python
Découverte de Python Python est un des langages informatiques au programme des concours à partir de la session 2015. Ce tutoriel vous permettra de vous mettre à peu près à niveau de ce qui a été fait en
Plus en détailIntroduction au langage C
Introduction au langage C Cours 1: Opérations de base et premier programme Alexis Lechervy Alexis Lechervy (UNICAEN) Introduction au langage C 1 / 23 Les premiers pas Sommaire 1 Les premiers pas 2 Les
Plus en détailPROJET ALGORITHMIQUE ET PROGRAMMATION II
PROJET 1 ALGORITHMIQUE ET PROGRAMMATION II CONTENU DU RAPPORT A RENDRE : o Fiche signalétique du binôme o Listing des différents fichiers sources o CD sources o Il sera tenu compte de la présentation du
Plus en détailTravaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation
Université de Savoie Module ETRS711 Travaux pratiques Compression en codage de Huffman 1. Organisation du projet 1.1. Objectifs Le but de ce projet est d'écrire un programme permettant de compresser des
Plus en détailLicence 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étailLe Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr
Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr Table des matières 1 Les bases 3 2 Variables et constantes 5 3 Quelques fonctions indispensables
Plus en détailRecherche 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étailManuel 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étailCorrigé 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étailPrendre le marteau, le tableau, le mètre, le crayon, la ficelle, le clou, la pointe ;
s Introduction Naissance d'un programme Exercice I-1: Apprendre à décomposer une tâche en sous-tâches distinctes a. Objets nécessaires : 1 tableau, 1 clou, 2 pointes, 1 ficelle, 1 marteau, 1 crayon, 1
Plus en détailComparaison de fonctions Développements limités. Chapitre 10
PCSI - 4/5 www.ericreynaud.fr Chapitre Points importants 3 Questions de cours 6 Eercices corrigés Plan du cours 4 Eercices types 7 Devoir maison 5 Eercices Chap Et s il ne fallait retenir que si points?
Plus en détailLogique. Plan du chapitre
Logique Ce chapitre est assez abstrait en première lecture, mais est (avec le chapitre suivant «Ensembles») probablement le plus important de l année car il est à la base de tous les raisonnements usuels
Plus en détailLimites finies en un point
8 Limites finies en un point Pour ce chapitre, sauf précision contraire, I désigne une partie non vide de R et f une fonction définie sur I et à valeurs réelles ou complees. Là encore, les fonctions usuelles,
Plus en détailAlgorithmes 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étailChapitre 10. Les interfaces Comparable et Comparator 1
Chapitre 10: Les interfaces Comparable et Comparator 1/5 Chapitre 10 Les interfaces Comparable et Comparator 1 1 Ce chapitre a été extrait du document "Objets, Algorithmes, Patterns" de [René Lalement],
Plus en détailTP 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étailAlgorithmes 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étailCours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr
. Cours intensif Java 1er cours: de C à Java Septembre 2009 Enrica DUCHI LIAFA, Paris 7 Enrica.Duchi@liafa.jussieu.fr LANGAGES DE PROGRAMMATION Pour exécuter un algorithme sur un ordinateur il faut le
Plus en détailProgrammation en langage C
Programmation en langage C Anne CANTEAUT INRIA - projet CODES B.P. 105 78153 Le Chesnay Cedex Anne.Canteaut@inria.fr http://www-rocq.inria.fr/codes/anne.canteaut/cours C 2 Table des matières 3 Table des
Plus en détailTP : Gestion d une image au format PGM
TP : Gestion d une image au format PGM Objectif : L objectif du sujet est de créer une classe de manipulation d images au format PGM (Portable GreyMap), et de programmer des opérations relativement simples
Plus en détailArchitecture des ordinateurs
Architecture des ordinateurs Cours 4 5 novembre 2012 Archi 1/22 Micro-architecture Archi 2/22 Intro Comment assembler les différents circuits vus dans les cours précédents pour fabriquer un processeur?
Plus en détailRepré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étailRaisonnement par récurrence Suites numériques
Chapitre 1 Raisonnement par récurrence Suites numériques Terminale S Ce que dit le programme : CONTENUS CAPACITÉS ATTENDUES COMMENTAIRES Raisonnement par récurrence. Limite finie ou infinie d une suite.
Plus en détailDurée de L épreuve : 2 heures. Barème : Exercice n 4 : 1 ) 1 point 2 ) 2 points 3 ) 1 point
03 Mai 2013 Collège Oasis Durée de L épreuve : 2 heures. apple Le sujet comporte 4 pages et est présenté en livret ; apple La calculatrice est autorisée ; apple 4 points sont attribués à la qualité de
Plus en détailNotes du cours 4M056 Programmation en C et C++ Vincent Lemaire et Damien Simon
Notes du cours 4M056 Programmation en C et C++ Vincent Lemaire et Damien Simon 13 janvier 2015 2 Table des matières Organisation générale du cours 7 1 Notions générales d algorithmique et de programmation
Plus en détail2 Comment fonctionne un ordinateur, dans les grandes lignes
Programmation 1 Cours n 1 GB3, 2 nd semestre 2014-2015 Cours de Python Gilles Bernot Les notes de cours et les feuilles de TD sont disponibles (avec un peu de retard par rapport au déroulement du cours)
Plus en détailProjet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte
Projet d informatique M1BI : Compression et décompression de texte Le but de ce projet est de coder un programme réalisant de la compression et décompression de texte. On se proposera de coder deux algorithmes
Plus en détailCours 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étailRappels 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étailas Architecture des Systèmes d Information
Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes
Plus en détailClaude Delannoy. 3 e édition C++
Claude Delannoy 3 e édition Exercices Exercices C++ en en langage langage delc++ titre 4/07/07 15:19 Page 2 Exercices en langage C++ AUX EDITIONS EYROLLES Du même auteur C. Delannoy. Apprendre le C++.
Plus en détailTP 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étailProgrammation Classique en langage C
DI GALLO Frédéric Programmation Classique en langage C Cours du Cycle d Approfondissement CNAM ANGOULEME 2000-2001 DI GALLO Frédéric Page 1 01/04/01 PROGRAMMATION CLASSIQUE : LANGAGE C DI GALLO Frédéric
Plus en détailChapitre 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étail1 Recherche en table par balayage
1 Recherche en table par balayage 1.1 Problème de la recherche en table Une table désigne une liste ou un tableau d éléments. Le problème de la recherche en table est celui de la recherche d un élément
Plus en détailExercices - 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étailTS 35 Numériser. Activité introductive - Exercice et démarche expérimentale en fin d activité Notions et contenus du programme de Terminale S
FICHE Fiche à destination des enseignants TS 35 Numériser Type d'activité Activité introductive - Exercice et démarche expérimentale en fin d activité Notions et contenus du programme de Terminale S Compétences
Plus en détailLa Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1
La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1 La licence Mathématiques et Economie-MASS de l Université des Sciences Sociales de Toulouse propose sur les trois
Plus en détailCours d Algorithmique et de Langage C 2005 - v 3.0
Cours d Algorithmique et de Langage C 2005 - v 3.0 Bob CORDEAU cordeau@onera.fr Mesures Physiques IUT d Orsay 15 mai 2006 Avant-propos Avant-propos Ce cours en libre accès repose sur trois partis pris
Plus en détailCours 1 : La compilation
/38 Interprétation des programmes Cours 1 : La compilation Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr PPS - Université Denis Diderot Paris 7 2/38 Qu est-ce que la compilation? Vous avez tous déjà
Plus en détailInitiation à 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étailSUPPORT DE COURS. Langage C
Dpt Informatique 2010-2011 SUPPORT DE COURS Langage C Semestre 1 par : «CaDePe» Marie-Françoise Canut Marianne de Michiel André Péninou Table des Matières 1 Généralités...8 1.1 Introduction aux langages
Plus en détailExpression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e
P r o b l é m a t i q u e OCL : O b j e c t C o n s t r a i n t L a n g u a g e Le langage de contraintes d UML Les différents diagrammes d UML permettent d exprimer certaines contraintes graphiquement
Plus en détailLes chaînes de caractères
Les chaînes de caractères Dans un programme informatique, les chaînes de caractères servent à stocker les informations non numériques comme par exemple une liste de nom de personne ou des adresses. Il
Plus en détailFonctions homographiques
Seconde-Fonctions homographiques-cours Mai 0 Fonctions homographiques Introduction Voir le TP Géogébra. La fonction inverse. Définition Considérons la fonction f définie par f() =. Alors :. f est définie
Plus en détailMICROINFORMATIQUE 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étailLangage Éric Guérin 5 octobre 2010
Langage Éric Guérin 5 octobre 2010 Langage C TABLE DES MATIÈRES Table des matières 1 Introduction 7 1.1 Historique........................................... 7 1.2 Architecture matérielle....................................
Plus en détailLes structures de données. Rajae El Ouazzani
Les structures de données Rajae El Ouazzani Les arbres 2 1- Définition de l arborescence Une arborescence est une collection de nœuds reliés entre eux par des arcs. La collection peut être vide, cad l
Plus en détailRappels d architecture
Assembleur Rappels d architecture Un ordinateur se compose principalement d un processeur, de mémoire. On y attache ensuite des périphériques, mais ils sont optionnels. données : disque dur, etc entrée
Plus en détailProbabilités. Rappel : trois exemples. Exemple 2 : On dispose d un dé truqué. On sait que : p(1) = p(2) =1/6 ; p(3) = 1/3 p(4) = p(5) =1/12
Probabilités. I - Rappel : trois exemples. Exemple 1 : Dans une classe de 25 élèves, il y a 16 filles. Tous les élèves sont blonds ou bruns. Parmi les filles, 6 sont blondes. Parmi les garçons, 3 sont
Plus en détailASR1 TD7 : Un microprocesseur RISC 16 bits
{Â Ö Ñ º ØÖ Ý,È ØÖ ºÄÓ Ù,Æ ÓÐ ºÎ ÝÖ Ø¹ ÖÚ ÐÐÓÒ} Ò ¹ÐÝÓÒº Ö ØØÔ»»Ô Ö Óº Ò ¹ÐÝÓÒº Ö» Ö Ñ º ØÖ Ý»¼ Ö½» ASR1 TD7 : Un microprocesseur RISC 16 bits 13, 20 et 27 novembre 2006 Présentation générale On choisit
Plus en détailLa mémoire. Un ordinateur. L'octet. Le bit
Introduction à l informatique et à la programmation Un ordinateur Un ordinateur est une machine à calculer composée de : un processeur (ou unité centrale) qui effectue les calculs une mémoire qui conserve
Plus en détailTP Codage numérique des caractères. Un ordinateur ne manipule que des 0 et des 1 : Comment alors code-t-il du texte?
TP Codage numérique des caractères Un ordinateur ne manipule que des 0 et des 1 : Comment alors code-t-il du texte? I Le code ASCII 1. Une première approche Ouvrir un fichier Excell Sur la ligne 1 du tableau,
Plus en détailMIS 102 Initiation à l Informatique
MIS 102 Initiation à l Informatique Responsables et cours : Cyril Gavoille Catherine Pannier Matthias Robine Marc Zeitoun Planning : 6 séances de cours 5 séances de TD (2h40) 4 séances de TP (2h40) + environ
Plus en détailIntroduction à la programmation Travaux pratiques: séance d introduction INFO0201-1
Introduction à la programmation Travaux pratiques: séance d introduction INFO0201-1 B. Baert & F. Ludewig Bruno.Baert@ulg.ac.be - F.Ludewig@ulg.ac.be Qu est-ce que la programmation? Programmer Ecrire un
Plus en détailLangage C. Patrick Corde. Patrick.Corde@idris.fr. 22 juin 2015. Patrick Corde ( Patrick.Corde@idris.fr ) Langage C 22 juin 2015 1 / 289
Langage C Patrick Corde Patrick.Corde@idris.fr 22 juin 2015 Patrick Corde ( Patrick.Corde@idris.fr ) Langage C 22 juin 2015 1 / 289 Table des matières I 1 Présentation du langage C Historique Intérêts
Plus en détailOCL - Object Constraint Language
OCL - Object Constraint Language Laëtitia Matignon laetitia.matignon@univ-lyon1.fr Département Informatique - Polytech Lyon Université Claude Bernard Lyon 1 2012-2013 Laëtitia Matignon SIMA - OCL - Object
Plus en détail# let rec concat l1 l2 = match l1 with [] -> l2 x::l 1 -> x::(concat l 1 l2);; val concat : a list -> a list -> a list = <fun>
94 Programmation en OCaml 5.4.8. Concaténation de deux listes Définissons maintenant la fonction concat qui met bout à bout deux listes. Ainsi, si l1 et l2 sont deux listes quelconques, concat l1 l2 constitue
Plus en détailMPI Activité.10 : Logique binaire Portes logiques
MPI Activité.10 : Logique binaire Portes logiques I. Introduction De nombreux domaines font appel aux circuits logiques de commutation : non seulement l'informatique, mais aussi les technologies de l'asservissement
Plus en détailSNT4U16 - Initiation à la programmation 2014-2015. TD - Dynamique de POP III - Fichiers sources
SNT4U16 - Initiation à la programmation Licence SVT 2 ème année 2014-2015 TD - Dynamique de POP III - Fichiers sources contacts : mathias.gauduchon@univ-amu.fr, melika.baklouti@univ-amu.fr, xavier.giraud@univ-amu.fr,
Plus en détailCalcul fonctionnel holomorphe dans les algèbres de Banach
Chapitre 7 Calcul fonctionnel holomorphe dans les algèbres de Banach L objet de ce chapitre est de définir un calcul fonctionnel holomorphe qui prolonge le calcul fonctionnel polynômial et qui respecte
Plus en détail