Principes de programmation

Slides:



Advertisements
Présentations similaires
Cours n° 2 Données en Java
Advertisements

Premier programme en C :
Introduction au Langage C,C++
A RECUPERER EN ENTRANT Le polycopié de Caml Partie 1
Langage C# et Plate-forme .NET
Cours n° 1 Présentation du langage C++
Algorithmes et structures de données Cours 8
Formation C débutant. Notion de compilation source.c executable Phase de compilation Fichier de texte brut, inexploitable directement par la machine Fichier.
GEF 243B Programmation informatique appliquée Expressions et opérateurs §
GEF 243B Programmation informatique appliquée Expressions et opérateurs.
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Types, variables et constantes.
Cours n°2M2. IST-IE (S. Sidhom) UE 303 Promo. M2 IST-IE 2005/06 Conception dun système d'information multimédia Architecture trois-tiers : PHP/MySQL &
Programmer en JAVA par Tama
M. BENJELLOUN : Info II Mohammed BENJELLOUN Service dInformatique Faculté Polytechnique de Mons
ESIEE Paris © Denis BUREAU I N Initiation à la programmation avec le langage Java.
FLSI602 Génie Informatique et Réseaux
Points importants de la semaine Les commentaires. Les variables. Les instructions conditionnelles. Les instructions itératives (les boucles).
Semaine #1 INF155 par Frédérick Henri.
CPI/BTS 2 Programmation Web Introduction au PHP
Cours algorithme 2 S. Tabbone.
Partie 1 Etude de l'existant
Points importants de la semaine Les boucles. Les types arithmétiques. Les opérateurs.
Expressions et assignations
Les éléments de base de l’algorithmique
RESUMES Module II1 SOMMAIRE CYCLE 1 : Saisir – Afficher – Données
Algorithme et structure de données
33 Types de données et opérateurs. 3-2 Objectifs A la fin de ce cours, vous serez capables de : Décrire les types de données primitives Déclarer et initialiser.
Question Comment le compilateur fait-il pour évaluer une expression telle que : A + B lorsque A et B sont des données de types arithmétiques différents.
Programmation multimédia 3
Introduction à la programmation (Java)
Base de programmation Script unity en c#.
Développement logiciel pour microcontrôleurs PIC
Révision des notions OO et Java Semaine 1 Jian-Yun Nie.
Principes de programmation (suite)
Semaine #1 INF130 par Frédérick Henri.
Semaine #1 INF135 par Frédérick Henri.
Points importants de la semaine Le préprocesseur. La conversion de types. Les fonctions.
Points importants de la semaine Les constantes. Les boucles. Les opérateurs relationnels Les opérateurs logiques.
Contrôle de types Les types en programmation Expressions de types Un contrôleur de types Equivalence de types Conversions de types Généricité.
IFT 6800 Atelier en Technologies d’information
LIFI-Java 2004 Séance du Jeudi 9 sept. Cours 1. La notion de langage Décrire une tâche à effectuer –programme Écrire à un haut niveau –facile pour lutilisateur.
Expressions et affectations
COURS DE PROGRAMMATION ORIENTEE OBJET :
C++ : variables Déclaration de variables
Les Opérateurs Ils régissent toutes les opérations ou transformations sur les valeurs des variables. Opérateur d'affectation Opérateurs arithmétiques Opérateurs.
Types de données fondamentaux
L’essentiel du langage C
Javascript 1° PARTIE : LES BASES
Ecrire des expressions arithmétiques et logiques
3 Les instructions. Cours 32 Plan du cours 3 Instruction Bloc Portée L’alternative Affectations =, +=, *=… Comment comparer –Comparer des réels –Comparer.
SIF-1053 Architecture des ordinateurs
ALGORITHMIQUE ET PROGRAMMATION C
Un survol du language C.
Cours n° 1 Présentation du langage C++
 Syntaxe du langage PHP
B.Shishedjiev - Affectation1 Expressions et affectation Comment produire des nouvelles valeurs.
Introduction au langage JAVA
Les bases de l’algorithmique
Programmation en C.
Meriem BENHADDI FSTG Marrakech
Langage de programmation
Les expressions. Une expression retourne une valeur lorsqu’elle est exécutée par le programme. a+2, x==0, i++, !isdigit(c) && b, sin(Pi),… On peut donc.
PRO-1027 Programmation Scientifique en C
pour les programmeurs en C++ Java 2 Part 1 3 Histoire de Java Projet de connexion des machines: 1991 Le nom Java a été introduit dans un café Développé.
Philippe Gandy - 8 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Philippe Gandy - 15 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Philippe Gandy – 10 novembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Introduction au langage C
BlueJ_III 1 Java, les objets : tout de suite ! Interaction entre objets Notes de cours associées au chapitre 3 tutorial BlueJ
Transcription de la présentation:

Principes de programmation Survol Type de données ( en mémoire) Opérateurs Instructions de contrôle Langage Java Identificateurs et littéraux Types primitifs de java en détails Variable (déclaration et affectation) Opérateurs en détails Conversion de type ou transtypage Instructions de contrôle en détails Entrées/sorties Programme principal Commentaires

Type de données Type de données Nécessite trois informations pour l’utilisation Catégorie de données Opérations permises Les limites (nombre maximum, minimum, taille, ...) Exemple : Type entier Catégorie de données : nombres sans partie décimale Opérations permises : +, -, *, /, %, <, >, >=, ... Limites : -32768 à 32767 (16 bits)

Opérateurs Deux sortes opérateurs Unaire (une opérande) Binaire (deux opérandes) Le résultat est souvent du même type que les opérandes à l’exception des opérateurs booléens. Exemple : 3/2 donnera 1 et non 1.5

Opérateurs Plusieurs opérateurs prédéfinis, utilisables selon les types de données Entier et réel : +, - , * , /, ... Chaîne de caractères : + (concaténation) Booléen et entier : et(&&), ou logique(||), ou exclusif(^), non (!) Pour tous ces types <, >, <=, >=, ==(égalité), !=(différent de), =(affectation)

Instructions de contrôle Deux catégories Sélectives Exécution unique d’instructions selon le résultat de l’évaluation d’une expression booléenne (exemple : if) Répétitives Exécution répétée d’instructions selon le résultat de l’évaluation d’une expression booléenne (exemple : while)

Identificateurs et littéraux Le nom que vous choisissez pour une variable ou tout autre élément (ex: salaire) Littéral (aux) Valeur intégrale (exemple : 123, 12,45, « bonjour toto », ‘X’) À éviter. Utilisez plutôt des constantes

Identificateurs et littéraux Règles de création des identificateurs Doit commencer par une lettre, caractère de soulignement (_), ou un des symboles monétaires Unicode (pas recommandé) Ensuite, tout caractère alphanumériques, caractère de soulignement (_) et symboles Unicode mais aucun autre symbole n’est permis. Un seul mot (sans espace ni tiret) Le langage Java est sensible à la casse des caractères. Exemple d’identificateur correct mais différent : Mon_Nom, MonNom, monNom

Types primitifs de java en détails Entier byte (8 bits) -128 à +127 short(16 bits) -32768 à 32767 int (32 bits) -2147483648 à +2147483647 *** long (64 bits) -9223372036854775808 à 9223372036854775807 Réel float (32 bits) -3.4 * 1038 à +3.4 * 1038 double (64 bits) -1.7 * 10308 à +1.7 * 10308 *** ***Les littéraux réels sont de type double ***utilisé la plupart du temps

Types primitifs de java en détails Caractère char (16 bits) Unicode (http://www.unicode.org/Public/5.0.0/charts/CodeCharts-5.0.0d1.pdf) Entre apostrophes (exemple : ‘a’, ‘A’, ‘1’,’%’ ou ‘\u0000’ à ‘\uFFFF’) Booléen boolean true, false

Variable (déclaration et affectation) Espace mémoire modifiable Doit avoir un identificateur Doit avoir un type Accessible en tout temps via l’identificateur par la suite

Variable (déclaration et affectation) Constante Espace mémoire NON modifiable Doit avoir une valeur initiale Doit avoir un identificateur Doit avoir un type Accessible en tout temps via l’identificateur par la suite Mot réservé en Java : final Ex: final int MAX = 500; Consultez les normes de programmation (section identificateur)

Variable (déclaration et affectation) Déclaration en Java <type> identificateur; Exemple : byte age; float salaire; double precision;

Variable (déclaration et affectation) Variable = littéral [op littéral ou variable] [op ...]; Exemple : age = 28; salaire = 125.72 + 50.1; precision = 0.00000001 * salaire; Possible d’affecter lors de la déclaration(conseillé) Exemple : byte age = 28; float salaire = 125.72; double precision = 0.00000001 * salaire; Utilisation d’une variable non-initialisée ne compile pas

Opérateurs en détails Six catégories d’opérateur Arithmétique, booléen, affectation, relationnel, bits, ternaire Le tableau suivant montre l’ordre de priorité des opérateurs. http://java.sun.com/docs/books/tutorial/java/nutsandbolts/operators.html

Opérateurs en détails Quelques points à considérer L’ordre de priorité des opérateurs est important dans l’évaluation d’une expression. 3 + 8 * 9 – 4 + 8 / 2 = 75 (3 + 8) * 9 – (4 + 8) / 2 = 93 Le type des opérandes et du résultat sont importants entier op arithmétique entier = entier 3/2 donne 1 entier op relationnel entier = booléen 3>2 donne vrai entier op arithmétique réel= réel 3/2.0 donne 1.5 ...

Conversion de type ou transtypage Principe Le résultat d’une opération est du type qui prend le plus de place en mémoire. C’est ce qu’on appelle la conversion de type ou le transtypage Deux catégories Implicite Fait automatiquement par le compilateur Explicite Fait explicitement par le programmeur (nouveau type) valeur Exemple : int x = 10; float y = x; //Implicite y = 10.0 float y = (float)135.1 / (float) x; //Explicite y = 13.51 double int

Instructions de contrôle en détails Instructions sélectives Si (if); si-sinon (if-else) If (expression booléenne) { Instructions } else{ Opérateur conditionnel ou opérateur ternaire expression booléenne ? Expression1 : expression2 Exemple : plusGrand = (valeur1 > valeur2) ? valeur1 : valeur2 Les accolades peuvent être omises s'il n'y a qu'une instruction

Instructions de contrôle en détails Instructions répétitives Tant que (while, do-while) While (expression booléenne) { Instructions } do{ }while(expression booléenne);

Instructions de contrôle en détails Exemple while : Exemple do-while : int i = 1; while (i<=10) { //traitement i++; } int i = 0; do { i++; //traitement }while(i<=10);

Instructions de contrôle en détails Imbrication Toutes ces instructions de contrôle peuvent être imbriquées à l’intérieur d’une autre. Exemple : if (blabla){ while(bla;blabla;blablabla){ if(blablablablabla){ kokchose; else{ autchose; }

Entrées/sorties Affichage écran System.out.print() System.out.println() System.out.printf() //fonctionne comme en C + //concatène les valeurs à afficher Exemple : System.out.print(« mon age est : »+32);

Entrées/sorties Lecture clavier (en attendant les interfaces-utilisateur) Import java.util.Scanner //première ligne de code dans le fichier .java) static Scanner clavier = new Scanner(System.in) //à l’intérieur de la classe, avant le main() Dans le programme principal clavier.nextInt() //lit et retourne un entier en provenance du clavier clavier.nextDouble() //lit et retourne un double clavier.next() //lit et retourne le prochain mot (String) clavier.nextLine() //lit et retourne toute la ligne (String) etc. System.in.read() permet d’attendre un <enter> en provenance du clavier ***Pour l’instant, on ne se préoccupera pas des incompatibilités de type

Programme principal Il doit y avoir au minimum une classe dans un projet et une fonction principale qui s’appelle main L’importation de Scanner se fait avant la classe La déclaration du clavier se fait avant la fonction main() L’utilisation se fait dans la fonction Exemple : import java.util.Scanner; public class exempleProgrammePrincipal { static Scanner clavier = new Scanner(System.in) public static void main(String[] args) { //code ici int x = clavier.nextInt(); //lit un entier au clavier //et le met dans x }

Commentaires Les commentaires sont obligatoires dans ce cours. Commentaire de ligne // Tout ce qui se trouve après jusqu’à la fin de ligne Commentaire en bloc /* */ Tout ce qui se trouve entre /* et */ Commentaire Javadoc /** */

Commentaires À quoi servent les commentaires À éviter de lire le code pour savoir ce qu’il fait. À qui devraient servir le plus les commentaires À vous À n’importe quel autre lecteur Où mettre les commentaires ? En-tête de programme Variables et constantes Bloc de code des instructions de contrôle En-tête de sous-programme (semaine prochaine) Partout où cela clarifie le code

Exemple complet respectant les normes de programmation Voir validerDate.java fourni dans cours01.zip