Francais | English | Espanõl

QBasic

Un article de Wikivisual, l'encyclopédie libre.

Quick Basic, acronyme de Quick Beginner's All-purpose Symbolic Instruction Code, est une variante du langage de programmation BASIC (une version structurée du BasicA).

L'environnement de développement intégré Quick Basic est un logiciel propriétaire de Microsoft, intégrant entre autre un éditeur et un compilateur BASIC.

Le compilateur permet de générer des exécutables .exe MS-DOS 16 bits à l'aide d'un compilateur optimisé pour le 8088 (sauf dans les dernières versions où des optimisations spéciales 286 peuvent être choisies) et d'un linker.

Ce programme ne fonctionne pas avec windows XP dans sa version 64 bits, car c'est une application DOS 16 bits.

Une version allégée, bridée, basée sur la version 4.5 de la version complète et nommée QBasic, était fournie dans sa version 1.0 avec le système MS-DOS et disponible sur le CD-Rom de Windows 95 et de Windows 98. Avec cette version, le code source ne peut être compilé que dans la mémoire, il est donc impossible de générer un fichier exécutable.

Quick Basic et QBasic étant tous les deux des compilateurs, ils ont l'avantage d'être plus rapide que BasicA et GW-BASIC, auxquels ils ont succédé.

Sommaire

[modifier] Hello World

PRINT "Hello World"

[modifier] Raccourcis Clavier

  • Ctrl+Break pour stopper l'exécution du programme.
  • F5 pour continuer l'exécution du programme à partir de l'endroit où il s'est arrêté.
  • Shift+F5 pour redémarrer le programme depuis le début.
  • F1 pour accéder à la page d'aide de l'instruction sous le curseur.
  • Shift+F1 pour accéder au sommaire de l'aide.

[modifier] Quelques fonctions

  • Print sert à afficher quelque chose sur l'écran
  • Input sert à afficher une phrase, avec une attente de réponse
  • Cls efface l'écran
  • Rnd sert à générer un nombre aléatoire compris entre 0 et 1
  • If marque la condition
  • If est associé à Then qui donne l'instruction qui doit se produire si la condition est vraie
  • Si plusieurs instructions suivent then, on utilise End if après le bloc d'expressions
      If [condition] then 
       [expression1]
      Else
       [expression2]
      end if
  • La structure while...wend
     *ex : i% = 1            donne 1 pour valeur à i
           While i% <> 50     répeter tant que i est différent de 50
           print"coucou"    met coucou sur l'écran
           i% = i% + 1        augmente de 1 la valeur de i
           wend             termine la boucle
  • La structure For...next
     *ex :  For i% = 1 To 4 donne à i toutes les valeurs entières de 1 à 4
            If i% = 1 then print "coucou"   affiche coucou
            If i% = 2 then print "hello"
            if i% = 3 then print "guten tag"
            if i% = 4 then print "buenos dias"
            Next i% termine la boucle
  • La structure Do...loop
     *ex : do   début de la boucle
           [expression]
           loop   fin de la boucle
           
[expression] corespond au script que vous voulez repeter
  

avec while :

     *ex : a% = 1   donne la valeur 1 à la variable "a"
           do while a% < 10   tant que "a" est plus petit que dix...
           print"All right !"   affiche "all right" à l'écran
           a% = a% + 1   ajoute la valeur 1 à "a"
           loop   fin de la boucle   

avec until :

     *ex : a% = 1
           do until a% = 10   jusqu'à ce que "a" = 10...
           print"To be or not to be ?"   affiche "To be or not to be ?"
           a% = a% + 1   ajoute la valeur 1 à "a"
           loop   fin de la boucle 

Les opérateurs logiques

  • And (et) sert à combiner deux conditions
     *ex : If [condition1] and [condition2] Then
  • Or (Ou)
     *ex : if [condition1] or [condition2] then si la première ou la deuxième condition est juste alors ...
           print"bouh !"   ...on affiche "bouh !"

[modifier] Exemple de programme sous QBasic

Voici un programme codé en QBasic ainsi que des commentaires. Les commentaires seront en italique et le code sera en gras.

  • Sorte de loto :

INPUT"Entrez votre nom : ",a$ on demande le nom de la personne pour le stocker dans la variable "a$", le symbole "$" signifie que la réponse pourra comporter des chiffres et/ou des lettres, mais qu'aucun calcul ne pourra être effectué sur cette variable (on appelle ce type de variable une "chaîne de caractères"). Si l'on veut faire des calculs sur cette variable, il faut remplacer le "$" par "%" (type de variable "integer" qui ne comportera donc que des chiffres).

INPUT"Choisissez le montant de votre fortune de départ : ",b% pareil que ci-dessus, mis à part qu'on ne peut cette fois-ci répondre que par un chiffre ("%")

n% = INT (rnd*5) + 1 on tire un nombre aléatoire compris entre 1 et 5 et on affecte ce nombre à la variable "n". Le "INT" sert ici à faire en sorte que le nombre tiré soit un entier (cela évite les nombres du type "2.54697")

INPUT"Sur quel nombre souhaitez vous miser (de 1 à 5) ?",c% pas besoin de commentaire

INPUT"Combien voulez-vous miser ?",d% de même

IF c% = n% THEN si le nombre est le bon...

CLS ...on efface ce qu'il y a marqué sur la fenêtre...

b%=b%+(2*d%) ...on ajoute à la fortune le double de la somme misée...

PRINT"Bravo, votre fortune est désormais de : "b% ...on indique le montant actuel de la fortune.

ELSE si le nombre n'est pas le même...

CLS cf ci-dessus

b%=b%-d% ...on soustrait à la fortune la somme misée

PRINT"Désolé, vous avez perdu. Il vous reste : " b% cf ci-dessus

END IF Ici, on indiqué que la structure if se termine ("IF, THEN, ELSE")

PRINT"Au revoir " a$ Affiche "au revoir + le nom entré au début"


Ce script n'est évidemment qu'un aperçu du langage, on pourrait lui rajouter d'autres fonctions (comme l'impossibilité de miser plus que l'on en a, ainsi que de pouvoir jouer, non pas une seule fois, mais jouer jusqu'a ce qu'on ait plus d'argent...etc).

[modifier] Voir aussi

[modifier] Quelques Liens

bs:QBasic cs:QBasic de:QBasic en:QBasic es:QBASIC it:QBASIC nl:QBasic pl:QBasic ru:QBASIC sv:QBasic tl:QBasic tr:QUICK BASIC zh:QBASIC

Outils personnels