Académique Documents
Professionnel Documents
Culture Documents
Yassine El Ghoumari
Yassine El Ghoumari
Schma fonctionnel
Saisie Traitement Restitution
Donnes Instructions
UC M Mmoire i
Rsultats
Priphriques
dentre
Priphriques Mmoires
de sortie
auxiliaires
Joystick Scanner
Micro
Souris
Disquette
Ecran
Modem
CD-ROM
Modem
Camra Clavier
Disque
dur
Haut
4 parleur
Imprimante
Constituants
Composants matriels (Hardware)
accessoires particulire
Constituants
Logiciel (Software)
Tout ce qui compose lordinateur et ses Chaque composant possde une fonction
calcul stockage des donnes affichage vido gestion du clavier...
immatriel (non tangible) ensemble de programmes excutables par lordinateur systme dexploitation (MS-DOS, Windows, Unix) logiciels standards comme Word, Excel... progiciels : logiciels spcifiques (paye, comptabilit, ...)
6
Codage binaire
Codage binaire
Le langage des ordinateurs Toutes communications l'intrieur de l intrieur l'ordinateur sont faites avec des signaux lectriques
123 en base 10 (dcimal) ( ) 1111011 en base 2 (binaire) 173 en base 8 (octale) 7B en base 16 (hexadcimale)
Codage binaire
Exemple
De la base 10 la base 2
l'opration en considrant que le nouveau numrateur est l'ancien quotient jusqu' ce que ce t t l' i ti t j ' dernier soit nul. La suite inverse des restes reprsente le nombre binaire
Ecrire
9
10 en base 2
10
Codage binaire
Schma fonctionnel
11
12
Lunit Centrale
Fonctions
Lunit Centrale
Partie de lordinateur qui contient les circuits de base
13
la mmoire principale la mmoire vive (RAM) la mmoire morte (ROM) ( ) la mmoire cache le microprocesseur les circuits de calcul (UAL-Lunit arithmtique et logique) lunit de contrle ou de commande UC lhorloge systme lunit dentre-sortie
14
Lunit dentre-sortie
contrle et gre le transfert dinformations entre lUC et les priphriques Exemples
Sa vitesse (frquence) est exprime gnralement en mgahertz (MHz) c est--dire en million de cycles par cest dire seconde Lefficacit du microprocesseur est directement proportionnelle la frquence de lhorloge : une frquence leve est donc souhaitable Exemples: Intel i7, environ 3,4 GHz
15
carte graphique (cran) carte contrleur (disque dur) carte son (micro, haut-parleur)
16
Les Priphriques
Dfinition
Dfinition Recueillent les informations qui sont ensuite transformes (numrises i.e. codes en binaires) pour tre utilisables par la machine et transfres en mmoire principale (mmoire de lUC) l UC) Exemples clavier souris : dispositif de pointage complmentaire du clavier et de lcran scanner : permet de numriser un document autres : cran tactile, lecteur de codes barres, crayon optique, camra, joystick...
18
Tout ce qui gravite autour de lUC cest--dire lcran, le clavier, la souris, les mmoires auxiliaires, limprimante, le scanner, le micro les haut-parleurs scanner micro, haut-parleurs....
3 Catgories de priphriques
dentre (clavier, souris, scanner, joystick) de sortie (cran, imprimante, haut-parleur) les mmoires auxiliaires (disque dur, disquette, CDROM)
17
La Mmoire
Dfinition
Transmettent linformation binaire de lUC vers lextrieur sous une forme comprhensible par lutilisateur
Exemples
Dispositif capable denregistrer, de stocker et de restituer des informations Trois types RAM ou mmoire vive ROM ou mmoire morte Mmoire de masse ou secondaire Unit de stockage: Un composant lectronique capable de mmoriser des tensions: BIT (Binary DigiT) : unit de stockage lmentaire Les informations sont codes en binaires composs de 0 et de 1
19
20
La Mmoire
Units
La Mmoire
Units
de mesure
de mesure
1octet = 8 bits 1Ko (Kilo octet) 1 000 octets 1Mo (Mga octet) 1 000 000 octets 1Go (Giga octet) 1 000 000 000 octets 1To (Tra octet) 1 000 000 000 000 octets
1octet = 8 bits 1Ko (Kilo octet) =1 024 octets (210 octets) 1Mo (Mga octet) = 1 048 576 octets (220 octets) 1Go (Giga octet) = 1 073 741 824 octets (230 octets) 1To (Tra octet) = 1 099 511 627 776 octets (240 octets)
21
22
La Mmoire
La Mmoire
Structure La mmoire est organise en cellules (octets ou mots) Chaque cellule est repre par son adresse qui permet lordinateur de trouver les informations dont il a besoin 2 Modes daccs la mmoire En lecture : aucun effet sur le contenu En criture : modifie son contenu
Caractristiques Capacit : nombre doctets Accs direct : grce ladresse, accs immdiat li f i di t linformation ( parle d ti (on l de support adressable) squentiel : pour accder une information, il faut avoir lu toutes les prcdentes (ex : cassette audio) Temps daccs : temps coul entre linstant o linformation est demande et celui o elle est disponible (en ms)
23
24
La Mmoire
Le contenu de la mmoire est compos
Diffrentes mmoires
Programme
La mmoire vive ou RAM (Random Access Memory) mmoire accs direct taille limite son contenu est volatile, i.e. il est perdu chaque fois que lordinateur ne fonctionne pas : do le besoin dutiliser de la mmoire auxiliaire rmanente i ili i t endroit o lordinateur stocke temporairement les donnes et instructions (programmes) quil est en train dutiliser et dexcuter contient tous les programmes en cours dexcution Capacit de 1 Go 4 Go
25
26
La mmoire cache
La transmission entre la RAM et le microprocesseur est plus lente que le potentiel de vitesse du microprocesseur Mmoire cache (niveau L1 o L2) (ni ea ou
zone de mmoire ultra-rapide o sont conserves les donnes et instructions qui reviennent le plus souvent mmoire interne de petite taille (dizaines de Ko) Type non-volatile (Flash)
27
Capacit : 3 Mo
28
Le microprocesseur
Le cur de lordinateur : il traite et fait circuler les instructions et les donnes Compos des lments suivants
Le microprocesseur
Unit Arithmtique et Logique (UAL) Ensemble de circuits qui excutent les oprations arithmtiques et logiques de base Diffrents Registres (CO, Etat, Instruction)
Son rle est d extraire une instruction dextraire Elle dcode les instructions et trouve
les donnes pour lUAL
du programme en MC, de la faire excuter par lUAL ou un priphrique et de chercher linstruction suivante
29
30
Le microprocesseur
Le microprocesseur
Un processeur est compos de transistors permettant de raliser des fonctions sur des signaux numriques. Ces transistors, assembls entre eux forment des composants permettant d raliser d t tt t de li des f fonctions t ti trs simples. A partir de ces composants il est possible de crer des circuits ralisant des oprations trs complexes. L'algbre de Boole (du nom du mathmaticien anglais Georges Boole 1815 - 1864) est un moyen d'arriver crer de tels circuits.
31
Le microprocesseur
L'algbre de Boole est une algbre se proposant de traduire des signaux en expressions mathmatiques. Pour cela, on dfinit chaque signal lmentaire par des variables logiques et leur traitement par des fonctions logiques logiques. Des mthodes (table de vrit) permettent de dfinir les oprations que l'on dsire raliser, et transcrire le rsultat en une expression algbrique. un circuit logique un circuit qui schmatise l'agencement des composants de base (au niveau logique) sans se proccuper de la ralisation au moyen de transistors (niveau physique).
Un ordinateur ne manipule que des donnes binaires, on appelle donc variable logique une donne binaire, gq , c'est--dire une donne ayant deux tats possibles: 0 ou 1.
On appelle fonction logique une entit acceptant plusieurs valeurs logiques en entre et dont la sortie (il peut y en avoir ( p plusieurs) peut avoir deux tats possibles : 0 ou 1.
Les fonctions logiques de bases sont appeles portes logiques. Il s'agit de fonctions ayant une ou deux entres et une sortie:
de Contrle
carte graphique (cran) carte contrleur (disque dur) carte son (micro, haut-parleur)
4 4 UAL
4 E/S 1
37
38
Exemple simplifi
Transfrer:
le nombre 12 saisi au clavier dans la mmoire le nombre 5 saisi au clavier dans la mmoire le nombre 12 de la mmoire vers un registre du le nombre 5 de la mmoire vers un registre du
microprocesseur microprocesseur
le contenu du rsultat dans la mmoire le rsultat (17) se trouvant en mmoire vers l'cran de la
A REVISER
A REVISER
Bus
Principaux bus
On appelle bus, en informatique, est un systme de communication entre les composants d'un ordinateur Les bus ont pour but de rduire le nombre de voies ncessaires la communication des diffrents composants, en mutualisant les communications sur une seule voie de donnes.
le bus systme (appel aussi bus interne). Le bus systme permet au processeur de communiquer avec la mmoire centrale du systme le bus d extension (parfois appel bus d'entre/sortie) d'extension d entre/sortie) permet aux divers composants de la carte-mre (USB, srie, parallle, cartes branches sur les connecteurs PCI, disques durs, lecteur/graveur de CD-ROM) de
communiquer entre eux mais il permet surtout l'ajout de nouveaux priphriques grce aux connecteurs d'extension (appels slots) connects
sur le bus d'entres-sorties.
A REVISER
A REVISER
Slots
Carte dextension
des prises qui sont prsentes sur la carte mre. Ces connecteurs sont prvus pour recevoir des cartes supplmentaires Ce qui diffrencie ces cartes c'est leur rapidit. Dans l'ordre, du plus lent au plus rapide :
Les cartes au format ISA Les cartes au format PCI Les cartes au format AGP
Permet dajouter des fonctionnalits (souvent de communication) comme par exemple les cartes graphiques, son, p g p q modem, usb, etc. Dans le PC et Mac, il existe aujourdhui deux grandes catgories de carte qui se diffrencient par le bus utilis : PCI et AGP
A REVISER
Carte mre
Quest-ce quun programme dordinateur? Carte lectronique qui permet aux diffrents composants de communiquer via diffrents bus de communication On enfiche ces composants sur des connecteurs
Un programme est une suite dinstructions dordinateur Une instruction est un ordre compris par lordinateur et qui lui fait excut une action
46
Langages informatiques
les ordinateurs, quels quils soient, ne sont fondamentalement capables de comprendre que quatre catgories d'ordres (en programmation, on n'emploiera pas le terme d'ordre, mais plutt celui d'instructions). C d'i t ti ) Ces quatre f ill t familles d'i t ti d'instructions sont :
Un langage informatique est un outil permettant de donner des ordres (instructions) la machine
Intrt : crire des programmes (suite conscutive dinstructions) destins effectuer une tache donne
47
48
Langage machine
L'assembleur
Langage binaire: linformation est exprime et manipule sous forme dune suite de bits Un bit (binary digit) = 0 ou 1 (2 tats lectriques) Une combinaison de 8 bits= 1 Octet 28 256 possibilits qui permettent
de coder tous les caractres alphabtiques, numriques, et symboles tels que ?,*,&,
Problme: le langage machine est difficile comprendre par l'humain Ide: trouver un langage comprhensible par l'homme qui sera ensuite converti en langage machine Assembleur (langage de bas niveau): exprimer les instructions y q lmentaires de faon symbolique
ADD A, 4 LOAD B MOV A, OUT
traducteur
langage machine
correspondances entre les caractres alphanumriques et leurs reprsentation binaire, Ex. A= 01000001, ?=00111111
Le code ASCII (American Standard Code for Information Interchange) donne les
Les oprations logiques et arithmtiques de base (addition, multiplication, ) sont effectues en binaire
49
+ : Un langage symbolique plus proche du langage machine - : Pas assez efficace pour dvelopper des applications complexes
CODE SOURCE
proche du langage humain anglais (comprhensible) permet une plus grande portabilit (indpendant du matriel) Manipulation de donnes et dexpressions complexes (rels, objets, a*b/c, ) bj t *b/ )
Ncessit dun traducteur (compilateur/interprteur), excution plus ou moins lente selon le traducteur
Code source Compilateur ou interprteur Langage machine
Le code source est un texte qui reprsente les instructions qui doivent tre excutes par un microprocesseur Le code source est crit dans un langage de programmation
en langage volu
51
52
Compilateur/interprteur
exemple
Pascal
Blaise PASCAL, mathmaticien et inventeur de la premire machine calculer 1971 C'est une version amliore du langage de programmation B du Bell Laboratory, cr en 1972
fichier excutable
Langage compil et structur, driv d'ALGOL. c'est un langage de dveloppement standard pour les microordinateurs. Langage de programmation structur et compil, trs largement employ car ses programmes peuvent facilement se transfrer d'un type d'ordinateur un autre. couvrir tous les domaines Dapplication formel Ce langage connat un succs qu'aucun autre langage n'avait encore connu.
+ plus rapide lexcution p p + scurit du code source - il faut recompiler chaque modification
Maple Java
Microsystems 1990
+ excution instantane apprciable pour les dbutants - excution lente par rapport la compilation
53 54
Intrt: sparation analyse/codage (pas de proccupation de p y g (p p p syntaxe) lalgorithmique exprime les instructions rsolvant un problme donn indpendamment des particularits de tel ou tel langage. Qualits: exact (fournit le rsultat souhait), efficace (temps dexcution, mmoire occupe), clair (comprhensible), gnral (traite le plus grand nombre de cas possibles),
Pour prendre une image, si un programme tait une dissertation, lalgorithmique serait le plan, une fois mis de ct la rdaction et lorthographe. Mieux faire dabord le plan et rdiger ensuite que linverse
offre une vue densemble de lalgorithme d ensemble l algorithme reprsentation quasiment abandonne aujourdhui
Le pseudo-code: reprsentation textuelle avec une srie de pseudoconventions ressemblant un langage de programmation (sans
les problmes de syntaxe)
57
58
Exemple d Organigramme
10
Algorithmique
Les variables et leurs AFFECTATION La LECTURE / CRITURE Les TESTS Les BOUCLES
61
62
Karim possde 3 seaux : un seau en plastique dune contenance de 10 litres, un seau en bois dune contenance de 7 litres et un seau en fer dune contenance de 9 litres.
Notion dalgorithme : si les huis phrases sont bien excute par Karim, alors lhistoire est un algorithme Notion dinstruction : chacune de huis phrases est une instruction (un ordre) Notion de valeur : { 0, 3, 5, 6, 8, 10 } Notion de mmoire : elle est matrialise par les seaux qui mmorisent les quantits de liquide
10h00 : karim vide ses 3 seaux 10h05 : karim va rendre visite a Nabil, celui-ci met 6 litres dans le seau en bois de , Karim 10h10 : karim transverse le contenu de son seau en bois dans le seau en fer 10h15 : karim revient vers nabil remplir ras bord son seau en plastique 10h20 : karim dverse la moiti de son seau en plastique lgout 10h25 : karim transvase le contenu de son seau en plastique dans celui en bois 10h30 : karim transvase 2 litres de son seau en bois dans celui en fer 10h35 : karim informe Asmae du nombre de litres contenu dans ses seaux en plastique, en bois, en fer.
Quelles sont les quantits des trois seaux que Asmae a reues?
63 64
Notion de variable
Notion de variable : une variable est un emplacement mmoire, ici on a trois variables (le seau en plastique, le seau en bois et le seau en fer) Notion denvironnement : cest lensemble des objet, informations, personnes qui on une existence hors de lhistoire mais qui interviennent dans son droulement. Notion des valeurs dentre et de sortie : cest les valeurs que le processeur reoit de lenvironnement et celles quil donne lenvironnement durant lexcution. Valeurs en entre :{6, 10} Valeurs en sortie = {0, 3, 8}
Dans les langages de programmation une variable sert stocker la valeur dune donne Une variable dsigne en fait un emplacement mmoire dont le contenu peut changer au cours dun programme (do le nom d un (d o variable) Rgle: Les variables doivent tre dclares avant dtre utilises, elle doivent tre caractrises par :
65
66
11
doit tre constitu uniquement de lettres, de chiffres et du soulignement _ (Eviter les caractres de ponctuation et les espaces)
valides: ENCG2012, ENCG_2012 ENCG2012, ENCG_2012 2012, ENCG;2012 2012, ENCG;2012 invalides: ENCG 2012, ENCG2012, ENCG-
doit tre diffrent des mots rservs du langage (par exemple en Java: int, float, else, switch, Java int, float, else, switch, case, default, for, main, return, ) La longueur du nom doit tre infrieure la taille maximale spcifie par le langage utilis
67 68
Byte (cod sur 1octet), Entier court , Entier long, Rel simple prcision, Rel double prcision
Rappel: toute variable utilise dans un programme doit avoir fait lobjet dune dclaration pralable En pseudo-code, on va adopter la forme suivante pour la dclaration de variables
Type logique ou boolen: deux valeurs VRAI ou FAUX boolen: Si bouton enfonc alors lumire allume = vrai sinon lumire allume = faux Type caractre: lettres majuscules, minuscules, symboles,
exemples: A, a, ?,
Variables
Exemple:
Variables
Remarque: pour le type numrique on va se limiter aux entiers et rels sans considrer les sous types
70
Linstruction daffectation
Quelques remarques
laffectation consiste attribuer une valeur une variable a consiste remplir o modifier le contenu d'une zone mmoire En pseudo-code, l'affectation se note avec le signe Var e : attribue la valeur de e la variable V V tt ib l l d l i bl Var
L'affectation n'est pas commutative : A B est diffrente de B A L'affectation est diffrente d'une quation mathmatique :
A=A+1 a un sens en langages de programmation A+1=2 n'est pas possible en langages de programmation et
n'est pas quivalente A=1
e peut tre une valeur, une autre variable ou une expression Var et e doivent tre de mme type ou de types compatibles laffectation ne modifie que ce qui est gauche de la flche
Ex valides:
ji OK FAUX x 4 OK ENCG
Certains langages donnent des valeurs par dfaut aux variables dclares. Pour viter tout problme il est prfrable d'initialiser les variables dclares
72
12
73
74
Exercices simples
Quelles seront les valeurs des variables A et B aprs excution des instructions suivantes ?
Exercices simples
seront les valeurs des variables A, B et C aprs excution des instructions suivantes ? Variables A, B, C : Entier Dbut A5 A=5 B3 A=5 CA+B A=5 A2 A=2 CBA A=2 Fin
75
Quelles
76
Exercices simples
Quelles seront les valeurs des variables A et B aprs excution des instructions suivantes ?
Exercices simples
Quelles seront les valeurs des variables A, B et C aprs excution des instructions suivantes ?
Variables A, B : Entier Dbut A5 A=5 BA+4 A=5 AA+ 1 A=6 BA4 A=6 Fin
Variables A, B, C : Entier Dbut A3 A=3 B 10 A=3 CA+B A=3 BA+B A=3 AC A = 13 Fin
77
B=? B = 10 B = 10 B = 13 B = 13
C=? C=? C = 13 C = 13 C = 13
78
13
Exercices simples
Quelles seront les valeurs des variables A et B aprs excution des instructions suivantes ?
Exercices simples
Ecrire un algorithme permettant dchanger les valeurs de deux variables A et B
Dbut C A A B B C Fin
A C
A B
On est oblig de passer par une variable dite temporaire (la variable C).
79
80
Exercices simples
CONCATENATION Que produit lalgorithme suivant ? Variables A, B, C en Caractres Dbut A "423" "42312". B "12" CA&B Fin
Exercices simples
Que produit lalgorithme suivant ? Variables A, B, C en Caractres Dbut A "423" B "12" CA+B Fin
81
82
Expressions et oprateurs
Une expression peut tre une valeur, une variable ou une opration constitue de variables relies par des oprateurs exemples: 1, b, a*2, a+ 3*b-c, a*2 *bL'valuation de l'expression fournit une valeur unique qui est le rsultat de l opration l'opration Les oprateurs dpendent du type de l'opration, ils peuvent tre :
Pour les oprateurs arithmtiques donns ci-dessus, l'ordre de priorit est le suivant (du plus prioritaire au moins prioritaire) :
des oprateurs arithmtiques: +, -, *, /, % (modulo), ^ (puissance) des oprateurs logiques: NON, OU, ET des oprateurs relationnels: =, , <, >, <=, >= des oprateurs sur les chanes: & (concatnation)
exemple:
2+3*7
vaut 23
En cas de besoin (ou de doute), on utilise les parenthses pour indiquer les oprations effectuer en priorit exemple: (2 + 3) * 7 vaut 35
84
Une expression est value de gauche droite mais en tenant compte de priorits
83
14
Les instructions de lecture et d'criture permettent la machine de communiquer avec l'utilisateur La lecture permet d'entrer des donns partir du clavier
L'criture permet d'afficher des rsultats l'cran (ou de les crire dans un fichier)
En pseudo code on note: lire (var) pseudo-code, la machine met la valeur entre au clavier dans la zone mmoire nomme var Remarque: Le programme s'arrte lorsqu'il rencontre une instruction Lire et ne se poursuit qu'aprs la frappe dune valeur au clavier et de la touche Entre
En pseudo-code, on note: crire (var) la machine affiche le contenu de la zone mmoire var Conseil: Avant de lire une variable, il est fortement conseill dcrire des messages lcran, afin de prvenir lutilisateur de ce quil doit frapper
85
86
Algorithme Calcul_double variables A B : entier i bl A, ti Dbut crire("entrer la valeur de A ") lire(A) B 2*A crire("le double de ", A, "est :", B) Fin
Choisir un nombre. Lui ajouter 1. j Multiplier le rsultat par 2. Soustraire 3 au rsultat. Afficher le rsultat.
Algorithme calcul_mathmatique variables x : reel Dbut crire(" introduire un nombre") lire(x) x x+1 xx*2 x x -3 crire(x) Fin
89
90
15
Algorithme2 Variables
X, Y, Z : rel
Exemple : crire i un algorithme qui consiste calculer l i S l ith i i t l l lair dun cercle selon la formule S = Pi * R2
Rappel : Pi = 3.14159 et R le rayon du cercle
Dbut
Lire (X, Y, Z) Z X-Y crire (Z)
Dbut
Lire (Quantit, Prix_unit) ( , ) Prix_total Quantit * Prix_unit crire (Prix_total)
Dbut
Lire (X) X X-1 X Pi * X crire (X)
Dbut
Lire (A1, A2) A2 A1 * A3 crire (A2)
Fin
Fin 91 92
Mthodologie a suivre : constantes : Pi = 3.14159 Variables : Rayon, Surface Types : Rayon, Surface : rel Expressions et affectation : Surface := Pi * (Rayon)2 Oprations dentre-sortie : Lire (Rayon),
crire (Surface)
93
94
Exercice
Ecrire un programme qui lit le prix HT dun article, la quantit darticles et le taux de TVA, et qui fournit le prix total TTC correspondant.
Variables Qte, Prix_HT, TVA, Prix_TTC : reels Dbut Ecrire ("Entrez le prix hors taxes :") Lire (Prix_HT) Ecrire ("Entrez le nombre darticles :") Lire (Qte) Ecrire ("Entrez le taux de TVA :" ) Lire (TVA) Prix_TTC Qte * Prix_HT * (1 + TVA) Ecrire ("Le prix toutes taxes est : ", Prix_TTC) Fin
95
Algorithmique
Les structures Conditionnelles et les boucles
96
16
Les instructions conditionnelles servent n'excuter une instruction ou une squence d'instructions que si une condition est vrifie
On utilisera la forme suivante: Si condition alors
Les itrations :
Tant que
97
la condition ne peut tre que vraie ou fausse si la condition est vraie, se sont les instructions1 qui seront excutes si la condition est fausse, se sont les instructions2 qui seront excutes la condition peut tre une condition simple ou une condition compose de plusieurs conditions
98
Exemple (SiAlorsSinon)
Algorithme AffichageValeurAbsolue (version1) Variable x : rel Dbut Ecrire " Entrez un rel : " Lire (x) Si x < 0 alors Ecrire ("la valeur absolue de ", x, "est:",-x) Sinon Ecrire ("la valeur absolue de ", x, "est:",x) Finsi Fin
La partie Sinon n'est pas obligatoire, quand elle n'existe pas et que la condition est fausse, aucun traitement n'est ralis
On utilisera dans ce cas la forme simplifie suivante: Si condition alors diti l instruction ou suite d'instructions1 Finsi
99
100
Exemple (SiAlors)
Algorithme AffichageValeurAbsolue (version2) Variable x,y : rel Dbut Ecrire " Entrez un rel : " Lire (x) y x Si x < 0 alors y -x Finsi Ecrire ("la valeur absolue de ", x, "est:",y) Fin
Exercice (tests)
Ecrire un algorithme qui demande un nombre entier l'utilisateur, puis qui teste et affiche s'il est divisible par 3 Algorithme Divsible_par3 Variable n : entier Dbut Db t Ecrire " Entrez un entier : " Lire (n) Si (n%3=0) alors Ecrire (n," est divisible par 3") Sinon Ecrire (n," n'est pas divisible par 3") Finsi Fin
101 102
17
Conditions composes
Tables de vrit
C1 VRAI VRAI FAUX FAUX C1 VRAI VRAI FAUX FAUX
103
Une condition compose est une condition forme de plusieurs conditions simples relies par des oprateurs logiques: ET, OU, OU exclusif (XOR) et NON Exemples : x compris entre 2 et 6 : (x > 2) ET (x < 6)
n divisible par 3 ou par 2 : (n%3=0) OU (n%2=0) deux valeurs et deux seulement sont identiques parmi a, b et c : (a=b) XOR (a=c) XOR (b=c)
L'valuation d'une condition compose se fait selon des rgles prsentes gnralement dans ce qu'on appelle tables de vrit
104
Tests imbriqus
Les tests peuvent avoir un degr quelconque d'imbrications Si condition1 alors Si condition2 alors instructionsA Sinon instructionsB Finsi Sinon Si condition3 alors instructionsC Finsi Finsi
Ecrire un algorithme qui demande deux nombres lutilisateur et linforme ensuite si leur produit est ngatif ou positif (on laisse de ct le cas o le produit est nul). Attention toutefois : on ne doit pas calculer le produit des deux nombres. Dbut Ecrire "Entrez le 1er nombre: " Lire (m) Ecrire "Entrez le 2eme nombre: " Lire (n) Si (m > 0 ET n > 0) OU (m < 0 ET n < 0) Alors Ecrire "Leur produit est positif" Sinon Ecrire "Leur produit est ngatif" Finsi 108 Fin
18
PASCAL
Oprations sur entiers : + (addition) - (soustraction) * (multiplication) / (division) mod (reste de la division)
111
112
Boolens: VAR variable1, variable2, ..., variableN : BOOLEAN; Oprations sur Boolens : AND OR NOT XOR (ou exclusif))
Ces oprations ncessitent des arguments boolens. Oprations valeur boolenne : > (suprieur) < (infrieur) >= (suprieur ou gal) <= (infrieur ou gal) = (gal) <> (diffrent)
113 114
19
Caractres : VAR variable1, variable2, ..., variableN : CHAR; Oprations sur Boolens : AND OR NOT XOR (ou exclusif))
115
116
Pascal: affectation
Le symbole d'affectation se note en Pascal avec := affectation i:= 1; j:= i+1; exemple :
117
118
Exemple
PROGRAM cercle (input,output); (* entte *) VAR p perimetre, diametre,test : REAL; (* dclarations *) , , ;( ) CONST pi = 3.141592; begin readln(diametre); (* instruction *) perimetre := pi * diametre; (* instruction *) writeln(diametre,perimetre); (* instruction *) end.
119 120
20
Exemple 2
Ecrire un programme en pascal qui effectue une division entre deux nombres
121
21