Pular para o conteúdo

Calculadora em uma linha com Perl

Dica publicada em Perl / Miscelânea
Rafael Pecin rafael.skt
Hits: 7.039 Categoria: Perl Subcategoria: Miscelânea
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Calculadora em uma linha com Perl

Como Perl é uma linguagem muito prática e flexível, resolvi escrever esta dica para ficar como exemplo para iniciantes e como curiosidade para quem sempre busca soluções simples para problemas do dia a dia.

Código:

# Fast Perl calculator
print eval(<STDIN>);

Explicação:

As linhas iniciadas com '#' são comentários, isso dispensa maiores detalhes.

Na segunda linha podemos observar duas funções (print e eval) e um descritor de arquivos (STDIN).

O descritor STDIN lê os dados enviados para o programa via entrada padrão do sistema (ex.: teclado).

A função "eval" tenta interpretar as informações que lhe foram enviadas pelo <STDIN> e retorna o valor da expressão.

A função "print" exibe o resultado da expressão processada pela função "eval" na saída padrão do sistema (ex.: monitor).

Exemplos:

perl /tmp/calc.pl
1+2

Imprime "3" na tela.

echo "2*4" >/tmp/calc.exp (criamos um arquivo com uma expressão)
perl /tmp/calc.pl </tmp/calc.exp (imprime na tela o resultado da expressão)

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
Nenhuma dica encontrada.

Alteração de padrões em arquivos texto

Webmin no OpenBSD 5.4

Revista técnica sobre Perl

Substituindo texto em múltiplos arquivos simultâneos

Anaconda died after receiving signal 9 [Resolvido]

#1 Comentário enviado por albertguedes em 05/09/2008 - 10:55h
Ai Rafel. Perl é nóis cara ! hehehe
Valeu.

Contribuir com comentário

Entre na sua conta para comentar.