Algorithmique et initiation à la programmation Java

Documents autorisés : les polycopiés et notes personnelles de cours, TDs et TPs
du module ... 013 JFrame frame = new JFrame("Test");. 014 Box ... java.util.
Iterator. iterator() Cette méthode retourne un itérateur sur la liste de résultats (liste
de ...

Part of the document


L3 Monnaie - Finance Algorithmique et initiation à la programmation java Première partie Nicolas THIBAULT - nicolasvincentpierre@gmail.com Modalités
Cours en amphithéâtre
Les lundis de 12h30 à 14h00 (amphi 3). Deux fascicules de cours (polycopiés
à trous) sont distribués en cours. Travaux dirigés
12 séances, les TD commençant la 2ème semaine du semestre. Un fascicule de
TD est distribué lors du 1er TD. Pour les TD
avoir toujours les fascicules de cours et de TD avec soi
disposer dès le premier TD d'une clé USB standard Evaluation : une note de contrôle continu calculée de la manière suivante :
1 contrôle à la séance de TD 6 (C1)
1 contrôle à la séance de TD 12 (C2) Note finale calculée de la façon suivante : (C1 + C2) / 2 ATTENTION : Il est strictement interdit de rattraper un contrôle en le
passant dans un autre groupe que celui dans lequel vous êtes inscrit auprès
de la scolarité. En cas d'absence à un des deux (ou aux deux) contrôles (TD
6 et/ou TD 12), voici les règles NON-NÉGOCIABLES qui s'appliqueront : Cas n°1 : Vous êtes absent à un des deux contrôles et vous avez une
justification médicale pour votre absence (ATTENTION : ne seront considérés
comme valables que les certificats d'arrêt de travail, un simple certificat
médical étant insuffisant). Vous devrez alors envoyer par mail votre
certificat d'arrêt de travail à votre chargé de TD ainsi qu'à votre chargé
de cours (nicolasvincentpierre@gmail.com). Vous serez alors dispensé de la
note du contrôle que vous n'avez pas passé et votre note finale sera celle
que vous aurez obtenue au seul contrôle que vous aurez passé. Cas n°2 : Vous êtes absent à un des deux contrôles mais vous n'avez pas de
justification médicale pour votre absence (ATTENTION : ne seront considérés
comme valables que les certificats d'arrêt de travail, un simple certificat
médical étant insuffisant). Vous aurez alors zéro au contrôle manqué. IL
N'Y AURA AUCUN RATTRAPAGE POSSIBLE (MÊME EN SEPTEMBRE). Cas n°3 : Vous êtes absent aux deux contrôles. Quelles que soient vos
raisons, conformément aux règles en vigueur à Panthéon-Assas, vous serez
notés défaillant pour cette matière (qui équivaut à la note zéro dans la
matière). Étant donné que la matière n'est évaluée qu'au moyen d'un
contrôle continu, IL N'Y AURA AUCUN RATTRAPAGE POSSIBLE (MÊME EN
SEPTEMBRE).
Algorithmique et initiation à la programmation java 1 Modalités 2 Introduction 5 Les langages de programmation 5 Java, compilé et interprété 6 Applications, applets et servlets 6 Eléments de programmation Java 7 Notion de variable 7 Affectation 7 Egalité, inégalité 7 Conjonction, disjonction 8 Types de données 8 Notion d'application 9 Les tests 10 Tableaux 11 Les boucles 11 Java, langage à objets 13 Classes et instances 13 Attributs et méthodes d'instances 17 Attributs et méthodes de classes 17 Algorithmique 18 Permuter le contenu de deux variables 18 Pour les algorithmes sur tableaux suivants, 18 Insérer un élément x dans un tableau à la suite des éléments existants 19 Déterminer les éléments maximum et minimum d'un tableau 19 Déterminer l'indice du maximum ou du minimum d'un tableau 19 Somme des éléments d'un tableau 20 Comptages divers 20 Insérer un élément à sa place, le tableau étant déjà rangé 21 Les tris sur tableaux 22 Les paquetages Java 24 Qu'est-ce qu'un paquetage ? 24 La notion d'héritage 24 Protection des attributs et méthodes 24 Les interfaces 25 Les classes d'exceptions 25 Le paquetage java.lang 26 Le paquetage java.util 27 Introduction
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
Java, compilé et interprété Langage développé par SUN depuis 1995.
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 à ... 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) ...
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 annee > 4 alors taux = 3.5 : 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