Pular para o conteúdo

Calculadora científica: potências, raízes e trigonometria

Calculadora científica online com potências, raízes, logaritmos e ln, seno, cosseno e tangente em graus ou radianos, fatoriais, porcentagem e memória.

Scientific Calculator

Evaluates a typed or tapped expression with the usual order of operations, including powers, roots, logarithms, trigonometry and factorials.

Use + - * / for arithmetic, ^ for powers, ! for factorial and % for percent.

Type an expression or use the keypad to see a result.

Keypad

How this calculator reads an expression

Percent divides by 100 wherever it appears, so 100+10% is 100.1, not 110. Powers group from the right: 2^3^2 is 2^9, which is 512. A minus sign in front of a power is applied last, so -2^2 is -4. Two things written side by side are multiplied, and that multiplication ranks with division, so both are read left to right: 1/2pi means (1/2) times pi, and 6/2(1+2) is 9. Some scientific calculators read 1/2pi the other way, as 1/(2 times pi), so use brackets when the meaning matters. In Degrees mode the tangent is refused at 90 degrees and every odd multiple of it, because it has no value there.

History

No calculations yet. Press = to add one.

Calculadora de carregamento...
📚

Documentação

Calculadora científica

Uma calculadora científica calcula o valor de uma expressão matemática escrita. Esta trabalha com potências, raízes, logaritmos, funções trigonométricas, fatoriais e porcentagens, aplica a ordem padrão das operações e informa uma resposta.

O que a calculadora faz

Uma expressão é digitada na caixa Expressão ou construída com o teclado. A calculadora a lê assim que ela muda, portanto não é necessário pressionar a tecla de igualdade para ver a resposta. A tecla = adiciona o cálculo a uma lista de histórico.

Ela aceita:

  • os algarismos, um ponto decimal e números na forma exponencial, como 1.5e-3;
  • os operadores +, -, *, / e ^ (potência), além de parênteses;
  • as constantes pi e e;
  • as funções sin, cos, tan, asin, acos, atan, log, ln, sqrt e cbrt;
  • os sinais pós-fixos ! (fatorial) e % (porcentagem).

Os símbolos do teclado são traduzidos para seus equivalentes simples, portanto ×, ÷, e π têm o mesmo significado que *, /, - e pi.

log é o logaritmo na base 10 e ln é o logaritmo natural, de base e. Essa é a convenção de nomenclatura usada nas calculadoras científicas da TI e da Casio e na seção 4,2 da NIST Digital Library of Mathematical Functions.

A ordem das operações

A regra que determina o significado de uma expressão é a ordem das operações. Esta calculadora usa a gramática abaixo. Cada linha chama a linha abaixo dela, portanto o aninhamento é a tabela de precedência: a última linha é a de maior precedência e é calculada primeiro.

1expression := term (('+' | '-') term)*
2term       := unary (('*' | '/' | juxtaposition) unary)*
3unary      := ('-' | '+') unary | power
4power      := postfix ('^' unary)?
5postfix    := primary ('!' | '%')*
6primary    := number | constant | name '(' expression ')' | '(' expression ')'
7

Em forma de lista, da primeira operação calculada à última:

  1. tudo que estiver dentro de colchetes e uma função aplicada a colchetes;
  2. ! e %;
  3. ^;
  4. um sinal inicial - ou +;
  5. *, / e dois elementos escritos lado a lado;
  6. + e -.

As convenções resultantes correspondem à ISO 80000-2:2019 e ao artigo “Order of operations” da Wikipédia:

Forma escritaÉ interpretado comoValor
2^3^22^(3^2)512
-2^2-(2^2)-4
2^-22^(-2)0,25
2^3!2^(3!)64
100+10%100 + (10/100)100,1
1/2pi(1/2) * pi1,57079632679
6/2(1+2)(6/2) * (1+2)9

Dois números ou nomes escritos lado a lado são multiplicados, o que faz 2pi, 2(3+4) e 3sin(30) funcionarem. Essa multiplicação implícita tem a mesma precedência que * e /, portanto uma justaposição e uma divisão são interpretadas da esquerda para a direita. Muitas calculadoras científicas portáteis dão maior precedência à justaposição que à divisão e interpretam 1/2pi como 1/(2*pi), o que produz uma resposta diferente. A Wikipédia descreve essa divergência em “Calculator input methods”. Os parênteses resolvem qualquer caso em que a diferença seja relevante.

% divide por 100 onde quer que esteja. Assim, 20% é 0,2 e 200*15% é 30. Não é a tecla de “porcentagem do total acumulado” de um caixa de loja, nem um operador de resto.

Exemplo prático

A expressão sin(30)+2^3*ln(4), no modo Graus, é calculada nesta ordem:

  1. sin(30) é 0,5, porque 30 graus correspondem à metade de um ângulo reto e seu seno é um meio.
  2. 2^3 é 8. As potências vêm antes da multiplicação.
  3. ln(4) é 1,38629436112.
  4. 8 * 1.38629436112 é 11,090354889.
  5. 0.5 + 11.090354889 é 11,590354889.

A calculadora mostra 11,590354889.

Um segundo exemplo mostra a regra da esquerda para a direita. Em 6/2(1+2), o conteúdo dos parênteses é calculado primeiro, resultando em 6/2*3. A divisão e a multiplicação implícita têm a mesma precedência, portanto a divisão vem primeiro: 6/2 é 3, e 3*3 é 9.

Graus e radianos

A configuração da unidade de ângulo determina como sin, cos e tan interpretam a entrada e qual unidade asin, acos e atan retornam. No modo Graus, uma volta completa é 360. No modo Radianos, uma volta completa é 2pi, aproximadamente 6,28318530718. A mesma expressão pode produzir respostas muito diferentes nos dois modos: sin(30) é 0,5 no modo Graus e -0,988031624093 no modo Radianos.

Como os números são armazenados e exibidos

Todo valor é um número de ponto flutuante de precisão dupla binary64 do IEEE 754, o tipo numérico descrito na ECMA-262, ECMAScript Language Specification, seção 6,1.6,1. Um número de precisão dupla comporta cerca de 15 a 17 algarismos decimais. A resposta é arredondada uma única vez, apenas para a tela, para 12 algarismos significativos. Valores abaixo de 0,000001 ou iguais ou acima de 1.000.000.000.000 são mostrados na forma exponencial; assim, 0.0000001 é exibido como 1E-7.

O número armazenado mantém a precisão total. A memória armazena o resultado exato, não os 12 algarismos exibidos na tela, e MR cola de volta o texto mais curto que representa esse mesmo número. Um valor negativo da memória é colado entre parênteses, portanto recuperá-lo depois de um 2 resulta em uma multiplicação, e não em uma subtração.

O arredondamento nunca é usado para decidir nada. Um pequeno resíduo de cálculos anteriores é um número real e é tratado como tal. 0.1*3-0.3 não é zero em binário; é aproximadamente 5,55111512313E-17, portanto 5/(0.1*3-0.3) resulta em 9,00719925474E16, e não em uma mensagem de divisão por zero.

Pelo mesmo motivo, sin(180) no modo Graus mostra 1,22464679915E-16, e não 0. O erro é de cerca de uma parte em dez quatrilhões e permanece tão pequeno. A tangente é a exceção e é tratada abaixo.

O que a calculadora recusa

A calculadora mostra uma mensagem em vez de uma resposta quando:

  • o denominador é exatamente zero, incluindo um número escrito pequeno demais para um número de precisão dupla, como 1e-400, que já é lido como zero;
  • sqrt recebe um número negativo;
  • log ou ln recebe um número que não é maior que zero;
  • asin ou acos recebe um número fora do intervalo de -1 a 1, o domínio especificado na seção 4,14 da NIST DLMF;
  • tan é usada em 90 graus, ou em qualquer múltiplo ímpar desse valor, onde ela não tem valor;
  • é solicitado o fatorial de algo que não seja um número inteiro de 0 a 170;
  • um número contém um segundo ponto decimal, como em 1.2.3;
  • a expressão tem mais de 512 caracteres.

O limite de 170 é uma propriedade do tipo numérico, não uma preferência: o fatorial de 170 é aproximadamente 7,25741561531E306, o que ainda cabe em um número de precisão dupla, enquanto o fatorial de 171 não cabe. O limite de 512 caracteres é verificado no código, porque é o comprimento da expressão que determina quanto trabalho a calculadora executa.

A verificação da tangente arredonda o ângulo para 9 casas decimais antes de testá-lo. Isso corrige desvios de cálculos anteriores, levando-os de volta à assíntota exata, ao custo de uma janela de recusa de aproximadamente 5e-10 graus de largura em cada lado. tan(89.9999999994) retorna 95.493.592.025, e tan(89.9999999995) é recusada. O modo Radianos não faz essa verificação, porque um valor em radianos digitado próximo da metade de pi é apenas outro número, sem status especial.

Dúvidas frequentes

O que a tecla % faz aqui? Ela divide por 100 onde quer que apareça. 100+10% é 100,1, porque significa 100 mais 0,1. Ela não calcula uma porcentagem do que veio antes.

2^3^2 é 64 ou 512? 512. As potências são agrupadas da direita para a esquerda, portanto isso significa 2^(3^2), que é 2^9. Isso segue a ISO 80000-2:2019.

Por que 6/2(1+2) é 9 e não 1? Uma multiplicação implícita tem a mesma precedência que uma divisão, e operações de mesma precedência são interpretadas da esquerda para a direita. Calculadoras que dão maior precedência à justaposição respondem 1. Os parênteses eliminam a dúvida.

Por que sin(180) não mostra 0? Porque 180 graus é convertido primeiro em radianos, e pi não pode ser escrito exatamente em binário. A resposta é aproximadamente 1.2e-16, que é o valor verdadeiro do seno do número realmente usado pela máquina.

Qual é a diferença entre log e ln? log é de base 10, portanto log(1000) é 3. ln é de base e, portanto ln(e) é 1. Os rótulos do teclado seguem a mesma convenção das calculadoras científicas da TI e da Casio.

Por que um fatorial acima de 170 é recusado? O fatorial de 171 é maior que qualquer número que um número de precisão dupla possa armazenar, portanto a resposta seria infinito em vez de um número. A calculadora informa isso em vez de mostrar um resultado sem significado.

Fontes

  • IEEE 754-2019, Norma IEEE para aritmética de ponto flutuante.
  • ECMA-262, ECMAScript Language Specification, seção 6.1.6.1, “The Number Type”.
  • ISO 80000-2:2019, Quantities and units, Parte 2: Mathematical signs and symbols.
  • NIST Digital Library of Mathematical Functions, seções 4,2 e 4,14.
  • Wikipédia, “Order of operations”.
  • Wikipédia, “Calculator input methods”.