Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: Lauta en 14 Diciembre 2007, 20:23 pm



Título: Graficador de funciones básico
Publicado por: Lauta en 14 Diciembre 2007, 20:23 pm
Buenas, estoy haciendo un programita que grafique funciones básicas, lineales, cuadráticas, cúbicas y un par de trigonométricas... Con las funciones lineales todo bien, pero con las cuadráticas, luego de pedir la ecuación me sale un error:

EDITO: YA ENCONTRE EL ERROR Y TERMINE EL PROGRAMA:

Código del programa (por si a algún novatin como yo le interesa :P):

Código:
from math import*

print('Programa para el cálculo de funciones simples')

print('Elige una opción: ')

print('1-Lineales\n2-Cuadráticas\n3-Cúbicas\4-Seno\n5-Coseno\n6-Tangente')

eleccion=int(raw_input())

print('Has elegido la opción %d')% eleccion

if eleccion>=1 and eleccion<=3:
  x=-100
  incremento=0.05
 
  window_size(300,300)
  window_coordinates(-50,-50,50,50)
 
  create_line(-50,0,50,0)
  create_line(0,-50,0,50)
 
  if eleccion==1:
    print('Las lineales son de la forma: A.X+B')
    A=float(raw_input('Dime el valor de A: '))
    B=float(raw_input('Dime el valor de B: '))
 
    while x<100:
      create_point(x,A*x+B)
      x+=incremento
   
  if eleccion==2:
    print('Las cuadráticas son de la forma A.X2(cuadrado)+B.X+C')
    A=float(raw_input('Dime el valor de A: '))
    B=float(raw_input('Dime el valor de B: '))
    C=float(raw_input('Dime el valor de C: '))
    while x<100:
      create_point(x,A*x**2+B*x+C)
      x+=incremento
   
  if eleccion==3:
    print('Las cúbicas son de la forma A.X3+B.X2+C.X+D')
    A=float(raw_input('Dime el valor de A: '))
    B=float(raw_input('Dime el valor de B: '))
    C=float(raw_input('Dime el valor de C: '))
    D=float(raw_input('Dime el valor de D: '))
 
    while x<100:
      create_point(x,A*x**3+B*x**2+C*x+D)
      x+=incremento
     
else:
  x=-2*pi
  incremento=0.05
 
  window_size(300,300)
  window_coordinates(-2*pi,-2,2*pi,2)
 
  create_line(-2*pi,0,2*pi,0)
  create_line(0,-2,0,2)

  if eleccion==4:
    while x<2*pi:
      create_point(x,sin(x))
      x+=incremento
     
  if eleccion==5:
    while x<2*pi:
      create_point(x,cos(x))
      x+=incremento
     
  if eleccion==6:
    while x<2*pi:
      create_point(x,tan(x))
      x+=incremento
     
print('GRACIAS POR UTILIZAR NUESTRO PROGRAMA')