Accueil
Rechercher:
sur developpez.com sur les forums
Forums | Tutoriels | F.A.Q's | Participez | Hébergement | Contacts
Club Emploi Blogs   TV   Dév. Web PHP XML Python Autres 2D-3D-Jeux Sécurité Windows Linux PC Mac
Accueil Conception Java DotNET Visual Basic  C  C++ Delphi MS-Office SQL & SGBD Oracle  4D  Business Intelligence
FORUM VB FAQs VB TUTORIELS VB OUTILS VB SOURCES VB LIVRES VB
Tutoriel Basic

octobre 2000

Par Bodman

LES TRUC UTILES

Voilà quelque truc qui peuvent toujour servir.

Timer
Il donne le nombre de secondes écoulées depuis minuit (qu'est ce que vous en avez à faire, vous allez voir).C'est vrai que sauf si vous êtes un peu loup-garou sur les bords (et encore) cela n'a pas l'air d'être très utile mais si on y regarde de plus près cela peut devenir très utile.Par exemple vous avez envi de faire une animation(façon de parler) qui afficher au fur a mesure un texte à l'aide d'une boucle. Mais voilà la boucle va trop vite et votre texte apparais d'un coup.TINTINTINTIN…TIIIIN…TIIIIIN timer arrive(je voulais mettre un fichier son sur la page html mais j'ai pas réussi à trouver une fonction qui s'active en même tant que votre surprise, c'est une blague y faut rire ! ! ! Pas me prendre pour un malade ! ! !)Bon revenons à notre timer.On va donc ajouter à le boucle ceci :


Temp1 = timer
Do
Loop until timer - temp1 >.2

La le programme attendra que l'espace entre temp1 et timer soit assez grand mais on aurait put augmenter la valeur pour attendre un peut plus.Quoi ! ? Vous voulez le programme qui affiche au fur a mesure le texte, bon OK.
Le voilà

Version normale c'est une pyramide:

SCREEN 13
text$ = "voila le texte qui vient bout par bout"
FOR i% = 1 TO LEN(text$)
temp1 = TIMER
DO
LOOP UNTIL TIMER - temp1 > .2
PRINT LEFT$(text$, i%)
NEXT
END

Version multicolore là il n'y a pas de piramyde car le texte et ecris sur lui même avec la ligne de commande LOCATE 10,1 :

SCREEN 13
CLS
text$ = "voila le texte qui vient bout par bout"
FOR i% = 1 TO LEN(text$)
temp1 = TIMER
DO
LOOP UNTIL TIMER - temp1 > .2
COLOR i% + 60
LOCATE 10, 1
PRINT LEFT$(text$, i%)
NEXT
END


RANDOMIZER
Cette fonction sert à donner aléatoirement une valeur dans un groupe de valeur près choisie.
Par exemple on peut faire des dés ou plutôt un jeu de chance ou vous devrez indiquez une valeur comprise entre 1 et 6 le logiciel lui donnera au hasard une valeur et si elles sont égales c'est gagne sinon c'est perdu.

Voici le programme :

CLS
PRINT "le dés de la chance"
' présentation du programme
10 INPUT "donnez un chiffre entre 1 et 6"; chiffre% 'demande d'un chiffre
IF chiffre% > 6 THEN ' vérification du chiffre
GOTO 10'renvoi au début si faux
END IF
IF chiffre% < 1 THEN
GOTO 10
END IF

RANDOMIZE TIMER
' début de la fonction si on enlève timer le programme 'demandera la base du chiffre aléatoire essayez.
lechiffre% = INT(RND * 7)'RND sert à choisir le chiffre 7 est le maximum + '1 c'est à dire que si j'avais mis 6 j'aurai du ajouter +1 ou alors jamais un 6 n'apparaîtrais
IF lechiffre% = chiffre% THEN'resultat
PRINT "gagné"
GOTO 20
END IF

IF lechiffre% <> chiffre% THEN
PRINT "perdu"
PRINT "mon chiffre était "; lechiffre%; " hihi!!"
END IF
20 INPUT "veut tu rejouer(oui ou non)"; reponse$
'demande si le joueur veut 'rejouer.
SELECT CASE reponse$

CASE IS = "non"
END
CASE IS = "oui"
GOTO 10
CASE ELSE
GOTO 20
END SELECT
END
' c'est la fin.

Quoi vous voulez tricher oh la! c'est pas bien mais cela vous regarde allez voir cette source :

CLS
PRINT "le d‚s de la chance"
PRINT "appuyer sur une touche"
10 INPUT "donnez un chiffre entre 1 et 6"; chiffre%
IF chiffre% = 963 THEN R
PRINT "mode tricheur" R
mode% = 1 R
END IF R
IF chiffre% > 6 THEN
GOTO 10
END IF
IF chiffre% < 1 THEN
GOTO 10
END IF

IF mode% = 1 THEN GOTO 40 R
RANDOMIZE TIMER
lechiffre% = INT(RND * 6) + 1
IF lechiffre% = chiffre% THEN
40 PRINT "gagné"
GOTO 20
END IF

IF lechiffre% <> chiffre% THEN
PRINT "perdu"
PRINT "mon chiffre était "; lechiffre%; " hihi!!"
END IF
20 INPUT "veut tu rejouer(oui ou non)"; reponse$
SELECT CASE reponse$

CASE IS = "non"
END
CASE IS = "oui"
GOTO 10
CASE ELSE
GOTO 20
END SELECT
END

Les lignes qui se terminent par R correspondent aux rajouts par rapport à l'exemple précédent.
Explication :
Au moment de donner un chiffre s'il est égal a 963 alors on inscrit mode tricheur a l'écran et donnons à mode% la valeur 1 puis a chaque fois le programme sautera le moment de choisir un chiffre pour aller directement a print " vous avez gagne ".

Voilà plusieurs commande qui fonctionne sur le même model :



ABS - valeur absolue

Exemple :
Valeur = ABS(12)
PRINT " La valeur absolue de 12 est " ;valeur

Bien sur, il est complètement inutile dans cet exemple d'utiliser cette commande car tout le monde savent que la valeur absolue de 12 est 12.


Exemple :
Valeur = COS(12)
PRINT " Le cosinus de 12 est " ;valeur

SIN - sinus

Exemple :
Valeur = SIN(12)
PRINT " Le sinus de 12 est " ;valeur

TAN - tangente

Exemple :
Valeur = TAN(12)
PRINT " La tangente de 12 est " ;valeur

OCT$ - representation octale

Exemple :
Valeur = OCT$(12)
PRINT " La représentation octale de 12 est " ;valeur

CQR - racine carre

Exemple :
Valeur = CQR(12)
PRINT " La racine carrée de 12 est " ;valeur

Hex$ - valeur hexadécimale
Donne la valeur hexadécimale d'une valeur décimale.

Exemple :
Valeur = HEX$(12)
PRINT " la valeur hexadécimale de la valeur décimale 12 est " ;valeur

ATTENTION pour les commandes COS, SIN et TAN l'angle doit être donner en radians. Pour l'avoir en degrés il faudra le multiplier par 57.2958 ou 360/2pi .
SPC

Insère des espaces dans un texte.
Exemple :
Print "bodman";Spc(10)"bodman"
Cela donne :
BODMAN            BODMAN

SWAP
Sert a faire permuter des variables de même type.
Exemple :

Var1 swap var2

Var1 devient var2 et var2 devient var1

-precedent- -sommaire

Responsables bénévoles de la rubrique Visual Basic : Thierry Adriaenssens et Philippe Baquer - Contacter par EMail :
Vos questions techniques : forum d'entraide Visual Basic - Publiez vos articles, tutoriels et cours
et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones
Nous contacter - Copyright © 2000-2008 www.developpez.com - Legal informations.