biotez ma envoyé sa:
bonne lecture ; )
cest pas moi, jai trouvé ca sur un site ; )
Dans ce chapitre, vous allez apprendre à utilisé les tests de conditions et les boucles. Les boucles et les test sont les nerfs de vos programmes. Vous apprendrer aussi à manipuler print, input, sleep et cls.
A - Print
--------------------------------------------------
------------------------------
print "Hello ! "
print, permet d´imprimer qqch à l´écran. Il est suivit de ce que vous voulez écrire, la chaine de caractere "Hello ! ". Une chaine de caractère doit être encadrés de guillemets ".
REM : Attention à ne pas inclure dans votre chaine le signe " !
B - Input
--------------------------------------------------
------------------------------
print "Hello ! "
input "Votre nom ? ",nom$
input "Votre age ? ",age
print "Salut ",nom$,". Tu as ",age," ans."
Syntaxe d´input :
input variable
input invite$,variable
A chaque commande, il faut revenir à la ligne ou les séparées par : . Ici, nous demandons à l´utilisateur son nom et son age à l´aide de la commande input. Le texte d´invite est facultatif. La variable est celle qui nous permet de mémoriser la saisie de l´utilisateur. Le nom est stocké sous forme de chaine dans la variable nom$ et donc l´utilisateur peut taper tous les carectères. L´age est stocké sous forme d´entier dans age et ne peut contenir que des nombre entier.
On imprime ensuite à l´écran une phrase de récapitulation par print "Salut ",nom$,". Tu as ",age," ans.". On sépare les chaines de caractères et variable par des , . On peut afficher ainsi une infinité d´élément de type different à condition de les séparer par des virgules.
Ceci donne à l´écran :
Hello !
Votre nom ? Alex
Votre age ? 16
Salut Alex. Tu as 16 ans.
C - If-then~else
--------------------------------------------------
------------------------------
if age>17 then print "vous êtes majeur ! "
if age<18 then print "tu est mineur ! "
if age<3 then print "Salut Petit ! " else print "Bonjour mon grand"
Syntaxe de if-then-else version courte:
if condition then commande(s)
if condition then commande(s) else commande(s)
Syntaxe de if-then-else version longue :
if condition
[bloc d´instruction]
endif
if condition
[bloc d´instruction]
else
[bloc d´instruction]
endif
La commande if then permet de tester quelque chose et d´agir en consequence. La version courte se forme en une ligne : si la condition ( utilisé les outils conditionnelles pour en poser) entre if et then est vrai ( 1), les commande(s) entre then et la fin de la ligne sont exécuter sinon le prog passe à la ligne suivante. On peut ( facultatif) définir avec else les commande(s) à executer si la condition est fausse ( 0). La version longue s´utilise si on a un bloc d´instruction à executer : le groupe d´instruction entre if condition et endif s´execute si la condition est vraie. Même fonctionnement pour else.
Ici, on teste si l´utilisateur est majeur puis si c´est un bébé. Remarquer por cela l´utilisation de else afin de faire rentrer en 1 ligne plutôt que 2.
Ceci donne à l´écran :
Hello !
Votre nom ? Alex
Votre age ? 16
Salut Alex. Tu as 16 ans.
tu est mineur
Bonjour mon grand
D - for-next~step
--------------------------------------------------
------------------------------
for a=1 to age*365
cls
print "Nb de jour vécu depuis votre naissance : ",a
sleep 100
next a
print "Fin de la boucle"
Syntaxe de for-next :
for variable-compteur=valeur-initiale to valeur-finale
[bloc d´instruction]
next variable-compteur
for variable-compteur=valeur-initiale to valeur-finale step valeur-d´incrémentation
[bloc d´instruction]
next variable-compteur
for-next permet d´executer les commandes comprisent entre for et next un nombre déterminé de fois. On attribue une valeur initiale à la variable-compteur puis DB l´amene jusqu´à sa valeur finale en l´incrémentant ( +1) à chaque passage dans le boucle ( ou, falcultatif, on peut définir la valeur d´incrémentation par step).
Ici, nous comptons le nombre de jour vécu par l´utilisateur. Noter le cls qui efface l´écran à chaque tour ( sinon, DB écrit tout à la suite et l´écran serai vite remplie) et le sleep 100 ( 0.1 seconde) qui permet de voir le comptage des jour ( sinon le prog irai beaucoups trop vite ! ).
REM : le nb final n´est pas le nb exacte de jour vécu. Il faudrait demander la date de naissance et la comparer à la date actuel pour déterminer le nb de jour vécu exacte. A vous de bosser pour rendre le prog exacte !
Ceci donne à l´écran :
Nb de jour vécu depuis votre naissance : 5840
Fin de la boucle
E - Do-Loop et et quelques fonctions
--------------------------------------------------
------------------------------
do
cls
print get time$()
print get date$()
if scancode()>0 then exit
loop
end
Syntaxe de do-loop :
do
[bloc d´instruction]
loop
Syntaxe de get time$() ( renvoie un string)
heure ( hh:mm:ss)=get time$()
Syntaxe de get date$() ( renvoie un string)
date ( mm:dd:aa)=get date$()
Syntaxe de scancode() ( renvoie un entier)
touche du clavier préssée=scancode()
Les instruction placé entre do et loop s´executeront à l´infinie. La fonction get time$() nous renvoie l´heure sous forme hh:mm:ss du syteme. Si l´utilisateur presse une touche, en sort de la boucle et executer la commande end qui a pour effet d´arreter le prog et de quitter. Nous avons réalisé ici une simple horloge.
Scancode() renvoie le numero de la touche du clavier pressée ( 0>aucune touche préssé). Si on presse une touche, la commande exit nous fait sortir de la boucle infinie et le programme s´arrête ( end).
Ceci donne à l´écran ( mais actualisé) :
15:52:06
11/03/02
F - Repeat-Until, inc et dec
--------------------------------------------------
------------------------------
repeat
inc a,2
dec a
until a=1000
Syntaxe de repeat-until :
repeat
[bloc d´instruction]
until condition
Syntaxe de inc ( variable entiere) :
inc variable
inc variable,valeur
Syntaxe de dec ( variable entiere) :
dec variable
dec variable,valeur
"Répéter jusqu´à ce qu´une conditions soit vraie". Les instructions placés entre repeat et until vont être executer jusqu´à ce que la condition suivant until soit réalisé. inc a,2 est semblabe à a=a+2, inc a,2 incremente a de 2. dec a est semblable à a=a-1, elle décrement a d´une unité. Le bloc d´instruction s´execute au moins une fois.
G - While-endwhile
--------------------------------------------------
------------------------------
a=1000
while a=1000
inc a,2
dec a
endwhile
Syntaxe de while-endwhile :
while condition
[bloc d´instruction]
endwhile
Syntaxe de inc ( variable entiere) :
inc variable
inc variable,valeur
Syntaxe de dec ( variable entiere) :
dec variable
dec variable,valeur
"Répeter tant qu´une conditions et vraie". Les instructions placés entre while et endwhile vont être executer tant que la condition suivant while est vraie. inc a,2 est semblabe à a=a+2, inc a,2 incremente a de 2. dec a est semblable à a=a-1, elle décrement a d´une unité. Le bloc peut ne pas s´executer du tout si la condition est fausse.