Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | Calendrier |
|
|
| Calculatrice | |
| | Auteur | Message |
---|
joeeee2017
Nombre de messages : 60 Date d'inscription : 13/10/2017
| Sujet: Calculatrice Ven 13 Oct 2017 - 23:08 | |
| trop de variable a la premiere ligne
dim a$,aa$,op,i,a,b,b$,c$,u | |
| | | Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
| Sujet: Re: Calculatrice Sam 14 Oct 2017 - 0:37 | |
| Bonjour Joeeee2017 ! Bienvenue sur le forum. Merci pour ton code. Je l'ai testé avec succès. Bravo ! Juste une petite remarque, la division par zéro plante le programme...Bonne continuation et à bientôt sur le forum ! EDIT : je viens de voir que tu as rectifié ton code pour la division par zéro : c'est bon, il n'y a plus de plantage. | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Calculatrice Sam 14 Oct 2017 - 9:20 | |
| Bonjour Joeeee2017 et bienvenue sur ce forum. Bravo pour ta calculatrice, j'aime bien l'animation des clics sur les touches de la calculatrice. Vu que tu as prévu la sortie par le menu quitter, essaies la commande BORDER_HIDE 0. Cette commande peut te permettre de diminuer la taille de la fenêtre (FORM) pour l'ajustée à la taille de la calculette. J'ai vu aussi, une ligne qui peut être supprimée => c1=0:c2=204:c3=51Pour poster tes codes: tu as un bouton Code à disposition qui crée automatiquement 2 balises pour insérer ton code. Le résultat: - Code:
-
dim a$,aa$,op,i,a,b,b$,c$,u,n dim t(40,2),tx$(20),uu,v,coul,c1,c2,c3
label calcul,fin,men1,men2,carre label virgule,euro,col
main_menu 20 sub_menu 21:caption 21,"Quitte":parent 21,20 on_click 21,fin
left 0,100:top 0,1 width 0,450:height 0,600 caption 0,"Calculatrice" ' c1=0:c2=204:c3=51 color 0,236,233,216 c1=204:c2=153:c3=0 border_hide 0
data 127,330,202,330,277,330,127,255,202,255,277,255,127,180,202,180,277,180 data 127,405,202,405,352,255,352,180,277,405,352,330,352,405,127,480,127,144,345,144 data "1","2","3","4","5","6","7","8","9","0",".","*","/","C","-","+","=","euro","franc"
rem button c1,c2,c3 for i=1 to 19 button i:read a:read b left i,a:top i,b:width i,65:height i,65 t(i,1)=a:t(i,2)=b next i
width 17,290:height 17,70:rem --button = width 18,70:height 18,26:rem --button "euro" width 19,70:height 19,26:rem --button "franc"
for i=1 to 19 read c$:tx$(i)=c$ font_size i,25:caption i,c$ next i
font_size 18,14:font_size 19,14
edit 40 left 40,127:top 40,77 width 40,287:height 40,70:rem --button edit font_size 40,26 inactive 40
2d_pen_width 7 2d_fill_color 204,153,0 2d_pen_color 0,0,0 2d_rectangle 115,60,428,557 2d_pen_color 252,152,0 2d_rectangle 125,75,418,135
text 40,"0" on_click 0,col on_click 18,euro on_click 19,euro rem ------------------------------------------------------------- men2: op=2:u=0:b$="":a$="" rem --------------------------------------------------- men1: aa$=inkey$ u=0 for i=1 to 19 if clicked(i)=1 then u=i:gosub carre next i rem ---- if u=14 then text 40,"0":goto men2 if u=17 then gosub calcul:op=2:u=0:b$="" rem ---- if u=11 then gosub virgule:goto men1 if u>11 then op=u:gosub calcul:u=0:b$="" rem ---- if u=0 or u=17 then goto men1:rem-----------------------> if u=10 then u=0 rem ---- if op=2 then a$="" if b$="" then text 40,"" rem ---- b$=b$+str$(u):text 40,b$ goto men1 rem ------------------------------------------------------------- calcul: if a$="" then a$=b$:b$="" if b$="" then return if op=13 and val(b$)=0 then beep:text 40,a$:return if op=12 then a$=str$(val(a$)*val(b$)) if op=13 then a$=str$(val(a$)/val(b$)) if op=15 then a$=str$(val(a$)-val(b$)) if op=16 then a$=str$(val(a$)+val(b$)) text 40,a$:b$="" return rem -------------------------------couleur autour touche---------- carre: if u=0 or u=17 then return 2d_pen_color 247,79,0 2d_rectangle t(u,1)-2,t(u,2)-2,t(u,1)+67,t(u,2)+67 wait 80 2d_pen_color c1,c2,c3 2d_rectangle t(u,1)-2,t(u,2)-2,t(u,1)+67,t(u,2)+67 uu=u return rem ------------------------------------------------------------- virgule: v=0:n=len(b$) for i=1 to n if mid$(b$,i,1)="." then v=1 next i if n=0 then b$=b$+"0.":text 40,b$:return if v=0 then b$=b$+".":text 40,b$:return if v=1 then beep return rem ------------------------------------------------------------- euro: if clicked(18)=1 then text 40,str$(val(text$(40))/6.55957) if clicked(19)=1 then text 40,str$(val(text$(40))*6.55957) return rem ------------------couleur calculatrice en cliquant dessus------- col: c1=c1+12.75:if c1>254 then c1=0 c2=c2+25.5:if c2=>254 then c2=0 c3=c3+51:if c3=>254 then c3=0 2d_fill_color c1,c2,c3:2d_pen_color 0,0,0:2d_rectangle 115,60,428,557 if coul=7 then coul=0 return rem ------------------------------------------------------------- fin: terminate end
A+ | |
| | | joeeee2017
Nombre de messages : 60 Date d'inscription : 13/10/2017
| Sujet: Re: Calculatrice Sam 14 Oct 2017 - 10:00 | |
| merci pour les info pour la division par zero je croyais avoir rectifié je vais retester | |
| | | joeeee2017
Nombre de messages : 60 Date d'inscription : 13/10/2017
| Sujet: Re: Calculatrice Sam 14 Oct 2017 - 10:11 | |
| tu as modifier et qd je reprends ton code l ide plante | |
| | | joeeee2017
Nombre de messages : 60 Date d'inscription : 13/10/2017
| Sujet: Re: Calculatrice Sam 14 Oct 2017 - 10:25 | |
| la ligne qui sert a rien est une ligne qui sert a la couleur initiale de la calculatrice pour changer la couleur il suffit de cliquer sur la fenetre | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Calculatrice Sam 14 Oct 2017 - 11:30 | |
| Je te confirme que la ligne "qui ne sert à rien", ne sert à rien. Si tu l'enlèves les couleurs changent quand même. - Code:
-
c1=0:c2=204:c3=51 color 0,236,233,216 c1=204:c2=153:c3=0
Tu peux voir, ci-dessus, que les variables c1, c2, c3 prennent des valeurs 2 fois de suite, c'est la dernière valeur déclarée qui sera prise en compte. D'autre part, j'ai vu que la structure de ton code n'est pas correct. 1) Tu as positionné END à la dernière ligne du code, cette utilisation montre une méconnaissance de la commande END. 2) Le sous-programme qui s'appelle "fin:" se termine par END. Un sous-programme (de type label) doit toujours se terminer par RETURN. Tu trouveras une première réponse en regardant le "manuel de référence" (dans le menu aide de l'éditeur) pour la commande END qui explique sa fonction. La deuxième réponse qui est très importante se trouve dans "Conseils" (toujours dans le menu aide de l'éditeur). Au chapitre "Généralités" tu cliques sur "Quelle est la structure d'un programme?" et là tu vas comprendre ce que je veux dire quand je dit "j'ai vu que la structure de ton code n'est pas correct"
Je suppose que tu découvres Panoramic, alors n'hésites-pas à nous solliciter pour ce que tu ne comprends pas. Cela remettra un peu d'ambiance sur le forum A+ | |
| | | joeeee2017
Nombre de messages : 60 Date d'inscription : 13/10/2017
| Sujet: Re: Calculatrice Lun 17 Sep 2018 - 22:33 | |
| - Jean Claude a écrit:
- Bonjour Joeeee2017 et bienvenue sur ce forum.
Bravo pour ta calculatrice, j'aime bien l'animation des clics sur les touches de la calculatrice.
Vu que tu as prévu la sortie par le menu quitter, essaies la commande BORDER_HIDE 0. Cette commande peut te permettre de diminuer la taille de la fenêtre (FORM) pour l'ajustée à la taille de la calculette.
J'ai vu aussi, une ligne qui peut être supprimée => c1=0:c2=204:c3=51
Pour poster tes codes: tu as un bouton Code à disposition qui crée automatiquement 2 balises pour insérer ton code.
Le résultat: - Code:
-
dim i,j,u,E,a$,b$,c$,op,uu label menu,move
Left 0,screen_x-1000:top 0,99:width 0,337:height 0,572:caption 0,"Calculatrice" edit 40:left 40,13:top 40,18:width 40,287:height 40,70:font_size 40,24 color 40,247,247,247:inactive 40:E=6.55957 data "Quitte ",30,"edition",30,"copier",21,"coller",21,"&Franc ",21 main_menu 30:for i=20 to 24:sub_menu i:read a$:caption i,a$:read u:parent i,u on_click i,menu:next i data 013,346,"0",013,271,"1",088,271,"2",163,271,"3",013,196,"4",088,196,"5" data 163,196,"6",013,121,"7",088,121,"8",163,121,"9",013,421,"=",238,121,"/" data 238,196,"*",238,271,"-",238,346,"+",088,346,".",163,346,"C" for i=1 to 17:button i:read u:left i,u:read u:top i,u:read a$:caption i,"&"+a$ font_size i,25:width i,65:height i,65:on_click i,menu:next i:width 11,290 on_move 0,move:i=1:top 0,100:u=17:opt() end :rem ________________________ menu: u=number_click:led():if u>15 then opt():return if scancode=13 or u=11 then u=11:uu=1 :rem "=" mémorisée, if uu=1 and u<11 then a$="" :rem efface premier nombre set_focus u:if u>10 then calcul():return :rem calcul si possible if b$="0" then b$="" :rem éviter d ecrire "0000" b$=b$+str$(u-1):text 40,b$ return :rem ________________________ sub calcul() active 16:if a$="" then a$=b$:b$="":op=u :rem debut calcul if a$="" then a$="0" :rem exemple - 1 == puis + == if b$="" and u>11 then op=u:uu=0:return :rem signe mémorisé if b$="" then b$=c$ :rem repete "=" if b$="" then return :rem aucun nombre select op case 12:if val(b$)=0 then b$="":text 40,"Impossible":return a$=val(a$)/val(b$) case 13:a$=val(a$)*val(b$) case 14:a$=val(a$)-val(b$) case 15:a$=val(a$)+val(b$) end_select text 40,a$:c$=b$:b$="":if op<>u and u>11 then op=u :rem changer de signe end_sub :rem ____________ option ________________ sub led() 2d_pen_color 247,79,0:if u>17 then end_sub for j=1 to 2:2d_rectangle left(u),top(u),left(u)+width(u),top(u)+height(u) wait 40:2d_pen_color 158,174,139:next j:end_sub move: 2d_pen_color 0,0,0:2d_pen_width 1 2d_fill_color 158,174,139:2d_rectangle 0,0,319,500:2d_pen_width 10:return sub opt() select u case 16:inactive 16:b$=b$+".":text 40,b$:if b$="." then b$="0.":text 40,b$ case 22:clipboard_string_copy text$(40) case 23:b$=clipboard_string_paste$:text 40,b$ case 24:i=i*-1:select i:case -1:a$=val(text$(40))*E:caption 24,"&Euro " case 01:a$=val(text$(40))/E:caption 24,"&Franc" end_select:text 40,a$:b$=a$:a$="" case 20:terminate case 17:active 16:a$="":b$="":c$="":text 40,"0" end_select end_sub
A+
Dernière édition par joeeee2017 le Mar 18 Sep 2018 - 9:33, édité 1 fois | |
| | | joeeee2017
Nombre de messages : 60 Date d'inscription : 13/10/2017
| Sujet: Re: Calculatrice Mar 18 Sep 2018 - 1:00 | |
|
Dernière édition par joeeee2017 le Mar 18 Sep 2018 - 9:30, édité 1 fois | |
| | | joeeee2017
Nombre de messages : 60 Date d'inscription : 13/10/2017
| Sujet: Re: Calculatrice Mar 18 Sep 2018 - 1:01 | |
|
Dernière édition par joeeee2017 le Mar 18 Sep 2018 - 9:29, édité 1 fois | |
| | | joeeee2017
Nombre de messages : 60 Date d'inscription : 13/10/2017
| Sujet: Re: Calculatrice Mar 18 Sep 2018 - 9:28 | |
| | |
| | | joeeee2017
Nombre de messages : 60 Date d'inscription : 13/10/2017
| Sujet: Re: Calculatrice Mar 18 Sep 2018 - 9:28 | |
| | |
| | | joeeee2017
Nombre de messages : 60 Date d'inscription : 13/10/2017
| Sujet: Re: Calculatrice Mar 18 Sep 2018 - 9:29 | |
| | |
| | | joeeee2017
Nombre de messages : 60 Date d'inscription : 13/10/2017
| Sujet: Re: Calculatrice Mar 18 Sep 2018 - 9:31 | |
| | |
| | | joeeee2017
Nombre de messages : 60 Date d'inscription : 13/10/2017
| Sujet: Re: Calculatrice Mar 18 Sep 2018 - 9:31 | |
| | |
| | | joeeee2017
Nombre de messages : 60 Date d'inscription : 13/10/2017
| Sujet: Re: Calculatrice Mar 18 Sep 2018 - 9:32 | |
| - Jean Claude a écrit:
- Bonjour Joeeee2017 et bienvenue sur ce forum.
Bravo pour ta calculatrice, j'aime bien l'animation des clics sur les touches de la calculatrice.
Vu que tu as prévu la sortie par le menu quitter, essaies la commande BORDER_HIDE 0. Cette commande peut te permettre de diminuer la taille de la fenêtre (FORM) pour l'ajustée à la taille de la calculette.
J'ai vu aussi, une ligne qui peut être supprimée => c1=0:c2=204:c3=51
Pour poster tes codes: tu as un bouton Code à disposition qui crée automatiquement 2 balises pour insérer ton code.
Le résultat: - Code:
-
dim i,j,u,E,a$,b$,c$,op,uu label menu,move
Left 0,screen_x-1000:top 0,99:width 0,337:height 0,572:caption 0,"Calculatrice" edit 40:left 40,13:top 40,18:width 40,287:height 40,70:font_size 40,24 color 40,247,247,247:inactive 40:E=6.55957 data "Quitte ",30,"edition",30,"copier",21,"coller",21,"&Franc ",21 main_menu 30:for i=20 to 24:sub_menu i:read a$:caption i,a$:read u:parent i,u on_click i,menu:next i data 013,346,"0",013,271,"1",088,271,"2",163,271,"3",013,196,"4",088,196,"5" data 163,196,"6",013,121,"7",088,121,"8",163,121,"9",013,421,"=",238,121,"/" data 238,196,"*",238,271,"-",238,346,"+",088,346,".",163,346,"C" for i=1 to 17:button i:read u:left i,u:read u:top i,u:read a$:caption i,"&"+a$ font_size i,25:width i,65:height i,65:on_click i,menu:next i:width 11,290 on_move 0,move:i=1:top 0,100:u=17:opt() end :rem ________________________ menu: u=number_click:led():if u>15 then opt():return if scancode=13 or u=11 then u=11:uu=1 :rem "=" mémorisée, if uu=1 and u<11 then a$="" :rem efface premier nombre set_focus u:if u>10 then calcul():return :rem calcul si possible if b$="0" then b$="" :rem éviter d ecrire "0000" b$=b$+str$(u-1):text 40,b$ return :rem ________________________ sub calcul() active 16:if a$="" then a$=b$:b$="":op=u :rem debut calcul if a$="" then a$="0" :rem exemple - 1 == puis + == if b$="" and u>11 then op=u:uu=0:return :rem signe mémorisé if b$="" then b$=c$ :rem repete "=" if b$="" then return :rem aucun nombre select op case 12:if val(b$)=0 then b$="":text 40,"Impossible":return a$=val(a$)/val(b$) case 13:a$=val(a$)*val(b$) case 14:a$=val(a$)-val(b$) case 15:a$=val(a$)+val(b$) end_select text 40,a$:c$=b$:b$="":if op<>u and u>11 then op=u :rem changer de signe end_sub :rem ____________ option ________________ sub led() 2d_pen_color 247,79,0:if u>17 then end_sub for j=1 to 2:2d_rectangle left(u),top(u),left(u)+width(u),top(u)+height(u) wait 40:2d_pen_color 158,174,139:next j:end_sub move: 2d_pen_color 0,0,0:2d_pen_width 1 2d_fill_color 158,174,139:2d_rectangle 0,0,319,500:2d_pen_width 10:return sub opt() select u case 16:inactive 16:b$=b$+".":text 40,b$:if b$="." then b$="0.":text 40,b$ case 22:clipboard_string_copy text$(40) case 23:b$=clipboard_string_paste$:text 40,b$ case 24:i=i*-1:select i:case -1:a$=val(text$(40))*E:caption 24,"&Euro " case 01:a$=val(text$(40))/E:caption 24,"&Franc" end_select:text 40,a$:b$=a$:a$="" case 20:terminate case 17:active 16:a$="":b$="":c$="":text 40,"0" end_select end_sub
A+ | |
| | | joeeee2017
Nombre de messages : 60 Date d'inscription : 13/10/2017
| Sujet: Re: Calculatrice Mar 18 Sep 2018 - 9:34 | |
| | |
| | | joeeee2017
Nombre de messages : 60 Date d'inscription : 13/10/2017
| Sujet: Re: Calculatrice Mar 18 Sep 2018 - 9:35 | |
| | |
| | | joeeee2017
Nombre de messages : 60 Date d'inscription : 13/10/2017
| Sujet: posté 28/09/2018 Jeu 20 Sep 2018 - 18:49 | |
| - Jean Claude a écrit:
- Bonjour Joeeee2017 et bienvenue sur ce forum.
Bravo pour ta calculatrice, j'aime bien l'animation des clics sur les touches de la calculatrice.
Vu que tu as prévu la sortie par le menu quitter, essaies la commande BORDER_HIDE 0. Cette commande peut te permettre de diminuer la taille de la fenêtre (FORM) pour l'ajustée à la taille de la calculette.
J'ai vu aussi, une ligne qui peut être supprimée => c1=0:c2=204:c3=51
Pour poster tes codes: tu as un bouton Code à disposition qui crée automatiquement 2 balises pour insérer ton code.
Le résultat: - Code:
-
dim i,k,l,u,E,a$,b$,c$,d$,op,uu,v$(20),n(8) label menu,move Left 0,screen_x-1000:top 0,99:width 0,337:height 0,572:caption 0,"Calculatrice" edit 51:left 51,13:top 51,18:width 51,287:height 51,16:font_size 51,13 edit 40:left 40,13:top 40,18:width 40,287:height 40,70:font_size 40,24 font_bold 51:inactive 40:inactive 51:E=6.55957:v$(18)="&Euro":v$(20)="&Franc" color 40,247,247,247:color 51,247,247,247:2d_pen_width 10:n(1)=79:n(3)=18
data "Quitte ",30,"edition",30,"copier",21,"coller",21,"affichage",30 data "&Franc ",24,"&histo",24,"&led",24 main_menu 30:for i=20 to 27:sub_menu i:read a$:caption i,a$:read u:parent i,u on_click i,menu:next i data 013,346,"0",013,271,"1",088,271,"2",163,271,"3",013,196,"4",088,196,"5" data 163,196,"6",013,121,"7",088,121,"8",163,121,"9",013,421,"=",238,121,"/" data 238,196,"*",238,271,"-",238,346,"+",088,346,".",163,346,"C" for i=1 to 17:button i:read u:left i,u:read u:top i,u:read a$:caption i,"&"+a$ v$(i)=a$:font_size i,25:width i,65:height i,65:on_click i,menu:next i width 11,290:on_move 0,move:i=1:k=1:l=1:top 0,100:u=17:opt():u=26:opt():end menu: u=number_click:if scancode=13 or u=11 then u=11:uu=1:rem "=" mémorisée, if u=27 then l=l*-1:return if u<18 and l=1 then led() if u>15 then opt():return if uu=1 and u<11 then a$="" :rem effacer nombre set_focus u:if u>10 then calcul():return :rem calcul si possible if b$="0" then b$="" :rem éviter d ecrire "0000" b$=b$+str$(u-1):text 40,b$:opt2() return:' ________________________ sub calcul() active 16:if a$="" then a$=b$:b$="":op=u :rem debut calcul if a$="" then a$="0" :rem exple -1 == puis + == if b$="" and u>11 then op=u:opt2():uu=0:return:rem signe mémorisé if b$="" then b$=c$ :rem repete "=" if numeric(b$)=0 then return :rem aucun nombre opt2():select op case 12:if val(b$)=0 then text 40,"Impossible":a$="":return a$=val(a$)/val(b$) case 13:a$=val(a$)*val(b$) case 14:a$=val(a$)-val(b$) case 15:a$=val(a$)+val(b$) end_select:text 51,d$+"="+a$ text 40,a$:c$=b$:b$="":if op<>u and u>11 then op=u:opt2():rem changer de signe end_sub:' _______________ option ________________ sub led() 2d_pen_color 247,079,000:ld1():wait 35:2d_pen_color 158,174,139:ld1():end_sub sub ld1():2d_rectangle left(u),top(u),left(u)+width(u),top(u)+height(u):end_sub move: 2d_pen_color 158,174,139:2d_fill_color 158,174,139:2d_rectangle 0,0,319,500:return sub opt() select u case 16:inactive 16:b$=b$+".":if b$="." then b$="0." text 40,b$:text 51,b$ case 22:clipboard_string_copy text$(40) case 23:b$=clipboard_string_paste$:text 40,b$ case 25:i=i*-1:n(8)=val(text$(40)):n(4)=n(8)*E:n(6)=n(8)/E:b$=str$(n(i+5)) caption 25,v$(i+19):a$="":text 40,b$:text 51,b$ case 26:k=k*-1:top 51,n(k+2):gosub move case 17:active 16:a$="":b$="":c$="":op=0:text 40,"0":text 51,"" case 20:terminate:end_select:end_sub sub opt2():text 51,b$:d$=a$+"("+v$(op)+")"+b$:if u<21 and a$<>"" then text 51,d$ end_sub
A+
Dernière édition par joeeee2017 le Ven 28 Sep 2018 - 22:15, édité 6 fois | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Calculatrice Jeu 20 Sep 2018 - 20:19 | |
| C'est quoi ton problème joeeee2017, A mon avis tu devrais tenter d'ouvrir un nouveau sujet. A+ | |
| | | joeeee2017
Nombre de messages : 60 Date d'inscription : 13/10/2017
| Sujet: Re: Calculatrice Jeu 20 Sep 2018 - 20:25 | |
| - Jean Claude a écrit:
- Bonjour Joeeee2017 et bienvenue sur ce forum.
Bravo pour ta calculatrice, j'aime bien l'animation des clics sur les touches de la calculatrice.
Vu que tu as prévu la sortie par le menu quitter, essaies la commande BORDER_HIDE 0. Cette commande peut te permettre de diminuer la taille de la fenêtre (FORM) pour l'ajustée à la taille de la calculette.
J'ai vu aussi, une ligne qui peut être supprimée => c1=0:c2=204:c3=51
Pour poster tes codes: tu as un bouton Code à disposition qui crée automatiquement 2 balises pour insérer ton code.
Le résultat: - Code:
-
dim i,j,k,u,E,a$,b$,c$,op,uu,v$(17) label menu,move Left 0,screen_x-1000:top 0,99:width 0,337:height 0,572:caption 0,"Calculatrice" edit 51:left 51,13:top 51,18:width 51,287:height 51,16:font_size 51,13 edit 40:left 40,13:top 40,18:width 40,287:height 40,70:font_size 40,24 font_bold 51:color 40,247,247,247:inactive 40:inactive 51:E=6.55957 data "Quitte ",30,"edition",30,"copier",21,"coller",21,"&Franc ",21,"&histo",21 main_menu 30:for i=20 to 25:sub_menu i:read a$:caption i,a$:read u:parent i,u on_click i,menu:next i data 013,346,"0",013,271,"1",088,271,"2",163,271,"3",013,196,"4",088,196,"5" data 163,196,"6",013,121,"7",088,121,"8",163,121,"9",013,421,"=",238,121,"/" data 238,196,"*",238,271,"-",238,346,"+",088,346,".",163,346,"C" for i=1 to 17:button i:read u:left i,u:read u:top i,u:read a$:caption i,"&"+a$ v$(i)=a$:font_size i,25:width i,65:height i,65:on_click i,menu:next i width 11,290:on_move 0,move:i=1:k=1:top 0,100:u=17:opt():end menu: u=number_click:if scancode=13 or u=11 then u=11:uu=1:rem "=" mémorisée, led():if u>15 then opt():return if uu=1 and u<11 then a$="" :rem effacer nombre set_focus u:if u>10 then calcul():return :rem calcul si possible if b$="0" then b$="" :rem éviter d ecrire "0000" b$=b$+str$(u-1):text 40,b$:opt2() return:' ________________________ sub calcul() active 16:if a$="" then a$=b$:b$="":op=u :rem debut calcul if a$="" then a$="0" :rem exemple - 1 == puis + == if b$="" and u>11 then op=u:opt2():uu=0:return :rem signe mémorisé if b$="" then b$=c$ :rem repete "=" if b$="" then return :rem aucun nombre opt2():select op case 12:if val(b$)=0 then u=17:opt():text 40,"Impossible":return a$=val(a$)/val(b$) case 13:a$=val(a$)*val(b$) case 14:a$=val(a$)-val(b$) case 15:a$=val(a$)+val(b$) end_select text 40,a$:c$=b$:b$="":if op<>u and u>11 then op=u :rem changer de signe end_sub:' _______________ option ________________ sub led() 2d_pen_color 247,079,000:if u>17 then end_sub for j=1 to 2:2d_rectangle left(u),top(u),left(u)+width(u),top(u)+height(u) 2d_pen_color 158,174,139:wait 35:next j:end_sub move: 2d_pen_color 0,0,0:2d_pen_width 1 2d_fill_color 158,174,139:2d_rectangle 0,0,319,500:2d_pen_width 10 return sub opt() select u case 16:inactive 16:b$=b$+".":text 40,b$:if b$="." then b$="0.":text 40,b$ case 22:clipboard_string_copy text$(40) case 23:b$=clipboard_string_paste$:text 40,b$ case 24:i=i*-1:select i:case -1:a$=val(text$(40))*E:caption 24,"&Euro " case 01:a$=val(text$(40))/E:caption 24,"&Franc" end_select:text 40,a$:b$=a$:a$="":text 51,b$ case 17:active 16:a$="":b$="":c$="":op=0:text 40,"0":text 51,"" case 20:terminate case 25:k=k*-1:top 51,18:gosub move:select k:case -1:top 51,79:end_select end_select:end_sub sub opt2() if a$="" then text 51,b$:end_sub if u<21 then text 51,a$+"("+v$(op)+")"+b$ end_sub
A+ | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Calculatrice Jeu 20 Sep 2018 - 21:06 | |
| | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Calculatrice Jeu 20 Sep 2018 - 22:54 | |
| Je crois que joeeee2017 a le hoquet de 2018 ! Ce n’est pas grave sauf si ça va continuer ! | |
| | | joeeee2017
Nombre de messages : 60 Date d'inscription : 13/10/2017
| Sujet: fait le 21/09/2018 Ven 21 Sep 2018 - 17:00 | |
| - Jean Claude a écrit:
- Bonjour Joeeee2017 et bienvenue sur ce forum.
Bravo pour ta calculatrice, j'aime bien l'animation des clics sur les touches de la calculatrice.
Vu que tu as prévu la sortie par le menu quitter, essaies la commande BORDER_HIDE 0. Cette commande peut te permettre de diminuer la taille de la fenêtre (FORM) pour l'ajustée à la taille de la calculette.
J'ai vu aussi, une ligne qui peut être supprimée => c1=0:c2=204:c3=51
Pour poster tes codes: tu as un bouton Code à disposition qui crée automatiquement 2 balises pour insérer ton code.
Le résultat: - Code:
-
dim i,j,u,E,a$,b$,c$,op,uu,v$(17),k,n(5) label menu,move Left 0,screen_x-1000:top 0,99:width 0,337:height 0,572:caption 0,"Calculatrice" edit 51:left 51,13:top 51,18:width 51,287:height 51,16:font_size 51,13 edit 40:left 40,13:top 40,18:width 40,287:height 40,70:font_size 40,24 font_bold 51:inactive 40:inactive 51:E=6.55957 color 40,247,247,247:color 51,247,247,247:2d_pen_width 10 data "Quitte ",30,"edition",30,"copier",21,"coller",21,"&Franc ",21,"&histo",21 main_menu 30:for i=20 to 25:sub_menu i:read a$:caption i,a$:read u:parent i,u on_click i,menu:next i data 013,346,"0",013,271,"1",088,271,"2",163,271,"3",013,196,"4",088,196,"5" data 163,196,"6",013,121,"7",088,121,"8",163,121,"9",013,421,"=",238,121,"/" data 238,196,"*",238,271,"-",238,346,"+",088,346,".",163,346,"C" for i=1 to 17:button i:read u:left i,u:read u:top i,u:read a$:caption i,"&"+a$ v$(i)=a$:font_size i,25:width i,65:height i,65:on_click i,menu:next i width 11,290:n(1)=79:n(3)=18:on_move 0,move:i=1:k=1:top 0,100:u=17:opt():end menu: u=number_click:if scancode=13 or u=11 then u=11:uu=1:rem "=" mémorisée, led():if u>15 then opt():return if uu=1 and u<11 then a$="" :rem effacer nombre set_focus u:if u>10 then calcul():return :rem calcul si possible if b$="0" then b$="" :rem éviter d ecrire "0000" b$=b$+str$(u-1):text 40,b$:opt2() return:' ________________________ sub calcul() active 16:if a$="" then a$=b$:b$="":op=u :rem debut calcul if a$="" then a$="0" :rem exemple - 1 == puis + == if b$="" and u>11 then op=u:opt2():uu=0:return :rem signe mémorisé if b$="" then b$=c$ :rem repete "=" if b$="" then return :rem aucun nombre opt2():select op case 12:if val(b$)=0 then u=17:opt():text 40,"Impossible":return a$=val(a$)/val(b$) case 13:a$=val(a$)*val(b$) case 14:a$=val(a$)-val(b$) case 15:a$=val(a$)+val(b$) end_select text 40,a$:c$=b$:b$="":if op<>u and u>11 then op=u :rem changer de signe end_sub:' _______________ option ________________ sub led() if u>17 then end_sub 2d_pen_color 247,079,000:ld1():wait 35:2d_pen_color 158,174,139:ld1():end_sub sub ld1():2d_rectangle left(u),top(u),left(u)+width(u),top(u)+height(u):end_sub move: 2d_pen_color 158,174,139:2d_fill_color 158,174,139:2d_rectangle 0,0,319,500:return sub opt() select u case 16:inactive 16:b$=b$+".":text 40,b$:if b$="." then b$="0.":text 40,b$ case 22:clipboard_string_copy text$(40) case 23:b$=clipboard_string_paste$:text 40,b$ case 24:i=i*-1:select i:case -1:a$=val(text$(40))*E:caption 24,"&Euro " case 01:a$=val(text$(40))/E:caption 24,"&Franc" end_select:b$=a$:a$="":text 40,b$:text 51,b$ case 17:active 16:a$="":b$="":c$="":op=0:text 40,"0":text 51,"" case 25:k=k*-1:top 51,n(k+2):gosub move case 20:terminate:end_select:end_sub sub opt2():text 51,b$:if u<21 and a$<>"" then text 51,a$+"("+v$(op)+")"+b$:end_sub
A+ | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Calculatrice Ven 21 Sep 2018 - 22:45 | |
| Dis jo4e2017, tu as un problème avec le Forum ? Sinon, à quel jeu tu joues ? | |
| | | Contenu sponsorisé
| Sujet: Re: Calculatrice | |
| |
| | | | Calculatrice | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |