31 March 2008

PHP: Kalkulator



Pada intinya, kalkulator berbasis web ini menggunakan tiga dasar, yaitu CSS, PHP, dan HTML. CSS (Cascading Style Sheets) agar mudah mengatur tampilan, PHP (PHP Hypertext Prepocessor) untuk operasi perhitungan, dan HTML (Hypertext Markup Language) untuk pembuatan form kalkulator. Kesemuanya dalam bentuk dasar dengan logika perhitungan sederhana untuk melakukan perhitungan. Sedangkan array diatas digunakan untuk debugger dan memahami jalannya algoritma.



<html>
<head>
</head>
<body>
<style type="text/css">
.Hasil {
color: #fcc;
background-color: blue;
font-size: 4em;
border: 1px solid #660;
padding: 4px;
}
.Operator {
color: #fcc;
background-color: #900;
font-size: 1.5em;
border: 1px solid #660;
width: 100px;
padding: 4px;
}
.Angka {
color: white;
background-color: #660;
font-size: 1.5em;
border: 1px solid #660;
padding: 4px;
width: 100px;
}
</style>

<?php
function Hitung($b1,$b2,$o){
switch($o){
case '+':
return $b1+$b2;
break;
case '-':
return $b1-$b2;
break;
case '*':
return $b1*$b2;
break;
case '/':
return $b1/$b2;
break;
default:
}
}
$Bil1=$_POST[Bil1];
$Bil2=$_POST[Bil2];
$Op1=$_POST[Op1];
$tHasil=$_POST[tHasil];
$tAngka=$_POST[tAngka];
$tOperasi=$_POST[tOperasi];
$tClear=$_POST[tClear];
if(isset($tAngka)){
$tHasil.=$tAngka;
}else if(isset($tOperasi)){
if($tOperasi!='='){//////+-*/
$Op1=$tOperasi;
$Bil1=$tHasil;
unset($tHasil);
}else{/////=
$Bil2=$tHasil;
$tHasil=Hitung($Bil1,$Bil2,$Op1);
$Bil1=$tHasil;
}
}else{
unset($Bil1);
unset($Bil2);
unset($Op1);
unset($tHasil);
unset($tAngka);
unset($tOperasi);
unset($tClear);
}
print_r($_POST);

?>
<form method=post action=''>
<input type=hidden name=Bil1 value='<?=$Bil1?>'>
<input type=hidden name=Bil2 value='<?=$Bil2?>'>
<input type=hidden name=Op1 value='<?=$Op1?>'>
<input type=hidden name=tHasil value='<?=$tHasil?>'>
<table border=1><tr><td colspan=5 align=right class=Hasil>&nbsp;<?=$tHasil?></td></tr>
<tr><td><input type=submit name=tAngka value=1 size=10 class=Angka /></td><td><input type=submit name=tAngka value=2 class=Angka /></td><td><input type=submit name=tAngka value=3 class=Angka /></td><td><input type=submit name=tOperasi value=+ class=Operator /></td><td><input type=submit name=tOperasi value=- class=Operator /></td></tr>

<tr><td><input type=submit name=tAngka value=4 class=Angka /></td><td><input type=submit name=tAngka value=5 class=Angka /></td><td><input type=submit name=tAngka value=6 class=Angka /></td><td><input type=submit name=tOperasi value=* class=Operator /></td><td><input type=submit name=tOperasi value=/ class=Operator /></td></tr>

<tr><td><input type=submit name=tAngka value=7 class=Angka /></td><td><input type=submit name=tAngka value=8 class=Angka /></td><td><input type=submit name=tAngka value=9 class=Angka /></td><td colspan=2 align=center><input type=submit name=tOperasi value='=' class=Operator /></td></tr>

<tr><td colspan=3 align=center><input type=submit name=tAngka value=0 class=Angka /></td><td colspan=2 align=center><input type=submit name=tClear value=CLEAR class=Operator /></td></tr>
</table>
</form>
</body>
</html>

0 °C:

Post a Comment