Calculator In Perl

Stato
Discussione chiusa ad ulteriori risposte.

Fire-Crash

Utente Silver
17 Novembre 2007
0
0
0
59
Codice:
#!usr/bin/perl
#Fire-Crash
&function;
sub function
{
print q
{
######################################
# Calculator Created By Fire-Crash #
######################################

Choose a operations:

1)Addition

2)Subtraction

3)Multiplication

4)Division

5)Raising power

};
$choose = <STDIN>;
if($choose == 1)
{
system("cls");
print "Insert the first number ";
$addone = <stdin>;
print "Insert the second number ";
$addtwo = <stdin>;
$addresult = $addone + $addtwo;
print "Result = $addresult";
<stdin>;
system(cls);
}
elsif($choose == 2)
{
system("cls");
print "Insert the first number ";
$subone = <stdin>;
print "Insert the second number ";
$subtwo = <stdin>;
$subresult = $subone - $subtwo;
print "Result = $subresult";
<stdin>;
system(cls);
}
elsif($choose == 3)
{
system("cls");
print "Insert the first number ";
$multone = <stdin>;
print "Insert the second number ";
$multwo = <stdin>;
$multresult = $multone * $multwo;
print "Result = $multresult";
<stdin>;
system(cls);
}
elsif($choose == 4)
{
system("cls");
print "Insert the first number ";
$divone = <stdin>;
print "Insert the second number ";
$divtwo = <stdin>;
$divresult = $divone / $divtwo;
print "Result = $divresult";
<stdin>;
system(cls);
}
elsif($choose == 5)
{
system(cls);
print "Insert the number ";
$raisone = <stdin>;
print "Insert the exponent ";
$raistwo = <stdin>;
$raisresult = $raisone ** $raistwo;
print "Result = $raisresult";
<stdin>;
system(cls);
}
&function;
};

very very good XD
 
io ne avevo fatto una tempo fa:

Codice:
#!/usr/bin/perl
print "al momento disponibili: addizione, sottrazione, divisione, moltiplicazione, seno, coseno, radice quadrata\n";
print "scrivi cosa vuoi fare: ";
$operazione = <STDIN>;
chomp($operazione);
if ($operazione eq "addizione") {
print "scrivi il primo numero: ";
$primoadd = <STDIN>;
chomp($primoadd);
print "ora il secondo: ";
$secondoadd = <STDIN>;
chomp($secondoadd);
$risultatoadd = $primoadd+$secondoadd;
print "il risultato è $risultatoadd\n";
} elsif ($operazione eq "sottrazione") {
print "scrivi il primo numero: ";
$primosott = <STDIN>;
chomp($primosott);
print "ora il secondo: ";
$secondosott = <STDIN>;
chomp($secondosott);
$risultatosott = $primosott-$secondosott;
print "il risultato è $risultatosott\n";
} elsif ($operazione eq "divisione") {
print "scrivi il primo numero: ";
$primodiv = <STDIN>;
chomp($primodiv);
print "ora il secondo: ";
$secondodiv = <STDIN>;
chomp($secondodiv);
if ($secondodiv == 0) {
print "non è possibile dividere per zero\n";
} else {
$risultatodiv = $primodiv/$secondodiv;
print "il risultato è $risultatodiv\n";
}
} elsif ($operazione eq "moltiplicazione") {
print "scrivi il primo numero: ";
$primomolt = <STDIN>;
chomp($primomolt);
print "ora il secondo: ";
$secondomolt = <STDIN>;
chomp($secondomolt);
$risultatomolt = $primomolt*$secondomolt;
print "il risultato è $risultatomolt\n";
} elsif ($operazione eq "seno") {
print "scrivi il numero: ";
$numerosin = <STDIN>;
chomp($numerosin);
$risultatosin = sin($numerosin);
print "il risultato è $risultatosin\n";
} elsif ($operazione eq "coseno") {
print "scrivi il numero: ";
$numerocos = <STDIN>;
chomp($numerocos);
$risultatocos = cos($numerocos);
print "il risultato è $risultatocos\n";
} elsif ($operazione eq "radice quadrata") {
print "scrivi il numero: ";
$numerorad = <STDIN>;
chomp($numerorad);
$risultatorad = sqrt($numerorad);
print "il risultato è $risultatorad\n";
} else {
print "non è al momento disponibile\n";
}


...un pò più prolissa...
 
Buashahs ne avrete le palle piene di ste calcolatrice vabbè io posto XD

Codice:
#!/usr/bin/perl
&return;
sub return{
print q
{

#########################

Calcolatrice By Vermel

Decidi Cosa Fare

1 - Addizione
2 - Sottrazione
3 - Moltiplicazione
4 - Divisione
5 - Esci

#########################
};
chomp($scelta = <STDIN>);
use Switch;
switch($scelta) {            
case 1                
{
print "Inserisci il primo numero: ";

chomp($num1 = <STDIN>);
print "Inserisci il secondo numero: ";
chomp($num2 = <STDIN>);
$ris = $num1 + $num2;
print "Risultato: ".$ris;
}
case 2             { 
print "Risultato: ".$ris;

chomp($num1 = <STDIN>);
print "Inserisci il secondo numero: ";
chomp($num2 = <STDIN>);
$ris = $num1 - $num2;
print "Risultato: ".$ris;
}
case 3           { 
print "Inserisci il primo numero: ";

chomp($num1 = <STDIN>);
print "Inserisci il secondo numero: ";
chomp($num2 = <STDIN>);
$ris = $num1 * $num2;
print "Risultato: ".$ris;
}
case 4            { 
print "Inserisci il primo numero: ";

chomp($num1 = <STDIN>);
print "Inserisci il secondo numero: ";
chomp($num2 = <STDIN>);
$ris = $num1 / $num2;
print "Risultato: ".$ris;
}
case 5 
          { 
print "Grazie Per Aver usato lo script!\n";

exit
}
else {
print "Errore devi selezionare un operazione!";
 }

}
&return;
}

Ringrazio Fire-Crash per avermi aiutato con l'uso dello Switch per avere un codice + pulito :)
 
ma scusate, non basta recuperare una volta per tutte i due numeri (visto che tutte le operazioni richiedono due numeri) e poi eseguire le operazioni nel switch?
vedete un po voi...
 
Stato
Discussione chiusa ad ulteriori risposte.