B-Basic.net

Innovation Informatique France

Les ressources

Le langage B-Basic propose trois classes permettant d'utiliser des tables de données dans vos logiciels.     

    RESSOURCE     Déclarer des ressources
    TAMPON        Pointeur de ressources
    COLLECTER     Extraction de ressources

 

1 - La classe RESSOURCE

La classe RESSOURCE, est une commande de déclaration. On peut insérer tout type de données dans les ressources sans ordres précis, des valeurs, des variables, des expressions mathématiques et des chaînes de caractères.

On pourra écrire..

    RESSOURCE(123,43,"texte",v0$,variable*2,V1+1.....)

Vous pouvez insérer des ressources en n'importe qu'elle partie d'un groupe.

    BLOC(1)
        -----
        -----    Instructions
        ------
        RESSOURCE(123,124,125,126,"Texte")
        RESSOURCE(124,125 ...)
        etc ...
        -------
        -------
    TERMINE(B)

Ou de préférence

    BLOC(1)        
        -----
        -----    Instructions
        -----
        etc ...
        -------
        -------
    TERMINE(B)
    !
    RESSOURCE(123,124,125,126,"Texte")
    RESSOURCE(124,125 ...)
    !
    BLOC(2)
        -----
    TERMINE(B)

 

2 - La classe TAMPON

L'instruction TAMPON doit être considérée comme un pointeur de ressource. Vous disposez de 64 Mémoires. Cette fonction dispose de deux sous fonctions.

Pointe une zone de ressource 

    TAMPON(A,No mémoire,Groupe,No ressource)        Liaison a un groupe
    TAMPON(D,No mémoire,No ressource)               Ressource dans le groupe

Pointe sur un élément de ressource

    TAMPON(B,Mem,Groupe,No ressource,No élément)    Liaison a un groupe
    TAMPON(E,Mem,No ressource,No élément)           Ressource du groupe

Réinitialisation pointeur

    TAMPON(C,No memoire)

Une fois pointé, les ressources sont extraites pas l'instruction COLLECTER.

 

3 - La classe COLLECTER

L'instruction COLLECTER permettra l'extraction de ressources par paquet. On pourra écrire.

    TAMPON(A,0,20,0)
    COLLECTER(A,No mem = 0,v1,v2,v3,v4,v0$, ....)

On pointe la mémoire 0 sur la première ressource dans le bloc 20. L'instruction COLLECTE(A, charge dans les variables les ressources et lorsque que la fin de ressource est atteinte reprend au début. (Voir tampon)

La fonction B de la classe collecter effectue une remise à 0 du pointeur avant extraction.

 

Exemple d'utilisation

    1    TAMPON(D,0,1)
    2    REPETE(I,1)
    3        COLLECTER(A,0,V1$)
    4        V1$(C,1,--,V1)
    5        V2=0
    6        SI(T,V1=0)
    7            COMBO(B,0,V1$)
    8            V2=1
    9        SI(F)
    10    REPETE(M,V2)
    11    !
    12    !    Resources - No : 0 - 1 - 2
    13    !    -----------------
    14    !
    15    RESSOURCE("*","BMP","JPG","GIF","PNG","--")
    16    RESSOURCE("*","BMP","JPG","GIF","PNG","--")
    17    RESSOURCE("*","BMP","JPG","GIF","PNG","--")

Explication du code

    Ligne 1     Pointe la ressource No 1, en utilisant le pointeur 0.
    Ligne 2     Début d'itération
    Ligne 3     Collecter une ressource dans la variable V1$
    Ligne 4     Teste si la chaine correspond a la séquence de fin de ressources -- (arbitraire)
    Ligne 5     Variable utilisé pour le compteur itératif, mis à 0
    Ligne 6     Si la chaîne de texte n'est pas une fin de ressource
    Ligne 7     Ajoute la chaîne dans la liste déroulante
    Ligne 8     Variable utilisé pour le compteur itératif, mis à 1
    Ligne 10    Si V2=0, fin d'itération
    Ligne 15    Ressource No 0
    Ligne 16    Ressource No 1
    Ligne 17    Ressource No 2

Autre solution

    1    TAMPON(D,0,1)
    2    COLLECTER(A,0,V2)
    2    REPETE(I,V2)
    3        COLLECTER(A,0,V1$)
    4        COMBO(B,0,V1$)
    5    REPETE(B)
    6    !
    7    !    Ressources - No : 0 - 1 - 2
    8    !    -----------------
    9    !
    10    RESSOURCE("*","BMP","JPG","GIF","PNG","--")
    11    RESSOURCE(5,"*","BMP","JPG","GIF","PNG")
    12    RESSOURCE("*","BMP","JPG","GIF","PNG","--")

Ou pourquoi pas ..

    1    TAMPON(D,0,1)
    3    COLLECTER(A,0,V1$,v2$,v3$,v4$,v5$)
    4    COMBO(B,0,V1$)
    4    COMBO(B,0,V2$)
    4    COMBO(B,0,V3$)
    4    COMBO(B,0,V4$)
    4    COMBO(B,0,V5$)
    6    !
    7    !    Ressources - No : 0 - 1 - 2
    8    !    -----------------
    9    !
    10    RESSOURCE("*","BMP","JPG","GIF","PNG","--")
    11    RESSOURCE("*","BMP","JPG","GIF","PNG")
    12    RESSOURCE("*","BMP","JPG","GIF","PNG","--")

 

4 - La classe CHOIX

La classe CHOIX, propose 2 fonctions d'extraction, et 3 fonction de recherches.

    Liste de texte        CHOIX(A,num élément,Réception texte,Texte 1,Texte 2,var$,texte$....)    
    Liste de valeur       CHOIX(B,num element,Reception valeur,1,2,3,1+23,V1+1 ....)
    Recherche résultat    CHOIX(C,Mode,Valeur,Reception valeur,1,2,3,4,5,...)
    Recherche No élément  CHOIX(D,Mode,Valeur,Réception valeur,1,2,3,4,5,...)
    Valeur au hasard      CHOIX(E,Réception valeur,1,2,3,4,5)

Exemple de code ..

    BLOC(1)
        -----
        -----    Instructions
        -----
        V1=1+1
        CHOIX(A,V1,V1$,Premier,Deuxième,Troisième)
        MESSAGE(A,v1$)
        -------
        -------
    TERMINE(B)

Ou

    BLOC(1)
        -----
        -----    Instructions
        -----
        CHOIX(A,(V1+V2)*2,V1$,Premier,Deuxieme,Troisième)
        MESSAGE(A,v1$)
        -------
    TERMINE(B)

La classe choix a pour but de vous offrir une fonctionnalité apte à simplifier votre effort de programmation. Une idée d'utilisation peut être de combiner les capacités de tableau volatiles a codes barres et une liste.

Exemple ..

    CHOIX(A,Num élément,Variable texte en réception,Texte1|Texte2|Texte 3,Texte1|Texte2|Texte 3,.etc.)
    etc jusqu'a 32 éléments

 

Imprimer cette page