RETROGICIEL
LES TABLES DE MULTIPLICATION
RETROGICIEL
LES TABLES DE MULTIPLICATION
⇩. Présentation
Et si nous élaborions un petit programme simple, qui permettrait d'afficher une table de multiplication, choisie par l'utilisateur. Après avoir obtenu la table a présenter et le début de la table, le programme génère la table et l'affiche avec une mise en forme soignée. La présentation de la table aura le format n x t = r, par exemple : 7 x 2 = 14, afin que la réponse soit facilement lisible. Un défi idéal pour les novices.
⇩. Consignes
Le programme doit :
demander la table de multiplication à présenter ;
demander le début des dix lignes à afficher ;
afficher dix lignes de la table au format n x t = r ;
recommencer ou quitter le programme.
D'abord, faite-le fonctionner. Ensuite, faite-le beau. Enfin, faite-le performant.
Amusez-vous bien !
Télécharger RETROGICIEL - Les tables de multiplication.
Cette présentation nécessite que Python 3 soit installé sur votre machine.
Après avoir téléchargé le fichier Les tables de multiplication.7z, décompressez-le dansdans le répertoire de votre choix.
Ouvrez le répertoire qui vient d'être créé.
Lancez le fichier Retrogiciel.py.
Cliquez sur l'onglet RUN et testez le programme.
Créez votre propre script dans un des langages proposés ou un autre de votre choix.
Le répertoire contient aussi :
- Python.py, l'exemple en PYTHON sans tkinter ;
- Tkinter.py, l'exemple en PYTHON avec tkinter ;
- Qb84.bas, l'exemple en QBASIC avec qb64 ;
- Bbc.bas, l'exemple en BBC BASIC avec bbc sdl.
# --- Origine Nerd ---
# --- RETROGICIEL - PYTHON ---
# --- Les tables de multiplication ---
# -*- coding: utf-8 -*-
# --- PRESENTATION ---
print ( "LES TABLES DE MULTIPLICATIONS." )
# --- BOUCLE PRINCIPALE ---
while True :
# --- Saisie et controle de la table choisie ---
print ( )
while True :
try :
kchoix = input ( "Quelle table souhaitez-vous ? " )
if "." in kchoix : ktable = float ( kchoix )
else : ktable = int ( kchoix )
break
except :
print( "ERREUR DE SAISIES. Veuillez saisir 1 nombre.\n")
kvalide = False
# --- Saisie et controle de la première opération ---
try : kdebut = int ( input ( "Indiquez quel sera la première opération " ) )
except : kdebut = 1
kfin = kdebut + 10
# --- Affichage des opérations ---
for kvaleur in range ( kdebut , kfin ) :
print ( f"{ kvaleur } x { ktable } = { kvaleur * ktable }" )
# --- Choix du bouclage du programme ---
kchoix = input ( "Voulez-vous une autre table (O ou N) ?" )
if kchoix.upper ( ) == "N" : break
# --- FIN DU PROGRAMME ---
print ( "Au revoir" )
# --- Programme : JFB ---
# --- Aout 2025 ---
# --- Fin ---
Pour mieux comprendre l'exemple en PYTHON sans tkinter.
# --- Origine Nerd ---
# --- RETROGICIEL - TKINTER ---
# --- Les tables de multiplication ---
# -*- coding: utf-8 -*-
# --- IMPORTATION DES MODULES ---
# --- Modules de la bibliothèque standard ---
import tkinter
# --- DÉFINITION DES FONCTIONS PERSONNALISEES ---
# --- Afficher la table demandée ---
def FNC_Calculer ( ) :
# --- Controle et validité de la table ---
try :
if "." in TKV_Table.get ( ) : ktable = float ( TKV_Table.get ( ) )
else : ktable = int ( TKV_Table.get ( ) )
except :
ktable = 0
# --- Controle et validité du début ---
try : kdebut = int ( TKV_Debut.get ( ) )
except : kdebut = 0
# --- MaJ des valeurs et des controles ---
TKV_Table.set ( ktable )
TKV_Debut.set ( kdebut )
kfin = kdebut + 10
koperation = ""
# --- calculs ---
for kvaleur in range ( kdebut , kfin ) :
koperation += f"{ kvaleur } x { ktable } = { kvaleur * ktable }\n"
# --- Affichage des calculs ---
LAB_Message [ "text" ] = koperation
# --- CREATION DE L'INTERFACE GRAPHIQUE ---
# --- Création de la fenêtre principale ---
TKI_Principal = tkinter.Tk ( )
TKI_Principal.title ( "RETROGICIEL - Les tables de multiplication" )
# --- Création des variables de controles ---
TKV_Table = tkinter.StringVar ( )
TKV_Debut = tkinter.StringVar ( )
# --- Création des controles nommées ---
ENT_Table = tkinter.Entry ( TKI_Principal , textvariable = TKV_Table , justify = "center" , width = 3 )
ENT_Debut = tkinter.Entry ( TKI_Principal , textvariable = TKV_Debut , justify = "center" , width = 3 )
LAB_Message = tkinter.Label ( TKI_Principal , height = 12 )
# --- Mise en place des controles (anonymes et nommés) dans la fenêtre principale ---
tkinter.Label ( TKI_Principal , text = "Votre table : " ).grid ( row = 0 , column = 0 , sticky = "e" )
ENT_Table.grid ( row = 0 , column = 1 , sticky = "w" )
tkinter.Label ( TKI_Principal , text = "Début : " ).grid ( row = 1 , column = 0 , sticky = "e" )
ENT_Debut.grid ( row = 1 , column = 1 , sticky = "w" )
tkinter.Button ( TKI_Principal , text = "Calculer" , command = FNC_Calculer ).grid ( row = 2 , column = 0 , sticky = "nesw" )
tkinter.Button ( TKI_Principal , text = "Quitter" , command = TKI_Principal.destroy ).grid ( row = 2 , column = 1 , sticky = "nesw" )
LAB_Message.grid ( row = 3 , column = 0 , columnspan = 2 , sticky = "nesw" )
# --- DEBUT DU PROGRAMME ---
TKI_Principal.mainloop ( )
# --- Programme : JFB ---
# --- Aour 2025 ---
# --- Fin ---
Pour mieux comprendre l'exemple en PYTHON avec tkinter.
' --- Origine Nerd propose pour ---
' --- RETROGICIEL - QB64 ---
' --- Les tables de multiplication ---
' --- DEBUT DU PROGRAMME ---
PRINT "LES TABLES DE MULTIPLICATION."
' --- BOUCLE PRINCIPALE ---
DO
' --- Saisie et controle de la table choisie ---
INPUT "Quelle table souhaitez-vous ", ktable
INPUT "Quel sera la premiere operation ", kdebut
kfin = kdebut + 9
' --- Affichage des operations ---
FOR kvaleur = kdebut TO kfin
koperation$ = STR$(kvaleur) + " x" + STR$(ktable) + " =" + STR$(kvaleur * ktable)
PRINT koperation$
NEXT kvaleur
' --- Bouclage du programme ---
INPUT "Voulez-vous recommencer [ O ou N ] "; kchoix$
LOOP UNTIL UCASE$(kchoix$) = "n"
' --- FIN DU PROGRAMME ---
PRINT "Au revoir."
END
' --- Programme : JFB ---
' --- Aout 2025 ---
' --- Fin ---
Pour mieux comprendre l'exemple en QB64.
REM --- Origine Nerd propose pour ---
REM --- RETROGICIEL - BBC BASIC ---
REM --- Les tables de multiplication ---
REM --- DEBUT DU PROGRAMME ---
PRINT "LE POIDS IDEAL SELON LORENTZ"
REM --- BOUCLE PRINCIPALE ---
REPEAT
REM --- Saisie et controle de la table choisie ---
INPUT "Quelle table souhaitez-vous " , ktable
INPUT "Quel sera la premiere operation " , kdebut
kfin = kdebut + 9
REM --- Affichage des operations ---
FOR kvaleur = kdebut TO kfin
koperation$ = STR$( kvaleur ) + " x " + STR$( ktable ) + " = " + STR$ ( kvaleur * ktable )
PRINT koperation$
NEXT kvaleur
REM --- Bouclage du programme ---
PRINT ""
INPUT "Voulez-vous recommencer [ O ou N ] " , kchoix$
UNTIL kchoix$ = "N" OR kchoix$ = "n"
REM --- FIN DU PROGRAMME ---
PRINT "Au revoir."
END
REM --- Programme : JFB ---
REM --- Aout 2025 ---
REM --- Fin ---
Pour mieux comprendre l'exemple en BBC BASIC.