Calculadora para números complexos
Publicado por Cícero Matheus (última atualização em 10/10/2013)
[ Hits: 15.149 ]
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();
run_update - Atualizador de Sabayon
Probabilidade de Vencer - Poker Texas Hold
Nenhum coment�rio foi encontrado.
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Visualizar arquivos em formato markdown (ex.: README.md) pelo terminal
Dando - teoricamente - um gás no Gnome-Shell do Arch Linux
Como instalar o Google Cloud CLI no Ubuntu/Debian
Mantenha seu Sistema Leve e Rápido com a Limpeza do APT!
Procurando vídeos de YouTube pelo terminal e assistindo via mpv (2025)
Sinto uma leve lentidão ao arrastar, miniminizar e restauras as janela... (3)
Alguém já usou o framework Avalonia para desenvolver interfaces de usu... (4)
Ajuda Pra Melhoria do NFTABLES. (8)
Pastas da raiz foram para a área de trabalho [RESOLVIDO] (7)