Calculadora com funções básicas
#!/usr/bin/perl
#Programa: RØD Calculator
#Versão: 1.0
#SO's: Linux e Windows.
#Descrição: Calculadora com funções básicas
#Coded By: Ø Rodrigo Ø - [New Generation Crew]
$ver="v. 1.0"; #Versão do programa
print "\n+------------[RØD Calculator]-------------+\n";
print "|---------------------------------$ver--|\n";
print "| |\n";
print "| Calculadora com funços básicas |\n";
print "| |\n";
print "| Coded By Ø Rodrigo Ø |\n";
print "+-----------------------------------------+\n\n";
sleep 3;
&opcao;
sub opcao(){
system("clear");
print " +=====[Menu de Opções]=====+\n";
print " | [+] Somar |\n";
print " | [-] Subtrair |\n";
print " | [*] Multiplicar |\n";
print " | [/] Dividir |\n";
print " | [D] Delta |\n";
print " | [E] Exponenciação |\n";
print " | |\n";
print " | [X] Sair |\n";
print " +--------------------------+\n";
print " Digite a opção desejada: ";
$opcao=<STDIN>;
chomp ($opcao);
if ($opcao eq "+") { &somar; }
elsif ($opcao eq "-") { &subtrair; }
elsif ($opcao eq "*") { &multiplicar; }
elsif ($opcao eq "/") { &dividir; }
elsif ($opcao eq "D" || $opcao eq "d") { δ }
elsif ($opcao eq "E" || $opcao eq "e") { &elevar; }
elsif ($opcao eq "X" || $opcao eq "x") { exit; }
else {
print "\nOpção inválida, tente novamente!\n";
<STDIN>;
&opcao;
}
sub somar(){
print "\nDigite o primeiro valor: ";
$valor1=<STDIN>;
chomp($valor1);
print "\nDigite o segundo valor: ";
$valor2=<STDIN>;
chomp($valor2);
$result=$valor1+$valor2;
print "\nO resultado é: $result\n";
&ok;
}
sub subtrair(){
print "\nDigite o primeiro valor: ";
$valor1=<STDIN>;
chomp($valor1);
print "\nDigite o segundo valor: ";
$valor2=<STDIN>;
chomp($valor2);
$result=$valor1-$valor2;
print "\nO resultado é: $result\n";
&ok;
}
sub multiplicar(){
print "\nDigite o primeiro valor: ";
$valor1=<STDIN>;
chomp($valor1);
print "\nDigite o segundo valor: ";
$valor2=<STDIN>;
chomp($valor2);
$result=$valor1*$valor2;
print "\nO resultado é: $result\n";
&ok;
}
sub dividir(){
print "\nDigite o primeiro valor: ";
$valor1=<STDIN>;
chomp($valor1);
print "\nDigite o segundo valor: ";
$valor2=<STDIN>;
chomp($valor2);
$result=$valor1/$valor2;
$resto=$valor1%$valor2;
print "\nO resultado é: $result\n";
if ($resto >= 1) {
print "\nO resto da divisão é: $resto\n";
&ok;
}
}
sub delta(){
print "\nDigite o valor de A: ";
$a = <STDIN>;
print "\nDigite o valor de B: ";
$b = <STDIN>;
print "\nDigite o valor de C: ";
$c = <STDIN>;
$delta = $b ** 2 - 4 * $a * $c;
print "\nO Delta é: $delta\n";
&ok;
}
sub elevar(){
print "\nDigite o valor: ";
$valor1=<STDIN>;
chomp($valor1);
print "\nElevar á: ";
$valor2=<STDIN>;
chomp($valor2);
$result=$valor1**$valor2;
print "\nO resultado é: $result\n";
&ok;
}
}
sub ok(){
<STDIN>;
&opcao;
}
Flws...
Legal pra treinar
to me interessando em perl tbm
o q ah funçao chomp(); faz?
Quote from: "H4C"to me interessando em perl tbm
o q ah funçao chomp(); faz?
Retira o enter.
[]'s
Skayler
Isso mesmo. A funcao chomp retira o ultimo caractere de uma string. Em um exemplo pratico, temos:
print "me de uma string: ";
$variavel = ;
chomp($variavel);
Acima, colocamos o que for digitado (STDIN, ou "standard input") na variavel $variavel. O sistema Standard Input sabe que o usuario acabou de digitar quando o enter e pressionado. O problema e que o enter tambem e contado, entao no caso a seguir:
me de uma string: teste_[enter]
onde o usuario digita "teste+[enter]", o valor de $variavel nao seria "teste". Seria "teste
".
A funcao chomp e usada para, resumidamente, como o sklayer disse, retirar o enter das strings digitadas pelo usuario.
obs1: a funcao chop($variavel) faz a mesma coisa.
obs2: uma maneira rapida de armazenar input em variaveis e usar chop() ou chomp() nelas e a seguinte:
chop($variavel=);
chomp($variavel=);
legal, agora entendi
vlw Shady e Skayler
Quote from: "Shady"obs2: uma maneira rapida de armazenar input em variaveis e usar chop() ou chomp() nelas e a seguinte:
chop($variavel=);
chomp($variavel=);
Legal, não sabia..vlw..
hm..
interessante x]
perl parece ser bem r00x
mas como sempre.. pra linux
tá aih uma coisa q eu fiko triste..
meu modem num dá suporte ah linux ='(
tio bill aproveitando-se
=/
kualker dia desse vou dá uma fuçada em perl x]
Quote from: "Quicky"hm..
interessante x]
perl parece ser bem r00x
mas como sempre.. pra linux
tá aih uma coisa q eu fiko triste..
meu modem num dá suporte ah linux ='(
tio bill aproveitando-se
=/
kualker dia desse vou dá uma fuçada em perl x]
Hi,
Quicky, a linguagem Perl não é restrita ao Linux, você pode programar em ambiente Windows.
Para isso, você pode utilizar o ActivePerl:
http://www.activestate.com/ActivePerl/ (http://www.activestate.com/ActivePerl/)
Carry on...
Bye.
Iqual o python he he
vlw
Sim.. eu sei
mas tem coisas que fikam restritas
e que poderiam ser melhores kaso eu usasse linux..
estou atrás dum modem novo só pra poder usar linux

^^
hehe... t+ e por favor.. se alguem puder me ajudar lá no outro tópico q eu fiz.. eu agradeceria o/