Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

TESTER LA FIABILITÉE DE LA FONCTION RANDRANGE AVEC INTERFACE TYPE SISMOGRAPHE


Information sur la source

Catégorie :Application complète Classé sous : interface, xeolin, random, aléatoire, sismographe Niveau : Expert Date de création : 09/06/2006 Date de mise à jour : 08/03/2008 06:39:52 Vu : 2 697

Note :
10 / 10 - par 1 personne
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (11)
Ajouter un commentaire et/ou une note

Description

Cliquez pour voir la capture en taille normale
Bon c'est un tableau qui a une echelle de 400 à -400 qui affiche la moyenne d'une liste de la fonction randrange...

J'en ai fait un pour calculer la chaleur de l'unitée centrale mais le nombre de ligne s'exprimait en millier ce qui ne serait pas très interessant...

c'est surtout pour l'interface...
 

Source

  • ####Version 1.2##########
  • ##########################
  • ###### Importation #######
  • ##########################
  • from Tkinter import *
  • from random import *
  • ##########################
  • ## creation de variable ##
  • ##########################
  • tempo=10 ### vitesse de base en milliseconde (100 pour pc faible) (pas moins de 10)
  • flag=0
  • dest=0
  • flagi=0
  • comp=0
  • ############################
  • ## creation des fonctions ##
  • ############################
  • def perp2() :
  • global dest,comp
  • comp+=1
  • u=randrange(-5,6)
  • root.title('exportation : F10 -- tirage n-%s || tirage= %s || Moyenne= %s || F12 pour preciSsion || By xeolin || Tester la fonction randrange || %s || '%(comp,u,dest,randrange(-1,2)))
  • dest+=u
  • # ici est regroupe le mouvement des lignes verticales et de la courbe
  • def perp () :
  • global flag,obj,liste,liste2,aliste
  • perp2()
  • flag+=1
  • if flag==25 : flag=0
  • for a in range (0,48) :
  • can.delete(obj[a])
  • obj=[]
  • for a in range(0,1200) :
  • can.delete(liste2[a])
  • for a in range (0,1200,25) :
  • obj.append(can.create_line(a+flag,0,flag+a,850,fill='grey100'))
  • liste2=[]
  • aliste= []
  • for a in range(0,1200) :
  • aliste.append(liste[a])
  • liste=[]
  • for a in range(0,1200) :
  • if a==0: liste.append(dest)
  • elif a==1200 : liste.append(0);liste.append(0)
  • else : liste.append(aliste[a-1])
  • for a in range(0,1200) :
  • if a==0: liste2.append(can.create_line(a,0,a,426-liste[a],fill='grey0'))
  • else :liste2.append(can.create_line(a,425-liste[a-1],a,426-liste[a],fill='grey0'))
  • root.after(tempo,perp) #actualisation dans "tempo"
  • def pi(event) :
  • global flagi
  • if flagi==1 :
  • flagi= 0
  • can.delete(ron) # haha !: appuyez sur f12 lors de l'execution
  • can.delete(ron2)
  • else :flagi=1
  • def cer (event):
  • global ron , ron2
  • if flagi==1 :
  • can.delete(ron)
  • can.delete(ron2)
  • ron=can.create_line(0,event.y,1200,event.y,fill='blue')
  • ron2=can.create_line(event.x,0,event.x,1200,fill='blue')
  • def exp (event):
  • #exportation
  • fen=Tk()
  • Txt=Text(fen)
  • Txt.pack()
  • Txt.insert("0.0",liste)
  • fen.mainloop()
  • del fen
  • ############################
  • ## creation de la fenetre ##
  • ############################
  • root=Tk()
  • can=Canvas(width=1200, height=850,bg='green')
  • can.bind('<Motion>',cer)
  • root.bind('<F12>',pi)
  • root.bind('<F10>',exp)
  • can.grid(column=1,row=0)
  • can0=Canvas(width=30, height=850,bg='green')
  • can0.grid(column=0,row=0)
  • ron=can.create_oval(0,0,3,3)
  • ron2=can.create_oval(0,0,3,3)
  • ################################################
  • ####### creation des barres horizontales ######
  • ################################################
  • for a in range (0,850,25) :
  • if a==425 :can.create_line(0,a,1200,a,fill='blue')
  • else:can.create_line(0,a,1200,a,fill='grey100')
  • for a in range (0,850,25) :
  • can0.create_line(0,a,35,a,fill='grey0')
  • ###################################################
  • ## creation de la graduation (chiffres positifs) ##
  • ###################################################
  • for a in range (25,425,25) :
  • can0.create_text(15,a-5,text=str(425-a),fill='red')
  • can0.create_text(10,420,text='0',fill='blue')
  • ###################################################
  • ## creation de la graduation (chiffres negatifs) ##
  • ###################################################
  • for a in range (450,850,25) :
  • can0.create_text(15,a-5,text=str(-(a-425)),fill='red')
  • ################################################
  • ####### creation des barres horizontales ######
  • ################################################
  • obj=[]
  • for a in range (0,1200,25) :
  • obj.append(can.create_line(a,0,a,850,fill='grey100'))
  • ################################################
  • ####### creation de la liste des resultats ######
  • ################################################
  • liste=[]
  • for a in range(0,1200) :
  • liste.append(0)
  • ################################################
  • ###### creation des barres "de la courbe" ######
  • ################################################
  • liste2=[]
  • for a in range(0,1200) :
  • liste2.append(can.create_line(0,0,0,0,fill='grey0'))
  • root.after(500,perp) #lancement de perp
  • root.mainloop()
####Version 1.2##########

##########################
###### Importation #######
##########################
from Tkinter import *
from random import *
##########################
## creation de variable ##
##########################
tempo=10 ### vitesse de base en milliseconde (100 pour pc faible) (pas moins de 10)
flag=0
dest=0
flagi=0
comp=0
############################
## creation des fonctions ##
############################
def perp2() :
	global dest,comp
	comp+=1
	u=randrange(-5,6)
	root.title('exportation : F10 -- tirage n-%s || tirage= %s || Moyenne= %s || F12 pour preciSsion || By xeolin || Tester la fonction randrange || %s || '%(comp,u,dest,randrange(-1,2)))
	dest+=u


# ici est regroupe le mouvement des lignes verticales et de la courbe
def perp () :
	global flag,obj,liste,liste2,aliste
	perp2()
	flag+=1
	if flag==25 : flag=0
	for a in range (0,48) :
		can.delete(obj[a])
	obj=[]
	for a in range(0,1200) :
		can.delete(liste2[a])
	for a in range (0,1200,25) :
		obj.append(can.create_line(a+flag,0,flag+a,850,fill='grey100'))
	liste2=[]
	aliste= []
	for a in range(0,1200) :
		aliste.append(liste[a])
	liste=[]
	for a in range(0,1200) :
		if a==0: liste.append(dest)
		elif a==1200 : liste.append(0);liste.append(0)
		else : liste.append(aliste[a-1])
			
	for a in range(0,1200) :
		if a==0: liste2.append(can.create_line(a,0,a,426-liste[a],fill='grey0'))
		else :liste2.append(can.create_line(a,425-liste[a-1],a,426-liste[a],fill='grey0'))
	root.after(tempo,perp) #actualisation dans "tempo"
	


def pi(event) :
	global flagi
	if flagi==1 :
		flagi= 0
		can.delete(ron) # haha !: appuyez sur f12 lors de l'execution
		can.delete(ron2)
	else :flagi=1
	


def cer (event):
	global ron , ron2
	if flagi==1 :
		can.delete(ron)
		can.delete(ron2)
		ron=can.create_line(0,event.y,1200,event.y,fill='blue') 
		ron2=can.create_line(event.x,0,event.x,1200,fill='blue')
		
def exp (event):
	#exportation
	fen=Tk()
	Txt=Text(fen)
	Txt.pack()
	Txt.insert("0.0",liste)
	fen.mainloop()
	del fen
############################
## creation de la fenetre ##
############################

root=Tk()

can=Canvas(width=1200, height=850,bg='green')
can.bind('<Motion>',cer)
root.bind('<F12>',pi)
root.bind('<F10>',exp)
can.grid(column=1,row=0)
can0=Canvas(width=30, height=850,bg='green')
can0.grid(column=0,row=0)
ron=can.create_oval(0,0,3,3)
ron2=can.create_oval(0,0,3,3)
################################################
####### creation des barres horizontales ######
################################################
for a in range (0,850,25) :
	if a==425 :can.create_line(0,a,1200,a,fill='blue')
	else:can.create_line(0,a,1200,a,fill='grey100')
for a in range (0,850,25) :
	can0.create_line(0,a,35,a,fill='grey0')
###################################################
## creation de la graduation (chiffres positifs) ##
###################################################
for a in range (25,425,25) :
	can0.create_text(15,a-5,text=str(425-a),fill='red')
can0.create_text(10,420,text='0',fill='blue')
###################################################
## creation de la graduation (chiffres negatifs) ##
###################################################
for a in range (450,850,25) :
	can0.create_text(15,a-5,text=str(-(a-425)),fill='red')
################################################
####### creation des barres horizontales ######
################################################
obj=[]
for a in range (0,1200,25) :
	obj.append(can.create_line(a,0,a,850,fill='grey100'))
################################################
####### creation de la liste des resultats ######
################################################
liste=[]
for a in range(0,1200) :
	liste.append(0)
################################################
###### creation des barres "de la courbe" ######
################################################
liste2=[]
for a in range(0,1200) :
		liste2.append(can.create_line(0,0,0,0,fill='grey0'))
root.after(500,perp) #lancement de perp
root.mainloop() 

Historique

19 juin 2006 21:56:02 :
Mise de commentaire (VIVE HCD) ^^
20 juin 2006 17:33:21 :
par demande de hcd
08 mars 2008 06:39:52 :
ajout de la fonction exportation ± speedup le zip n'est plus a jour

Commentaires et avis

signaler à un administrateur
Commentaire de xeolin le 12/06/2006 18:18:18

snif personne est la
¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤
:(
.:::::::¨¨¨¨¨¨:::::.

signaler à un administrateur
Commentaire de HCD le 12/06/2006 23:54:20

XEOLIN
Ta source me parait bien conçue et le code fonctionne très bien, mais elle manque cruellement d'une présentation au départ pour dire ce que l'on cherche à montrer et de commentaires au fil du code pour les variables et les fonctions.
Pas étonnant qu'il n'y ait pas encore de réaction.
Si tu veux je peux te donner un coup de mmain pour la mise en forme du texte.
A+
HCD
PS : j'observe que tu as mis une capture d'écran ...

signaler à un administrateur
Commentaire de xeolin le 14/06/2006 17:15:38

ton aide au niveau des commentaire me serai presieuse...

snif,

je suis nul pour ca...

signaler à un administrateur
Commentaire de HCD le 14/06/2006 21:25:58

Pas de problème pour cela, mais il faut d'abord que tu fasses les projets de commentaires.
Après je mettrai en forme.
J'ai déjà fait cela pour une étudiante de la fac de Lille.
Le plus pratique serait de bien numéroter les versions pour que l'on ne s'y perde pas.
Celle-ci pourrait s'appeler par exemple RANDOM.v1
Toutes les modifications dans le code devront être repérées en bout de ligne pour être bien visibles par le destinataire, pour éviter de passer du temps à les rechercher.
Il faudrait aussi pouvoir échanger les fichiers en dehors du site : par email.
Voici mon adresse électronique : henri.dugre@wanadoo.fr
A toi de commencer
HCD

signaler à un administrateur
Commentaire de xeolin le 15/06/2006 15:07:32

je t'envairai un mail quant j'aurai le temps (je suis pas sur mon ordi)

Qui a guild war ?

Have fun ! (fodrais que je le trouve en latin ^^)

Xeo

signaler à un administrateur
Commentaire de xeolin le 19/06/2006 22:02:24

_____________________________________________________________________________________________

le premier jour Xeolin dit : Que la source soit : et la source fut

le second jour HCD dit : Que les comentaires soient : et les commentaires furent.
____________________________________________________________________________________________


signaler à un administrateur
Commentaire de HCD le 19/06/2006 23:37:36

Salut XEOLIN

Le troisième jour le DICO dit : que l' ORTHO soit : et l' ORTHO fut.
Le septième jour HCD se reposa ...
( Inutile de me remercier, puisque je n'ai rien fait... )

En conclusion , ta source est très intéressante.

Dernier point : je suis tout à fait d'accord pour que mon commentaire soit supprimé après que tu l'aies regardé.
A toi de le demander à nos amis administrateurs du site.
HCD

Ci-après quelques modifications dans le texte

_________________________________________________________________________________________________________

####################################################################################
####################################################################################
########################## By ######################################################
############################# XEOLIN ###############################################
################################# ou ###############################################
################################### SK8GIS #########################################
####Version 1.0####################### ou ##########################################
######################################## Tipro75 ###################################
####################################################################################
####################################################################################
  
  
  
##########################
###### Importation #######
##########################
from Tkinter import *
from random import *
##########################
## création de variable ##
##########################
tempo=200 ### vitesse de base en milliseconde (500 pour pc faible) (pas moins de 50)
flag=0
dest=0
flagi=0
comp=0
############################
## création des fonctions ##
############################
def perp2() :
    global dest,comp
    comp+=1
    u=randrange(-5,6)
    root.title('tirage n°%s || tirage= %s || Moyenne= %s || F12 pour precision || By Sk8gis || Tester la fonction randrange || %s || '%(comp,u,dest,randrange(-1,2)))
    dest+=u
  
  
# ici est regroupé le mouvement des lignes verticales et de la courbe
def perp () :
    global flag,obj,liste,liste2,aliste
    perp2()
    flag+=1
    if flag==25 : flag=0
    for a in range (0,48) :
        can.delete(obj[a])
    obj=[]
    for a in range(0,1200) :
        can.delete(liste2[a])
    for a in range (0,1200,25) :
        obj.append(can.create_line(a+flag,0,flag+a,850,fill='grey100'))
    liste2=[]
    aliste= []
    for a in range(0,1200) :
        aliste.append(liste[a])
    liste=[]
    for a in range(0,1200) :
        if a==0: liste.append(dest)
        elif a==1200 : liste.append(0);liste.append(0)
        else : liste.append(aliste[a-1])
            
    for a in range(0,1200) :
        if a==0: liste2.append(can.create_line(a,0,a,426-liste[a],fill='grey0'))
        else :liste2.append(can.create_line(a,425-liste[a-1],a,426-liste[a],fill='grey0'))
    root.after(tempo,perp) #actualisation dans "tempo"
    
  
  
def pi(event) :
    global flagi
    if flagi==1 :
        flagi= 0
        can.delete(ron) # haha !: appuyez sur f12 lors du jeu
        can.delete(ron2)
    else :flagi=1
    
  
  
def cer (event):
    global ron , ron2
    if flagi==1 :
        can.delete(ron)
        can.delete(ron2)
        ron=can.create_line(0,event.y,1200,event.y,fill='blue') # idem c la même fonction mais je me suis pas foulé, j'ai mis ca en 2
        ron2=can.create_line(event.x,0,event.x,1200,fill='blue')
        
  
############################
## création de la fenêtre ##
############################
  
root=Tk()
  
can=Canvas(width=1200, height=850,bg='green')
can.bind('<Motion>',cer)
root.bind('<F12>',pi)
can.grid(column=1,row=0)
can0=Canvas(width=30, height=850,bg='green')
can0.grid(column=0,row=0)
ron=can.create_oval(0,0,3,3)
ron2=can.create_oval(0,0,3,3)
################################################
####### création des barres horizontales ######
################################################
for a in range (0,850,25) :
    if a==425 :can.create_line(0,a,1200,a,fill='blue')
    else:can.create_line(0,a,1200,a,fill='grey100')
for a in range (0,850,25) :
    can0.create_line(0,a,35,a,fill='grey0')
##################################################
## création de la graduation (chiffres positifs) ##
##################################################
for a in range (25,425,25) :
    can0.create_text(15,a-5,text=str(425-a),fill='red')
can0.create_text(10,420,text='0',fill='blue')
##################################################
## création de la graduation (chiffres negatifs) ##
##################################################
for a in range (450,850,25) :
    can0.create_text(15,a-5,text=str(-(a-425)),fill='red')
################################################
####### création des barres horizontales ######
################################################
obj=[]
for a in range (0,1200,25) :
    obj.append(can.create_line(a,0,a,850,fill='grey100'))
################################################
####### création de la liste des résultats ######
################################################
liste=[]
for a in range(0,1200) :
    liste.append(0)
################################################
###### création des barres "de la courbe" ######
################################################
liste2=[]
for a in range(0,1200) :
        liste2.append(can.create_line(0,0,0,0,fill='grey0'))
root.after(500,perp) #lancement de perp
root.mainloop()
  
______________________________________________________________________________________________________
Tu peux supprimer ce qui suit
______________________________________________________________________________________________________  
  
####################################################################################
############## Là HCD tu ne peux pas dire que je n'ai pas commenté ! #####################
####################################################################################
################## de plus je ne ferai pas les commentaires ########################
##################### sur ma source "Tkinter en simplifié" : #######################
######################### car ce boulôt est impossible pour un simple ##############
############################# mortel comme moi : ###################################
################################ j'ai un don : #####################################
################################### celui que personne (même moi ne ################
##################################### puisse me relire). Heureusement, #############
######################################### ce talent me quitte (désormais) ###########
############################################lors de mes ddissertations et dictées. ##
####################################################################################
################# #####################################################
################# # HAVE FUN # #####################################################
################# ############### ^^ ##################################
####################################################################################
####################################################################################

signaler à un administrateur
Commentaire de xeolin le 26/06/2006 11:48:24

bas je pense quec'est la fin de ma source....

même si j'ai l'impression qu'elle est inachevée..

bon en espérant que cette source vous aidera dans vos interface graphique....

/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*

signaler à un administrateur
Commentaire de aera group le 28/01/2008 09:39:10

Exellente source Xeolin, très belle interface graphique ! Ca mérite bien un 10/10. Une eptite fonction pour exporter les résultats ? :)
Bonne continuation et très bonne journée à toi !!!
____
Aéra

signaler à un administrateur
Commentaire de xeolin le 08/03/2008 06:13:53

comme d'ab 6mois plus tard, mais oui je vais le faire :)

signaler à un administrateur
Commentaire de xeolin le 08/03/2008 06:42:38

c'est fait :)

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Vous feriez comment... ? [ par freeosca ] Bonjour à tous, Pourriez-vous me confirmer que l'exemple qui suit est possible avec ce langage : Exemple : - J'installe une distrib linux sur un pc Random [ par tribipod08 ] Bonjour à tous, voilà  je voudrais faire une fonction random autre que celle dejà présente dans python, mais pour celà comment dois je faire ? J'ai pe python + objet COM [ par anis50 ] Bonjour a tous, j'ai un petit probleme, c'est que j'ai un objet COM gener&#233; par VC++ donc son interface (.h), j'ai besoin d'appeler les methodes i interface c++ / python [ par gwenc_hlan ] bonjour, je programme maintenant depuis quelques mois avec python, et je commence à maitriser à peu pres correctement le langage.mais l'autre jour, je Probleme de conception [ par JoeNamat ] Bonjour a vous,Je ne suis pas un tres bon programmeur et j'ai programme une interface graphique en python avec PyGTK. Cette interface graphique interr Importer un module. [ par reveurduciel ] Bonjour Il y a quelques chose que je ne comprends pas...Voilà, j'essaie d'utiliser une fonction du module random de python... D'abord je l'essai sans Tuto Swinnen : mouvement aléatoire ? [ par nemo43 ] Bonjour à tous,J'étudie le langage python - c'est un loisir - avec le livre de Gérard Swinnen (comme beaucoup de francophones je pense ). Je bloque su


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version


LG KP501

Entre 9€ et 159€


Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,374 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.