GEF 243B Programmation informatique appliquée

Slides:



Advertisements
Présentations similaires
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Architecture du logiciel I.
Advertisements

GEF 243B Programmation informatique appliquée Listes chaînées I – Tableaux de structures §15.1 – 15.2.
GEF 243B Programmation informatique appliquée
Hiver 2010JGA Beaulieu GEF 243B Programmation informatique appliquée Structure de base des programmes en C.
GEF 243B Programmation informatique appliquée
Unité 2 - Révision Souvenirs d'enfance.
Calculs de complexité d'algorithmes
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.
Les fractions.
Module Systèmes dexploitation Chapitre 6 Communication Interprocessus Partie III École Normale Supérieure Tétouan Département Informatique
La Vitesse de la Confiance – Caractère et Compétences
GEF 243B Programmation informatique appliquée Boucles §
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Considération de temps.
GEF 243B Programmation Informatique Appliquée
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Tests.
GEF 243B Programmation informatique appliquée
GEF 243B Programmation informatique appliquée Structures §12.3.
GEF 243B Programmation informatique appliquée Expressions et opérateurs §
GEF 435 Principes des systèmes d’exploitation
GEF 243B Programmation informatique appliquée
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II.
GEF 243B Programmation informatique appliquée Tableaux et pointeurs §10.1.
GEF 243B Programmation informatique appliquée Listes chaînées II §15.1 – 15.2.
GEF 243B Programmation informatique appliquée Pointeurs et adresses §9.1.
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Génie logiciel et Vérification et validation.
GEF 243B Programmation informatique appliquée Décisions de design avec structures de données §15.1 – 15.2.
GEF 243B Programmation informatique appliquée Flot de contrôle et énoncés de sélection §
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.
GEF 243B Programmation informatique appliquée Types dérivés, structures et tableaux §
GEF 243B Programmation informatique appliquée
GEF 243B Programmation informatique appliquée Expressions de type mixte et blocs §
GEF 243B Programmation informatique appliquée
GEF 243B Programmation informatique appliquée
GEF 243B Programmation informatique appliquée
Hiver 2010JGA Beaulieu GEF 243B Programmation informatique appliquée Modules et masquage dinformation.
Hiver 2010JGA Beaulieu GEF 243B Programmation informatique appliquée Tableaux et pointeurs §10.1.
Programmes de calculs en 3ème
Cours Systèmes logiques
OCaml - Les listes L3 MI.
Récursivité.
Points importants de la semaine Les boucles. Les types arithmétiques. Les opérateurs.
44 Contrôle du déroulement du programme. 4-2 Objectifs A la fin de ce cours, vous serez capables de : Utiliser les constructions de prise de décision.
Expressions et assignations
Algorithmique et structure de données
RESUMES Module II1 SOMMAIRE CYCLE 1 : Saisir – Afficher – Données
Le codage des nombres en informatique
Base de programmation Script unity en c#.
OPERATIONS SUR LES NOMBRES EN ECRITURE FRACTIONNAIRE
Les pointeurs Modes d’adressage de variables. Définition d’un pointeur. Opérateurs de base. Opérations élémentaires. Pointeurs et tableaux. Pointeurs et.
Points importants de la semaine Les constantes. Les boucles. Les opérateurs relationnels Les opérateurs logiques.
Principes de programmation
IFT 6800 Atelier en Technologies d’information
Questions des 4 carrés Prêts ? B A Regardez bien ce diagramme
Mathématiques 9: L’algèbre.
Programmation linéaire en nombres entiers : les méthodes de troncature
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
L’essentiel du langage C
1 Notations Asymptotiques Et Complexité Notations asymptotiques : 0 et  Complexité des algorithmes Exemples de calcul de complexité.
Joan S. Morales - Introduction à l'algo. et la programmation 1 3. Expressions logiques et répétitives –Les expressions logiques –La répétitive –La variante.
Algorithmique Les structures Rappel L'enchaînement séquentiel
Chapitre 3 :Algèbre de Boole
Chapitre 3.1 Révision des concepts de distance entre
Algorithmique et programmation en
Un survol du language C.
MATHÉMATIQUES DISCRÈTES Chapitre 1 (Section 5)
Algèbre de Boole Définition des variables et fonctions logiques
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.
Transcription de la présentation:

GEF 243B Programmation informatique appliquée Expressions logiques §5.1

Revue Quelle est la valeur de a, b et c si les valeurs initiales étaient a = 2, b = 4 and c = 8 b *= c++; a += --b; Si a est int et initialement a = 7 quelle est la valeur de b si b est float? b = (float) (a/12); C = 9, b = 31 and a = 33. b = 0.0 JGA Beaulieu

Synopsis Logique Opérateurs conditionnels Expressions logiques Opérateurs logiques Opérateurs relationnels Expressions logiques Expressions logiques compléments Tell them to note that there is a difference between conditional and logical, this will be explained as we go. JGA Beaulieu

"Who Mourns for Adonais?" stardate 3468.1. Logique There is a difference between logic and logical data. Mr Spock is logical because he uses logic. Insufficient facts always invite danger. "Space Seed," stardate 3141.9. As we know, the value of pi is a transcendental figure without resolution. "Wolf in the Fold," stardate 3615.4. Madness has no purpose. Or reason. But it may have a goal. "The Alternative Factor," stardate 3088.7. Computers make excellent and efficient servants, but I have no wish to serve under them. Captain, a starship also runs on loyalty to one man. And nothing can replace it or him. "The Ultimate Computer," stardate 4729.4. Totally illogical, there was no chance. "The Galileo Seven," stardate 2822.3. Earthment like Rameses, Alexander, Ceasar, Napoleon, Hitler, Lee Kuan. Your whole Earth history is made up of men seeking absolute power. "Patterns of Force," stardate 2534.7. Les insultes sont efficaces seulement là où les émotions sont présentes. "Who Mourns for Adonais?" stardate 3468.1. JGA Beaulieu

Logique (logic) L’étude de la logique provient d’il y a bien longtemps en Grèce ancienne avec Aristote Beaucoup de concepts en mathématique moderne sont dues à l’élaboration des syllogismes (un mot bien bizarre) par Aristote Touts les humains sont mortel Les élofs sont humain Vous allez tous mourir! Syllogistic logic is a form of deductive reasoning consisting of a major premise, a minor premise, and a conclusion; for example, All humans are mortal, the major premise, I am a human, the minor premise, therefore, I am mortal, the conclusion. It often results in nonsensical arguments: All bakers have bread; you have some bread, therefore you are a baker. En français premise est prémisse JGA Beaulieu

Logique (logical) Dans la vie nous posons souvent des questions qui peuvent avoir plusieurs réponses: Quelle est cette couleur? Comment fiable est-ce que c’est? Pourquoi trouvez-vous cela plate?... Ces questions sont bonnes pour la consommation par les humains, mais un ordinateur ne comprend que deux choses : on-off 0-1 vrai-faux What do we mean when we say logical expression? It leads to one of two conclusions: true or false JGA Beaulieu

On se souvient que ANSI C99 a le type bool Logique (logical) Un morceau d’information est dit logique si il indique l’idée de vrai ou faux Une expression logique doit se réduire à une valeur simple de vrai ou faux On se souvient que ANSI C99 a le type bool true est 1 false est 0 Vous devez avoir en inclusion stdbool.h Cependant ceci a été fait pour vous dans le SpiderRobot So a logical expression is one that leads to one of two possibilities, true or false. JGA Beaulieu

En C il y a trois opérateurs logiques. Écoutez && apprenez || ! c’est votre choix. ! – Opérateur non (pas) && – Opérateur logique et || – Opérateur logique ou Les opérateurs sont listés en ordre de précédence. These are the three logical operators that are used to define logical expression or glue them together. They are listed in order of precedence. JGA Beaulieu

Logique – Table de vérité de l’opérateur non en C x !x false zéro true 1 non-zéro Note that the !x when x is zero results in the default value of 1. It could have been any other nonzero value, but the compiler defaults to 1. This is because if(!x) is the same as writing if(x==0), so if x is zero, it is replaced with the default compiler value of 1. When you see zero, read false and nonzero read true. JGA Beaulieu

Logique – Table de vérité de l’opérateur et en C x y x && y false (0) true (non-zéro) true (1) JGA Beaulieu

Logique – Table de vérité de l’opérateur ou en C x y x || y false (0) true (non-zéro) true (1) JGA Beaulieu

Opérateurs relationnels Les opérateurs logiques sont la “colle” qui garde les expressions logiques ensembles. Les expressions logiques sont crées à partir des relations entre les données Par exemple, vous pouvez relier deux entiers ensemble en demandant: Est-ce que les entiers sont égales? Est-ce que un entier est plus grand que l’autre? Est-ce que un entier est le même ou plus petit? Il y a six opérateurs relationnels en C JGA Beaulieu

Opérateurs relationnels Reminder, the higher the precedence number, the higher the precedence. This should be no surprise to them since they have done Java JGA Beaulieu

Opérateurs relationnels Les opérateurs relationnels ont des compléments expression originale expression simplifiée !(x < y) x >= y !(x > y) x <= y !(x != y) x == y !(x <= y) x > y !(x >= y) x < y !(x == y) x != y Sometimes when you write code, you write an expression in the negative. The human brain is much simpler at positive thinking, well for most of us anyway. JGA Beaulieu

Opérateurs relationnels complément Les opérateurs logiques ont aussi leurs compléments : La règle de De Morgan Si vous avez une expression du type !(…) et que vous voulez enlever le non, vous appliquez le! à chaque sous expression et vous prenez le complément !( x && y || !z || t && !u ) Remember positive logic is easier to learn than negative logic. The complement of !|| is &&, !&& is || and !! is nothing. If there are relational relationship then you apply the complement on the previous slide. && is higher precedence than ||, which is why this works! (!x || !y) && z && (!t || u) JGA Beaulieu

Quiz Time Quel est l’équivalent positif de: !( x || (y >= z) && !t || v ) !( y && !(y != z) || (v > t)) Send the students to the blackboard and ask them to solve one of the problem. !x && ((y<z) || t) && !v ( !y||(y!=z) ) && (v<=t) JGA Beaulieu