Calculadora para números complexos
Publicado por Cícero Matheus (última atualização em 10/10/2013)
[ Hits: 15.032 ]
Homepage: Não Tenho (Ainda u.u)
Calculadora capaz de realizar cálculos (adição, subtração, divisão e multiplicação) com números complexos em suas formas polar e cartesiana (retangular).
Qualquer bug, erro, sugestão basta só comentar! xD
Obs.: os números podem estar em formas diferentes! Por exemplo (Polar + Cartesiana). :D
#-*- coding: utf-8 -*- #Por Kruxy Nuylla #Calculadora para números complexos =D #Bibliotecas usadas import math import string #------------------ def pegar_numero(): #Função que irá ler uma string e transformá-la em número complexo legivel para o Python num = str(raw_input("Digite o número (forma cartesiana: a+jb; forma polar: aPΘ)\nOBS: Mesmo que um dos valores seja 0 (zero), por favor, coloque-o\n")); if(num.find("P") > -1): #Procura o char 'P', caso encontre, o número será convertido de forma polar para cartesiana neonum = string.split(num,"P"); neonum[0] = float(neonum[0]); neonum[1] = float(neonum[1]); #Por algum motivo Python só trabalha corretamente com seno e cosseno quando o ângulo está em radianos a = neonum[0] * round(math.cos(math.radians(neonum[1])),3); b = neonum[0] * round(math.sin(math.radians(neonum[1])),3); else: if((num.find("+") < -1 and num.find("-") < -1) or num.find("j") == -1): print "Digite o número em uma das formas descritas!"; exit(); indice = num.find("j"); #Obtém o índice do char 'j' a = float(num[:indice-1]); b = float(num[indice+1:]); if(num[indice-1] == "-"): b *= -1; return complex(a, b); def principal(): opc = 1; while(True): #Loop infinito opc = int(raw_input("1 - Adição\n2 - Subtração\n3 - Multiplicação\n4 - Divisão\n0 - Sair\n")); if (opc < 1 or opc > 4): break; print "\n\nPrimeiro número:\n\n"; num_a = pegar_numero(); print "\n\nSegundo número:\n\n"; num_b = pegar_numero(); if(opc == 1): print num_a + num_b; elif(opc == 2): print num_a - num_b; elif(opc == 3): print num_a * num_b; elif(opc == 4): print num_a / num_b; print "\n\n" principal();
Troca de wallpaper temporizado para LXDE
Mighty Are's Tool of Easily Promote Combats
Nenhum comentário foi encontrado.
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Máquinas Virtuais com IP estático acessando Internet no Virtualbox
Criar entrada no GRUB para uma ISO Linux (0)
Problema em instalar o PySide6 no Ubuntu 24.04 [RESOLVIDO] (3)
Compartilhando uma ideia sobre computação quantica (16)