Temas > Programacion > Python > Polinomios: suma, producto, opuesto, raices
Julio

Este es un pequeño escript con un menú que nos da a elegir la suma de dos
polinomios, el producto, el opuesto, y las rices de un polinomio. Si
creamos un fichero por ej polinomio.py y copiamos lo sig.   
<? //esto no va
#! /usr/bin/python

import math

class Polinomio:
    def __init__(self, n1, n2, n3):
        self.a=n1
        self.b=n2
        self.c=n3

    def suma(self, p2):
        r1=self.a+p2.a
        r2=self.b+p2.b
        r3=self.c+p2.c

        return Polinomio(r1, r2, r3)

    def producto(self, n):
        self.a*=n
        self.b*=n
        self.c*=n
        

    def opuesto(self):
        r1=self.a*-1
        r2=self.b*-1
        r3=self.c*-1

        return Polinomio(r1, r2, r3)

    def raices(self):

        if (self.a==0) or ((math.pow(self.b,2) - (4*self.a*self.c)) < 0):
            
            return 0, 0
        else :
            r1 = ((-1 * self.b) + math.sqrt( math.pow(self.b,2) -
(4*self.a*self.c))) / 2*self.a
            r2 = ((-1 * self.b) - math.sqrt( math.pow(self.b,2) -
(4*self.a*self.c))) / 2*self.a

            return r1, r2

                  
    def imprimir(self):
        return str(self.a) + `x2 + ` + str(self.b) + `x + ` + str(self.c)


def pedirPolinomio():

    a=int(raw_input(`Introduce el valor para a :`))
    b=int(raw_input(`Introduce el valor para b :`))
    c=int(raw_input(`Introduce el valor para c :`))

    return Polinomio(a, b, c)

num=0
while num != 5 :
    num=0
    print `1.-Suma de polinomios`
    print `2.-Producto por un escalar`
    print `3.-Opuesto`
    print `4.-Calculo de las raices de un polinomio`
    print `5.-Salir`
        
    while num < 1 or num > 5 :
        num=int(raw_input(`Elige la opcion deseada : `))
    
    if num==1:
        print `Primer polinomio`
        pol1=pedirPolinomio()
        print `Segundo polinomio`
        pol2=pedirPolinomio()

        pol3=pol1.suma(pol2)

        print `La suma de los polinomios ` + pol1.imprimir() + ` y ` +
pol2.imprimir() + ` da como resultado : ` + pol3.imprimir()

    elif num==2:
        print `Valor del polinomio`
        pol=pedirPolinomio()
        n=int(raw_input(`Ahora introduce el valor del escalar : `))

        pol.producto(n)

        print `Al multiplicar el polinomio por ` + str(n) + ` nos queda ` +
pol.imprimir()
        
    elif num==3:
        print `Valor del polinomio`
        pol1=pedirPolinomio()
        pol2=pol1.opuesto()

        print `El opuesto de ` + pol1.imprimir() + ` es ` + pol2.imprimir()

            
    elif num==4:
        print `Valor del polinomio`
        pol=pedirPolinomio()

        if pol.c==0:
            print `Al ser C=0 la raiz del polinomio es 0`
        else:
            r1, r2=pol.raices()

            if r1==0:
                print `Este polinomio no puede solucionarse`    
            else:
                print `Las raices del polinomio ` + pol.imprimir() + ` son x=` +
str(r1) + ` y x=` + str(r2)

?>//esto no va

Ahora nos vamos donde esta el fichero y por consola ponemos ./polinomio.py
y se ejecutaría nuestro script.

    













¿Has olviado tu contraseña?

Pulsa aquí para registrate




Google






LunMarMieJueVieSabDom
    123
45678910
11121314151617
181920 21222324
252627282930 

Jueves 21 de Noviembre 2024
Semana 47

..............................................................................................................................................................................................................................................
(Contacto)..
Esta web utiliza cookies para obtener datos estadísticos de la navegación de sus usuarios. Política de privacidad y Aviso legal