La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Algèbre de Boole et les Boucles

Présentations similaires


Présentation au sujet: "Algèbre de Boole et les Boucles"— Transcription de la présentation:

1 Algèbre de Boole et les Boucles
Sommaire Opérateurs logiques: p3 Fonction « ET » (AND) Fonction « OU » (OR) Fonction « NON » (NOT) Fonction « NON – ET » (NAND) Fonction « NON – OU » (NOR) Fonction « OU exclusif » (XOR) Fonction « NON – OU exclusif » (XNOR) Propriétés : p8 Associativité Commutativité Distributivité Idempotence Eléments neutres Absorption Simplification Redondance Complémentarité Schémas logiques Les boucles: p13 De Boole aux Boucles Si Alors Sinon Tant que Pour Exemples en Php Exemples en Basic

2 Introduction L'algèbre de Boole, ou calcul booléen, est la partie des mathématiques, de la logique et de l'électronique qui s'intéresse aux opérations et aux fonctions sur les variables logiques. Plus spécifiquement, l'algèbre booléenne permet d'utiliser des techniques algébriques pour traiter les expressions à deux valeurs du calcul des propositions. Dans l’algèbre de Boole, chaque variable ne peut avoir que deux valeurs: 0 si elle est fausse, et 1 si elle est vrai. Ce qui peut se traduire dans le domaine électronique par 0 = absence de courant, 1 = présence de courant. C’est le code binaire ( base 2 ). On appelle fonction logique une entité acceptant plusieurs valeurs logiques en entrée et dont la sortie (il peut y en avoir plusieurs) peut avoir deux états possibles : 0 ou 1. Une boucle est une fonction logique qui répète une ou plusieurs instructions, sous certaines conditions. Grâce aux propriétés de l’Algèbre de Boole, la simplification ( et donc l’allègement) des fonctions logiques devient possible. Elle fut initiée en 1854 par le mathématicien britannique George Boole.

3 Opérateur logique « ET » (AND)
B A.B Il est défini de la manière suivante : A ET B est VRAI si et seulement si A est VRAI et B est VRAI. Il est représenté par le symbole « . ». Table de vérité « ET » (AND) B\A 1

4 Opérateur logique « OU » (OR)
B A+B Il est défini de la manière suivante : A OU B est VRAI si et seulement si A est VRAI ou B est VRAI. (En particulier, si A est vrai et que B est vrai aussi, alors A OU B est vrai.) Il est représenté par le symbole « + ». Table de vérité « OU » (OR) B\A 1

5 Opérateur logique « NON » (NOT)
Le contraire de A est VRAI si et seulement si A est FAUX. Il est représenté par une barre au dessus de la ou des variables concernées. Si A = 0, alors NON A = 1 Si A = 1, alors NON A = 0

6 Fonctions logiques composées
« NON-ET » (NAND) « NON-OU » (NOR) La fonction NOR est l'enchainement de la fonction OU et de la fonction NON. La fonction NAND est l’enchainement de la fonction ET et de la fonction NON. A B A B A.B A+B Table de vérité « NON-ET » (NAND) B\A 1 Table de vérité « NON-OU » (NOR) B\A 1

7 Fonctions logiques composées
« OU exclusif » (XOR) Il correspond à l'intersection de deux conditions, privée de la réunion de ces deux conditions. Il est représenté par le symbole « ⊕ ». « NON-OU » exclusif (XNOR)  La sortie est VRAI si et seulement si les deux entrées sont identiques. On peut donc noter qu'il s'agit de la négation du OU exclusif souvent noté XNOR. On le nomme parfois (bien qu'abusivement) identité. A B A B A⊕B A⊕B Table de vérité « OU » exclusif (XOR) B\A 1 Table de vérité « NON-OU » exclusif (XNOR) B\A 1

8 Propriétés des opérateurs
Associativité : Comme avec les opérations habituelles, certaines parenthèses sont inutiles: ( A + B ) + C = A + ( B + C ) = A + B + C ( A . B ) . C = A . ( B . C ) = A . B . C Commutativité : L'ordre est sans importance: A + B = B + A A . B = B . A Distributivité : Comme avec les opérations habituelles, il est possible de distribuer : A . ( B + C ) = A . B + A . C Attention : comportement différent par rapport aux opérateurs + et . habituels : A + ( B . C ) = ( A + B) . ( A + C )

9 A . A . A . A . […]. A = A A . 1 = A 1 + A = 1 A +Ā . B = A + B
Idempotence A + A + A + A +[…]+ A = A A . A . A . A . […]. A = A Éléments neutres A + 0 = A A . 1 = A Absorption O . A = 0 1 + A = 1 Simplification A +Ā . B = A + B A . (Ā + B ) = A . B Redondance A . B + Ā . C = A . B + Ā . C + B . C Complémentarité A = Ā A + Ā = 1 A . Ā = 0

10 Exemple de schémas logiques :
Représentation (Symboles américains) de : ( A + B ) . ( A + C ) = S Exemples de Symboles américains :

11 Représentation (Symboles européens) de S3 = S1 . S2 = A + B . C
Représentation ( Symboles européens) de : S = A . B + C = A . B . C Représentation (Symboles européens) de : F = A . ( B + C ) + ( B . D )

12 Représentation (Symboles européens) de :
A . (B + C) + (A . B) + (B . C) = S Exemple de Simplification : (je note /A pour A Barre) S = A . /B + A . C + /A . B + B . C S = ( A . /B + /A . B ) + ( A . C + B . C ) car : [A./B+/A.B=A⊕B] S = A ⊕ B + ( A + B ) . C [A.C+B.C=(A+B).C] S = A ⊕ B + A . B . C

13 Boucle Tant-Que (While) Boucle Si-Alors-Sinon (If-Then-Else)
Du Booléen aux boucles. Boucle Tant-Que (While) Boucle Si-Alors-Sinon (If-Then-Else) La condition est évaluée. Si la condition est vraie, on exécute Action_Alors. Si la condition est fausse, on exécute Action_Sinon. Ce n’est pas véritablement une boucle, mais cette commande leur sert de base, & peut être utiliser pour créer une boucle. Tant que la condition est vraie, on exécute « actions ». Quand la condition est fausse, fin du « tant que ». Une boucle est une structure de contrôle destinée à exécuter une portion de code plusieurs fois de suite, la structure de contrôle branchant le pointeur ordinal au début du code tant qu'une condition de continuation est remplie ou, selon les boucles, qu'une condition de sortie n'est pas remplie. Normalement, une boucle s'exécute selon le cas, soit un nombre de fois connu à l'avance, soit jusqu'à ce qu'une condition permette de sortir de la boucle. Il arrive toutefois qu'une erreur de programmation fasse qu'un programme s'exécute indéfiniment à l'intérieur d'une boucle. On dit que le programme est en train de boucler. Fortran II a introduit les boucles en 1958.

14 Boucle Pour (For) Pour une variable (« id_variable ») allant de valeur inférieure (« val_inférieure »), à valeur supérieure (« val_supérieure »), on exécute actions jusqu’à ce que la variable soit supérieure à la valeur supérieure. « Val_pas » correspond à la valeur d’incrémentation, et vaut 1 par défaut, que l’on peut modifier.

15 Exemples de Boucles en PHP
Une boucle est une structure qui permet de répéter les mêmes instructions plusieurs fois. Une boucle seule se répète à l’infini tant que la condition n’est pas vraie. <?php While($variable == true){ Instruction à exécuter dans la boucle } ?> L’attribut « $ » permet de déclarer une variable. La condition « While » permet de déclarer une boucle qui exécutera les instructions jusqu’à ce que les conditions soient remplies. int majeur = 1; if (majeur) {     printf("Tu es majeur !"); } else     printf("Tu es mineur"); Comme majeur vaut 1, la condition est vraie, donc on affiche « tu es majeur !». Ici, If(majeur) peut se traduire par « Si tu es majeur ». Si la condition n’était pas remplie, les instructions de la condition else seront exécutées. if (majeur && garcon) Ici, les conditions Majeur & Garcon doivent être remplies.

16 <?php $nombre_de_lignes = 1; while ($nombre_de_lignes <= 100) { echo 'Je ne dois pas regarder les mouches voler quand j\'apprends le PHP.<br />'; $nombre_de_lignes++; // $nombre_de_lignes = $nombre_de_lignes + 1 } ?> Ici la boucle se répète tant que la variable $ nombre de lignes est inférieure ou égale à 100. La phrase se répètera donc 100 fois. <?php for ($nombre_de_lignes = 1; $nombre_de_lignes <= 100; $nombre_de_lignes++) {     echo 'Ceci est la ligne n°' . $nombre_de_lignes . '<br />'; } ?> La boucle for fait la même chose que la boucle while, mais rassemble sur une seule ligne tout ce qu’il faut savoir sur le fonctionnement de la boucle.

17 Exemples de Boucles en langage BASIC
Ce programme nous demande un nombre (ligne 10), puis, selon sa valeur, affiche une des 2 lignes de texte (ligne 30 ou 40) après avoir comparé la valeur du nombre à 10 (ligne 20). Boucle « IF » : 10 INPUT  « Entrez un nombre : »;A 20 IF A>10 THEN GOTO 40 30 PRINT « Le nombre est inférieur ou égal à 10. »;END 40 PRINT « Le nombre est supérieur à 10. » Boucle « WHILE » : DO INPUT "Combien d'étoiles voulez-vous"; NumStars Stars$ = "" Stars$ = REPEAT$("*", NumStars) PRINT Stars$ INPUT "Voulez-vous plus d'étoiles"; Answer$ LOOP UNTIL Answer$ <> "" LOOP WHILE UCASE$(LEFT$(Answer$, 1)) = "O" Boucle « FOR » : 10 INPUT « Donnez un nombre : »;N 20 FOR I = 1 TO N 30 Print « Je compte »;I; ». » 40 NEXT I Ce programme nous demande un nombre d’étoiles à afficher, puis nous demande si on souhaite plus d’étoiles, & attend en boucle jusqu’à ce qu’on appuie sur une touche. Si la touche O est appuyée il recommencera au début, sinon il s’arrêtera. Ce programme nous demande un nombre, puis affichera la phrase « Je compte »  suivie de nombres allant de 1 jusqu’au nombre indiqué. La commande NEXT sert à incrémenter le nombre I jusqu’à ce que I=N.


Télécharger ppt "Algèbre de Boole et les Boucles"

Présentations similaires


Annonces Google