Algorithmique et initiation à la programmation java

Save this PDF as:
 WORD  PNG  TXT  JPG

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

Download "Algorithmique et initiation à la programmation java"

Transcription

1 L3 Monnaie - Finance Algorithmique et initiation à la programmation java Première partie O. Auzende

2 Modalités Cours en amphithéâtre : les lundis de 12 h à 13 h 30 (amphi 3) o Deux fascicules de cours (polycopiés à trous) sont distribués en cours Travaux dirigés (12 séances, les TD commençant dès la première semaine du semestre) o Un fascicule de TD est distribué lors du premier TD. Huit groupes de TD : Horaire Salle Enseignant Mardi 18 h O. Auzende Mardi 20 h O. Auzende Mercredi 14 h N. Thibault Mercredi 15 h N. Thibault Vendredi 9 h F. Jézéquel Vendredi 10 h F. Jézéquel Vendredi 12 h N. Thibault Vendredi 14 h O. Auzende Pour les TD : o avoir toujours les fascicules de cours et de TD avec soi o disposer dès le premier TD d une clé USB standard Evaluation : contrôle continu et projet o 1 contrôle sur 20 points au TD 5 (C1) o 1 contrôle sur 20 points au TD 8 (C2) o 1 contrôle sur 30 points au TD 11 (C3) Programme : cours et TD précédents o Un projet sur 30 points (P) Rendu progressif, de la 6 ème à la 11 ème semaine Soutenance lors du TD de la 12 ème semaine Note finale sur 10 : (C1 + C2 + C3 + P)/10 En cas d absence en TD o Prévenir l enseignant o Venir en TD dans un autre groupe de la même semaine o Tout contrôle non passé est sanctionné par un 0 2

3 MODALITES 2 INTRODUCTION 5 Qu est-ce que l algorithmique? 5 Qu est-ce qu un programme? 5 Comment écrire un programme? 5 Le langage machine 6 Les langages de programmation 6 Java, compilé et interprété 7 Applications, applets et servlets 7 ELEMENTS DE PROGRAMMATION JAVA 8 Notion de variable 8 Affectation 8 Egalité, inégalité 8 Conjonction, disjonction 9 Types de données 9 Notion d application 10 Les tests 11 Tableaux 12 Les boucles 12 Les sauts 14 JAVA, LANGAGE A OBJETS 15 Classes et instances 15 Attributs et méthodes d instances 18 Attributs et méthodes de classes 18 ALGORITHMIQUE 19 Permuter le contenu de deux variables 19 Pour les algorithmes sur tableaux suivants, 19 3

4 Insérer un élément x dans un tableau à la suite des éléments existants 20 Déterminer les éléments maximum et minimum d un tableau 20 Déterminer l indice du maximum ou du minimum d un tableau 20 Somme des éléments d un tableau 21 Comptages divers 21 Insérer un élément à sa place, le tableau étant déjà rangé 22 Les tris sur tableaux 23 LES PAQUETAGES JAVA 25 Qu est-ce qu un paquetage? 25 La notion d héritage 25 Protection des attributs et méthodes 25 Les interfaces 26 Les classes d exceptions 26 Le paquetage java.lang 27 Le paquetage java.util 28 Le paquetage java.text 31 4

5 Introduction Qu est-ce que l algorithmique? L algorithmique est une branche des mathématiques dont le but est de trouver de trouver comment réaliser des tâches dont le résultat s obtenir par une formule, mais par une succession de effectués en fonction du résultat de tests. Quelques exemples o Nombre de jours écoulés depuis o Maximum d un tableau de nombres (il n y a pas de donnant la solution) o Somme d un tableau de nombres (il existe une notation mathématique, mais elle n est pas o pour le calcul effectif) o Tri d un tableau de nombres La solution s appelle un algorithme : c est un ensemble Exemple : il existe différents algorithmes permettant de trier un tableau de nombres, mais Qu est-ce qu un programme? Un programme est un (appelées couramment des ) permettant à un ordinateur d exécuter une tâche plus ou moins complexe, en interaction ou non avec l utilisateur. Exemples de programmes élémentaires Calculer : o le nombre de jours écoulés o le maximum, le minimum, la somme des éléments d un o le montant o un seuil Trier : o un tableau o un tableau Exemples de programmes complexes, appelés logiciels, destinés : o traitement o o programme de gestion de o programme de o programme de conception assistée o programme de publication assistée Comment écrire un programme? Il faut d abord Il faut ensuite trouver un (ou des) Il faut enfin traduire les instructions qui composent ces algorithmes dans un compréhensible par un ordinateur 5

6 Le langage machine Le processeur d un ordinateur ne comprend que du langage machine ( ) composé Toute instruction élaborée : o o répéter une même faire des choses différentes en fonction de se décompose ainsi en des milliers Les langages de programmation o Intermédiaires entre o Permettent de décrire les instructions élaborées de manière plus pour former le du programme o Le code source doit ensuite être en langage machine pour pouvoir être exécuté par le o Il y a deux modes de traduction du code source : * la (langage dit ) * l (langage dit ) Les langages compilés Le compilateur o est dédié à et au o vérifie la du code source ; si c est correct, génère un fichier en langage machine, exécutable sur toute machine Exemples de langages compilés : Cobol ( ), C, C++ ( ) Avantage des langages compilés : o Le code objet s exécute Inconvénient des langages compilés : o Le code objet est dédié à un seul Les langages interprétés L interpréteur o lit le fichier source ligne à ligne, la syntaxe de chaque instruction et ne l exécute que si Exemples de langages interprétés : HTML, javascript, PHP ( ), SQL Avantage des langages interprétés o On peut interpréter le fichier sur tout type d ordinateur, à condition de disposer de l adapté à cet ordinateur Inconvénient des langages interprétés o La vérification ligne à ligne cause une certaine à l exécution 6

7 Java, compilé et interprété Langage développé par SUN depuis Universellement Sur l ordinateur sur lequel on écrit un programme Java, le fichier source est transformé par le compilateur javac en un non exécutable, qui est quel que soit le type de machine sur lequel on travaille. Transféré sur un autre type d ordinateur, le pseudo-code est interprété par un appelé L interpréteur : o ne vérifie plus la syntaxe des instructions (gain de temps) o exécute directement Le pseudo-code est donc indépendant du type d ordinateur sur lequel et de celui sur lequel Pour écrire un programme java sur un ordinateur, il suffit donc de disposer Pour exécuter un programme java compilé, il suffit donc de disposer Le pseudo-code est de, donc java est donc devenu le langage idéal Applications, applets et servlets Java permet d écrire : o Des applications : programmes o Des applets : petits programmes appelés dans une page HTML par la balise et interprétés par o Des servlets : programmes java stockés permettant de générer dynamiquement des pages html en réponse à 7

8 Eléments de programmation Java Notion de variable La notion de variable en informatique est assez proche En mathématiques, x = 5 veut dire En informatique, x est un dont la taille (nombre de qui composent cet emplacement) dépend de ce qu on veut y stocker : un entier, un réel Le contenu de cet emplacement-mémoire peut constamment être On écrit donc (syntaxe java) : int x ; (réservation de place ) x = 2 ; (on y met la valeur 2) x = 5 ; (on change, on y met ) float y ; (réservation de place ) y = 3.5 ; (on y met la valeur 3.5) ou bien directement : int x = 8; (les deux opérations ) float y = 3.5 ; Affectation Toute instruction complète se termine par Les deux instructions x = 5 ; x = 7 ; y = 3.5 ; donnent des valeurs ( ) aux emplacements-mémoire x et y. Elles sont appelées des On dit qu on une valeur à une variable occupant une certaine place-mémoire. Il serait plus naturel d écrire : x 5 (x reçoit la valeur 5), y 3.5 (y reçoit la valeur 3.5), mais tous les langages de programmation actuels (C, C++, JavaScript, Java, PHP ) utilisent la notation a = b au lieu de a b. L écriture a = b correspond donc en fait à a b et doit se lire «a la valeur de b». A gauche : A droite : On peut affecter à une variable : o une x = 3; y = 5 ; z = 4 ; o la d une autre variable x = y; (x reçoit la VALEUR de y, donc 5) o le résultat du d une x = y + z; (x reçoit la VALEUR de y + z) o le résultat du calcul d une t = max(x, y, z) ; Egalité, inégalité Egalité Le symbole = étant réservé à l affectation, on teste l égalité de deux variables a et b autrement. On écrit : if qui se lit si (a = b)... Inégalité On teste l inégalité de deux variables a et b en écrivant : if qui se lit si (a b)... 8

9 Exemples o si x = 4 alors y = 7 : o si annee = 2012 alors nb_jours_fevrier = 29 : o si x 10 alors y = 8 : o si mois 2 alors nb_jours > 29 : Conjonction, disjonction Conjonction La conjonction ET s écrit && si (a=b) et (c=d) s écrit donc : Disjonction La disjonction OU s écrit si (a=b) ou (c=d) s écrit donc : Exemples o si x = 4 et y = 5 alors z = 7 : o si annee=2012 et mois=2 alors nb_jours=29 : o si mois =1 ou mois=3 alors nb_jours =31 : Types de données Java est un langage typé Toute variable utilisée doit nécessairement être et son doit être Un nom de variable doit : o être constitué o ne PAS comporter ni de o ne pas être un du langage (liste fournie en TD) Exemples : float revenu; int mois_annee; Les types élémentaires sont appelés des Toute variable d un type primitif est une variable simple, non composée (int, float ) Les types autres que primitifs sont des (on verra plus tard) Types de données primitifs en Java Il y a 8 types de données primitifs (les plus utilisés sont soulignés) : o boolean : o char : o byte : o short : o int : o long : o float : o double : L instruction : boolean fini = false; définit une variable fini de type et de valeur false. L instruction : int i = ; définit une variable i de type, stockée sur 32 bits et de valeur L instruction : float f = ; définit une variable f de type, stockée sur 32 bits et de valeur

10 Opérateurs de cast Pour créer une variable d un type à partir d une variable d un autre type semblable (nombre et nombre, par exemple), on utilise un Il est noté entre Exemples float f= ; int j=(int)f; j est alors un entier valant 156 double t= ; float d=(float)t; d est un flottant stocké sur 32 bits au lieu de 64 bits. On a donc perdu Notion d application Fichier Programme.java : public class Programme { public static void main(string[] args) { int a = 25 ; int b = 76 ; System.out.println("a = " + a); System.out.println("b = " + b); Un programme java est contenu dans une La description d une classe est faite entre une { et une S il n y a qu une seule classe, elle est déclarée afin d être accessible à tout utilisateur Le programme proprement dit figure dans une méthode appelée déclarée sous la forme : public static void main(string[] args) Toute méthode a un compris entre { et Tout programme contenant une méthode appelée est appelé o public signale que tout le monde peut exécuter o static indique que la méthode main est une méthode (on verra plus tard) o void dit que la méthode main o String[] args permet de passer à la méthode main (ce qu on ne fera pas) o System.out.println(chaîne) fait afficher à l écran une Pour construire une chaîne à partir de plusieurs morceaux, on utilise qui réalise leur Compilation javac Programme.java o javac est o Il compile le fichier Programme.java et crée le fichier Programme.class qui n est pas exécutable Exécution java Programme o java est o Il charge le fichier et Résultat à l écran a vaut : 5 b vaut : 7 10

11 Les tests Les tests permettent de faire des traitements Le test simple : if else Il s écrit : if (test) { instructions; else { instructions; La clause else est On peut avoir simplement : if (test) { instructions ; Exemple : fichier Programme1.java public class Programme1 { public static void main(string[] args) { int a = 25 ; int b = 76 ; System.out.println("a = " + a); System.out.println("b = " + b); int min ; if (a < b) { min = a; else { min = b; System.out.println("le minimum de a et b est " + min); Le test multiple : switch Il s écrit : switch (variable) { case 1: instructions; case 2: instructions;... default : instructions; La variable testée doit être de type Le cas sert si l on veut prévoir un traitement par défaut.... dans les instructions signale que le cas est traité et que l on saute Exemple : fichier Programme1b.java public class Programme1b { public static void main(string[] args) { int num = 11 ; String mois = "" ; // type chaîne de caractères switch(num) { case 1 : mois="janvier"; break ; case 2 : mois="fevrier"; break ; case 3 : mois="mars"; break ; case 4 : mois="avril"; break ; case 5 : mois="mai"; break ; case 6 : mois="juin"; break ; case 7 : mois="juillet"; break ; case 8 : mois="aout"; break ; case 9 : mois="septembre"; break ; default : mois="au dernier trimestre"; System.out.println("le mois est " + mois); 11

12 Tableaux Les tableaux sont des collections de variables, en. On doit d abord les, puis faire. Une fois qu un tableau est créé, sa taille On accède à l élément d indice i de t par t[i], les indices Exemples int[] t ; // ou int t[]; // déclaration d un tableau d entiers t=new int[20]; // création de t en mémoire String[] t1 ; // ou String t1[]; // déclaration d un tableau de chaînes t1 = new String[10] ; // création de t1 en mémoire Utilisation : fichier Tableau.java public class Tableau { public static void main(string[] args) { String[] t = new String[12] ; t[0]="janvier"; t[1]="fevrier"; t[2]="mars"; t[3]="avril"; t[4]="mai"; t[5]="juin";t[6]="juillet"; t[7]="aout"; t[8]="septembre"; t[9]="octobre"; t[10]="novembre"; t[11]="decembre"; System.out.println("Les mois de l'annee sont : "); System.out.println(t[0]); System.out.println(t[1]); System.out.println(t[2]); System.out.println(t[3]); System.out.println(t[4]); System.out.println(t[5]); System.out.println(t[6]); System.out.println(t[7]); System.out.println(t[8]); System.out.println(t[9]); System.out.println(t[10]); System.out.println(t[11]); Les boucles La boucle for La boucle for permet de un certain nombre de fois des instructions. Elle s écrit : for (initialisation; test_continuation; incrémentation) {instructions; Exemple : répéter 10 fois des instructions for (int i = 0 ; i < 10 ; i++) { instructions; o L initialisation précise qui contrôle la boucle et int i=0 o Le test est un ( test qui doit être vérifié pour que la boucle ) i < 10 o L incrémentation précise comment Généralement on écrit i++ qui veut dire i=i+1 (on passe de i à i+1, donc ) 12

13 Fichier Tableau1.java : une seule instruction public class Tableau1 { public static void main(string[] args) { String[] t = new String[12] ; t[0]="janvier"; t[1]="fevrier"; t[2]="mars"; t[3]="avril"; t[4]="mai"; t[5]="juin"; t[6]="juillet"; t[7]="aout"; t[8]="septembre";t[9]="octobre";t[10]="novembre"; t[11]="decembre"; System.out.println("Les mois de l'annee sont : "); for (int i = 0 ; i < 12; i++) { System.out.println(t[i]); Fichier Tableau2.java : on utilise deux boucles for : une pour, l autre pour faire public class Tableau2 { public static void main(string[] args) { double[] t = new double[20] ; for (int i = 0 ; i < 20 ; i++) { t[i] = i ; for (int i = 0; i < 20 ; i++) { System.out.print(t[i] + " * "); o La variable i est déclarée o Entre les deux boucles, i o On dit que la se limite à la en cours Fichier Tableau2b.java : la variable i est o La portée de i est alors toute entière (i est connu dans ). public class Tableau2b { public static void main(string[] args) { double[] t = new double[20] ; int i ; for (i = 0 ; i < 20 ; i++) { t[i] = i ; for (i = 0; i < 20 ; i++) { System.out.print(t[i] + " * "); System.out.println("\n ---> i vaut maintenant " + i) ; La boucle while Elle permet de des instructions tant Elle s écrit : while (test) { instructions ; Les instructions doivent modifier une variable intervenant dans le test, pour que la boucle while ne boucle 13

14 Exemple : afficher les éléments d un tableau de nombres t tant qu ils sont inférieurs à 20. int i = 0 ; while (t[i] < 20) { System.out.print(t[i] + " ") ; i++ ; i est modifié dans les instructions, donc t[i] correspond à chaque passage à du tableau t. Attention cependant à ne pas dépasser! Si le tableau est de taille n, il faut écrire : int i = 0 ; while ((i < n) && (t[i] < 20)) { // && est la notation pour ET System.out.print(t[i] + " ") ; i++ ; La boucle do while Elle permet de faire exécuter des instructions puis de ces instructions tant qu un test est vérifié. Elle s écrit : do { instructions ; while (test); Les instructions doivent modifier une variable du test, pour que le do while ne boucle pas Exemple : afficher le premier élément du tableau t, puis les éléments suivants tant qu ils sont inférieurs au premier : int i = 0 ; do { System.out.print(t[i]+ " "); i++ ; while ((i<n)&&(t[i]<t[0])); Les sauts Le break break permet en reprenant l exécution directement le test ou la boucle (on saute donc les cas suivants). Exemple : afficher les éléments du tableau t tant qu ils sont inférieurs à 20. On arrête donc dès qu on rencontre un élément supérieur ou égal à 20. for (int i = 0 ; i < n ; i++) { if (t[i]<20) { System.out.print(t[i]+" * "); else { break ; C est équivalent à la boucle while ci-dessous : int i = 0 ; while ((i<n) && (t[i] < 20)) { System.out.print(t[i]+" * ") ; i++ ; 14

15 Le continue continue permet de sortir en reprenant l exécution à l itération suivante. On arrête donc les instructions de l itération en cours pour passer Exemple : afficher les éléments du tableau t qui sont différents de 20. Deux versions, selon que l on teste si t[i] est égal à 20 ou est différent de 20 : Si on teste si t[i] est égal à 20, on écrit : Si on teste si t[i] est différent de 20, on écrit : for (int i = 0 ; i < n ; i++) { if (t[i] == 20) { continue ; else { System.out.print(t[i]+" * "); Le return for (int i = 0 ; i < n ; i++) { if (t[i]!= 20) { System.out.print(t[i]+ " * "); else { continue ; L instruction return permet sans nécessairement attendre la fin de celle-ci. Cette instruction ne peut donc pas figurer directement mais sera très largement utilisée par la suite. Java, langage à objets Classes et instances Un programme java peut ne contenir qu une seule, comme on l a vu jusqu à présent Cette classe, qui contient, constitue à elle toute seule toute l application Mais java est avant tout un «langage», ce qui veut dire qu une classe peut aussi être un à partir duquel on peut fabriquer des objets qu on appelle des On souhaite créer des «objets» comportant : o un entier n qui représente la d un tableau o un tableau t de n entiers comportant les entiers 1, 2, 3, n-1 Exemple de deux tels objets : La classe (encore embryonnaire) correspondant à ces objets est la suivante : class ObjetTableau { // début de la classe int n ; // deux attributs :... int[] t ; // et t... // fin de la classe 15

16 Cette description signifie que tout objet de la classe ObjetTableau, dès qu il sera créé, comportera automatiquement deux variables (qu on appellera des ) n et t. Une classe correspond donc à la description d un ensemble d objets ayant Les objets créés selon ce modèle sont appelés des de la classe. Pour donner des valeurs aux attributs, donc remplir n et t, on doit ajouter dans la classe une méthode spécifique appelée Le est permettant de construire des objets class ObjetTableau { int n ; int[] t ; // début de la classe // deux attributs : n et t ObjetTableau(int a) { // le... n = a ; // n prend la valeur... t = new int[n] ; // on réserve la place pour... for (int i=0 ; i < n ; i++) { t[i] = i+1 ; // remplissage de... // fin du... // fin de... Créer des objets de la classe ObjetTableau se fait, dans une autre classe qui sert de programme principal : public class ProgObjet { // début de classe public static void main (String args[ ]) { // le main ObjetTableau obj1 = new ObjetTableau(6); ObjetTableau obj2 = new ObjetTableau(3); // fin... // fin... Ce programme crée bien les deux objets, mais pour le moment n affiche On ajoute donc à la classe ObjetTableau une méthode void affiche() permettant à un objet (c est-à-dire de s afficher ) : class ObjetTableau { int n ; int[] t ; // début de la classe // deux attributs : n et t ObjetTableau(int a) { // le constructeur n = a; // n prend la valeur a t = new int[n] ; // on réserve la place pour le tableau t for (int i=0;i<n;i++) { // remplissage du tableau t[i] = i+1 ; // fin du constructeur void affiche() { System.out.println("affichage des elements"); for (int i = 0; i < n; i++){ System.out.print(t[i]+" * "); System.out.println(""); // fin de la classe 16

17 On ajoute ensuite à la même classe une méthode int inferieurs(int p) permettant à un objet de calculer le nombre d éléments de son tableau qui sont class ObjetTableau { int n ; int[] t ; // début de la classe // deux attributs : n et t ObjetTableau(int a) { // le constructeur n = a; // n prend la valeur a t = new int[n] ; // on réserve la place pour le tableau t for (int i=0;i<n;i++) { // remplissage du tableau t[i] = i+1 ; // fin du constructeur void affiche() { System.out.println("affichage des elements"); for (int i = 0; i < n; i++){ System.out.print(t[i]+" * "); System.out.println(""); int inferieurs(int p) { int compteur = 0 ; for (int i = 0; i < n; i++){ if (t[i]<p) compteur++ ; return compteur ; // fin de la classe On ajoute enfin à les instructions demandant aux objets créés d exécuter ces méthodes : public class ProgObjet { // classe principale public static void main (String args[ ]) { // main ObjetTableau obj1 = new ObjetTableau(6); obj1.affiche(); // affichage de obj1 // nb elements < 3 System.out.println(obj1.inferieurs(3)) ; ObjetTableau obj2 = new ObjetTableau(3); obj2.affiche(); // affichage de obj2 // nb elements < 4 System.out.println(obj2.inferieurs(4)) ; // fin du main // fin de classe Les deux méthodes void affiche() et int inferieurs(int p) ne peuvent être exécutées que par o On les appelle des void affiche() affiche les éléments à l écran, mais ne calcule rien, d où son type de valeur de retour : int inferieurs(int p)calcule le nombre d éléments de t qui sont strictement inférieurs à p o int (valeur de retour) indique que le résultat (valeur du compteur) o int p est le de la méthode o return permet de la valeur du compteur Le fichier comporte finalement deux classes : ObjetTableau et ProgObjet. Il y aura donc fichiers compilés. 17

18 Il s agit d une, car il y a dans une des classes une méthode appelée La classe principale est celle qui comporte le main ; elle o On l appelle aussi l application Le fichier doit porter le nom, suivi de l extension.java o Ce sera donc ici Attributs et méthodes d instances Une classe est un permettant de construire des objets. Un objet est nécessairement créé à partir d une classe, à l aide On dit que l objet est une de la classe et qu il est Mais une classe n oblige pas forcément à créer des objets Un objet comporte des et dispose de, définis dans sa classe. Ainsi, dans la classe ObjetTableau, o n et t sont des o les méthodes void affiche() et int inferieurs(int p) sont des Attributs et méthodes de classes Une classe peut aussi comporter des et des. Ils sont signalés par le mot-clé et existent dès le début de l application Seule exception : le est une méthode de classe, alors qu il n est jamais précédé de Exemple d utilisation d un attribut de classe et d une méthode de classe pour compter les objets créés : fichier ProgObjet1.java class ObjetTableau { static int nbobjets = 0; // int n ; // attribut d instance int[] t ; // attribut d instance ObjetTableau(int a) { // constructeur n = a; t = new int[n] ; for (int i=0;i<n;i++) { t[i] = i+1 ; nbobjets++ ; // incrémentation du compteur 18

19 void affiche() { System.out.print("affichage d'un objet :"); for (int i = 0; i < n; i++){ System.out.print(t[i]+" * "); System.out.println(""); static void nombreobjets() { // méthode de classe System.out.println("Nombre d'objets : " + nbobjets) ; public class ProgObjet1 { // début de classe public static void main (String args[ ]) { // le main ObjetTableau.nombreObjets() ; // appel à la méthode de classe ObjetTableau obj1 = new ObjetTableau(6); obj1.affiche(); // affichage de obj1 ObjetTableau.nombreObjets() ; // appel à la méthode de classe ObjetTableau obj2 = new ObjetTableau(10); obj2.affiche(); // affichage de obj2 ObjetTableau.nombreObjets() ; // appel à la méthode de classe // fin du main // fin de classe static int nbobjets : attribut de classe initialisé, modifié dans static void nombreobjets() : méthode de classe affichant le nombre d objets, appelée dans le programme principal sur par : ObjetTableau.nombreObjets(); Exécution Nombre d'objets : 0 affichage d'un objet : 1 * 2 * 3 * 4 * 5 * 6 * Nombre d'objets : 1 affichage d'un objet : 1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 * 9 * 10 * Nombre d'objets : 2 Algorithmique Permuter le contenu de deux variables On veut permuter le contenu de deux variables a et b. Exemple : o Avant la permutation, a contient 38 et b contient 56. o Après la permutation, a doit contenir 56 et b doit contenir 38. Si on écrit a b (a reçoit la valeur de b), a prend la valeur de b mais Il faut donc où l on puisse stocker. On écrit donc : temp... ; ;... temp ; Pour permuter deux variables, on a donc impérativement besoin Pour les algorithmes sur tableaux suivants, On suppose qu un tableau t, de taille nb, contient n nombres, n nb. Les cases t[0], t[1],, t[n-1] du tableau sont donc Les cases t[n], t[n+1], t[nb-1] sont 19

20 Insérer un élément x dans un tableau à la suite des éléments existants Exemple Le tableau t dispose de 15 places (nb = 15) mais contient 7 nombres (n = 7), et on veut y insérer le nombre 10. Algorithme si (n = nb) alors... sinon faire fin si Résultat Déterminer les éléments maximum et minimum d un tableau Le tableau t est donné, ainsi que son nombre d éléments n. On recherche le plus grand ou le plus petit élément du tableau. Algorithme de recherche du maximum max... pour i allant de 1 à n faire si (... ) alors faire fin si fin pour A la fin de l algorithme, max contient le plus grand élément du tableau. Algorithme de recherche du minimum min... pour i allant de 1 à n faire si (... ) alors faire fin si fin pour A la fin de l algorithme, min contient le plus petit élément du tableau. Déterminer l indice du maximum ou du minimum d un tableau C est le même algorithme, mais où on mémorise en même temps : o la plus grande (ou petite) valeur o son 20

21 Algorithme pour l indice du plus grand max... indice... pour i allant de 1 à n faire si (... ) alors faire max... indice... fin si fin pour A la fin de l algorithme, max contient le plus grand élément du tableau et indice contient son indice dans le tableau Algorithme pour l indice du plus petit min... indice... pour i allant de 1 à n faire si (... ) alors faire min... indice... fin si fin pour A la fin de l algorithme, min contient le plus petit élément du tableau et indice contient son indice dans le tableau Somme des éléments d un tableau Il s agit de au fur et à mesure les valeurs des éléments du tableau. Il est donc nécessaire d avoir une variable contenant Algorithme : som... pour i allant de 0 à n faire som... fin pour A la fin, la somme des éléments du tableau est Comptages divers On a besoin de variable supplémentaire. Exemple : compter le nombre d éléments égaux à p. Algorithme : cpt... pour i allant de 0 à n faire si (... ) alors faire fin si fin pour A la fin, le nombre d éléments égaux à p est 21

22 Insérer un élément à sa place, le tableau étant déjà rangé Un tableau de nb places contient n nombres déjà rangés dans l ordre croissant. On veut y insérer un nouveau nombre. Exemple : Principe o o si le tableau est déjà plein, si le tableau est vide, o sinon, c est que le tableau est partiellement rempli : - on cherche alors le premier indice i tel que - on décale vers la fin du tableau les éléments d indice allant de - on place x en - on augmente d une unité Algorithme si (... )... sinon si (... ) faire t[n]... n... sinon faire i... tant que (... ) faire i... pour j... fin si Résultat faire... t[i]... n... fin si... 22

23 Les tris sur tableaux Algorithme du tri tournoi Principe A partir d un rang i, on considère l élément du tableau et on le compare à tous les éléments t[j] suivants. A chaque fois que t[i] est à t[j], on permute et On effectue cela pour i allant du indice à indice. Exemple i = 0. On compare t[0] à t[1], t[2],, t[n-1] et à chaque fois que t[0] > t[j], on permute A la fin de ce premier parcours, le plus petit élément est arrivé On recommence avec i = 1 : on compare t[1] à t[2],, t[n-1] et lorsque t[1] > t[j], on permute A la fin du deuxième parcours, les deux plus petits éléments sont On recommence ensuite avec i = 2, 3, n-2. Algorithme : pour i... pour j... si (... ) faire temp... t[i]... t[j]... fin si fin pour fin pour 23

24 Algorithme du tri à bulles Principe On compare chaque élément à son suivant. S il lui est supérieur, on les permute ; sinon, on passe à l élément suivant. Lorsqu on a parcouru tout le tableau, on recommence un nouveau parcours s il y a eu au moins une permutation. Exemple du premier parcours : ci-contre A la fin de ce premier parcours, le plus grand élément est arrivé Au parcours suivant, on obtient le résultat ci-contre. Les deux plus grands éléments sont position et position. Le tableau est trié dès qu un parcours est fait sans Pour contrôler l arrêt des permutations, on utilise une variable initialisée à 0 au début de chaque parcours, et que l on passe à 1 dès que Il suffit alors de boucler alors tant que cette variable, à la fin d un parcours, est égale Algorithme permut... tant que (... ) faire permut... pour i 0 à... si (... ) faire permut... temp... t[i]... t[i+1]... fin si fin pour fin tant que 24

25 Les paquetages Java Qu est-ce qu un paquetage? Les paquetages ( ) sont des librairies de, de et regroupées selon leur fonction. Elles sont fournies en même temps que le compilateur javac et l interpréteur java. La documentation concernant chaque paquetage est stockée sous forme de pages HTML dans un dossier spécifique o A l université, C:\sun\appserver\docs\doc\docs\ o Chez vous, Choisir la page index.html puis cliquer sur le lien intitulé : Java 2 Platform API Specification La notion d héritage Toutes les classes sont liées par la notion On déclare qu une classe dérive d une autre classe par : class Fille extends Mere {... La classe fille hérite de tous et de la classe mère. Un objet de la classe fille est donc un objet de la classe (éventuellement complété par des champs et des méthodes supplémentaires), mais la réciproque est Toutes les classes héritent d une classe spécifique appelée. Si on ne précise pas de clause d héritage dans la définition d une classe, par défaut cette classe hérite de Protection des attributs et méthodes Déclarations de protection Les attributs et méthodes d une classe peuvent être déclarés private, public, protected ou ne pas être précédés de déclaration de protection. Exemple class Truc { private int a ; protected int b ; public int c ; int d ; Déclaration private Les attributs et méthodes déclarés private ne sont accessibles qu à l intérieur de leur propre classe a ne sera donc accessible Déclaration protected Les attributs et méthodes déclarés protected ne sont accessibles qu aux sous-classes (qu elles soient dans le même paquetage ou pas) et aux classes du même paquetage b sera donc accessible 25

26 Déclaration public Les attributs et méthodes déclarés public sont toujours accessibles c sera Sans déclaration Les attributs et méthodes sans aucune déclaration de protection (mode dit ) sont accessibles par toutes les classes du même paquetage. C est le mode de protection par défaut d sera donc accessible Les interfaces Une interface est une sorte de classe spéciale, dont toutes les méthodes sont déclarées et (sans code). En fait, une interface, mais sans donner le code permettant d exécuter ces services. Une classe qui souhaite utiliser une interface le signale par le mot implements : class B implements C {... ; On dit alors qu elle l interface. Dans la classe B, on doit alors donner le code de les méthodes de l interface. Une classe B peut hériter d une classe A et implémenter une ou plusieurs interfaces : class B extends A implements C, D {... ; class A extends interface C, D implements class B Les méthodes des interfaces C et D doivent alors obligatoirement On utilisera quelques interfaces par la suite. Les classes d exceptions Lever une exception Lorsqu une méthode est exécutée, il peut se produire des erreurs. On dit alors qu une est o Une exception est un objet, instance d une des nombreuses sous-classes de la classe Exception. Chaque méthode qui risque de provoquer une ou des erreur(s) le par le mot suivi de la nature des erreurs susceptibles de se produire. o Les différentes classes d erreurs possibles sont spécifiées dans Exemple : dans la classe FilterInputStream, une méthode de lecture d un fichier est déclarée sous la forme : public int read() throws IOException Cela signale que cette lecture peut provoquer une erreur d entrée-sortie ( ). Utiliser une méthode à clause throws Lorsqu on a besoin d utiliser une méthode risquant de provoquer des erreurs : o on englobe l appel à cette méthode dans un bloc (pour l erreur) o on précise ce qu on fera en cas d erreur dans une clause (pour l erreur). 26

27 Exemple : try { fichier.read() ; catch (IOException) { System.out.println(" erreur de lecture ") ; return ; Le paquetage java.lang java.lang = java.language Le paquetage java.lang est le seul paquetage dont... Il comprend notamment la classe Object,, la classe System, les classes enveloppantes, la classe Math et la classe String (classe des ). La classe System La classe System contient des et des du système. Quand on écrit System.out.println(...), on fait appel à out de la classe System. System.out : System.in : Les classes enveloppantes Les variables des types de données primitifs (int, char, double, etc) sont les seuls éléments qui ne sont objets dans Java. des Mais on peut à partir de ces types primitifs à l aide des type nature classe enveloppante boolean true ou false Boolean char caractère 16 bits Character byte entier 8 bits signé (petit entier) Byte short entier 16 bits signé (entier court) Short int entier 32 bits signé (entier) Integer long entier 64 bits signé (entier long) Long float virgule flottante 32 bits (réel simple) Float double virgule flottante 64 bits (réel double) Double int n = 5 ; // n n est pas un objet Integer obj1 = new Integer(n) ; // obj1 est... double f = ; // f n est pas un objet Double obj2 = new Double(f) ; // obj2 est... La classe Math La classe Math contient toutes les nécessaires pour effectuer tous les calculs mathématiques. On effectue donc l appel à une méthode par l instruction : 27

28 Exemples double j = ; double k = Math.abs(j) ; // k... double l = Math.pow(j,k) ; // l... double m = Math.sqrt(p) ; // m... La classe String La classe String contient de très nombreuses pour le traitement des chaînes de caractères Il est indispensable de consulter la documentation pour trouver la méthode dont on a besoin Le paquetage java.util java.util = utilitaires de java Il contient toutes les classes utilitaires, notamment : o Scanner : pour les o Random : pour la Importation de paquetage Pour utiliser une partie d un paquetage autre que java.lang, on utilise le mot-clé : o import java.util.scanner ; on se donne le droit d utiliser la classe Scanner o import java.util.random ; on se donne le droit d utiliser la classe Random o import java.util.* ; on se donne le droit d utiliser Utilisation de la classe Scanner Fichier UtilScanner.java : import java.util.scanner ; public class UtilScanner { static Scanner sc ; public static void main(string args[]) { sc = new Scanner(System.in); System.out.println("Veuillez saisir une phrase :"); String str = sc.nextline(); System.out.println("Vous avez saisi : " + str); System.out.println("Veuillez saisir un entier :"); int n = sc.nextint(); System.out.println("Vous avez saisi le nombre : " + n); System.out.println("Veuillez saisir un float :"); float f = sc.nextfloat(); System.out.println("Vous avez saisi le nombre : " + f); System.out.println("Veuillez saisir un double :"); double d = sc.nextdouble(); System.out.println("Vous avez saisi le nombre : " + d); 28

29 Le programme UtilScanner.java crée un objet sc de la classe Scanner par un constructeur relié au clavier : sc = new Scanner(System.in); puis d entrer au clavier : o une phrase : o un entier : o un float : o un double : Attention : sous Windows, les float et double doivent être entrés sous la forme du système, comme pour Excel). Utilisation de la classe Random Le programme UtilObjet.java suivant demande la création d un objet o qui comporte (liée à la configuration Le Objet() : o crée par l instruction t = new float[40] ; o appelle le constructeur de la classe Random par Random r = new Random(); l objet construit est appelé un o demande à ce de remplir le tableau par l instruction t[i]=r.nextfloat(); La méthode nextfloat() de la classe Random génère un... compris entre et Fichier UtilObjet.java import java.util.random ; class Objet { float[] t ; Objet() { t = new float[20] ; Random r = new Random(); for (int i = 0 ; i < 20 ; i++) { t[i]=r.nextfloat(); void affiche() { for (int i = 0 ; i < 20 ; i++) { System.out.println(t[i]); public class UtilObjet { public static void main(string[] args) { Objet o = new Objet(); o.affiche(); Un exemple de résultat : Si on veut obtenir des entiers, on modifie le programme en conséquence et on fait appel à la méthode nextint() qui génère un dans des entiers possibles. 29

30 Fichier UtilObjet2.java import java.util.random ; class Objet { int[] t ; Objet() { t = new int[20] ; Random r = new Random(); for (int i = 0 ; i < 20 ; i++) { t[i]=r.nextint(); void affiche() { for (int i = 0 ; i < 20 ; i++) { System.out.println(t[i]); public class UtilObjet2 { public static void main(string[] args) { Objet o = new Objet(); o.affiche(); Un exemple de résultat : Si on veut obtenir des entiers compris entre 0 et m (0, m ), on fait appel à la méthode nextint(m). Exemple ci-dessous avec des entiers entre 0 (compris) et 50 (exclu) : UtilObjet3.java Fichier UtilObjet3.java import java.util.random ; class Objet { int[] t ; Objet() { t = new int[20] ; Random r = new Random(); for (int i = 0 ; i < 20 ; i++) { t[i]=r.nextint(50); void affiche() { for (int i = 0 ; i < 20 ; i++) { System.out.println(t[i]); public class UtilObjet3 { public static void main(string[] args) { Objet o = new Objet(); o.affiche(); Un exemple de résultat : On peut obtenir un entier de n importe quel intervalle [a, b[ par t[i]=... 30

31 Le paquetage java.text Fournit des classes pour le traitement des Il contient notamment les classes DecimalFormat, DecimalFormatSymbol permettant d afficher de manière variée des Exemple : programme UtilFormat.java import java.text.* ; public class UtilFormat { public static void main(string args[]) { double d = ; System.out.println("0 : " + d) ; DecimalFormat df = new DecimalFormat() ; DecimalFormatSymbols dfs = df.getdecimalformatsymbols(); dfs.setgroupingseparator(' ') ; df.setdecimalformatsymbols(dfs); System.out.println("1 : " + df.format(d)) ; df.applypattern("#,###,##0.00 ") ; System.out.println("2 : "+df.format(d)) ; Exécution : 0 : E7 1 : ,459 2 : ,46 3 : ,46 Analyse du programme : System.out.println("0 : " + d) ; affichage DecimalFormat df = new DecimalFormat() ; on crée... DecimalFormatSymbols dfs = df.getdecimalformatsymbols(); on récupère dfs.setgroupingseparator(' ') ; dans dfs, on choisit... df.setdecimalformatsymbols(dfs); on réassocie System.out.println("1 : "+df.format(d)); résultat df.applypattern("#,###,##0.00 ") ; on ajoute System.out.println("2 : "+df.format(d)); résultat 31

Programmer 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) 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étail

Eléments de syntaxe du langage Java

Eléments de syntaxe du langage Java c jan. 2014, v3.0 Java Eléments de syntaxe du langage Java Sébastien Jean Le but de ce document est de présenter es éléments de syntaxe du langage Java : les types primitifs, les opérateurs arithmétiques

Plus en détail

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

INTRODUCTION 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étail

Introduction au Java Development Kit Et quelques instructions en Java. 1 Création des répertoires d accueil des programmes Java

Introduction au Java Development Kit Et quelques instructions en Java. 1 Création des répertoires d accueil des programmes Java HLIN406 - Janvier 2015 Le Java Development Kit offre un ensemble d outils de développement d applications Java. Pour utiliser ces outils, JDK ne propose pas d interface utilisateur, on doit donc écrire

Plus en détail

ACTIVITÉ DE PROGRAMMATION

ACTIVITÉ DE PROGRAMMATION ACTIVITÉ DE PROGRAMMATION The purpose of the Implementation Process is to realize a specified system element. ISO/IEC 12207 Sébastien Adam Une introduction 2 Introduction Ø Contenu Utilité de l ordinateur,

Plus en détail

Langage à objets : JAVA (1)

Langage à objets : JAVA (1) DEUST Systèmes d information et Réseaux, Gestion et réalisation 1 ère année Langage à objets : JAVA (1) 2013-2014 1 INTRODUCTION... 3 Langages compilés et interprétés... 3 Java, compilé et interprété...

Plus en détail

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

Structure d un programme et Compilation Notions de classe et d objet Syntaxe Cours1 +Cours 2 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

Plus en détail

DEUST 2. Rattrapage java

DEUST 2. Rattrapage java DEUST 2 Rattrapage java O. Auzende 2010-2011 1. INTRODUCTION... 3 2. ELEMENTS DE PROGRAMMATION JAVA... 3 Notion de variable... 3 Affectation... 3 Types de données primitifs en Java... 4 Exercices... 5

Plus en détail

Université Mohammed Premier Année universitaire 2011-2012. Correction de l examen écrit de la session ordinaire 18 Février 2012

Université Mohammed Premier Année universitaire 2011-2012. Correction de l examen écrit de la session ordinaire 18 Février 2012 Université Mohammed Premier Année universitaire 2011-2012 Faculté des Sciences Filière SMI Département de Mathématiques Module : POO Java et d Informatique Semestre : S5 Correction de l examen écrit de

Plus en détail

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

Structure 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étail

Java Licence Professionnelle CISII, 2009-10

Java 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étail

TD3: tableaux avancées, première classe et chaînes

TD3: tableaux avancées, première classe et chaînes TD3: tableaux avancées, première classe et chaînes de caractères 1 Lestableaux 1.1 Élémentsthéoriques Déclaration des tableaux Pour la déclaration des tableaux, deux notations sont possibles. La première

Plus en détail

} 7 Variables (composantes)

} 7 Variables (composantes) Chapitre 4 Tableaux Jusqu ici, nous avons employé les variables pour stocker les valeurs individuelles de types primitifs : une variable de type int pour stocker un entier, une variable de type boolean

Plus en détail

Plan. Tableaux. Utilité. Définition. Exemples. Déclaration d un tableau

Plan. Tableaux. Utilité. Définition. Exemples. Déclaration d un tableau Plan Tableaux Université de Nice - Sophia Antipolis Richard Grin Version 1.0.4 25/11/10 Définition Déclaration d un tableau Création d un tableau Utilisation d un dun tableau Tableau des paramètres de

Plus en détail

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf

Introduction à 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é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

Généralités Composants élémentaires d'un programme Instructions simples. JL Damoiseaux - Dpt R&T

Généralités Composants élémentaires d'un programme Instructions simples. JL Damoiseaux - Dpt R&T JAVA - I Généralités Composants élémentaires d'un programme Instructions simples 2 JAVA? Un langage de programmation (orienté objets) Une architecture basée sur une Machine Virtuelle Un ensemble très important

Plus en détail

6.1 Une classe simple pour représenter des comptes bancaires

6.1 Une classe simple pour représenter des comptes bancaires Chapitre 6 Héritage Ce chapitre du cours traite de concepts relatifs à la programmation objet (hiérarchie de classe, héritage, extension, masquage) et sera illustré par un exemple de représentation de

Plus en détail

Cours d Analyse, Algorithmique Elements de programmation

Cours d Analyse, Algorithmique Elements de programmation 1 de 33 Cours d Analyse, Algorithmique Elements de programmation Florent Hivert Mél : Florent.Hivert@lri.fr Adresse universelle : http://www.lri.fr/ hivert 2 de 33 Données et instructions Un programme

Plus en détail

Claude Delannoy. Exercices C++ en langage. 3 e édition. Groupe Eyrolles, 1997, 1999, 2007, ISBN : 978-2-212-12201-5

Claude Delannoy. Exercices C++ en langage. 3 e édition. Groupe Eyrolles, 1997, 1999, 2007, ISBN : 978-2-212-12201-5 Claude Delannoy Exercices en langage C++ 3 e édition Groupe Eyrolles, 1997, 1999, 2007, ISBN : 978-2-212-12201-5 Chapitre 3 Les fonctions Rappels Généralités Une fonction est un bloc d instructions éventuellement

Plus en détail

Langage et Concepts de Programmation Objet. 1 Attributs et Méthodes d instance ou de classe. Travaux Dirigés no2

Langage et Concepts de Programmation Objet. 1 Attributs et Méthodes d instance ou de classe. Travaux Dirigés no2 Langage et Concepts de Programmation Objet Travaux Dirigés no2 Pôle Informatique École Nationale Supérieure des Mines de St-Etienne Vous trouverez plus de détails sur les concepts abordés lors de ce TD

Plus en détail

Programmation orientée objet TP 1 Prise en main de l environnement Java

Programmation orientée objet TP 1 Prise en main de l environnement Java Programmation orientée objet TP 1 L2 MPCIE Prise en main de l environnement Java Exercice 1 Nous désirons développer un programme pour la gestion (très simplifiée) d'un parc de véhicules destinés à la

Plus en détail

Langage Java. Classe de première SI

Langage Java. Classe de première SI Langage Java Table des matières 1. Premiers pas...2 1.1. Introduction...2 1.2. Mon premier programme...2 1.3. Les commentaires...2 2. Les variables et les opérateurs...2 3. La classe Scanner...3 4. Les

Plus en détail

Université Mohammed Premier Année universitaire 2012-2013

Université Mohammed Premier Année universitaire 2012-2013 Université Mohammed Premier Année universitaire 2012-2013 Faculté des Sciences Filière SMI Département de Mathématiques Module : POO Java et d Informatique Semestre : S5 Responsable du cours : El Mostafa

Plus en détail

Cours 1. Contenu du cours : " Premières applications. " Compilation, Exécution, Chemin. " Affichage et saisie. " Types de données. " Flux de contrôle

Cours 1. Contenu du cours :  Premières applications.  Compilation, Exécution, Chemin.  Affichage et saisie.  Types de données.  Flux de contrôle Cours 1 1 Contenu du cours : " Premières applications " Compilation, Exécution, Chemin " Affichage et saisie " Types de données " Flux de contrôle " Applets " Arrays " OO de base Edition Le fichier texte

Plus en détail

Introduction à la Programmation 1

Introduction à la Programmation 1 Introduction à la Programmation 1 Séance de cours/td Université Paris-Diderot Objectifs: Découverte du type String. Comprendre qu il y a des types différents. Maîtriser les expressions booléennes dans

Plus en détail

S. Laporte C# mode console DAIGL TS1

S. Laporte C# mode console DAIGL TS1 Bases du langage C# I. C# en mode console (mode texte) Avantages par rapport au mode graphique (Application Windows): - C'est un mode plus proche de l'approche algorithmique (pas de notions de composants,

Plus en détail

Mise à niveau en Java

Mise à niveau en Java Mise à niveau en Java Cours 1 Stéphane Airiau Université Paris-Dauphine Stéphane Airiau (Université Paris-Dauphine) - Java Cours 1 1 Aujourd hui Eléments de base Variables, opérateurs, type d une expression

Plus en détail

Université Mohammed Premier Année universitaire 2011-2012. Complément d exercices avec correction

Université Mohammed Premier Année universitaire 2011-2012. Complément d exercices avec correction Université Mohammed Premier Année universitaire 2011-2012 Faculté des Sciences Filière SMI Département de Mathématiques et d Informatique Module : POO Java Semestre : S5 Complément d exercices avec correction

Plus en détail

Environnement algorithmique et conventions

Environnement algorithmique et conventions 1 Environnement algorithmique et conventions Un algorithme est un maillon de la chaîne de développement d une application. Il est le lien indispensable entre l analyse et le développement final. Ce chapitre

Plus en détail

Licence Bio Informatique Année 2004-2005. Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...

Licence Bio Informatique Année 2004-2005. Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... Université Paris 7 Programmation Objet Licence Bio Informatique Année 2004-2005 TD n 1 - Correction Premiers pas Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... 1. Enregistrez

Plus en détail

Listes de personnes et calculatrice polonaise inverse en Java

Listes de personnes et calculatrice polonaise inverse en Java Listes de personnes et calculatrice polonaise inverse en Java Université Paris Sud Motivation Le but de cet exercice est de manipuler les listes chaînées et les piles et de voir leur application en analyse

Plus en détail

PPOOGL. Florent de Dinechin. Java pour les nuls

PPOOGL. Florent de Dinechin. Java pour les nuls PPOOGL Florent de Dinechin Java pour les nuls Java en 30 minutes Introduction Grands principes Pour en finir avec l organisation Types de base et objets Le reste est dans le manuel PPOOGL 1 Introduction

Plus en détail

Tableaux (introduction) et types de base

Tableaux (introduction) et types de base Tableaux (introduction) et types de base A. Motivation..................................................... 4 B. Les tableaux.................................................... 5 C. Construction des tableaux.......................................

Plus en détail

Programmation en Python - Cours 2 : Premiers programmes

Programmation en Python - Cours 2 : Premiers programmes Programmation en Python - Cours 2 : Premiers programmes 2013/2014 Diverses utilisations de python Utilisation en mode interactif Ecriture d un programme python Saisie de données par l utilisateur : input(),

Plus en détail

HMIN111M Programmation en Java. Un aperçu des classes

HMIN111M Programmation en Java. Un aperçu des classes HMIN111M Programmation en Java Un aperçu des classes 1. Limites des types primitifs Programme de gestion des comptes bancaires 2 comptes par exemple (on ne connait pas les tableaux) Une classe Banque qui

Plus en détail

Java : Programmation Impérative

Java : Programmation Impérative 1 Java : Programmation Impérative Résumé du cours précédent (I11) Paradigme impératif Algorithmique simple Découpage fonctionnel Qu est-ce qu un programme informatique? / un langage de programmation? /

Plus en détail

Les exceptions en Java

Les exceptions en Java Chapitre 6 Les exceptions en Java Lorsqu on conçoit un programme, on essaie évidemment qu il soit correct, c est-à-dire qu il fonctionne parfaitement dans les conditions prévues de son utilisation. L utilisateur

Plus en détail

Précis de vocabulaire Orienté Objet

Précis de vocabulaire Orienté Objet Dernière Mise à jour : Mars 2007 Précis de vocabulaire Orienté Objet 1 Questions Expliquer et donner un exemple pour chacun des concepts suivants 1. Qu'est-ce qu'un objet? 2. Qu'est-ce qu'une classe? 3.

Plus en détail

Algorithmique Partie 1

Algorithmique Partie 1 Algorithmique Partie 1 IUT Informatique de Lens, 1ère Année Université d Artois Frédéric Koriche koriche@cril.fr 2011 - Semestre 1 Modalités Sommaire 1 Modalités 2 Programmation 3 Données 4 Opérateurs

Plus en détail

Cours 4 Programmation web, orientée serveur

Cours 4 Programmation web, orientée serveur DUT MMI IUT de Marne-la-Vallée 17/03/2015 M2202 - Algorithmique Cours 4 Programmation web, orientée serveur Philippe Gambette Sources phpdebutant.net www.php.net (documentation du langage PHP) Plan du

Plus en détail

PROB Introduction au langage JAVA

PROB Introduction au langage JAVA PROB Introduction au langage JAVA EPFC ULB 1 BACHELIER en INFORMATIQUE de Gestion PRMT(1) 120p. LAPR(2) 120p. PR(1) PROB(10) 120p. PR(1) PRDV(4) 40p. PR(2 ou 9) COFI(20) 60p. GBDR(5) 120p. LAOG(9) 120p.

Plus en détail

420KEL Petite révision v. 1,65. Petite révision

420KEL Petite révision v. 1,65. Petite révision Petite révision Quelques petits exercices pour vous rafraîchir la mémoire et vous remettre en forme. Dans les exercices pour lesquels on vous demande de programmer, cherchez à produire un résultat à la

Plus en détail

Auto-évaluation Programmation en Java

Auto-évaluation Programmation en Java Auto-évaluation Programmation en Java Document: f0883test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION PROGRAMMATION EN

Plus en détail

Série 2 Premiers programmes

Série 2 Premiers programmes Licence pro. GTSBD 2013-2014 Structures de données, langage Python Série 2 Premiers programmes Programmes avec des affectations, des lectures et des écritures Exo 2.1 Le problème de la machine qui rend

Plus en détail

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la

Plus en détail

Introduction au langage C

Introduction 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étail

Epidémiologie, l urne de Pólya, partie II

Epidémiologie, l urne de Pólya, partie II Epidémiologie, l urne de Pólya, partie II Se mettre par groupe de deux. Traiter la fiche dans l ordre. Un compte de rendu de TP devra être rendu avec les réponses écrites aux questions, les recherches

Plus en détail

Cours 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. 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é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

Contrôle sur papier. INF441 Modex Programmation efficace juin 2010. 1. Photo de dés

Contrôle sur papier. INF441 Modex Programmation efficace juin 2010. 1. Photo de dés Contrôle sur papier INF441 Modex Programmation efficace juin 2010 1. Photo de dés Plusieurs dés ont été lancés sur une table, et une photo a été pris de haut. Cette photo est représentée par une matrice.

Plus en détail

Héritage, et quelques petits mots-clés de Java

Héritage, et quelques petits mots-clés de Java Héritage, et quelques petits mots-clés de Java Bilan de la séance du 3 février. 1 Champs d instance, champs de classe La situation usuelle pour les attributs et les méthodes est la suivante : La classe

Plus en détail

Java. Java. Le livrede. Avec 80 exercices corrigés. Avec 80 exercices corrigés. Le livre. Anne Tasso. 5 e édition. Un best-seller qui a déjà conquis

Java. Java. Le livrede. Avec 80 exercices corrigés. Avec 80 exercices corrigés. Le livre. Anne Tasso. 5 e édition. Un best-seller qui a déjà conquis Anne Tasso Un best-seller qui a déjà conquis des milliers d'étudiants! Java Le livre Java Le livrede de premier premier langage langage Avec 80 exercices corrigés Avec 80 exercices corrigés 5 e édition

Plus en détail

CCI - Initiation à Java. E.Coquery emmanuel.coquery@liris.cnrs.fr

CCI - Initiation à Java. E.Coquery emmanuel.coquery@liris.cnrs.fr CCI - Initiation à Java E.Coquery emmanuel.coquery@liris.cnrs.fr Présentation du langage Outline 1 Présentation du langage 2 Types de données primitifs 3 Objets Présentation du langage Un langage orienté

Plus en détail

Programmation Objet Java Correction

Programmation Objet Java Correction INSA - 4 AE 2007 2008 Durée : 1H00 Contrôle Programmation Objet Java Correction Consignes Tous les documents sont autorisés, mais ils seront peu utiles. Indiquez vos nom et prénom sur chaque feuille. Le

Plus en détail

Projet. Coloration lexicale et indentation de code Java

Projet. Coloration lexicale et indentation de code Java Université Paris Diderot Programmation Orientée Objet L3 Année 2011-2012 Projet Coloration lexicale et indentation de code Java Le but de ce projet est de développer un programme qui prend en entrée un

Plus en détail

Correction langage Java

Correction langage Java MINISTÈRE DE L ÉCOLOGIE, DU DÉVELOPPEMENT DURABLE, DES TRANSPORTS ET DU LOGEMENT EXAMEN PROFESSIONNEL DE VÉRIFICATION D APTIDUDE AUX FONCTIONS DE PROGRAMMEUR Session 2010 Correction langage Java Langage:

Plus en détail

Informatique. Programmation en Python.

Informatique. Programmation en Python. BCPST 1 B 13 septembre 2015 Informatique. Programmation en Python. Ce document est un support de cours, il vous permet d avoir sa structure et ses éléments les plus importants. Au cours des séances en

Plus en détail

Cours1 +Cours 2. Structure d un programme et Compilation Notions de classe et d objet Syntaxe POO 1

Cours1 +Cours 2. Structure d un programme et Compilation Notions de classe et d objet Syntaxe POO 1 Cours1 +Cours 2 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

Plus en détail

Java. Java. Le livrede. Avec 80 exercices corrigés. Avec 80 exercices corrigés. Le livre. Anne Tasso. 5 e édition. Un best-seller qui a déjà conquis

Java. Java. Le livrede. Avec 80 exercices corrigés. Avec 80 exercices corrigés. Le livre. Anne Tasso. 5 e édition. Un best-seller qui a déjà conquis Anne Tasso Un best-seller qui a déjà conquis des milliers d'étudiants! Java Le livre Java Le livrede de premier premier langage langage Avec 80 exercices corrigés Avec 80 exercices corrigés 5 e édition

Plus en détail

DUT Informatique Module JAVA Apprentis Département Informatique 2008 / 2009. Travaux Pratiques n o 2 : JUnit

DUT Informatique Module JAVA Apprentis Département Informatique 2008 / 2009. Travaux Pratiques n o 2 : JUnit iut ORSAY DUT Informatique Département Informatique 2008 / 2009 Travaux Pratiques n o 2 : JUnit Nom(s) : Groupe : Date : Objectifs : Apprendre à vérifier une implantation à l aide de tests unitaires sous

Plus en détail

Cours Visual Basic URCA

Cours Visual Basic URCA Cours Visual Basic URCA Sommaire Introduction à la programmation VBA et VB Syntaxe de base, variables Opérateurs de base, boucles Introduction à la programmation Qu est-ce que la programmation? Séquences

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

Info0101 Intro. à l'algorithmique et à la programmation. Cours 5. Tableaux

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

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

Introduction au débogage avec Eclipse

Introduction au débogage avec Eclipse Introduction au débogage avec Eclipse C. Pain-Barre et H. Garreta IUT INFO Année 2006-2007 1 Notion de debogage Tout développeur est confronté un jour à un programme qui plante pour une raison apparemment

Plus en détail

as Architecture des Systèmes d Information

as 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étail

DS Java 1. 19 novembre 2005

DS Java 1. 19 novembre 2005 DS Java 1 19 novembre 2005 Durée : 2 heures. Documents (notes et polycopiés) autorisés. La rigueur et la propreté seront prises en compte dans l évaluation. Le barème est indicatif. Vous rédigerez vos

Plus en détail

Résumé Introduction Programmation Java

Résumé Introduction Programmation Java Résumé Introduction Programmation Java Concepts Un programme : séquence, test conditionnel, boucles. Objets : Les objets Java modélisent les objets d un problème donné Classe : Les objets sont crées à

Plus en détail

Bases de la programmation orientée objet en Java

Bases de la programmation orientée objet en Java Bases de la programmation orientée objet en Java Jean-Baptiste Vioix (jean-baptiste.vioix@iut-dijon.u-bourgogne.fr) IUT de Dijon-Auxerre - LE2I http://jb.vioix.free.fr 1-33 Avant propos Difficultés...

Plus en détail

PROJET INFORMATIQUE RECHERCHE DE SOUS-CHAÎNE DE CARACTERES

PROJET INFORMATIQUE RECHERCHE DE SOUS-CHAÎNE DE CARACTERES PROJET INFORMATIQUE RECHERCHE DE SOUS-CHAÎNE DE CARACTERES I-Présentation Un algorithme de recherche de sous-chaine est un type d'algorithme de recherche qui a pour objectif de trouver une chaîne de caractères

Plus en détail

Cours 1 : Introduction Générale + Objet I

Cours 1 : Introduction Générale + Objet I Organisation du cours Équipe pédagogique DUT Informatique S3 - Programmation Java Jean-Claude MARTIN MARTIN@LIMSI.FR Cours 1 : Introduction Générale + Objet I Jean-Claude MARTIN (Responsable, Cours, TD

Plus en détail

Les références et la mémoire

Les références et la mémoire Chapitre 3 Les références et la mémoire 3.1 Introduction En Java, pour déclarer une variable, il faut donner son nom, précédé du type qu on souhaite lui attribuer. Ces types peuvent être des types primitifs

Plus en détail

Premiers exemples de traitements

Premiers exemples de traitements #include #include Premiers exemples de traitements void main() float b(0.0); float c(0.0); float delta(0.0); cin >> b >> c; delta = b*b - 4*c; if (delta < 0.0) cout

Plus en détail

Débuter en algorithmique

Débuter en algorithmique Isabelle Morel 1 1 Qu est-ce qu un algorithme? Débuter en algorithmique Définition Un alogorithme est une suite d opérations élémentaires, à appliquer dans un ordre déterminé à des données. Un algorithme

Plus en détail

Introduction au langage C - types et variables

Introduction au langage C - types et variables Chapitre 2 Introduction au langage C - types et variables 1 Le Langage C Le langage C est un langage de bas niveau dans le sens où il permet l accès à des données que manipulent les ordinateurs (bits,

Plus en détail

Examen 1 ère session 2012-2013 page 1 NFA 031 - Programmation JAVA Formation CNAM

Examen 1 ère session 2012-2013 page 1 NFA 031 - Programmation JAVA Formation CNAM Examen 1 ère session 2012-2013 page 1 NFA 031 - Programmation JAVA IPST-CNAM Programmation JAVA NFA 001 Mercredi 13 Février 2013 Avec document Durée : 2 h30 Enseignant : LAFORGUE Jacques 1 ère Session

Plus en détail

Le langage C. Séance n 4

Le langage C. Séance n 4 Université Paris-Sud 11 Institut de Formation des Ingénieurs Remise à niveau INFORMATIQUE Année 2007-2008 Travaux pratiques d informatique Le langage C Séance n 4 But : Vous devez maîtriser à la fin de

Plus en détail

LMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour

LMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour LMI 2 Programmation Orientée Objet POO - Cours 9 Said Jabbour jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour CRIL UMR CNRS 8188 Faculté des Sciences - Univ. Artois Février 2011 Les collections

Plus en détail

ATELIER ALGORITHME PREMIERS PAS Journée d information sur les nouveaux programmes de Première S-ES 2010-2011

ATELIER ALGORITHME PREMIERS PAS Journée d information sur les nouveaux programmes de Première S-ES 2010-2011 Pour me contacter : irene.rougier@ac-clermont.fr 1. Introduction ATELIER ALGORITHME PREMIERS PAS Journée d information sur les nouveaux programmes de Première S-ES 2010-2011 De nombreux documents et informations

Plus en détail

Algorithmique et programmation avec Java (NFA002)

Algorithmique et programmation avec Java (NFA002) Algorithmique et programmation avec Java (NFA002) Deuxième session 13 septembre 2012 Aucun document n est autorisé. Le barème est donné à titre indicatif. Exercice 1 : listes (4 points) Etudiez le programme

Plus en détail

Une introduction au langage C++ Marc Jachym, Lurpa

Une introduction au langage C++ Marc Jachym, Lurpa Une introduction au langage C++ Marc Jachym, Lurpa Janvier 2008 À l origine, le langage C Langage procédural créé dans les années 1970 aux laboratoires Bell (ATT : télécoms américains) en vue d écrire

Plus en détail

TP, première séquence d exercices.

TP, première séquence d exercices. TP, première séquence d exercices. Benoît Valiron benoit.valiron@lipn.univ-paris13.fr 7 novembre 2010 Introduction Vous écrirez les réponses aux questions courtes sur une feuille à rendre à la fin de la

Plus en détail

Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;

Exceptions. 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étail

Éléments de base en Java (suite et fin)

Éléments de base en Java (suite et fin) Éléments de base en Java (suite et fin) P.O.O. LMI 2 Semestre 4 Option Info Année 2008-09 1/33 Éléments de base en Java (suite et fin) Année 2008-09 Plan du cours Les chaînes de caractères Retour vers

Plus en détail

Correction DS Java 2005 Classe Produit Classe CD

Correction DS Java 2005 Classe Produit Classe CD Correction DS Java 2005 Classe Produit public abstract class Produit { private static int derniernumeroproduit = 1; private int numeroproduit; // Le prix hors taxe du produit private double prix; //Le

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

Algorithmie ISI301 TP 1 : Python et premiers algorithmes

Algorithmie ISI301 TP 1 : Python et premiers algorithmes Algorithmie ISI301 TP 1 : Python et premiers algorithmes 1 Python : apprentissage Pour avoir une vision plus large des différentes possibilités du langage Python, nous ne pouvons que vous conseiller d

Plus en détail

Plan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7

Plan 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étail

Les types utilisateurs (VBA) Corrigé

Les types utilisateurs (VBA) Corrigé PAD INPT ALGORITHMIQUE ET PROGRAMMATION 1 Cours VBA, Semaine 2 avril mai 2013 Corrigé Résumé Ce document décrit comment traduire en VBA les types utilisateur du langage algorithmique. Table des matières

Plus en détail

Introduction à la Programmation Objet : Premiers pas en programmation

Introduction à la Programmation Objet : Premiers pas en programmation Introduction à la Programmation Objet : Premiers pas en programmation Laboratoire d Intelligence Artificielle Faculté I&C IPO Cours 2 : Premiers pas en programmation 1 / 67 Objectifs du cours d aujourd

Plus en détail

CSC4002 : Contrôle Final Session 1. Date : jeudi 26 janvier 2012 Durée : 1H30. Coordonnateurs : Christian Bac et Denis Conan

CSC4002 : Contrôle Final Session 1. Date : jeudi 26 janvier 2012 Durée : 1H30. Coordonnateurs : Christian Bac et Denis Conan Corrigé et Barème Contrôle de connaissances 2011/2012 des étudiants de 2 è année (EI2) CSC4002 : Contrôle Final Session 1 Date : jeudi 26 janvier 2012 Durée : 1H30 Coordonnateurs : Christian Bac et Denis

Plus en détail

Université Paris Diderot ISIFAR Année 2008-2009. Exceptions et Classes Abstraites

Université Paris Diderot ISIFAR Année 2008-2009. Exceptions et Classes Abstraites Université Paris Diderot JAVA ISIFAR Année 2008-2009 TP n 7 - Correction Exceptions et Classes Abstraites Exercice 1 [Utilisation des Exceptions] La méthode parseint est spécifiée ainsi : public static

Plus en détail

INF 103 Langage JAVA. Contrôle du 7 janvier 2015 Durée : 1h30

INF 103 Langage JAVA. Contrôle du 7 janvier 2015 Durée : 1h30 INF 103 Langage JAVA Contrôle du 7 janvier 2015 Durée : 1h30 Nom : Prénom : Casier : Groupe :........ Écrire les réponses directement sur les feuilles du sujet dans les cases prévues à cet effet. Le barème

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

Informatique TP4 : Manipulations de fichiers Manipulations de chaînes et de tableaux CPP 1A

Informatique TP4 : Manipulations de fichiers Manipulations de chaînes et de tableaux CPP 1A Informatique TP4 : Manipulations de fichiers Manipulations de chaînes et de tableaux CPP 1A Djamel Aouane, Frederic Devernay, Matthieu Moy Mars - avril 2015 1 Manipulations de fichiers Pour organiser des

Plus en détail

Introduction à l algorithmique et à la programmation 2013-2014. Cyril Nicaud Cyril.Nicaud@univ-mlv.fr. Cours 1 / 5

Introduction à l algorithmique et à la programmation 2013-2014. Cyril Nicaud Cyril.Nicaud@univ-mlv.fr. Cours 1 / 5 Introduction à l algorithmique et à la programmation IUT 1ère année 2013-2014 Cyril Nicaud Cyril.Nicaud@univ-mlv.fr Cours 1 / 5 Déroulement du cours Organisation : 5 séances de 2h de cours 10 séances de

Plus en détail

Université Paris 7 Denis Diderot Introduction à l informatique et à la programmation (IF1) Corrigé de l examen du 6 janvier 2009

Université Paris 7 Denis Diderot Introduction à l informatique et à la programmation (IF1) Corrigé de l examen du 6 janvier 2009 Exercice 1. Université Paris 7 Denis Diderot Introduction à l informatique et à la programmation (IF1) Corrigé de l examen du 6 janvier 2009 1.1. Pour répondre à la question, nous avons regroupé dans une

Plus en détail

Le mot «algorithme» vient du nom de l auteur persan Al-Khuwarizmi (né vers 780 - mort vers 850) Une définition: «un algorithme est une suite finie de

Le mot «algorithme» vient du nom de l auteur persan Al-Khuwarizmi (né vers 780 - mort vers 850) Une définition: «un algorithme est une suite finie de Le mot «algorithme» vient du nom de l auteur persan Al-Khuwarizmi (né vers 780 - mort vers 850) Une définition: «un algorithme est une suite finie de règles à appliquer dans un ordre déterminé à un nombre

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