# Formúla de Bhaskara em Python

Jul 30th, 2021 (edited)
1,476
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
1. #!/usr/bin/env python
2. # -*- coding: utf-8 -*-
3. #
5. #
6. #  Copyright 2021 Elizeu Barbosa Abreu <elizeubcorreios@gmail.com>
7. #
8. #  This program is free software; you can redistribute it and/or modify
10. #  the Free Software Foundation; either version 2 of the License, or
11. #  (at your option) any later version.
12. #
13. #  This program is distributed in the hope that it will be useful,
14. #  but WITHOUT ANY WARRANTY; without even the implied warranty of
15. #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16. #  GNU General Public License for more details.
17. #
18. #  You should have received a copy of the GNU General Public License
19. #  along with this program; if not, write to the Free Software
20. #  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
21. #  MA 02110-1301, USA.
22. #
23. #
24.
25. # IMPORTAÇÃO DAS BIBLIOTECAS
26. from time import sleep
27. from math import sqrt
28. import os
29.
30. # DECLARAÇÃO DAS FUNÇÕES
31.
32.
33. # FUNÇÃO PARA LIMPAR TELA
34. def cls():
35.     os.system('clear')
36.
37.
38. # FUNÇÃO PARA IMPRIMIR O TÍTULO CENTRALIZADO E COM
39. # CORES INVERTIDAS
40. def titulo():
41.     print('{}{:^45}{}'.format('\033[7m', 'FÓRMULA DE BHASKARA', '\033[m'))
42.
43.
44. # FUNÇÃO PARA CALCULAR DELTA
45. def delta(a, b, c):
46.     delta = pow(b, 2) - 4 * a * c
47.     return delta
48.
49.
50. # FUNÇÃO PARA CALCULAR X1
51. def x1(a, b, delta):
52.     x1 = (-b + sqrt(delta)) / (2 * a)
53.     return x1
54.
55.
56. # FUNÇÃO PARA CALCULAR X1
57. def x2(a, b, delta):
58.     x2 = (-b - sqrt(delta)) / (2 * a)
59.     return x2
60.
61.
62. # CHAMADA PARA EXECUTAR O ALGORITMO ENQUANTO TRUE. NO CASO DELTA FOR MAIOR
63. # QUE ZERO
64.
65. while True:
66.     cls()
67.     titulo()
68.
70.     a = int(input('Entre com o valor de A: '))
71.     b = int(input('Entre com o valor de B: '))
72.     c = int(input('Entre com o valor de C: '))
73.
74.     if a < 0:
75.         a1 = str(a)
76.     else:
77.         a1 = '+' + str(a)
78.
79.     if b < 0:
80.         b1 = str(b)
81.     else:
82.         b1 = '+' + str(b)
83.
84.     if c < 0:
85.         c1 = str(c)
86.     else:
87.         c1 = '+' + str(c)
88.
89.     # CALCULOS E EXIBIÇÃO DOS VALORES
90.     print('\n\nNa Equação do 2º grau \033[7m{}x²{}x{}=0\033[m'.format(
91.         a1, b1, c1),
92.           end=' ')
93.
94.     delta = delta(a, b, c)
95.
96.     print('Delta é \033[7m{}\033[m,'.format(delta), end=' ')
97.     if delta < 1:
98.         print('Delta menor que 1. Resolução impossível!!!\n')
99.         break
100.
101.     x1 = x1(a, b, delta)
102.     print('X1 é \033[7m{:2.2f}\033[m'.format(x1), end=' e ')
103.
104.     x2 = x2(a, b, delta)
105.     print('X2 é \033[7m{:2.2f}\033[m...'.format(x2))
106.
107.     print('\n\n\nDigite [Ctrl+c] ou aguarde 15 segundos para novo cálculo...')
108.     sleep(15)
109.
RAW Paste Data