Invité Invité
| Sujet: Conversion d'unités Sam 26 Mar 2011 - 16:41 | |
| Bonjour, J'ai fais un petit programme pour faire des conversions d'unités. (230 lignes de code) - Code:
-
dim masse$(36),x,masse,Name$,i,j
label valeur,suit,masse,bouton
masse$(1)="Grammes/Onces":masse$(2)="Kilogrammes/Livres":masse$(3)="Tonnes/Livres":masse$(4)="Milligrammes/Onces":masse$(5)="Tonnes/Kilogrammes":masse$(6)="Milligrammes/Grammes":masse$(7)="Celcius/Fahrenheits":masse$(8)="Kelvins/Fahrenheits":masse$(9)="Kelvins/Celcius" masse$(10)="Centimètres/Pouces":masse$(11)="Mètres/Pieds":masse$(12)="Mètres/Verges":masse$(13)="Kilomètres/Miles":masse$(14)="Kilomètres/Milles marins":masse$(15)="Miles/Verges":masse$(16)="Verges/Pieds":masse$(17)="Pieds/Pouces" masse$(18)="Centimètres²/Pouces²":masse$(19)="Mètres²/Pieds²":masse$(20)="Mètres²/Verges²":masse$(21)="Hectares/Acres":masse$(22)="Kilomètres²/Miles²":masse$(23)="Hectares/Mètres²" masse$(24)="Années-lumière/Mille milliards de km":masse$(25)="Années-lumière/Parsecs":masse$(26)="Années-lumière/Milliers d'unités astronomiques":masse$(27)="Unités astronomiques/Millions de km" masse$(28)="Unités astronomiques/Minutes de lumière":masse$(29)="Unités astronomiques/Millionièmes de parsec":masse$(30)="Millions de km/Millionième d'année-lumière":masse$(31)="Millions de km/Unités astronomique":masse$(32)="Millions de km/Millionième de parsec" masse$(33)="Kilomètres heure/Noeuds":masse$(34)="Kilomètres heure/Mètres seconde":masse$(35)="Noeuds/Milles marins heure":masse$(36)="Milles marins heure/Mètres heure"
Name$="Conversion grammes/onces" masse=1
caption 0,"Conversion d'unités" width 0,310 height 0,170
alpha 1 left 1,5 top 1,5 font_size 1,10 caption 1,Name$+chr$(10)+chr$(10)+string$(25," ")+"grammes"+chr$(10)+chr$(10)+string$(25," ")+"onces"
j=37 for i=2 to 3 edit i:left i,5:top i,j:width i,70:j=j+28:on_key_up i,suit next i
j=30 for i=4 to 5 button i:left i,217:width i,80:top i,j:j=j+30:on_click i,valeur:on_key_up i,suit next i caption 4,"Grammes":caption 5,"Onces"
alpha 6 left 6,10 top 6,95
main_menu 8 sub_menu 9:parent 9,8:caption 9,"Unité de conversion" for i=53 to 88 sub_menu i:parent i,9:caption i,masse$(i-52):on_click i,masse next i
set_focus 2
list 28:hide 28 list 40:hide 40 for i=1 to 36 item_add 40,masse$(i) next i
alpha 30:hide 30:font_size 30,10:caption 30,caption$(1)
alpha 36 left 36,10 top 36,95
end
suit: if key_up_special=3 if key_up_code=78 then goto new if key_up_code=83 then goto save if key_up_code=76 then goto logo if key_up_code=77 then goto menus if key_up_code=69 then goto erreurs if key_up_code=73 then goto instructions if key_up_code=84 then goto options if key_up_code=112 then goto soustitres end_if return
masse: x=0 for i=53 to 88 if clicked(i)=1 masse=i-52 width 5,80:width 4,80 if i=53 then caption 4,"Grammes":caption 5,"Onces" if i=54 then caption 4,"Kilogrammes":caption 5,"Livres" if i=55 then caption 4,"Tonnes":caption 5,"Livres" if i=56 then caption 4,"Milligrammes":caption 5,"Onces" if i=57 then caption 4,"Tonnes":caption 5,"Kilogrammes" if i=58 then caption 4,"Milligrammes":caption 5,"Grammes" if i=59 then caption 4,"Celcius":caption 5,"Fahrenheits" if i=60 then caption 4,"Kelvins":caption 5,"Fahrenheits" if i=61 then caption 4,"Kelvins":caption 5,"Celcius" if i=62 then caption 4,"Centimètres":caption 5,"Pouces" if i=63 then caption 4,"Mètres":caption 5,"Pieds" if i=64 then caption 4,"Mètres":caption 5,"Verges" if i=65 then caption 4,"Kilomètres":caption 5,"Miles" if i=66 then caption 4,"Kilomètres":caption 5,"Milles marins" if i=67 then caption 4,"Miles":caption 5,"Verges" if i=68 then caption 4,"Verges":caption 5,"Pieds" if i=69 then caption 4,"Pieds":caption 5,"Pouces" if i=70 then caption 4,"Centimètres²":caption 5,"Pouces²" if i=71 then caption 4,"Mètres²":caption 5,"Pieds²" if i=72 then caption 4,"Mètres²":caption 5,"Verges²" if i=73 then caption 4,"Hectares":caption 5,"Acres" if i=74 then caption 4,"Kilomètres²":caption 5,"Miles²" if i=75 then caption 4,"Hectares":caption 5,"Mètres²" if i=76 then caption 4,"Années-lumière":caption 5,"Mille milliards de km":x=1 if i=77 then caption 4,"Années-lumière":caption 5,"Parsecs" if i=78 then caption 4,"Années-lumière":caption 5,"Milliers d'UA" if i=79 then caption 4,"Unités astronomiques":caption 5,"Millions de km":x=1 if i=80 then caption 4,"Unités astronomiques":caption 5,"Minutes de lumière":x=1 if i=81 then caption 4,"Unités astronomiques":caption 5,"Millionièmes de parsec":x=1 if i=82 then caption 4,"Millions de km":caption 5,"Millionième d'année-lumière":x=1 if i=83 then caption 4,"Millions de km":caption 5,"Unités astronomique":x=1 if i=84 then caption 4,"Millions de km":caption 5,"Millionième de parsec":x=1 if i=85 then caption 4,"Km/h":caption 5,"Noeuds" if i=86 then caption 4,"Km/h":caption 5,"M/sec" if i=87 then caption 4,"Noeuds":caption 5,"Milles marins/h" if i=88 then caption 4,"Milles marins/h":caption 5,"Mètres/h" Name$="Conversion "+lower$(item_read$(40,i-52)) caption 30,Name$+chr$(10)+chr$(10)+string$(25," ")+lower$(caption$(4))+chr$(10)+chr$(10)+string$(25," ")+lower$(caption$(5)) if width(30)>300 if width(1)<300 width 0,width(30)+18:left 4,width(30)-75:left 5,width(30)-75 else caption 1,Name$+chr$(10)+chr$(10)+string$(25," ")+lower$(caption$(4))+chr$(10)+chr$(10)+string$(25," ")+lower$(caption$(5)) left 4,width(30)-75:left 5,width(30)-75 end_if else if width(1)>300 caption 1,Name$+chr$(10)+chr$(10)+string$(25," ")+lower$(caption$(4))+chr$(10)+chr$(10)+string$(25," ")+lower$(caption$(5)) left 4,227:left 5,227:width 0,320 else width 0,320 end_if end_if caption 1,Name$+chr$(10)+chr$(10)+string$(25," ")+lower$(caption$(4))+chr$(10)+chr$(10)+string$(25," ")+lower$(caption$(5)) if x=1 then gosub bouton end_if next i return
bouton: width 0,width(0)+55 for j=4 to 5 width j,width(j)+55 next j return
valeur: if clicked(5)=1 if text$(2)="" then beep:return if (numeric(text$(2)))=0 then hide 36:caption 6,"Entrez une valeur numérique!":beep:wait 1000:caption 6,Nom$:show 36:return if masse=7 then text 3,val(text$(2))*9/5+32:return if masse=8 then text 3,(val(text$(2))-273.15)*9/5+32:return if masse=9 then text 3,val(text$(2))-273.15:return if val(text$(2))>1000000000 or val(text$(2))<0.000001 then hide 36:caption 6,"La valeur est trop grande ou trop petite!":beep:wait 1000:show 36:return if masse=1 then text 3,val(text$(2))/28.34952 if masse=2 then text 3,val(text$(2))/0.45359 if masse=3 then text 3,val(text$(2))*1000/0.45359 if masse=4 then text 3,val(text$(2))/(1000*28.34952) if masse=5 then text 3,val(text$(2))*1000 if masse=6 then text 3,val(text$(2))/1000 if masse=10 then text 3,val(text$(2))*0.39370078740157477 if masse=11 then text 3,val(text$(2))*3.280839895013123 if masse=12 then text 3,val(text$(2))*1.0936132983377078 if masse=13 then text 3,val(text$(2))*0.621371192237334 if masse=14 then text 3,val(text$(2))*0.5399568034557235 if masse=15 then text 3,val(text$(2))*1760 if masse=16 then text 3,val(text$(2))*3 if masse=17 then text 3,val(text$(2))*12 if masse=18 then text 3,val(text$(2))*0.15500031000062 if masse=19 then text 3,val(text$(2))*10.763910416709722 if masse=20 then text 3,val(text$(2))*1.1959900463010802 if masse=21 then text 3,val(text$(2))*2.4710538146716539 if masse=22 then text 3,val(text$(2))*0.3861021585424459 if masse=23 then text 3,val(text$(2))*10000 if masse=24 then text 3,val(text$(2))*9.460528 if masse=25 then text 3,val(text$(2))*0.3065948 if masse=26 then text 3,val(text$(2))*63.23973 if masse=27 then text 3,val(text$(2))*149.598 if masse=28 then text 3,val(text$(2))*8.317 if masse=29 then text 3,val(text$(2))*4.848 if masse=30 then text 3,val(text$(2))*0.1057 if masse=31 then text 3,val(text$(2))*0.0067 if masse=32 then text 3,val(text$(2))*0.3241 if masse=33 then text 3,val(text$(2))*30.53995680344557235 if masse=34 then text 3,val(text$(2))*0.2777777777777778 if masse=35 then text 3,val(text$(2))*1 if masse=36 then text 3,val(text$(2))*1852 end_if if clicked(4)=1 if text$(3)="" then beep:return if (numeric(text$(3)))=0 then hide 36:caption 6,"Entrez une valeur numérique!":beep:wait 1000:caption 6,Nom$:show 36:return if masse=7 then text 2,(val(text$(3))-32)*5/9:return if masse=8 then text 2,(val(text$(3))-32)*5/9+273.15:return if masse=9 then text 2,val(text$(3))+273.15:return if val(text$(3))>1000000000 or val(text$(3))<0.000001 then hide 36:caption 6,"La valeur est trop grande ou trop petite!":beep:wait 1000:caption 6,Nom$:show 36:return if masse=1 then text 2,val(text$(3))*28.34952 if masse=2 then text 2,val(text$(3))*0.45359 if masse=3 then text 2,val(text$(3))*0.45359/1000 if masse=4 then text 2,val(text$(3))*(1000*28.34952) if masse=5 then text 2,val(text$(3))/1000 if masse=6 then text 2,val(text$(3))*1000 if masse=10 then text 2,val(text$(3))*2.54 if masse=11 then text 2,val(text$(3))*0.3048 if masse=12 then text 2,val(text$(3))*0.9144 if masse=13 then text 2,val(text$(3))*1.609344 if masse=14 then text 2,val(text$(3))*1.852 if masse=15 then text 2,val(text$(3))/1760 if masse=16 then text 2,val(text$(3))/3 if masse=17 then text 2,val(text$(3))/12 if masse=18 then text 2,val(text$(3))/0.15500031000062 if masse=19 then text 2,val(text$(3))/10.763910416709722 if masse=20 then text 2,val(text$(3))/1.1959900463010802 if masse=21 then text 2,val(text$(3))/2.4710538146716539 if masse=22 then text 2,val(text$(3))/0.3861021585424459 if masse=23 then text 2,val(text$(3))/10000 if masse=24 then text 2,val(text$(3))/9.460528 if masse=25 then text 2,val(text$(3))/0.3065948 if masse=26 then text 2,val(text$(3))/63.23973 if masse=27 then text 2,val(text$(3))/149.598 if masse=28 then text 2,val(text$(3))/8.317 if masse=29 then text 2,val(text$(3))/4.848 if masse=30 then text 2,val(text$(3))/0.1057 if masse=31 then text 2,val(text$(3))/0.0067 if masse=32 then text 2,val(text$(3))/0.3241 if masse=33 then text 2,val(text$(3))*1.852 if masse=34 then text 2,val(text$(3))/0.2777777777777778 if masse=35 then text 2,val(text$(3))/1 if masse=36 then text 2,val(text$(3))/1852 end_if return |
|