def error(nro_intervalos, nro_test, umbral): fallos = 0 for i in range(nro_test): s = modulo.error(nro_intervalos) error = abs(s - modulo.pi) if error >= umbral: fallos = fallos + 1 return ((fallos / nro_test) * 100)
def error(nro_intervalos,nro_test,umbral): fallos=0 for i in range (nro_test): s=modulo.error(nro_intervalos) error=abs(s-modulo.pi) if error>=umbral: fallos=fallos+1 return ((fallos/nro_test)*100)
aproximaciones = int (argumentos[1]) umbral = [] for i in range (2,7): umbral.append(float (argumentos[i])) nombre_fichero = argumentos[7] else: print"Introduzca el nº de intervalos (n>0): " n = int (raw_input()); print "Introduzca el numero de aproximaciones: " aproximaciones = int (raw_input()); print"Introduzca 5 umbrales de aproximaciones" umbral = [] for i in range(5): print"Introduzca el umbral", i, ":" umbral.append(float (raw_input())); print "Introduzca el nombre del fichero para almacenar los resultados: " nombre_fichero = raw_input(); if (n>0): # Una forma para averiguar si un fichero existe o no puede ser esta try: fichero = open (nombre_fichero, "a") except: fichero = open (nombre_fichero, "w") fichero.write ("Nº de intervalos: %d\n" % (aproximaciones)) for i in range (5): porcentaje = modulo.error (n, aproximaciones, umbral[i]) fichero.write ("%2.2f%% de fallos para el umbral %2.5f\n" % (porcentaje, umbral[i])) fichero.close () else: print "El valor de los intervalos debe ser mayor que 0"
#!ecoding: UTF-8 import modulo import time nro_test=10 intervalos=[10, 50, 100, 150, 500, 550, 1000, 10000, 100000] umbral=[1e-3, 1e-4, 1e-5, 1e-6, 1e-7] nombre = "prac12.txt" #Abrimos el archivo y escribimos, como cabecera, el orden en el que almacenaremos los datos. f=open(nombre, 'w') f.write ('Intervalos, Valor aproximado, Porcetaje de fallos, Tiempo CPU \n ') f.write('============================ \n') # Vamos a for n in intervalos: p=[] p=p+[n] a=modulo.aproximacion(n) p=p+[a] ci=time.clock() for e in umbral: e=modulo.error(n, nro_test, e) p=p+[e] cf=time.clock() tp=cf-ci p=p+[tp] f.write(str(p)) f.write("\n") f.close()
umbral.append(float(raw_input())) print"Introduzca el nombre del fichero para almacenar los resultados" nombre_fich= raw_input() if (n>0): # Una forma de averiguar si un fichero existe o no puede ser esta # debemos de incluir el paquete os.path # if os.path.isfile(nombre_fich): # fichero=open(nombre_fich,"a") # else: # fichero=open(nombre_fich,"w") # Otra forma puede ser mediante excepciones, como vemos a continuacion: try: fichero=open(nombre_fich,"a") except: fichero=open(nombre_fich,"w") fichero.write("Nº de intervalos: %d\n" %(aprox)) for i in range (5): start=time.time() modulo.error(n,aprox,umbral[i]) finish=time.time()-start t1=timeit.Timer("modulo.error(n,aprox,umbral)","from __main__ import modulo; n=%d;aprox=%d;umbral=%f" % (n,aprox,umbral[i])) # print t1.timeit(10) fichero.write("%2.10f\n" % (finish)) fichero.close() else: print "El valor de los intervalos debe ser mayor que 0"
umbral=[] for i in range (2,7): umbral.append(float(argumentos[i])) nombre_fich=argumentos[7] else: print "Introduzca el número de intervalos (n>0): " n=int(raw_input()) print "Introduzca el número de aproximaciones: " aprox=int(raw_input()) print "Introduzca 5 umbrales de error: " umbral=[] for i in range (5): print "Introduzca el umbral",i, ":" umbral.append(float(raw_input())) print "Introduzca el nombre del fichero para almacenar los resultados: " nombre_fich=raw_input() if (n>0): try: fichero=open(nombre_fich, "a") except: fichero=open(nombre_fich, "w") fichero.write("Nº de intervalos: %d\n" % (aprox)) for i in range(5): porcentaje=modulo.error(n, aprox, umbral[i]) fichero.write("%2.2f%% de fallos para el umbral %2.5f\n" % (porcentaje,umbral[i])) fichero.close()
#!/src/bin/python #!ecoding: UTF-8 import matplotlib.pylab as pl import modulo import time nro_test=100 intervalos=[10, 50, 100, 150, 500, 550, 1000] umbral=[1e-3, 1e-4, 1e-5, 1e-6, 1e-7] p=[] for n in intervalos: ci=time.clock() e=modulo.error(n, nro_test, 1e-7) cf=time.clock() tp=cf-ci p=p+[tp] pl.figure(figsize=(10,10),dpi=80) pl.plot(intervalos,p, 'r') pl.subplot(2,1,1) pl.xticks([10, 50, 100, 150, 500, 550, 1000]) pl.title('Tiempo respecto a los intervalos') pl.xlabel('Intervalos') pl.ylabel('Tiempo') pl.legend(['10']) pl.xlim(-10,1100)
#!/src/bin/python import modulo import time nro_test = 10 intervalos = [10, 50, 100, 150, 500, 550, 1000] umbral = [1e-3, 1e-4, 1e-5, 1e-6, 1e-7] nombre = "prct12_b.txt" f = open(nombre, 'w') f.write('Intervalos, Valor aproximado, Porcetaje de fallos, Tiempo CPU \n ') f.write('============================ \n') for n in intervalos: p = [] p = p + [n] a = modulo.aproximacion(n) p = p + [a] ci = time.clock() for e in umbral: e = modulo.error(n, nro_test, e) p = p + [e] cf = time.clock() tp = cf - ci p = p + [tp] f.write(str(p)) f.write("\n") f.close()
aproximaciones = int(argumentos[1]) umbral = [] for i in range(2, 7): umbral.append(float(argumentos[i])) nombre_fichero = argumentos[7] else: print "Introduzca el nº de intervalos (n>0):" n = int(raw_input()) print "Introduzca el nº de aproximaciones:" aproximaciones = int(raw_input()) print "Introduzca 5 umbrales de error:" umbral = [] for i in range(5): print "Introduzca el umbral", i, ":" umbral.append(float(raw_input())) print "Introduzca el nombre del fichero para almacenar los resultados:" nombre_fichero = raw_input() if (n > 0): try: fichero = open(nombre_fichero, "a") except: fichero = open(nombre_fichero, "w") fichero.write("Nº de tiempos: %d\n" % (aproximaciones)) for i in range(5): start = time.time() porcentaje = modulo.error(n, aproximaciones, umbral[i]) finish = time.time() - start fichero.write("%2.10f\n" % (finish)) fichero.close() else: print "El valor de los intervalos debe ser mayor que 0"
for i in range (2,7): umbral.append(float (argumentos[i])) nombre_fichero = argumento [7] else: print "Introduzca el nº de intervalos (n>0):" n = int (raw_input()) print "Introduzca el nº de aproximaciones (aproximaciones>0):" aproximaciones = int(raw_input()) print "Introduce 5 umbrales" umbral = [] for i in range (5): print "Introduzca el umbral", i,":" umbral.append(float(raw_input())) print "Introduzca el nombre del fichero para almacenar los resultados:" nombre_fichero = raw_input() if (n > 0): try: fichero = open (nombre_fichero, "a") # Intenta abrir el fichero de nombre_fichero y si no esta creado lo crea con la linea de except except: fichero = open (nombre_fichero, "w") fichero.write ("Nº de intervalos: %d\n"%(aproximaciones)) # Escribe en el fichero el numero de intervalos for i in range (5): start=time.time() modulo.error (n,aproximaciones,umbral[i]) finish=time.time()-start t1=timeit.Timer("modulo.error(n,aproximaciones,umbral)",setup="from__main__import modulo; n=%d; aproximaciones=%d;umbral=%f" % (n,aproximaciones,umbral[i])) print t1.timeit(10) fichero.write("Con el umbral [%d] tarda: %2.10f\n" % (i,finish)) fichero.close() # cierra fichero else: print "EL valor de los intervalos debe ser mayor que 0"
aproximaciones = int(raw_input()) print "Introduce 5 umbrales" umbral = [] for i in range(5): print "Introduzca el umbral", i, ":" umbral.append(float(raw_input())) print "Introduzca el nombre del fichero para almacenar los resultados:" nombre_fichero = raw_input() if (n > 0): try: fichero = open( nombre_fichero, "a" ) # Intenta abrir el fichero de nombre_fichero y si no esta creado lo crea con la linea de except except: fichero = open(nombre_fichero, "w") fichero.write( "Nº de intervalos: %d\n" % (aproximaciones)) # Escribe en el fichero el numero de intervalos for i in range(5): start = time.time() modulo.error(n, aproximaciones, umbral[i]) finish = time.time() - start t1 = timeit.Timer( "modulo.error(n,aproximaciones,umbral)", setup="from__main__import modulo; n=%d; aproximaciones=%d;umbral=%f" % (n, aproximaciones, umbral[i])) print t1.timeit(10) fichero.write("Con el umbral [%d] tarda: %2.10f\n" % (i, finish)) fichero.close() # cierra fichero else: print "EL valor de los intervalos debe ser mayor que 0"
y=[] m=[] e=[] nro_test=20 umbral=0.0000001 if __name__=="__main__": import sys f=open("tiempo y errores", 'w') #print "Introduzca el nombre del fichero para almacenar los resultados:" #nombre_fichero= raw_input(); for i in x: start=time.time() pe=modulo.error(i,nro_test,umbral) finish=time.time()-start print "El porcentaje de error es de: %5.3f" %pe print "El tiempo que tarda en realizarse es: %14.13f" %finish y=y+[finish] e=e+[pe] f.write(str(finish) + '\n') f.write(str(pe) + '\n') f.close() print y # graf1= pl.subplot(211)
#!/src/bin/python import modulo import time import matplotlib.pylab as pl nro_test=10 intervalos=[10, 50, 100, 150, 500, 550, 1000] umbral=[1e-3, 1e-4, 1e-5, 1e-6, 1e-7] p=[] for n in intervalos: ci=time.clock() e=modulo.error(n, nro_test, 1e-4) cf=time.clock() tp=cf-ci p=p+[tp] pl.figure(figsize=(10,10), dpi=80) pl.subplot(2,1,1) pl.plot(intervalos,p, color="red", linewidth=2.5, linestyle="-") pl.xticks([10, 50, 100, 150, 500, 1000]) pl.title(r'Tiempo') pl.xlabel('Intervalos') pl.ylabel('Tiempo en segundos') pl.xlim(-10, 1100) pl.ylim(-0.001, 0.14) pl.savefig("prct13.eps", dpi=72)