papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Je devine votre date anniversaire. Ven 22 Fév 2013 - 4:29 | |
| De l’inutile, il en faut ! Lancez ce code ; suivez les consignes ; n’essayez pas de tromper le programme : il veille sur tout ! - Code:
-
' ****************************************************************************** ' Je devine votre anniversaire ' Devine.bas par Papydall ' ****************************************************************************** label deviner,rejouer,quitter dim n
run() : end
end ' ***************************************************************************** deviner: inactive 8 if text$(5) <> "" if numeric(text$(5)) > 0 n = val(text$(5)) else message "Valeur numérique SVP !" :text 5,"" :set_focus 5 : return end_if else message " Vous n'avez pas saisi de valeur !" :text 5,"" :set_focus 5 : return end_if calculer(n) return ' ****************************************************************************** SUB calculer(n) dim_local m,j,m$ m = mod(n,12) : j = (n-m*37)/12 if m = 0 then m = 12 : j = j-37 if (j <= 0 or j > 31 or m = 0 or (j > 29 and m = 2)) or ((m=4 or m=6 or m=9 or m=11) and j > 30) message "La valeur saisie est INCORRECTE !!" +chr$(13) +"Vous avez fait une erreur de calcul !!" text 5,"" :set_focus 5 : exit_sub end_if
select m case 1 : m$ = " Janvier" case 2 : m$ = " Février" case 3 : m$ = " Mars" case 4 : m$ = " Avril" case 5 : m$ = " Mai" case 6 : m$ = " Juin" case 7 : m$ = " Juillet" case 8 : m$ = " Août" case 9 : m$ = " Septembre" case 10: m$ = " Octobre" case 11: m$ = " Novembre" case 12: m$ = " Décembre" end_select message " Votre anniversaire est le : "+str$(j)+ m$ active 8 end_sub ' ****************************************************************************** sub run() hide 0 form 1 : top 1,200 : left 1,300 : height 1,300 : width 1,400 : color 1,200,150,100 caption 1,"Je dévine votre date anniversaire" alpha 2 : parent 2,1 : top 2,10 : left 2,10 : font_color 2,255,255,10 font_bold 2 : caption 2,"Multipliez votre jour de naissance par 12" alpha 3 : parent 3,1 : top 3,40 : left 3,10 : font_color 3,50,100,200 font_bold 3 : caption 3,"Ensuite multipliez votre N° de mois de naissance par 37" alpha 4 : parent 4,1 : top 4,70 : left 4,10 : font_color 4,10,255,10 font_bold 4 : caption 4,"Enfin ajoutez ces deux produits et entrez le résultat" edit 5 : parent 5,1 : top 5,100 : left 5,120 : set_focus 5 alpha 6 : parent 6,1 : top 6,130 : left 6,120 : font_color 6,0,0,0 font_bold 6 : caption 6,"Puis cliquez sur OK" button 7 : parent 7,1 : top 7, 160 : left 7,150 : caption 7,"OK" on_click 7,deviner button 8 : parent 8,1 : top 8,200 : left 8,100 : caption 8,"Rejouer" on_click 8,rejouer : inactive 8 button 9 : parent 9,1 : top 9,200 : left 9,200 : caption 9,"Quitter" on_click 9, quitter end_sub ' ****************************************************************************** rejouer: text 5,"" : set_focus 5 : inactive 8 return ' ****************************************************************************** quitter: terminate return ' ******************************************************************************
Programme édité pour correction des bugs signalés par Bignono
Dernière édition par papydall le Ven 22 Fév 2013 - 15:56, édité 2 fois (Raison : Correction de 2 bugs) | |
|
bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: Re: Je devine votre date anniversaire. Ven 22 Fév 2013 - 7:18 | |
| Bonjour Papydall! Très bien ce petit programme et amusant, sauf: qu'il ne devine pas les dates de naissance des 27, 28 et 29 Février et à priori (je n'ai pas tout vérifié) celles du mois de décembre (en tout cas c'est sur pour les 1er, 25, 26, 27, 28, 29, 30 et 31). En plus, il devine des dates anniversaires des 31 Avril, 31 Juin, 31 Septembre et 31 Novembre! ! ! Je me suis arrêté là! Ouf!!! | |
|
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Je devine votre date anniversaire. Ven 22 Fév 2013 - 13:22 | |
| Salut Bignono Merci pour avoir testé mon programme. En effet, le programme contenait deux bugs : La 1ere est due à une faute de frappe (j’ai frappé 26 au lieu de 29 !) La seconde est purement et simplement une erreur de logique. Ces deux erreurs sont corrigées et j’ai édité le programme. Il doit fonctionner correctement, maintenant. | |
|
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 22 Fév 2013 - 14:21 | |
| Bravo !!!! Bon, j'ai retrouvé ma date d'anniversaire. Mais bon, il faut être un peu .... | |
|
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Je devine votre date anniversaire. Ven 22 Fév 2013 - 14:28 | |
| | |
|
bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: Re: Je devine votre date anniversaire. Ven 22 Fév 2013 - 15:50 | |
| | |
|
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Je devine votre date anniversaire. Ven 22 Fév 2013 - 16:00 | |
| Bien vu Bignono, c'est cooorrigé ! Je ferais pluuus attention la prochaine fois ! | |
|
Contenu sponsorisé
| Sujet: Re: Je devine votre date anniversaire. | |
| |
|