Faça um programa que calcule as raízes de uma equação do segundo grau, na forma ax² + bx + c. O programa deverá pedir os valores de a, b e c e fazer as consistências, informando ao usuário nas seguintes situações:
- Se o usuário informar o valor de A igual a zero, a equação não é do segundo grau e o programa não deve fazer pedir os demais valores, sendo encerrado;
- Se o delta calculado for negativo, a equação não possui raizes reais. Informe ao usuário e encerre o programa;
- Se o delta calculado for igual a zero a equação possui apenas uma raiz real; informe-a ao usuário;
- Se o delta for positivo, a equação possui duas raiz reais; informe-as ao usuário;
"
Equação do segundo grau em Python
Antes de mais nada, vamos relembrar a fórmula de Bháskara para achar as raízes de uma equação do segundo grau, do tipo: ax² + bx + c = 0 :O primeiro teste que fazemos é em relação ao coeficiente a. Se for 0, não é uma equação do segundo grau e acaba o programa.
Se for diferente de 0, cai no else, que é onde todo nosso programa vai funcionar. Primeiro, dentro do else, pedimos o valor dos coeficientes b e c.
Agora, vamos calcular o delta.
Em Python, fica assim: delta = b*b - (4*a*c)
Agora vamos testar o delta, dentro de um if aninhado no else anterior.
Se for menor que 0, encerramos o programa dizendo que as raízes são imaginárias.
Em seguida, usamos um elif para testar se delta for 0, se sim valor da raiz será:raiz = -b / (2*a)
Por fim, se não é menor que 0 e o delta não é 0, é porque vai ser sempre maior que 0. Essa condição cai no else aninhado, onde calculamos as raízes assim:
raiz1 = (-b + math.sqrt(delta) ) / (2*a)
raiz2 = (-b - math.sqrt(delta) ) / (2*a)
Nosso código ficou:
import math print('Equaçao do 2o grau da forma: ax² + bx + c') a = int( input('Coeficiente a: ') ) if(a==0): print('Se a=0, não é equação do segundo grau. Tchau') else: b = int( input('Coeficiente b: ') ) c = int( input('Coeficiente c: ') ) delta = b*b - (4*a*c) if delta<0: print('Delta menor que 0. Raízes imaginárias. Tchau') elif delta==0: raiz = -b / (2*a) print('Delta=0 , raiz = ',raiz) else: raiz1 = (-b + math.sqrt(delta) ) / (2*a) raiz2 = (-b - math.sqrt(delta) ) / (2*a) print('Raizes: ',raiz1,' e ',raiz2)
kkkkkkkkkkkkkkkkkk tchau
ResponderExcluireu fiz assim
ResponderExcluirimport math
print("Com base nesta fórmula, ax2 + bx + c;")
a=float(input("Digite um valor para A "))
if a==0:
print("Esta operação não condiz com uma equação de segundo grau.")
else :
b=float(input("Digite um valor para B"))
c=float(input("Digite um valor para C"))
delta=(b**2)-(4*a*c)
if delta<0:
print("A equação não possui raízes reais.")
print(" ")
print(" Fim de execução. ")
else:
x1=(-b + math.sqrt(delta) ) / (2*a)
x2=(-b - math.sqrt(delta) ) / (2*a)
print("As duas raízes possíveis são: x1=",x1," e x2=",x2,"")
professor se poder responder esse comentário ou alguém que conheça do assunto , eu tentei resolver dessa :
ResponderExcluirfrom math import sqrt
a = int(input("Digite :"))
# print(raiz)
delta = 0
if a == 0:
print("équação não é do segundo grau!")
elif a > 0:
raiz = sqrt(a)
b = int(input("Digite : "))
c = int(input("Digite : "))
delta = (raiz + b + c)
if delta < 0:
print("A equação não possui raizes reais")
print(delta)
else:
delta = sqrt(raiz + b + c)
r = sqrt(delta)
print("O valor da equação é {}".format(delta))
print("A raiz quadrada de delta é {}".format(r))
if delta == 0:
print("A raiz quadrada de delta é 0")
else :
print("Nao tem Raiz de zero")
FIZ DIFERENTE, ACHO QUE FICA MELHOR... ME CORRIJA SE ESTIVER ERRADO.
ResponderExcluirimport math
a = int(input('Digite o valor de a: '))
if(a==0):
print('A equação não é do segundo grau! \nFIM.')
else:
b = int(input('Digite o valor de b: '))
c = int(input('Digite o valor de c: '))
delta = (b*b)-4 *(a*c)
x1= (-b + math.sqrt(delta))/(2*a)
x2= (-b - math.sqrt(delta))/(2*a)
if(delta<0):
print('O valor de delta é negativo: ',delta,'\nFIM')
elif(delta==0):
print('A equação possui uma raiz real: ', delta,'raiz x1: ', x1)
else:
print('A equação possui duas raizes reais', delta, 'raiz x1: ', x1, 'raiz x2: ', x2)
seu código não funciona para casos que possuem delta negativo
Excluira = float(input("Digite o valor de a (x²): "))
ResponderExcluirif (a == 0):
print("Não é uma equação do segundo grau")
else:
b = float(input("Digite o valor de b (x): "))
c = float(input("Digite o valor de c: "))
delta = (b ** 2) - (4 * a * c)
raiz_1 = ((-(b)) + (delta) ** 0.5) / (2 * a)
raiz_2 = ((-(b)) - ((delta) ** 0.5)) / (2 * a)
raiz_3 = (raiz_1 == raiz_2)
print("O valor de deltá é {:.2f}".format(delta))
if (delta == 0):
print(f"A equação possui apenas uma raíz real, sendo ela = {raiz_1}")
elif (delta >= 1):
print(f"A equação possui duas raízes reaism, sendo elas: {raiz_1} e {raiz_2}")
else:
print ("A equação não possui raízes")
import math
ResponderExcluira = float(input('Digite o valor de A: '))
if a == 0:
print ('A equação não é do segundo grau')
else:
b = float(input('Digite o valor de B: '))
c = float(input('Digite o valor de C: '))
delta = b ** 2 - 4 * a * c
if delta < 0:
print ('A equação não possui raizes reais')
else:
if delta == 0:
x1 = - b / (2 * a)
print ('A equação possui apenas uma raiz real: {:.3}'.format(x1))
else:
x1 = (- b + math.sqrt(delta)) / (2 * a)
x2 = (- b - math.sqrt(delta)) / (2 * a)
print('A equação possui duas raiz reais: {:.3} e {:.3}'.format(x1,x2))
Eu fiz dessa forma:
ResponderExcluirprint('Calcularemos o valor da equação de segundo grau para você')
a= input('digite o valor de a: ')
a= float(a)
if a!=0:
print('A equação é de segundo grau')
else:
print('A equação não é de segundo grau')
exit()
b= input('digite o valor de b: ')
b= float(b)
c= input('digite o valor de c: ')
c= float(c)
k= -(b**2-4*a*c)/(4*a)
l= -b/(2*a)
g=-k/a
if g>=0:
print(' A equação de segundo grau tem raízes reais')
else:
print('A equação de segundo grau não tem raízes reais ')
exit()
x1 = (g**0.5)+l
x2 = -(g**0.5)+l
if x1==x2:
print(' O valor de x é: '+str(x1))
else:
print(' O valor de x1 é: '+str(x1)+ ' e o valor de x2 é: '+str(x2))
Eu
ResponderExcluirprint('Calcularemos o valor da equação de segundo grau para você')
ResponderExcluira= input('digite o valor de a: ')
a= float(a)
if a!=0:
print('A equação é de segundo grau')
else:
print('A equação não é de segundo grau')
exit()
b= input('digite o valor de b: ')
b= float(b)
c= input('digite o valor de c: ')
c= float(c)
k= -(b**2-4*a*c)/(4*a)
l= -b/(2*a)
g=-k/a
if g>=0:
print(' A equação de segundo grau tem raízes reais')
else:
print('A equação de segundo grau não tem raízes reais ')
exit()
x1 = (g**0.5)+l
x2 = -(g**0.5)+l
if x1==x2:
print(' O valor de x é: '+str(x1))
else:
print(' O valor de x1 é: '+str(x1)+ ' e o valor de x2 é: '+str(x2))
Eu tentei compilar no onlinegdb, ja da erro na hora de coloca o valor de a:IndentationError: unexpected indent
ResponderExcluir