Calculadora em Python
Publicado por henrique (última atualização em 16/02/2022)
[ Hits: 3.579 ]
Homepage: naotem.com
Download 1607376443.calc.py (versão 3)
Download 7202.calc_v2.py (versão 2)
Calculadora completa 2.0.
Versão 3 - Enviado por henrique em 07/12/2020
Changelog: inclui um calculo de média e resolvi os números primos maiores que 100
Versão 2 - Enviado por Washington Luis de O Santos em 05/01/2021
Changelog: Calculadora em Python
Programa originalmente publicado por Henrique, ver link abaixo:
https://www.vivaolinux.com.br/script/Calculadora-em-Python-1/
Foi eliminado o recurso de 'paralelismo' (ThreadPoolExecutor) pois praticamente não se ganha nada em termos de tempo de execução do programa e só o torna mais complicado.
Este recurso só apresenta ganhos reais quando se trabalha com grandes quantidades de E/S (entradas/saídas) de dados.
Melhorado, simplificado e corrigidos alguns erros por Washington Luis em:
Taubaté - SP, 5 de janeiro de 2021
Vejam as minhas outras colaborações no link:
https://www.vivaolinux.com.br/~WashingtonLuis/scripts/
import math
from time import sleep
from concurrent.futures import ThreadPoolExecutor
from os import system
from platform import system as ss
cac = 1
if cac == 1:
class calc:
try:
print("\033[0:31m", """
██████╗ █████╗ ██╗ ██████╗██╗ ██╗██╗ █████╗ ██████╗ ██████╗ ██████╗ █████╗
██╔════╝██╔══██╗██║ ██╔════╝██║ ██║██║ ██╔══██╗██╔══██╗██╔═══██╗██╔══██╗██╔══██╗
██║ ███████║██║ ██║ ██║ ██║██║ ███████║██║ ██║██║ ██║██████╔╝███████║
██║ ██╔══██║██║ ██║ ██║ ██║██║ ██╔══██║██║ ██║██║ ██║██╔══██╗██╔══██║
╚██████╗██║ ██║███████╗╚██████╗╚██████╔╝███████╗██║ ██║██████╔╝╚██████╔╝██║ ██║██║ ██║
╚═════╝╚═╝ ╚═╝╚══════╝ ╚═════╝ ╚═════╝ ╚══════╝╚═╝ ╚═╝╚═════╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝""", "\033[0m")
sleep(0.8)
print("""
[ 0 ] ADIÇÃO
[ 1 ] SUBTRAÇÃO
[ 2 ] MUTIPLICAÇÃO
[ 3 ] DIVISÃO
[ 4 ] EXPONCIACÃO
[ 5 ] RAIZ
[ 6 ] SENO
[ 7 ] COSSENO
[ 8 ] TANGENTE
[ 9 ] ARCO SENO
[ 10 ] ARCO COSSENO
[ 11 ] ARCO TANGENTE
[ 12 ] FATORIAL
[ 13 ] PRIMOS
[ 14 ] LIMPAR
[ 15 ] SAIR
Aperte uma letra para sair do loop no meio das contas""")
def soma():
cs = 0
o = 1
while True:
try:
n = float(input(f'digite seu {o} numero: '.capitalize()))
except:
break
cs += n
o += 1
return print(str(cs).rjust(10))
def menos():
cs = 0
o = 1
while True:
if o == 1:
try:
global n1
n1 = float(input(f'digite seu 1 numero: '.capitalize()))
except:
break
elif o != 1:
try:
n = float(input(f'digite seu {o} numero: '.capitalize()))
except:
break
k = n1
if o == 2:
cs = k - n
if o >= 3:
cs -= n
o += 1
return print(str(cs).rjust(10))
def mutiplica():
cx = 1
o = 1
while True:
try:
n = float(input(f'digite seu {o} numero: '.capitalize()))
except:
break
cx *= n
o += 1
return print(str(cx).rjust(10))
def fracao():
cx = 1
o = 1
while True:
if o == 1:
try:
global n1
n1 = float(input(f'digite seu 1 numero: '.capitalize()))
except:
break
elif o != 1:
try:
n = float(input(f'digite seu {o} numero: '.capitalize()))
except:
break
k = n1
if o == 2:
cs = k / n
if o >= 3:
cs /= n
o += 1
print(str(cs).rjust(10))
def expo():
try:
o = float(input('digite seu numero: '.capitalize()))
v = int(input('digite seu exponencial: '.capitalize()))
except:
print('*-*')
cx = o ** v
return print(str(cx).rjust(10))
def raiz():
try:
o = float(input('digite seu numero: '))
v = float((input('digite sua raiz: '.capitalize())))
except:
print('*-*')
cx = o ** (1 / v)
print(cx)
def sen():
try:
o = float(input('digite seu numero: '.capitalize()))
except:
print('*-*')
cx = math.sin(o)
print(cx)
def cos():
try:
o = float(input('digite seu numero: '.capitalize()))
except:
print('*-*')
cx = math.cos(o)
print(cx)
def tan():
try:
o = float(input('digite seu numero: '.capitalize()))
except:
print('*-*')
cx = math.tan(o)
print(cx)
def arccos():
try:
o = float(input('digite seu numero: '.capitalize()))
except:
print('*-*')
cx = math.cos(o) ** -1
print(cx)
def arcsen():
try:
o = float(input('digite seu numero: '.capitalize()))
except:
print('*-*')
cx = math.sin(o) ** -1
print(cx)
def arctan():
try:
o = float(input('digite seu numero: '))
except:
print('*-*')
cx = math.tan(o) ** -1
print(cx)
def fact():
n = int(input('digite um numero: '.capitalize()))
cx = math.factorial(n)
print(cx)
def primos():
n = int(input('digite um numero inicial: '))
n1 = int(input('digite um numero final: '))
for c in range(n, n1 + 1):
if c != 1:
if c % 2 != 0 and c % 3 != 0 and c % 4 != 0 and c % 5 != 0 and c % 6 != 0 and c % 7 != 0 and c % 8 != 0 and c % 9 != 0 or c == 2 or c == 3 or c == 5 or c == 7:
print(c)
return
def limpar():
if ss() == 'Windows':
system("cls")
if ss() == 'Linux':
system("clear")
return print(""" [ 0 ] ADIÇÃO
[ 1 ] SUBTRAÇÃO
[ 2 ] MUTIPLICAÇÃO
[ 3 ] DIVISÃO
[ 4 ] EXPONCIACÃO
[ 5 ] RAIZ
[ 6 ] SENO
[ 7 ] COSSENO
[ 8 ] TANGENTE
[ 9 ] ARCO SENO
[ 10 ] ARCO COSSENO
[ 11 ] ARCO TANGENTE
[ 12 ] FATORIAL
[ 13 ] PRIMOS
[ 14 ] LIMPAR
[ 15 ] SAIR""")
while True:
r = int(input("opção: ".capitalize()))
if r >= 15:
break
if r == 0:
soma()
if r == 1:
menos()
if r == 2:
mutiplica()
if r == 3:
fracao()
if r == 4:
expo()
if r == 5:
raiz()
if r == 6:
sen()
if r == 7:
cos()
if r == 8:
tan()
if r == 9:
arcsen()
if r == 10:
arccos()
if r == 11:
arctan()
if r == 12:
fact()
if r == 13:
primos()
if r == 14:
limpar()
except:
print('algo deu errado')
with ThreadPoolExecutor(max_workers=10) as pool:
pool.map(calc)
PYCalculator 1.0 - Calculadora no Python
Controle de Depósito com SQLite + Python
Virus, trojan, sei la o que é isso
Inteligência artificial com Python e Shell Script
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Como instalar o repositório do DBeaver no Ubuntu
Como instalar o Plex Media Server no Ubuntu
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
O programa assinador digital (1)
PIP3 - erro ao instalar módulo do mariadb para o Python (9)
É normal não gostar de KDE? (8)
dpkg: erro: gatilho de arquivo duplicado chamado pelo arquivo de nome (6)









