Foros del Web » Programando para Internet » Python »

"leer entero" muy importante

Estas en el tema de "leer entero" muy importante en el foro de Python en Foros del Web. me piden que cree un programa o una funcion para cada uno de los 2 casos 1.una funcion que coja el coeficiente real de la ...

  #1 (permalink)  
Antiguo 02/11/2010, 08:01
 
Fecha de Ingreso: octubre-2010
Mensajes: 19
Antigüedad: 13 años, 6 meses
Puntos: 0
necesito ayuda

me piden que cree un programa o una funcion para cada uno de los 2 casos

1.una funcion que coja el coeficiente real de la parte imaginaria y real, y que salga por la pantalla el numero complejo.

2.escribir los coeficientes de una ecuacion de segundo grado,y que al pedirlo desde el teclado saque las raices por la pantalla.

gracias
  #2 (permalink)  
Antiguo 02/11/2010, 09:33
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: necesito ayuda

¿y qué has hecho hasta ahora? ¿qué parte no te sale?
  #3 (permalink)  
Antiguo 03/11/2010, 04:55
 
Fecha de Ingreso: octubre-2010
Mensajes: 19
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: necesito ayuda

Código Python:
Ver original
  1. def complejos (a,b):
  2.     if a==0 and b==0:
  3.         print(0)
  4.     elif a==0 and b!=0:
  5.         print(bi)
  6.     elif a!=0 and b==0:
  7.         print(a)
  8.     else a!=0 and b!=0:
  9.         print(a,'+',b,'i')
  10.  
  11. complejos (-3,5)


me da error y no se como corregir
  #4 (permalink)  
Antiguo 03/11/2010, 09:15
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: necesito ayuda

else no lleva condición, por eso te da error.
  #5 (permalink)  
Antiguo 03/11/2010, 09:20
 
Fecha de Ingreso: octubre-2010
Mensajes: 19
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: necesito ayuda

sigo sin entenderlo
  #6 (permalink)  
Antiguo 03/11/2010, 09:37
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: necesito ayuda

Else no lleva ninguna condición.

Código Python:
Ver original
  1. if x > 5: #Aqui si hay condicion
  2.     print("x mayor a 5")
  3. else: #No tiene ninguna condicion
  4.     print("x es menor o igual a 5")
  #7 (permalink)  
Antiguo 03/11/2010, 11:44
 
Fecha de Ingreso: octubre-2010
Mensajes: 19
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: necesito ayuda

gracias, otra duda que tengo:

Código Python:
Ver original
  1. def complejos (a,b):
  2.     if a==0 and b==0:
  3.         print(0)
  4.     elif a==0 and b!=0:
  5.         print(bi)
  6.     elif a!=0 and b==0:
  7.         print(a)
  8.     else:
  9.         print(a,'+',b,'i')
  10.  
  11. complejos (-3,-5)

como consigo quitar el + y los espacios de en medio para que no me den resultados asi;

-3 + -5 i
  #8 (permalink)  
Antiguo 03/11/2010, 11:48
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: necesito ayuda

Al imprimir a, '+', b, 'i' checa si b es negativo entonces no imprimas el signo '+'
  #9 (permalink)  
Antiguo 03/11/2010, 12:18
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: necesito ayuda

Se me habia olvidado que tambien puedes hacer esto:
Código Python:
Ver original
  1. print("%d%+di" % (a, b))

En cuanto a tu segundo problema ya lo habían preguntado antes.
  #10 (permalink)  
Antiguo 03/11/2010, 12:53
 
Fecha de Ingreso: octubre-2010
Mensajes: 19
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: necesito ayuda

perdon sigo sin entender, enserio prefiero que me expliques que se hace y luego corrijas mi codigo phyton, ya que no se donde tengo que poner lo que tu me dices y me da error.

gracias
  #11 (permalink)  
Antiguo 03/11/2010, 13:22
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: necesito ayuda

Ok, en caso:
Código Python:
Ver original
  1. #Como saber si un numero es negativo
  2. if (x < 0):
  3.     print(x, "es negativo")
  4. else:
  5.     print(x, "es 0 o positivo")
Ahora cuando b (la parte imaginaria) sea negativa no imprimes el signo '+' si es cero o positivo imprimes el signo de mas.
  #12 (permalink)  
Antiguo 03/11/2010, 14:06
 
Fecha de Ingreso: octubre-2010
Mensajes: 19
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: necesito ayuda

me sigue saliendo mal. por favor pon todo el codigo python junto con el mio.
  #13 (permalink)  
Antiguo 03/11/2010, 19:07
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: necesito ayuda

¿es mi impresión, o este foro se ha de repente visto invadido por alumnos del mismo curso?

Gente, ¡estudien! Por favor basta de preguntas que demuestran que no saben escribir siquiera la palabra "Python", y si van a preguntar sobre un ejercicio al menos pónganse de acuerdo para no repetir temas.
Estamos acá para ayudar, pero este foro no es una escuela ni una tutoría personal.

Tema cerrado. Y la próxima vez que vea temas haciendo la misma consulta con un par de días de diferencia, va sanción para los autores de todos los temas repetidos. Primer y último aviso.
  #14 (permalink)  
Antiguo 04/11/2010, 06:23
 
Fecha de Ingreso: octubre-2010
Mensajes: 19
Antigüedad: 13 años, 6 meses
Puntos: 0
"leer entero" muy importante

respecto del otro tema, es pura casualidad que hayan publicado el mismo ejercicio dos veces en el mismo dia, ya que yo estoy siguiendo un libro y tengo un libro de ejercicios aparte que estoy haciendo,yo no estoy dando esto como una asignatura que tengo,es cierto que puede que a partir del proximo año empezemos con python y nos han dicho que nos aconstumbremos a el y nada mas...

lo escribo aqui ya que no me deja enviarle mensajes privados a Alvaro.G
--------------------------------------------------------------------------------------------------------
mi duda era muy simple

Código Python:
Ver original
  1. def complejos (a,b):
  2.     if a==0 and b==0:
  3.         print(0)
  4.     elif a==0 and b!=0:
  5.         print(bi)
  6.     elif a!=0 and b==0:
  7.         print(a)
  8.     else:
  9.         print(a,'+',b,'i')
  10.  
  11. complejos (-3,-5)

da lo siguiente: -3 + -5 i, entonces mi pregunta era:¿que tengo que cambiar en mi codigo para que se quiten los espacios y cuando b<0 no aparezca ese + delante?
--------------------------------------------------------------------------------------------------------

yo entiendo que os fastidie que tengais que, por ejemplo, hacer todo el trabajo mientras los otros solo esperan las respuestas para copiarlo.Pero yo he conseguido sacarme un codigo pensando y llevando su tiempo. y mi intencion no es "os publico el trabajo, hacermelo y ya esta luego lo copio", mi intencion es "ayudarme a corregir el codigo para poder hacer lo que os pido y asi aprender."

si os parece mal y no quieren volver a ayudarme, pues me jodere yo mismo...que remedio...

Muchas gracias por su paciencia.
  #15 (permalink)  
Antiguo 04/11/2010, 14:54
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: "leer entero" muy importante

Te voy a dar el beneficio de la duda y a combinar este tema con el anterior. Pero antes de seguir preguntando, seguí de nuevo y lentamente las explicaciones de razpeitia, que deberían ser lo suficientemente claras. Manuales hay muchísimos, si no entendés cómo funciona una función es mejor que leas.

No se aprende a programar en dos días, se necesita leer mucho y tener paciencia.


Saludos.
  #16 (permalink)  
Antiguo 04/11/2010, 16:37
 
Fecha de Ingreso: octubre-2010
Mensajes: 19
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: "leer entero" muy importante

ok Alvaro,gracias, en eso de que no se aprende a programar en dos dias te doy la razon y por eso estoy aqui

bien mi codigo phyton queda algo tal que asi:

Código Python:
Ver original
  1. def complejos (a,b):
  2.     if a==0 and b==0:
  3.         print(0)
  4.     elif a==0 and b!=0:
  5.         print(bi)
  6.     elif a!=0 and b==0:
  7.         print(a)
  8.     else:    
  9.         print("%d%+di" % (a, b))

bien yo escribo esto y calculando: complejos(-3,-5)
me da -3-5i (sin espacios y sin la suma), ahora quiero saber si: ¿hay otra manera de sacar esa misma respuesta pero cambiando mi "else"? ya que me parece un poco complejo.

gracias
  #17 (permalink)  
Antiguo 04/11/2010, 17:22
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: "leer entero" muy importante

No es tan complejo, solamente hay que entender lo que hace. Casi todos los lenguajes tienen una función similar (normalmente llamada printf), y se usa para indicar una cadena (que se llama "de formato") que funciona como una especie de plantilla. La cadena dice dónde y cómo se muestra el contenido de una o más variables:

Código Python:
Ver original
  1. amigo = "Alvaro"
  2. edad = 24
  3. print "Soy %s, tengo %d años" % (amigo, edad)
es equivalente a
Código Python:
Ver original
  1. print "Soy " + amigo + ", tengo " + edad + " años"
o
Código Python:
Ver original
  1. print "Soy", amigo, ", tengo", edad, "años"

la tupla que viene luego del % tiene las variables a "insertar" en la cadena que se imprimirá. %s indica que se debe escribir texto, %d es para escribir un entero.
Hay otros formatos más complejos (%.3f muestra un flotante con 3 dígitos luego del punto decimal) pero los básicos son %s y %d, y así es como funciona el asunto.

En el ejemplo que te pasó razpeitia, el + que sigue a % es para que muestre el signo.

Los espacios agregados vienen de separar los argumentos de print con una coma, para evitarlos se usa el formato que te acabo de describir, o la concatenación (unir trozos con +). Usar una cadena de formato es más eficiente que concatenar (aunque por supuesto no lo notarás con solo un par de cadenas), y te animo a investigar o pensar el por qué.
Concatenar tiene la desventaja adicional de que no podés mezclar enteros y cadenas (tipos int y string), por lo que hay que convertir los enteros a string primero.

Contestando la pregunta, fijate en la forma en la que la planteás:
Cita:
se quiten los espacios y cuando b<0 no aparezca ese + delante
o sea, algo así es lo que querés:
if b < 0:
no_imprimir_+

o sea, hacer algo cuando b > 0, y no hacerlo cuando b < 0. ahora ¿qué es ese algo? Por cómo estás usando print, ahora mismo no ves la solución, pero ¿qué pasa si en vez de separar los argumentos de print con una coma, los unís con +:
Código Python:
Ver original
  1. print str(a) + "+" + str(b) + "i"
(str(a) es necesario porque a es un entero y no se puede concatenar con una cadena, diferencias de tipos)
Ahora está bien claro el punto en el que se está imprimiendo ese +. ¿Qué pasa si lo cambiamos a una variable?
Código Python:
Ver original
  1. mas = ""
  2. print str(a) + mas + str(b) + "i"
ahora solamente falta asignar el valor a la variable mas únicamente cuando b > 0
  #18 (permalink)  
Antiguo 05/11/2010, 05:46
 
Fecha de Ingreso: octubre-2010
Mensajes: 19
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: "leer entero" muy importante

Código Python:
Ver original
  1. def complejos (a,b):
  2.     if a==0 and b==0:
  3.         print(0)
  4.     elif a==0 and b==1:
  5.         print("i")
  6.     elif a==0 and b==-1:
  7.         print("-i")
  8.     elif a==0 and b!=0:
  9.         print(str(b) + "i")
  10.     elif a!=0 and b==0:
  11.         print(a)
  12.     elif b==-1:
  13.         print (str(a) + "-" + "i")
  14.     elif b<-1:
  15.         print (str(a)+ str(b)+"i")
  16.     elif b==1:    
  17.         print (str(a) + "+" + "i")
  18.     elif b>1:
  19.         print (str(a)+ "+" + str(b)+"i")
  20.     else:
  21.         print (str(a) +  str(b) + "i")
  22.  
  23. complejos (a,b)

bueno al final he conseguido incluso mejorarlo un poquito mas jeje

decirme que tal esta y asi comienzo yo a hacer mi segunda cuestion...

Muchisimas gracias
  #19 (permalink)  
Antiguo 05/11/2010, 11:29
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: "leer entero" muy importante

Buena idea para mejorar la impresión
Igual veo muchos casos con código repetido (es decir, hacés cosas muy similares en varios casos, y para evitar eso quizás quieras investigar lo que te comentaba antes de separar las partes "opcionales" de lo que vayas a imprimir y colocarlas en variables, cuyo valor cambiarás según el caso.
Otra opción es ir armando la cadena final de a partes, según el caso. Investigá varias formas, y no olvides familiarizarte con las cadenas de formato, te aseguro que te serán útiles en el futuro (y si algún día programás en C, serán tus mejores amigas a la hora de imprimir con printf)


Saludos.
  #20 (permalink)  
Antiguo 06/11/2010, 10:36
 
Fecha de Ingreso: octubre-2010
Mensajes: 19
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: "leer entero" muy importante

acabo de empezar con mi ecuacion y de veras que necesito ayuda;

Código Python:
Ver original
  1. def ecuacion (a,b,c):
  2.     if a==0 and b!=0:
  3.         print(-c/b)
  4.     elif a!=0 and c==0:
  5.         print (-b/a ,"y", 0)
  6.     elif a==0 and b==0:
  7.         print (c=0)
  8.     else:
  9.         print (imposible)

ese es mi codigo decirme si voy bien porfavor,,, no se como describirle cuando son complejos y los ultimos dos (elif y else) estan mal.
si no es mucho pedir, ¿me podriais dar consejos con diferentes codigos?

es que me lio y me cuesta mucho ver mejor las cosas por que me desanimo,,,

muchas gracias
  #21 (permalink)  
Antiguo 06/11/2010, 15:07
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: "leer entero" muy importante

Lee, este problema tiene que ver mas con matemáticas que con computación. Fíjate bien en el discriminante y en coeficiente de x ** 2.
  #22 (permalink)  
Antiguo 07/11/2010, 04:55
 
Fecha de Ingreso: octubre-2010
Mensajes: 19
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: "leer entero" muy importante

ya ya lo se pero mi problema es que nose por donde empezar ya que hay muchos casos para hacer,,,me podeis dar una pista?

gracias
  #23 (permalink)  
Antiguo 07/11/2010, 06:20
 
Fecha de Ingreso: octubre-2010
Mensajes: 19
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: "leer entero" muy importante

Código Python:
Ver original
  1. def complejos (d,k):
  2.     if d==0 and k==0:
  3.         print(0)
  4.     elif d==0 and k==1:
  5.         print("i")
  6.     elif d==0 and k==-1:
  7.         print("-i")
  8.     elif d==0 and k!=0:
  9.         print(str(k) + "i")
  10.     elif d!=0 and k==0:
  11.         print(d)
  12.     elif k==-1:
  13.         print (str(d) + "-" + "i")
  14.     elif k<-1:
  15.         print (str(d)+ str(k)+"i")
  16.     elif k==1:    
  17.         print (str(d) + "+" + "i")
  18.     elif k>1:
  19.         print (str(d)+ "+" + str(k)+"i")
  20.     else:
  21.         print (str(d) +  str(k) + "i")
  22.  
  23.  
  24. import math
  25.  
  26. a= input=1
  27. b= input=2
  28. c= input=2
  29.  
  30. if b**2-4*a*c < 0:
  31.     d = -b/float(2*a)
  32.     k = (math.sqrt(-(b**2-4*a*c)))/(2*a)
  33.     x = complejos (d,k)
  34.     print(str(d)+'+'+str(k))
  35.     print(str(d)+'-'+str(k))

ese es mi codigo y el resultado, como vereis, no es el que quiero...que hago?
  #24 (permalink)  
Antiguo 07/11/2010, 11:13
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: "leer entero" muy importante

Vuelve a leer
Primero checa el coeficiente de x ** 2 (en este caso le llamaremos a) y luego el discriminante.

Código:
Si a == 0 entonces:
    No es una ecuación de segundo grado
Si no:
    discriminante = b * b - 4 * a * c
    Si discriminante == 0:
        Solo hay una solucion y es real
    Si discriminante < 0:
        La solucion esta en los complejos
    Si no:
        La solucion esta en los reales y son 2
  #25 (permalink)  
Antiguo 07/11/2010, 11:47
 
Fecha de Ingreso: octubre-2010
Mensajes: 19
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: "leer entero" muy importante

Código Python:
Ver original
  1. def complejos (d,k):
  2.     if d==0 and k==0:
  3.         print(0)
  4.     elif d==0 and k==1:
  5.         print("i")
  6.     elif d==0 and k==-1:
  7.         print("-i")
  8.     elif d==0 and k!=0:
  9.         print(str(k) + "i")
  10.     elif d!=0 and k==0:
  11.         print(d)
  12.     elif k==-1:
  13.         print (str(d) + "-" + "i")
  14.     elif k<-1:
  15.         print (str(d)+ str(k)+"i")
  16.     elif k==1:    
  17.         print (str(d) + "+" + "i")
  18.     elif k>1:
  19.         print (str(d)+ "+" + str(k)+"i")
  20.     else:
  21.         print (str(d) +  str(k) + "i")
  22.  
  23.  
  24. import math
  25.  
  26. a= input=1
  27. b= input=2
  28. c= input=2
  29.  
  30. elif a==0:
  31.     print("no es una ecuacion de segundo grado")
  32. else:
  33.     m=b**2-4*a*c
  34.     if m==0:
  35.         print(-2a/b)
  36.     elif m<0:
  37.         print(solucion en los complejos)
  38.     else:
  39.         print (solucion en los reales)

ahora el problema es como escribo esas dos raices complejas y reales...ya que para las complejas tengo que utilizar el programa que he creado antes...

gracias
  #26 (permalink)  
Antiguo 07/11/2010, 12:12
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: "leer entero" muy importante

Enserio lee no te has dado cuenta que esas 2 raíces son x1 y x2.

Si a es cero hay una división entre 0.
Si el discriminante es 0 entonces se va la parte de la raíz cuadrada y te queda -b / 2a
Si el discriminante es mayor a cero entonces tienes x1 y x2 tal como te lo describen en el link
Si el discriminante es menor a cero entonces vuelve positivo el discriminante y usa tu programa de complejos para representar esos números, la parte real seria -b / 2 y la imaginaria sqrt(discriminante) / 2a
  #27 (permalink)  
Antiguo 07/11/2010, 13:10
 
Fecha de Ingreso: octubre-2010
Mensajes: 19
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: "leer entero" muy importante

Código Python:
Ver original
  1. def complejos (d,k):
  2.     if d==0 and k==0:
  3.         print(0)
  4.     elif d==0 and k==1:
  5.         print("i")
  6.     elif d==0 and k==-1:
  7.         print("-i")
  8.     elif d==0 and k!=0:
  9.         print(str(k) + "i")
  10.     elif d!=0 and k==0:
  11.         print(d)
  12.     elif k==-1:
  13.         print (str(d) + "-" + "i")
  14.     elif k<-1:
  15.         print (str(d)+ str(k)+"i")
  16.     elif k==1:    
  17.         print (str(d) + "+" + "i")
  18.     elif k>1:
  19.         print (str(d)+ "+" + str(k)+"i")
  20.     else:
  21.         print (str(d) +  str(k) + "i")
  22.  
  23. import math
  24.  
  25. a= input=2
  26. b= input=4
  27. c= input=1
  28.  
  29.  
  30. if a==0:
  31.     print("no es una ecuacion de segundo grado")
  32. else:
  33.     m=b**2-4*a*c
  34.     if m==0:
  35.         print(-b/(2*a))
  36.     elif m<0:
  37.         print(x1=(complejos(-b/(2*a),math.sqrt(m)+"i"/(2*a)))
  38.         print(x1=(complejos(-b/(2*a),-math.sqrt(m)+"i"/(2*a)))
  39.     else:
  40.         print(x1=(str(-b)+'+'+math.sqrt(m))/(2*a))
  41.         print(x2=(str(-b)+'-'+math.sqrt(m))/(2*a))

me da error y no se que es...
  #28 (permalink)  
Antiguo 07/11/2010, 15:43
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: "leer entero" muy importante

lineas 36, 37, 40, 41 al imprimir esta mal.

36 y 37
La función complejos ya imprime, así que no necesario que le pongas print, solo basta con que la mandes a llamar. Ejemplo de uso
Código Python:
Ver original
  1. complejos( -b/(2*a), (m ** .5) / 2*a )

Lineas 40 y 41:
x1= y x2= no esta entre comillas. Ademas de estar mezclando tipo de datos. Recomiendo fuertemente usar formateo de cadenas.

Links de como usar formateo de cadenas.
Wiki
Inmersión en python
Open Book (en español)
  #29 (permalink)  
Antiguo 07/11/2010, 16:01
 
Fecha de Ingreso: octubre-2010
Mensajes: 19
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: "leer entero" muy importante

Código Python:
Ver original
  1. def complejos (d,k):
  2.     if d==0 and k==0:
  3.         print(0)
  4.     elif d==0 and k==1:
  5.         print("i")
  6.     elif d==0 and k==-1:
  7.         print("-i")
  8.     elif d==0 and k!=0:
  9.         print(str(k) + "i")
  10.     elif d!=0 and k==0:
  11.         print(d)
  12.     elif k==-1:
  13.         print (str(d) + "-" + "i")
  14.     elif k<-1:
  15.         print (str(d)+ str(k)+"i")
  16.     elif k==1:    
  17.         print (str(d) + "+" + "i")
  18.     elif k>1:
  19.         print (str(d)+ "+" + str(k)+"i")
  20.     else:
  21.         print (str(d) +  str(k) + "i")
  22.  
  23. import math
  24.  
  25. a= input=2
  26. b= input=2
  27. c= input=1
  28.  
  29.  
  30. if a==0:
  31.     print("no es una ecuacion de segundo grado")
  32. else:
  33.     m=b**2-4*a*c
  34.     if m==0:
  35.         print(-b/(2*a))
  36.     elif m<0:
  37.         x1=complejos(-b/(2*a), (math.sqrt(m)) / 2*a )
  38.         x2=complejos(-b/(2*a), (math.sqrt(m)) / 2*a )
  39.     else:
  40.         print(x1=(str(-b)+'+'+math.sqrt(m))/(2*a))
  41.         print(x2=(str(-b)+'-'+math.sqrt(m))/(2*a))

todo eso de formato de cadenas es muy complejo para mi, en serio corrigeme lo que tengo mal en el codigo y asi terminamos de una vez,ya que ya he conseguido mas o menos construirlo y los errores son cosas de comillas,etc...asi terminamos y dejamos de volvernos locos.

muchas gracias.
  #30 (permalink)  
Antiguo 07/11/2010, 16:19
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: "leer entero" muy importante

Ya te dije estas mezclando números con cadenas y no estas poniendo cosas como x1= entre comillas.

Formateo de cadenas no es difícil, tu solo te pones limites.

También he notado que no te gusta leer y la mala ortografía respalda lo que digo.

Recomendación: Cambia esa actitud, ponte a leer y practicar entonces cuando no entiendas pregunta.

No mas respuestas hasta que termines tu programa.

Etiquetas: importante
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:20.