Tester la fiabilitée de la fonction randrange avec interface type sismographe

Contenu du snippet

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 / Exemple :


####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()

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.