Tutorat en bio-informatique Le 10 octobre 2012. Au programme… Rappel sur les variables Constantes Conditions Comparaisons Tables de vérité Switch.

Slides:



Advertisements
Présentations similaires
Premier programme en C :
Advertisements

La boucle for : init7.c et init71.c
Conception de Site Webs dynamiques Cours 5
Algorithmes et structures de données avancées Partie Conception de Sites Web dynamiques Cours 9 Patrick Reuter.
Interactivé: L'Action Script.
La classe String Attention ce n’est pas un type de base. Il s'agit d'une classe défini dans l’API Java (Dans le package java.lang) String s="aaa"; // s.
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 &
Calcul propositionnel
Tests et itérations Programmes séquentiels ne résolvent pas tous les problèmes exemple simple : calcul des racines d'un polynôme de d° 2 dans R Algorithme.
5. Les structures répétitives
Les sous-programmes Chapitre n° 5: Objectifs : Activité:
Apprendre à se servir d’un tableur
Les bases de l’Algorithmique
Principes de programmation (suite)
CPI/BTS 2 Programmation Web Introduction au PHP
Cours de programmation
Introduction à la programmation (420-PK2-SL) cours 12 Gestion des applications Technologie de linformation (LEA.BW)
Partie 1 Etude de l'existant
Récursivité.
Les méthodes en java Une méthode est un regroupement d’instructions ayant pour but de faire un traitement bien précis. Une méthode pour être utilisée.
8PRO100 Éléments de programmation Comment faire prendre une décision à un ordinateur?
Algorithmique et structure de données
Les éléments de base de l’algorithmique
RESUMES Module II1 SOMMAIRE CYCLE 1 : Saisir – Afficher – Données
Introduction au paradigme objet Concepts importants surcharge (overload) redéfinition (override) Définition d’une classe Définition des attributs.
Python La programmation objet
Introduction à la programmation (Java)
Bases de la programmation en C++ 1 Les enchaînementsdinstruction Séquentiels. Exécutions dinstructions les unes à la suite des autres. Instructions séparées.
Le langage Javascript pour le web
Semaine #1 INF130 par Frédérick Henri.
Semaine #1 INF135 par Frédérick Henri.
Instruction sélective switch-case Instruction répétitive do-while For
Principes de programmation
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.
8PRO107 Éléments de programmation
Plan troisième cours Instruction sélective Instruction répétitive
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.
Structures alternative et répétitive
Animateur : Med HAIJOUBI
Algorithmique Les structures Rappel L'enchaînement séquentiel
3 Les instructions. Cours 32 Plan du cours 3 Instruction Bloc Portée L’alternative Affectations =, +=, *=… Comment comparer –Comparer des réels –Comparer.
JavaScript.
Un survol du language C.
Master 1 SIGLIS Java Lecteur Stéphane Tallard Les erreurs communes en Java.
 Syntaxe du langage PHP
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
Tutorat en bio-informatique
Tutorat en bio-informatique Le 14 novembre Au programme… Les objets –Propriétés (attributs) –Constructeurs –Méthodes.
Cours n° 3 Traitements en Java
Fonctions avancées et graphiques
Tutorat en bio-informatique Le 12 octobre Exercices 3 et 4 (MAT1400) - solutions La série du binôme (chap. 8.8) –Trouver la série entière et le.
1 PHP 5 Notions fondamentales (niveau 1 – cours #2) Formation continue – Cégep de Sainte-Foy.
Tutorat en bio-informatique
Introduction au langage C : Structures de contrôle 1 ère année Génie Informatique Dr Daouda Traoré Université de Ségou
Les bases de l’algorithmique
Module algorithmique et programmation
Introduction à la programmation (420-PK2-SL) cours 8
Introduction à la programmation (420-PK2-SL) cours 4 Gestion des applications Technologie de l’information (LEA.BW)
Tutorat en bio-informatique Le 31 octobre Exercice 3 et 4 (MAT1400) Chapitre 9.3, Analyse - concepts et contextes vol. 2 25) Quel est le vecteur.
Scripts et fonctions Instructions de contrôle
PRO-1027 Programmation Scientifique en C
Philippe Gandy - 8 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Philippe Gandy - 22 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Philippe Gandy – 6 octobre 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.
Algorithmique Boucles et Itérations
Introduction à l’Informatique chap 3 Licence SPI Mme Delmotte.
L ES INSTRUCTIONS DE L ECTURE, E CRITURE ET A FFECTATION Réalisé par : OUZEGGANE Redouane Département de Technologie Faculté de Technologie – Université.
Transcription de la présentation:

Tutorat en bio-informatique Le 10 octobre 2012

Au programme… Rappel sur les variables Constantes Conditions Comparaisons Tables de vérité Switch

Rappel var a = 7; var b = 11; var c = 2; b += Number(a + "4"); a += 1.5 * c; a = b / a + c; c = a / c; b = c + b % 20; Quelle est la valeur de b à la fin? (b = 85) (a = 10) (a = 10.5) (c = 5.25) (b = 10.25)

Rappel Il n'existe pas d'opérateur exponentiel, ou racine carré, ou valeur absolue en JS. On doit utiliser des méthodes de l'objet Math : var expo = Math.pow(2,3);// 2^3 var racineC = Math.sqrt(49);// 49^1/2 var vAbs = Math.abs(-6);// |-6|

Post / pré-(dé/in)crémentation var entier = 0; print(entier++);//0 print(entier);//1 entier = 0; print(++entier);//1 print(entier);//1

Post / pré-(dé/in)crémentation Qu'est ce qui sera imprimé? var cpt = 3; print("cpt = " + cpt + " cpt-- = " + cpt-- + " --cpt = " + --cpt);

Post / pré-(dé/in)crémentation Qu'est ce qui sera imprimé? var cpt = 3; print("cpt = " + cpt + " cpt-- = " + cpt-- + " --cpt = " + --cpt); cpt = 3 cpt-- = 3 --cpt = 1

Constantes Les constantes sont des variables qui, une fois initialisées, ne devraient jamais changer de valeur. Elles sont utiles pour garder en mémoire des valeurs qui seront utilisées souvent et qui ne doivent pas être modifiées. Exemples: le nombre de minutes dans une heure, le nombre de cents dans un dollar, etc.

Constantes La plupart des fureteurs et des interprètes de JS permettent l'utilisation du mot réservé 'const' pour déclarer une constante (au lieu de 'var'). On écrit le nom de la constante en lettres majuscules et on sépare les mots par des ‘_’ (convention).

Constantes Lorsque le mot réservé 'const' est reconnu par le fureteur ou l'interprète, une seule affectation est permise. Les affectations suivantes n'auront aucun effet. Exemple : const MINUTES_DANS_HEURE = 60;

Conditions Dans 99 % (± 1 %) des programmes que vous allez écrire, vous allez utiliser les conditions… Une condition, c’est une expression qui est soit vraie, soit fausse. Utiliser une condition, c’est dire à l’ordinateur : –Dans une telle situation, fait ceci. –Sinon, fait cela.

Conditions Un exemple concret : Lorsque vous arrivez à un feu de circulation en voiture, vous allez (normalement) : –Freiner si le feu est rouge. –Continuer si le feu est vert.

Conditions Un exemple en programmation : Vous avez écrit un programme qui demande à l’utilisateur son âge et vous avez mémorisé cette valeur dans la variable age. Si age < 18, écrire dans la console : « Vous êtes un enfant. » Sinon écrire dans la console : « Vous êtes un adulte. »

Conditions L’instruction 'if' : –C’est la traduction de « si »! –Doit être suivie (sur la même ligne) d’une condition entre parenthèses. –Doit être suivie (sur la ou les lignes suivantes) d’une ou de plusieurs instructions à faire dans le cas où la condition serait vraie. –Exemple : if (2 < 5) { print(" C’est vrai! "); }

Conditions L’instruction 'else' : –Signifie « sinon »! –Ne peut évidemment pas être utilisée sans être précédée d’un 'if'. –Ne doit pas être suivie d’une condition. –Doit être suivie (sur la ou les lignes suivantes) d’une ou de plusieurs instructions à faire dans le cas où la condition du 'if' précédent est fausse. –Est relié directement et seulement au 'if' qui le précède. –Exemple : else { print( " La condition du if était fausse! " ); }

Conditions Un exemple en programmation (version 1.2) : if (age < 18) { print( " Vous êtes un enfant. " ); } else { print( " Vous êtes un adulte. " ); }

Conditions Pourquoi on utilise le 'else'? Pour éviter des vérifications inutiles : L’ordinateur n’a qu’à vérifier la condition du 'if'. Si elle est vraie, les instructions du 'if' seront exécutées. Si elle est fausse, ce sont les instructions du 'else' qui seront exécutées. Pour éviter d’écrire une autre condition : if (age < 18) { print(" Vous êtes un enfant. "); } if (age >= 18) { print(" Vous êtes un adulte. "); }

Exercice 1 Vous avez écrit un programme qui va chercher la température sur Internet et vous la gardez en mémoire dans une variable nommée temp. Il ne vous reste qu’une petite partie à coder : vous voulez que votre programme écrive dans la console de porter des gants s’il fait moins de 0 °C et de ne pas porter de gants sinon. Écrivez cette partie manquante du programme.

Exercice 1 (solution) if (temp < 0) { print("Il faut porter des gants!"); } else { print("Pas besoin de gants!"); }

Conditions Rappel : Dans une structure de 'if' – 'else', un seul des deux blocs d’instructions sera exécuté (soit le bloc du 'if', soit le bloc du 'else'). Que fait-on lorsqu’on a plus de deux cas à vérifier? –On doit utiliser plusieurs 'if'…?

Conditions Retour sur l’exemple concret : Lorsque vous arrivez à un feu de circulation en voiture, vous allez (normalement) : –Freiner si le feu est rouge. –Continuer si le feu est vert. –Ralentir si le feu est jaune.

Conditions Mais on sait que les feux de circulation ne peuvent être que d’une seule couleur à un moment donné. Dès qu’on a trouvé de quelle couleur est le feu de circulation, il est inutile de continuer à vérifier pour les autres couleurs.

Conditions L’instruction 'else if' : –Signifie « sinon, si… ». –Doit être utilisée immédiatement après un 'if' ou un autre 'else if'. –Doit être suivie (sur la même ligne) d’une condition entre parenthèses. –Doit être suivie (sur la ou les lignes suivantes) d’une ou de plusieurs instructions à faire dans le cas où la condition du 'if' ou 'else if' précédent est fausse et la condition du 'else if' courant est vraie. –Exemple : if (nombre < 10) { print(" Le nombre est strictement inférieur à 10. "); } else if (nombre > 20) { print(" Le nombre est strictement supérieur à 20. "); }

Conditions Retour sur l’exemple concret : if (le feu est rouge) { Freiner; } else if (le feu est vert) { Continuer; } else//sinon, le feu ne peut être que jaune { Ralentir; }

Conditions Un exemple de très mauvaise programmation : if (age < 18) { print(" Vous êtes un adolescent. "); } if (age < 13) { print(" Vous êtes un enfant. "); } else { print(" Vous êtes un adulte. "); } Si age est égal à 10 : Vous êtes un adolescent. Vous êtes un enfant. Si age est égal à 15 : Vous êtes un adolescent. Vous êtes un adulte.

Conditions Un exemple en programmation (version 1.3) : if (age < 13) { print(" Vous êtes un enfant. "); } else if (age < 18) { print(" Vous êtes un adolescent. "); } else { print(" Vous êtes un adulte. "); }

Conditions Les 'if' imbriqués : –Il est possible de mettre des 'if' à l’intérieur des instructions d’un 'if'. –Dans certaines situations, il semble plus simple pour le programmeur d’utiliser des 'if' imbriqués. –Une bonne technique d’indentation devient essentielle afin de ne pas se perdre dans les 'if' et les 'else'…

Conditions Un exemple en programmation (version 1.4) : if (age < 18) { if (age < 13) { print(" Vous êtes un enfant. "); } else { print(" Vous êtes un adolescent. "); } else { print(" Vous êtes un adulte. "); }

Conditions D’autres faits importants : –On peut utiliser plusieurs 'if' de suite si les conditions de ces 'if' ne sont pas interdépendantes. –On peut utiliser autant de 'else if' qu’on le désire, en autant qu’il y ait un 'if' avant le premier 'else if'. –Il n’est jamais obligatoire d’utiliser un 'else' après un 'if' ou un 'else if', mais pour utiliser un 'else', il doit absolument y avoir un 'if' ou un 'else if' avant.

Exercice 2 Toujours dans votre programme qui a sauvegardé la température actuelle dans la variable temp, vous désirez être plus précis dans vos conseils vestimentaires. Réécrivez la dernière partie du code afin d’écrire dans la console : –de porter un chandail chaud s’il fait moins de 5 °C –de porter une chemise s’il fait entre 5 °C et 15 °C –de porter un t-shirt s’il fait plus de 15 °C –de porter des gants s’il fait moins de 0 °C

Exercice 2 (solution) if (temp < 5) { print("Il faut porter un chandail chaud!"); } else if (temp < 15) { print("Il faut porter une chemise!"); } else { print("Il faut porter un t-shirt!"); } if (temp < 0) { print("Il faut porter des gants!"); }

Conditions On peut utiliser directement un boolean comme condition. Type boolean : –2 valeurs possibles: 'true' et 'false'. –'true' veut dire vrai et 'false' veut dire faux… étonnant!

Conditions Exemple : var vrai = true; var faux = false; if (vrai) { print("On écrit.");//Écriture dans la console } if (faux) { print("On n'écrit pas.");//Pas d’écriture dans }//la console

Conditions Conversion automatique de Number ou String en Boolean : –lorsqu'on utilise seulement un Number ou une String dans une condition (sans comparateur) –lorsqu'on compare un Number ou une String avec un Boolean Les valeurs 0, "", null et undefined seront évaluées à false Toutes les autres valeurs possibles seront évaluées à true

Conditions Exemple : var nb1 = 1; if (nb1) { print("On écrit.");//Écriture dans la console } var nb0 = 0; if (nb0) { print("Pas d'écriture.");//nb0 == 0 == false }

Opérateurs de comparaison On peut comparer deux expressions représentant des Number ou des String avec ces opérateurs : == identique !=différent < strictement inférieur <=inférieur ou égal >strictement supérieur >=supérieur ou égal

Opérateurs de comparaison On peut utiliser ces opérateurs pour construire des conditions ou des variables de type boolean : if (nb1 != nb2) { print("Les nombres sont différents."); } var differentBool = nb1 != nb2;

Opérateurs de comparaison La comparaison de deux String peut nous indiquer un ordre lexicographique à un certain degré. Source :

Opérateurs de comparaison Pour la comparaison d'un seul caractère, on compare le code du caractère : var a = 'a'; var b = 'b'; var D = 'D'; var bool1 = a < b;//true var bool2 = a < D;//false!

Comparaison de String Pour la comparaison de chaînes de caractères, on compare le premier caractère qui est différent : var s1 = "test2"; var s2 = "tesT25"; var compareBool = s1 < s2;//compareBool = false

Comparaison de String Comment comparer deux String en ignorant la casse (majuscules/minuscules)? En mettant tous les caractères en majuscules (upper case) ou en minuscules (lower case) On utilise les méthodes toUpperCase() ou toLowerCase()

Comparaison de String Exemple : var s1 = "test"; var s2 = "TeSt"; if(s1.toUpperCase() == s2.toUpperCase()) { print("Chaînes identiques!"); }

Comparaison de String Lorsqu'on compare un Number avec une String, JavaScript fait une conversion automatique pour vérifier l'égalité Exemple : var s = '2'; var nb = 2; var bool = s == nb;//bool est true!

Comparaison de String Si on veut comparer non seulement la valeur mais aussi le type, on peut utiliser les opérateurs === et !== Exemple var s = '2'; var nb = 2; var bool = s === nb;//bool est false maintenant

Comparaison de nombres décimaux Pour comparer des nombres décimaux, il est préférable de vérifier la différence entre les deux nombres plutôt que de vérifier directement l'égalité : var a = ; if (Math.abs(a - 0.3) < 0.001) { System.out.println(" est égal à 0.3"); } a = !!!

Opérateurs logiques Pour alléger le code, on peut utiliser des opérateurs logiques : &&et logique ||ou logique !non logique

Opérateurs logiques && (et logique) : if (age >= 13) { if (age < 18) { print("Vous êtes un adolescent."); } est équivalent à if ( age >= 13 && age < 18 ) print("Vous êtes un adolescent.");

Opérateurs logiques || (ou logique) : if (age < 13) print("Vous avez droit à un rabais."); else if (age > 65) print("Vous avez droit à un rabais."); est équivalent à if (age 65) { print("Vous avez droit à un rabais."); }

Opérateurs logiques ! (non logique) : var s = "string"; if (s == "mot magique") { } else print("Ce n'est pas le mot magique…"); est équivalent à if (s != "mot magique") print("Ce n'est pas le mot magique…");

Tables de vérité ETVF VVF FFF OUVF VVV FVF

Switch var note = 'B'; if (note == 'A') { print("Excellent"); } else if (note == 'B') { print("Bon"); } else if (note == 'C') { print("Moyen"); } else { print("Note invalide"); }

Switch var note = 'B'; switch (note) { case 'A': print("Excellent"); break; case 'B': print("Bon"); break; case 'C': print("Moyen"); break; default: print("Note invalide"); }

Exercices 3 et 4 (MAT1400) La série du binôme (chap. 8.8) –Trouver la série entière et le rayon de convergence : 1) 5)