/calc

Descrição: O /calc é uma calculadora avançada dentro do WhatsApp. Ele entende expressões simples e também contas complexas: aritmética, trigonometria, logaritmos, estatística, números complexos, vetores/matrizes, unidades de medida e muito mais — tudo em uma única linha.

Instruções:

Digite /calc seguido da expressão. Use parênteses para priorizar operações. É possível combinar funções e operadores na mesma conta.

Exemplo(s):
/calc 3*(5+2^3) → 27
/calc sin(90 deg) + log(1000,10) → 1 + 3 = 4
/calc [1,2,3] · [4,5,6] → 32


O que o /calc entende (guia prático)

1) Operadores e números

  • Básicos: + − * /
  • Potência e raiz: ^, sqrt(16), cbrt(27)
  • Módulo e sinais: abs(-7), -3^2, (+5)
  • Constantes: pi, e, tau (2π)
  • Graus e radianos: sin(90 deg), cos(pi)

2) Funções de arredondamento

  • round(12.345, 2) → 12,35
  • floor(3.9) → 3, ceil(3.1) → 4, fix(-3.9) → -3

3) Logaritmos e exponenciais

  • log(1000,10) → 3, log(8,2) → 3
  • ln( e ) → 1, exp(1) → 2.718281…

4) Trigonometria (inclui hiperbólicas e inversas)

  • sin(x), cos(x), tan(x)
  • asin(x), acos(x), atan(x)
  • Hiperbólicas: sinh, cosh, tanh
  • Inversas hiperbólicas: asinh, acosh, atanh
  • Dica: use deg quando quiser trabalhar em graus: sin(30 deg)

5) Estatística e agregações

  • Médias e medidas: mean([2,4,6]), median([1,3,5]), mode([1,1,2])
  • Dispersão: variance([2,4,6]), std([2,4,6])
  • Agregações: sum([1,2,3,4]), prod([1,2,3]), max([1,9,3]), min([7,2])
  • Quantil: quantileSeq([1,2,3,4,5], 0.9) → 5

6) Combinatória

  • Fatorial: 5! → 120, factorial(6) → 720
  • Combinações: combinations(10, 3)
  • Permutações: permutations(10, 3)

7) Números complexos

  • Literal: 2 + 3i, -4i
  • Operações: (2+3i)*(1-2i)
  • Propriedades: abs(3+4i) → 5, arg(1+i), re(2-5i), im(2-5i), conj(2-5i)

8) Vetores e matrizes

  • Vetor: [1, 2, 3]
  • Matriz: [1, 2; 3, 4] (linhas separadas por ;)
  • Operações:
    • Soma/escala: [1,2,3] * 2[2,4,6]
    • Produto escalar (dot): dot([1,2,3],[4,5,6]) → 32
    • Produto vetorial (cross): cross([1,0,0],[0,1,0])[0,0,1]
    • Transposta: transpose([1,2;3,4])[1,3;2,4]
    • Determinante: det([1,2;3,4]) → -2
    • Inversa: inv([1,2;3,4])
    • Traço: trace([1,2;3,4]) → 5

9) Álgebra linear (sistemas)

  • Resolver sistema linear Ax = b:
    • A = [2,1; 1,3] e b = [8;13]
    • linsolve(A, b) → retorna x
  • Outras: eigs(A) (autovalores), diag([1,2,3]) (matriz diagonal)

10) Unidades de medida (com conversão)

  • Somar unidades compatíveis: 5 cm + 2 inch
  • Converter: 5 cm to inch, 90 km/h to m/s
  • Exemplos úteis:
    • 1 atm to Pa, 25 °C to °F
    • 5000 J / (10 s) → potência (W)

11) Probabilidade, especiais e diversos

  • Aleatórios: random() ∈ [0,1), randomInt(1,7)
  • Escolha aleatória: pickRandom([10,20,30])
  • Funções especiais: gamma(5) → 24, erf(1)
  • Sinais: sign(-3) → -1, hypot(3,4) → 5
  • Intervalos: range(1,10,2)[1,3,5,7,9]

Boas práticas e dicas

  • Parênteses resolvem 99% das ambiguidades: 3*(2+5)
  • Graus vs radianos: trigonometria usa radianos por padrão; adicione deg.
  • Listas e matrizes: colchetes []. Linha nova de matriz é ;.
  • Texto inválido ou parêntese faltando? O /calc retorna um erro amigável — corrija a expressão e tente novamente.