sábado, 11 de fevereiro de 2012

Rotina python para solução de equações de 1° e 2° grau

Bom!
Está postagem é a primeira que faço no meu blog.
Digamos que ela é o marco inicial de uma série de postagens que compõem parte do conhecimento técnico que existe dentro da minha cabeça.
Tá certo! vamos direto ao assunto.
Logo abaixo vou postar uma rotina em Python que resolve equações de 1° e 2° grau.

A versão do compilador Python que vou utilizar é a 2.6.5.

1° Passo: Abra o compilador Python 2.6.5
2° Passo: Abra uma nova janela clicando em File > New Window
3° Passo: Escreva o seguinte código
# -*- coding: cp1252 -*-
##################### Solução de equações de 1° e 2° grau ######################
print 'Digite 1 se a equação é de 1°grau e 2 se é de 2° grau'
eq = raw_input('Entre com o número que define o tipo de equação: ')
if eq=='1' or eq=='2':
____eq=int(eq) #Converte o texto em valor numérico inteiro
____if eq==1:
________print 'Formato geral da equação do 1° grau ax+b=0'
________a=raw_input('Digite o valor de a: ')
________a=float(a) #Converte o texto num valor numérico real
________b=raw_input('Digite o valor de b: ')
________b=float(b) #Converte o texto num valor numérico real
________x = -b/a
________print 'x = ', x
____elif eq==2:
________print 'Formato geral da equação do 2° grau ax²+bx+c=0'
________a=raw_input('Digite o valor de a: ')
________a=float(a) #Converte o texto num valor numérico real
________b=raw_input('Digite o valor de b: ')
________b=float(b) #Converte o texto num valor numérico real
________c=raw_input('Digite o valor de c: ')
________c=float(c) #Converte o texto num valor numérico real
________# Cálculo do valor delta
________delta = b**2 - 4*a*c
________if delta>=0:
____________x1=(-b-delta**0.5)/(2*a)
____________x2=(-b+delta**0.5)/(2*a)
____________print 'x1 = ', x1
____________print 'x2 = ', x2
________elif delta<0:
____________raizdelta=complex(0,abs(delta))
____________x1=(-b-raizdelta)/(2*a)
____________x2=(-b+raizdelta)/(2*a)
____________print 'Raízes complexas'
____________print 'x1 = ', x1
____________print 'x2 = ', x2
else:
____print 'Entrada não válida'

Obs.: Ao copiar a rotina, antes de usá-la, substitua cada underline por um espaço.
A rotina e seus resultados tem o seguinte formato:

Nenhum comentário:

Postar um comentário