[Python] - Infinitas soluciones o no.

Iniciado por Meta, 26 Noviembre 2010, 14:03 PM

0 Miembros y 1 Visitante están viendo este tema.

Meta


Buenas:

Mirando aquí.
CitarHaz una función que devuelva la solución de la ecuación lineal ax + b = 0 dados a y b. Si la ecuación tiene infinitas soluciones o no tiene solución alguna, la función lo detectará y devolverá el valor None.

Pensé que era más fácil pero veo que no.

Código (python) [Seleccionar]
def funcion(x):
    return (a * x + b) = 0


;)
Tutoriales Electrónica y PIC: http://electronica-pic.blogspot.com/

seele

pues nuevamente lo mismo, tienes que entender para poder realizar este ejercicio como funciona exactamente la funcion lineal, si no lo haces no podras pasarlo a programacion....
Te recomiendo que practiques creandote problemas que tu mismo puedas resolver y asi puedes aplicar la sintaxis de python, no toda practica tiene que ser matematica. planteate un problema mas sencillo, algo que hagas dia a dia y del que quieras automatizar una tarea

saludos

Meta

No se si hay que poner valores a la a y b o sólo la x.
Tutoriales Electrónica y PIC: http://electronica-pic.blogspot.com/

Novlucker

CitarHaz una función que devuelva la solución de la ecuación lineal ax + b = 0 dados a y b
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

Meta

Lo pensé. Y la x que pinta. ¿Es un amultiplciación o es com la a y b para guardar datos dentro?

Por eso puse (a * x + b) = 0.
Tutoriales Electrónica y PIC: http://electronica-pic.blogspot.com/

Meta

Hola de nuevo:

Hice algo así:
Código (python) [Seleccionar]
def funcion(a, b):
    return a * x + b = 0

print funcion(3, 5)


Me da este error de la x que es lo que me confunde, no se si es un valor x o simplemente una multiplicación.
Citarreturn a * x + b = 0
                     ^
SyntaxError: invalid syntax

Saludo.
Tutoriales Electrónica y PIC: http://electronica-pic.blogspot.com/

.:WindHack:.

¿Recuerdas cómo resolver las ecuaciones lineales (ecuaciones de primer grado)?

Ejemplo:
2x + 5 = 17
2x = 17 - 5
x = 12 / 2
x = 6
-
2x + 5 = 17
2(6) + 5 = 17
12 + 5 = 17
17 = 17

Pues bien, has lo mismo con la ecuación del enunciado.
a y b son términos conocidos y x es la variable de la incógnita por lo cual:

ax + b = 0
x = -b/a

Follow me on Twitter: @windhack | Visit my website: www.daw-labs.com

"The only thing they can't take from us are our minds."

Meta

#7
Gracias por esa explicación, voy a intentarlo mejor, por ahora no me sale.

Código (python) [Seleccionar]

def funcion(a, b):
 
# Ejemplo:
#2x + 5 = 17
#2x = 17 - 5
#x = 12 / 2
#x = 6

#2x + 5 = 17
#2(6) + 5 = 17
#12 + 5 = 17
#17 = 17

   return x = -b / a

print funcion(2, 5)


No se que hay de malo aquí:
Código (python) [Seleccionar]
def funcion(a, b):

   return a x + b = 0

print funcion(2, 5)

Citarreturn a x + b = 0
            ^
SyntaxError: invalid syntax

Otro intento más.
Código (python) [Seleccionar]
def funcion(a, b):
 
# Ejemplo:
#2x + 5 = 17
#2x = 17 - 5
#x = 12 / 2
#x = 6

#2x + 5 = 17
#2(6) + 5 = 17
#12 + 5 = 17
#17 = 17

   x = (0 - b) / a
   return x

a = int(raw_input('Introduce un número entero: '))
b = int(raw_input('Introduce otro número entero: '))


print funcion(2, 5)


Me da un resultado que parece ser no correcto.
CitarIntroduce un número entero: 2
Introduce otro número entero: 5
-3

¿Aquí no tienes que poner un - 2, un signo negativo o son cosas mias y hay que dejarlo en positivo?
Código (python,4) [Seleccionar]
# Ejemplo:
#2x + 5 = 17
#2x = 17 - 5
#x = 12 / - 2
#x = 6

#2x + 5 = 17
#2(6) + 5 = 17
#12 + 5 = 17
#17 = 17
Tutoriales Electrónica y PIC: http://electronica-pic.blogspot.com/

.:WindHack:.

Hola.

Mira, primero que todo la ecuación tiene que estar ordenada para poder resolverse. O sea:

2x + 5 = 17
2x + 5 - 17 = 0
2x - 12 = 0
ax - b  = 0

-
Aplicando fórmula:
x = -b / a
x = -(-12) / 2
x = 12 / 2
x = 6

Código (python) [Seleccionar]
def equ(a,b):
     return -b / a

Follow me on Twitter: @windhack | Visit my website: www.daw-labs.com

"The only thing they can't take from us are our minds."