FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
Révision des tables Emptypar Pedro Aujourd'hui à 10:37

» Un autre pense-bête...
Révision des tables Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
Révision des tables Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
Révision des tables Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
Révision des tables Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
Révision des tables Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
Révision des tables Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
Révision des tables Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
Révision des tables Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
Révision des tables Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
Révision des tables Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
Révision des tables Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
Révision des tables Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
Révision des tables Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
Révision des tables Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
Le deal à ne pas rater :
Smartphone Xiaomi 14 – 512 Go- 6,36″ 5G Double SIM à 599€
599 €
Voir le deal

 

 Révision des tables

Aller en bas 
4 participants
AuteurMessage
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

Révision des tables Empty
MessageSujet: Révision des tables   Révision des tables EmptyJeu 8 Mai 2014 - 15:50

Bonjour,

Je vous post un programme sans aucune prétention, mais comme je faisais réviser leur table aux enfants, je leur ais fais un petit programme pour vérifier leurs connaissance et changer des questions

Ça peut aussi servir aux nouveaux pour voir les fonctions de base de Panoramic

Code:
' ******************************************
' * Révision des tables de multiplications *
' * Pour Morgane et Kévin                  *
' * Morgane CE1 et Kévin CM1              *
' ******************************************
'
Label Reponse,Fin_timer, touche

Dim Max%    : ' Valeur maximale des tables à tester
Dim Temps%  : ' Temps max pour répondre
Dim Joueur$ : ' Nom du candidat pour le patamètrage automatique
Dim Chiffre1, Chiffre2 : ' Les chiffres de l'opération
Dim Operation$        : ' Texte de l'opération posée
Dim Nb_questions%      : ' Nombre d'opérations à faire
Dim i%      : ' Compteur de questions
Dim Note%  : ' Compte le nombre de bon résultats
Dim Temps_restant% : ' Calcule le temps restant

' Initialisation
Nb_questions% = 30

' Kévin
' Max%  = 10  : ' Lui il connait les tables jusqu'à 10
' Temps%  = 15 : ' 10 s max pour répondre + 5s de saisie

' Morgane
' Max%  = 3    : ' Pour le moment elle en est à la table des 3
' Temps%  = 30 : ' 25 s max pour répondre + 5s de saisie

' Adulte
Max% = 17      : ' Pour les adultes, ça se corse ...
Temps% = 22    : ' 20 secondes + 2 pour la saisie

width 0, 300 : Height 0, 150 : color 0, 200,200,200
alpha 1 : top 1,10 : left 1, 10  : width 1, 120 : font_size 1,16
alpha 2 : top 2,40 : left 2, 10  : width 2, 30  : font_size 2,16
edit 3  : top 3,40 : left 3, 30  : width 3, 60  : font_size 3,16
alpha 5 : top 5,44 : left 5, 110 : width 5, 100 : font_size 5,12
button 4: top 4,80 : left 4, 120 : width 4, 50  : caption 4,"OK" : hide 4
alpha 6 : top 6,80 : left 6, 10  : width 6, 40  : font_size 6,12
on_click 4,Reponse
timer 10: timer_off 10 : timer_interval 10,1000 : On_timer 10, Fin_timer
caption 2,"->"

i%=0  : Note% = 0
Question()
end


sub Question()
  hide 4 : timer_off 10
  i% = i% + 1
  caption 6, "" : text 3,""
  chiffre1 = int(rnd(Max%+1))
  chiffre2 = int(rnd(10))+1
  Operation$ = str$(i%) + ") Combien font " + str$(chiffre1) + " x " + str$(chiffre2)
  caption 1,Operation$
  show 4 : timer_on 10 : Temps_restant%= Temps% : set_focus 3 : on_key_down 3,touche
end_sub

Reponse:
  timer_off 10 : hide 4
  Operation$ = text$(3)
  if Operation$ = "" then show 4 : set_focus 3 : timer_on 10 : return
  if i% < Nb_questions%
      if chiffre1 * chiffre2 = Val(Operation$)
        Note% = Note% + 1
        caption 6,"Juste"
      else
        caption 6,"Faux, c'était : " + str$(chiffre1 * chiffre2)
      end_if
      wait 2000
      Question()
  else
      hide 2: hide 3
      caption 1, "Résultat final : "+str$(Note%) + "/" +str$(Nb_questions%)
  end_if
return

touche:
 if key_down_code = 13 then gosub reponse
return

Fin_timer:
  Temps_restant% = Temps_restant% - 1
  set_focus 3 : on_key_down 3,touche
  Caption 5, "Temps restant : "+str$(Temps_restant%)+ " s"
  If Temps_restant% = 0
    timer_off 10 : hide 4
    beep
    caption 1,"Trop tard !!"
    wait 1000
    Question()
  End_if
return


Dernière édition par Jicehel le Jeu 8 Mai 2014 - 20:19, édité 2 fois
Revenir en haut Aller en bas
jjn4

jjn4


Nombre de messages : 2747
Date d'inscription : 13/09/2009

Révision des tables Empty
MessageSujet: Re: Révision des tables   Révision des tables EmptyJeu 8 Mai 2014 - 16:36

Tu as raison, on ne sait jamais,
cela sera peut-être utile à certains.
 Mad  alien  tongue 
Voyons, voyons, là je suis sérieux ou pas ?
?  alien  ?
Revenir en haut Aller en bas
http://jjn4.e-monsite.com
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 70
Localisation : 83 Var
Date d'inscription : 07/05/2009

Révision des tables Empty
MessageSujet: Re: Révision des tables   Révision des tables EmptyJeu 8 Mai 2014 - 17:00

Voilà un jeu où je gagne toujours !
 lol! 


Pour tes bambins, tu devrais leur faciliter la vie avec un set_focus 3 à la ligne 49. C'est plus pratique.
Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

Révision des tables Empty
MessageSujet: Re: Révision des tables   Révision des tables EmptyJeu 8 Mai 2014 - 17:43

J'avoue, bonne idée. Je l'ais fait vite fait, mais autant le faire bien quand même.
Pareil, je n'ai pas géré l'appuie sur Entrée pour valider mais je modifie le code ci dessus avec ces 2 modifs.
Bon je change aussi la version du forum pour le mode adulte simple, juste histoire que ce soit un minimum amusant pour Jean-Claude.
PS: Jean-Claude, si tu veux jouer avec, rien ne t’empêche de monter le max ou de baisser le temps à ta convenance... En tout cas, le focus est maintenant géré ainsi que l'appuie sur Entrée pour valider.
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Révision des tables Empty
MessageSujet: Re: Révision des tables   Révision des tables EmptyJeu 8 Mai 2014 - 18:53

Salut heureux père de Kévin et de Morgane.  Laughing 

Des tels petits programmes éducatifs, j’adore !
Merci Jicehel, mais ….

Tu sais que j’ai presque toujours des « mais » à en revendre !

Le 1er   « mais »


Je préfère (font à fait et c’est à toi d’adopter ou non) à la ligne 56
Code:

Operation$ = str$(i%) + ") Combien fait " + str$(chiffre1) + " x " + str$(chiffre2)

Je préfère ceci

Code:

Operation$ = str$(i%) + ") Combien font " + str$(chiffre1) + " x " + str$(chiffre2)

Le second « mais »

Lorsque le programme me propose un calcul (par exemple  9 x 5) et je reponds (par exemple 17 : heu la table de 9 est difficile pour moi !), il m’indique que c’est faux (ce qui est bien), mais moi (qui ne connait rien) je prefère que le programme m'affiche la valeur juste.

Le troisième « mais » :
Lorsque je clique sur ok, j’obtiens Not correct logical expression : Error in function. Line 65 ; par contre en validant par <ENTER> ça marche.

Le quatrième et dernier « mais »
Je propose que le multiplicateur et le multiplicande soient toux deux différents de zéro ( 0 x 5 par exemple, c’est …heu … c’est à toi de trancher)

Ceci se fait en faire ressortir le +1 à la droite de la parenthèse.
Ligne 54 et 55

Code:

chiffre1 = int(rnd(Max%+1))
chiffre2 = int(rnd(10))+1


Devient
Code:

chiffre1 = int(rnd(Max%)+1)
chiffre2 = int(rnd(10)+1)


PS :
Plus sérieux que  alien  , ça ne n'existe pas et si vous rencontrez un, c'est très très rare!
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

Révision des tables Empty
MessageSujet: Re: Révision des tables   Révision des tables EmptyJeu 8 Mai 2014 - 20:18

OK, j'avais hésité entre fait et font. Après ton conseil, je remplace par font ... Smile
Pour le multiplié par 0, je laisse pour que ma fille se rappelle que la multiplication par 0 fait 0.
Pour qu'il n'y en ait pas trop, c'est pour cela que dans l'autre, je mets +1.
J'ai réglé le problème du bouton OK quand on valide sur OK alors que l'on a pas rentré de valeur en rajoutant un test qui évite le message infâme de l'erreur de conversion d'une chaîne vide.
J'ai rajouté l'affichage du résultat en cas de saisie d'une mauvaise valeur, c'est vrai que ça peut aider à apprendre.
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Révision des tables Empty
MessageSujet: Re: Révision des tables   Révision des tables EmptyJeu 8 Mai 2014 - 20:58

Voila !
J’espère que Monsieur Kévin et Mademoiselle Morgane soient heureux pour cette modification.
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

Révision des tables Empty
MessageSujet: Re: Révision des tables   Révision des tables EmptyJeu 8 Mai 2014 - 21:24

Oui, ils ont fait le test en début d'après midi à peu près au moment où j'ai posté le programme.
Ils n'ont pas bénéficié des améliorations que vous avez suggéré, mais ce sera pour la prochaine fois.
Morgane a encore quelques table à apprendre et Kévin apprend la division par encadrement. Donc pour diviser, il faut savoir multiplier Wink
PS: pour ceux qui ne le savent pas, la division par encadrement, c'est par exemple pour 37/5 (eux ils écrivent 37:5) => 5*7 < 37 < 5*8 => 37 = (5*7)+2 (Je sais les parenthèses ne sont pas importantes mais ils apprennent comme ça, on ne va pas leur changer ça)
Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

Révision des tables Empty
MessageSujet: Re: Révision des tables   Révision des tables EmptyLun 19 Mai 2014 - 0:34

J'avais commencé à faire un programme pour faire réviser leurs opérations aux enfants (mon fils m'avait demandé d'ajouter la division) mais comme nous n'étions pas là, ils n'ont pas eu le temps de tester.
Il faut que vous ajustiez le paramétrage selon la difficulté que vous souhaitez (temps max, nombre max, division ou non) et à qui vous faites passer le test.

Je mets le code en dessous, il est toujours très simple, mais s'il peut servir à quelqu'un ...
Code:
' ******************************************
' * Révision des tables de multiplications *
' * Pour Morgane et Kévin                  *
' * Morgane CE1 et Kévin CM1               *
' ******************************************
'
Label Reponse,Fin_timer, touche

Dim Max%    : ' Valeur maximale des tables à tester
Dim Temps%  : ' Temps max pour répondre
Dim Joueur$ : ' Nom du candidat pour le patamètrage automatique
Dim Chiffre1, Chiffre2 : ' Les chiffres de l'opération
Dim Operation$         : ' Texte de l'opération posée
Dim Nb_questions%      : ' Nombre d'opérations à faire
Dim i%      : ' Compteur de questions
Dim Note%   : ' Compte le nombre de bon résultats
Dim Temps_restant%  : ' Calcule le temps restant
Dim Type_operation% : ' Mémorise le type d'opération choisit
Dim Division        : ' Autorise ou non les divsions
Dim Reste$          : ' Lit le reste de la division saisie

' Initialisation
Nb_questions% = 30

' Kévin
 Max%  = 10   : ' Lui il connait les tables jusqu'à 10
 Temps%  = 12 : ' 10 s max pour répondre + 5s de saisie
 Division = 1 : ' Maintenant on travaille un peu sur les divisions aussi

' Morgane
' Max%  = 4    : ' Pour le moment elle en est à la table des 3
' Temps%  = 25 : ' 25 s max pour répondre + 5s de saisie
' Division = 0 : ' Morgane ne travaille pas sur les divisions


' Adulte
' Max% = 17      : ' Pour les adultes, ça se corse ...
' Temps% = 22    : ' 20 secondes + 2 pour la saisie
' Division = 1   : ' Maintenant on travaille un peu sur les divisions aussi


width 0, 300 : Height 0, 220 : color 0, 200,200,200
alpha 1 : hide 1 : top 1,10 : left 1, 10  : width 1, 120 : font_size 1,16
alpha 2 : hide 2 : top 2,40 : left 2, 10  : width 2, 30  : font_size 2,16 : caption 2,"->"
edit 3  : hide 3 : top 3,40 : left 3, 30  : width 3, 60  : font_size 3,16
alpha 5 : hide 5 : top 5,44 : left 5, 110 : width 5, 100 : font_size 5,12
alpha 7 : hide 7 : top 7,94 : left 7, 10  : width 7, 60 : font_size 7,12 : caption 7,"Reste"
edit 8  : hide 8 : top 8,90 : left 8, 70  : Width 8, 70  : font_size 8,12
button 4: top 4,140 : left 4, 120 : width 4, 50  : caption 4,"OK" : hide 4
alpha 6 : top 6,140 : left 6, 10  : width 6, 40  : font_size 6,12 : hide 6
on_click 4,Reponse
timer 10: timer_off 10 : timer_interval 10,1000 : On_timer 10, Fin_timer
i%=0  : Note% = 0
Message "Appuyez sur OK pour commencer"
for i% = 1 to 6
  if i%<>4 then show i%
next i%
Question()
end


sub Question()
  hide 4 : hide 7 : hide 8 : timer_off 10
  i% = i% + 1
  caption 6, "" : text 3,"" : text 8,""
  chiffre1 = int(rnd(Max%+1-division))+division
  chiffre2 = int(rnd(10))+1
  Type_operation% = int(rnd(3+2*division))+1 : ' j'augmente un peu les chances de tomber sur une division...

  select Type_operation%

     case 1: Operation$ = str$(i%) + ") Combien font " + str$(chiffre1) + " + " + str$(chiffre2)

     case 2
        if chiffre1 > chiffre2
           Operation$ = str$(i%) + ") Combien font " + str$(chiffre1) + " - " + str$(chiffre2)
        else
           Operation$ = str$(i%) + ") Combien font " + str$(chiffre2) + " - " + str$(chiffre1)
        end_if

     case 3 : Operation$ = str$(i%) + ") Combien font " + str$(chiffre1) + " x " + str$(chiffre2)

     case 4
        chiffre1 = chiffre1 + int(50) + 10
        Operation$ = str$(i%) + ") Combien font " + str$(chiffre1) + " / " + str$(chiffre2)
        show 7 : show 8

     case 5
        chiffre1 = chiffre1 + int(100) + 20
        Operation$ = str$(i%) + ") Combien font " + str$(chiffre1) + " / " + str$(chiffre2)
        show 7 : show 8

  end_select
  caption 1,Operation$
  show 4 : timer_on 10 : Temps_restant%= Temps%
  if Type_operation% = 4 or Type_operation% = 5 then Temps_restant%=Temps_restant%*3
  set_focus 3 : on_key_down 3,touche
end_sub

Reponse:
   timer_off 10 : hide 4
   Operation$ = text$(3)
   if Operation$ = "" then show 4 : set_focus 3 : timer_on 10 : return
   if i% < Nb_questions%
     select Type_operation%

     case 1: if chiffre1 + chiffre2 = Val(Operation$)
                Note% = Note% + 1
                caption 6,"Juste"
             else
                caption 6,"Faux, c'était : " + str$(chiffre1 + chiffre2)
            end_if
            wait 2000
            Question()
            
     case 2
        if chiffre1 > chiffre2
             if chiffre1 - chiffre2 = Val(Operation$)
                Note% = Note% + 1
                caption 6,"Juste"
             else
                caption 6,"Faux, c'était : " + str$(chiffre1 - chiffre2)
            end_if
            wait 2000
            Question()
        else
             if chiffre2 - chiffre1 = Val(Operation$)
                Note% = Note% + 1
                caption 6,"Juste"
             else
                caption 6,"Faux, c'était : " + str$(chiffre2 - chiffre1)
            end_if
            wait 2000
            Question()
        end_if

     case 3
            if chiffre1 * chiffre2 = Val(Operation$)
                Note% = Note% + 1
                caption 6,"Juste"
             else
                caption 6,"Faux, c'était : " + str$(chiffre1 * chiffre2)
            end_if
            wait 2000
            Question()

     case 4
             reste$=text$(8)
             if reste$="" then reste$="0"
             if (int(chiffre1 / chiffre2) = Val(Operation$)) and (mod(chiffre1,chiffre2) = Val(reste$))
                Note% = Note% + 1
                caption 6,"Juste"
             else
                caption 6,"Faux, c'était : " + str$(int(chiffre1 / chiffre2)) + " reste : "+str$(mod(chiffre1 , chiffre2))
            end_if
            wait 2000
            hide 7: hide 8
            Question()

     case 5
             reste$=text$(8)
             if reste$="" then reste$="0"
             if (int(chiffre1 / chiffre2) = Val(Operation$)) and (mod(chiffre1,chiffre2) = Val(reste$))
                Note% = Note% + 1
                caption 6,"Juste"
             else
                caption 6,"Faux, c'était : " + str$(int(chiffre1 / chiffre2)) + " reste : "+str$(mod(chiffre1 , chiffre2))
            end_if
            wait 2000
            hide 7: hide 8
            Question()

  end_select

   else
      hide 2: hide 3
      caption 1, "Résultat final : "+str$(Note%) + "/" +str$(Nb_questions%)
   end_if
return

touche:
 if key_down_code = 13 then gosub reponse
return

Fin_timer:
  Temps_restant% = Temps_restant% - 1
  if ((Type_operation% <> 4) and (Type_operation% <> 5)) then set_focus 3
  on_key_down 3,touche
  on_key_down 8,touche
  Caption 5, "Temps restant : "+str$(Temps_restant%)+ " s"
  If Temps_restant% = 0
    timer_off 10 : hide 4
    hide 7: hide 8
    beep
    caption 1,"Trop tard !!"
    wait 1000
    Question()
  End_if
return
Revenir en haut Aller en bas
Contenu sponsorisé





Révision des tables Empty
MessageSujet: Re: Révision des tables   Révision des tables Empty

Revenir en haut Aller en bas
 
Révision des tables
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Mes Tables
» Après mon fils, à ma fille de devoir réviser ses tables ...

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos sources, vos utilitaires à partager-
Sauter vers: