Forum de Programmation en langage PANORAMIC


Rejoignez le forum, c’est rapide et facile

Forum de Programmation en langage PANORAMIC
Forum de Programmation en langage PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Rechercher
 
 

Résultats par :
 


Rechercher Recherche avancée

Derniers sujets
» Bonne année 2024
Table de multiplication EmptyLun 1 Jan - 0:25 par Papydall-Admin

» A ceux qui célèbre Noël, bonnes fêtes
Table de multiplication EmptyDim 24 Déc - 10:49 par Papydall-Admin

» Joyeux Noël et Bonne Année
Table de multiplication EmptyVen 8 Déc - 1:34 par Papydall-Admin

» Planets of the Solar System : Tilts and Spins
Table de multiplication EmptyLun 20 Mar - 15:43 par Papydall-Admin

» Bonne Année 2023
Table de multiplication EmptySam 31 Déc - 1:39 par Papydall-Admin

» Fractals - Mandelbrot
Table de multiplication EmptyVen 21 Aoû - 22:51 par Papydall-Admin

» Convertisseur Décimal ---> Binaire, Octal, Hexadécimal, ...
Table de multiplication EmptyMer 21 Nov - 1:08 par Papydall-Admin

» Balises {USER...}
Table de multiplication EmptyLun 19 Nov - 22:12 par Papydall-Admin

» Useful Dog
Table de multiplication EmptyVen 6 Avr - 14:25 par Papydall-Admin

Mai 2024
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
2728293031  

Calendrier Calendrier

Le deal à ne pas rater :
Cartes Pokémon : la prochaine extension Pokémon sera EV6.5 Fable ...
Voir le deal

Table de multiplication

Aller en bas

Table de multiplication Empty Table de multiplication

Message par Papydall-Admin Ven 23 Juin - 0:44

Code:

' ******************************************************************************
'
'                 Table_Multiplication.bas
'                      par Papydall
'
' ******************************************************************************

' Exemple d'appel des procédures

' ==============================================================================
' Ici débute le module principal du programme
' Il se limite à la seule procédure 'Demarrer' qui fait appel aux autres procédures
Demarrer()
end  : '  Fin du programme
' ******************************************************************************
SUB Demarrer()
    Init() : ' Appel de la procédure d'initialisation
    Affiche("T A B L E  D E  M U L T I P L I C A T I O N",240,10) : ' Appel de la procédure d'affichage
    Affiche(string$(48,"*"),240,40) : ' 2ème appel de la procédure d'affichage avec d'autres paramètres
    for m% = 2 to 9 : ' Boucle d'appels de la procédure table avec passage de
       table(m%)    : ' paramètre par valeur
    next m%
END_SUB

' ==============================================================================
' ******** INITIALISATION
' Procédure INIT() sans paramètres d'appel mais les parenthèses sont obligatoires
SUB init()
    dim m% : ' Seule cette variable est globale
    width 0,800   : height 0,700 : ' Dimension de la fénêtre d'affichage
    color 0,0,0,0 : font_color 0,0,255,0 : ' Fond noir, texte en vert
    font_size 0,12 : font_bold 0 : ' Taille de la police et affichage en gras
    caption 0,"Table de multiplication" : ' Titre de la page principale du programme
END_SUB
' ==============================================================================

' ******** Afficher un texte à l'écran
' Le texte ainsi que la position de l'affichage sont passés comme paramètres
' formels par le module appelant
' Procédure Affiche : les 3 paramètres d'appel sont locaux
SUB Affiche(texte$,colonne%,ligne%)
    print_locate colonne%,ligne% : print texte$
END_SUB
' ==============================================================================
' ******** Afficher la table
' Affiche une table de multiplication : le multiplicande(m%) est passé comme
' paramètre formel par le module appelant.
' Le multiplicateur i% est déclaré dans la procédure comme variable locale
SUB table(m%)
    DIM_LOCAL i%,s$,lig%,col% : ' variables locales : à la sortie de la procédure
                                ' elles seront automatiquement éliminées.
    affiche(string$(54,"_"),150,50): ' Une procédure peut appeler une autre
    col% = 150*(m%-1): lig% = 70
    if col% > 600
      col% = col%-600 : lig% = 320
    end_if
    for i% = 1 to 9
        s$ = str$(i%*m%)
        if i%*m% < 10 then s$ = "  "+s$
        print_locate col%,lig% : print str$(i%)+" X "+str$(m%)+" = "+s$
        lig% = lig%+20
    next i%
    affiche(string$(54,"_"),150,270)
    affiche(string$(54,"_"),150,500)
END_SUB
' ==============================================================================
  
Papydall-Admin
Papydall-Admin
Admin

Messages : 93
Réputation : 0
Date d'inscription : 08/09/2015
Age : 73
Localisation : MOKNINE (Tunisie)

https://papydall-panoramic.forumarabia.com

Revenir en haut Aller en bas

Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum