Calculadora em Python
Publicado por henrique (última atualização em 16/02/2022)
[ Hits: 3.648 ]
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)
Gerador palpite Mega Sena v1.0
Controle de Depósito com SQLite + Python
Combinações de letras, números e muito mais
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
[Resolvido] VirtualBox can't enable the AMD-V extension
Como verificar a saúde dos discos no Linux
Como instalar , particionar, formatar e montar um HD adicional no Linux?
Como automatizar sua instalação do Ubuntu para desenvolvimento de software.
Não consigo instalar distro antiga no virtualbox nem direto no hd (14)
Quais os códigos mais dificeis que vcs sabem fazer? (12)
systemd-resol... precisa ser reiniciado periodicamente [RESOLVIDO] (7)









