jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: Décompsition en facteurs premiers Dim 22 Aoû 2010 - 19:25 | |
| Voilà ce qu'on se met à faire lorsqu'on a besoin de trouver les facteurs premiers d'un assez grand nombre et qu'on trouve trop fatigant de les calculer à la main... Je crois que quelqu'un en avait déjà publié un, une fois, Nicolas peut-être (désolé pour l'auteur, si je me trompe) mais celui-là est très simple. - Code:
-
rem ' Décomposition en facteurs premiers dim a , b , i , r$ label go , key
left 0,300 : top 0,200 : width 0,370 : height 0,220 caption 0,"DÉCOMPOSITION EN FACTEURS PREMIERS"
edit 1 left 1,20 : top 1,40 set_focus 1 : on_key_up 1,key
button 2 left 2,200 : top 2,40 caption 2,"Calculer" on_click 2,go
alpha 3 left 3,20 : top 3,90
progress_bar 4 left 4,20 : top 4,140 : width 4,255 : min 4,0
alpha 5 left 5,20 : top 5,20 caption 5,"Entrez un nombre"
end
go: if text$(1)<>"" and text$(1)<>"0" and text$(1)<>"-0" and numeric(text$(1))=1 caption 3,"ATTENDEZ" a=val(text$(1)) if sgn(a)=1 r$="+" else r$="-" end_if a=abs(a) max 4,a for i=2 to a b=0 while a/i=int(a/i) a=a/i : b=b+1 end_while if b<>0 r$=r$+" "+str$(i)+"^"+str$(b) end_if position 4,i next i caption 3,r$ end_if return
key: if key_up_code=13 then gosub go return
Dernière édition par jjn4 le Dim 22 Aoû 2010 - 19:47, édité 1 fois | |
|
flowerkinzy
Nombre de messages : 100 Date d'inscription : 23/09/2009
| Sujet: Re: Décompsition en facteurs premiers Dim 22 Aoû 2010 - 19:39 | |
| Question: comment le progress_bar fonctionne concretement (ca m'interesse)? p'tit conseil: trouver un moyen d'eviter le bug du nombre 1 (ah la la.... ) | |
|
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: +++ Dim 22 Aoû 2010 - 19:55 | |
| Ouaih, ouaih, la p'tite bête ! En vrai, merci d'avoir trouvé un bug ce qui m'a d'ailleurs permis d'en corriger également un autre. (c'est modifié dans le listing situé plus haut) Pour les progress_bar c'est très simple : on le définit comme n'importe quel autre objet système on le place où on veut avec left top... on peut le mettre vertical si on veut (vertical N) on définit son minimum et son maximum (min N,V1) (max N,V2) et pendant tout le cycle i qui se passe, on lit la position de la ligne bleue avec position N,i on peut aussi connaître la position de la ligne bleue, pour calcul, avec x=position(N) et voilà pour l'essentiel ! | |
|
Contenu sponsorisé
| Sujet: Re: Décompsition en facteurs premiers | |
| |
|