-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathsoal3.php
66 lines (59 loc) · 1.5 KB
/
soal3.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<?php
// fungsi ganti angka menjadi tulisan
function ConfAngka($x){
$abil = array("", "satu", "dua", "tiga", "empat", "lima", "enam", "tujuh", "delapan", "sembilan", "sepuluh", "sebelas");
if ($x < 12){
return " " . $abil[$x];
}
elseif ($x < 20) {
return ConfAngka($x - 10) . " belas";
}
elseif ($x < 100) {
return ConfAngka($x / 10) . " puluh" . ConfAngka($x % 10);
}
elseif ($x < 200) {
return " seratus" . ConfAngka($x - 100);
}
elseif ($x < 1000) {
return ConfAngka($x / 100) . " satus" . ConfAngka($x % 100);
}
}
// fungsi menentukan kembalian
function kembalian($kembalian,$uang){
for ($x=0; $x < count($uang) ; $x++) {
$y = 0;
while($kembalian >= $uang[$x]){
$kembalian = $kembalian-$uang[$x];
$y++;
}
if($y>0){
echo "<li>".ConfAngka($y)." pecahan ".number_format($uang[$x],0,",",".")."</li>";
}
}
}
$uang = [50000,20000,10000,5000,2000,1000,500]; // list kembalian
$tunai = 50000; // uang tunai
$belanja = 21500; // total belanja
$kembalian = $tunai-$belanja; // menghitung kembalian
?>
<table>
<tr>
<td>Total Belanja</td>
<td>:</td>
<td>Rp.<?=number_format($belanja,0,",",".")?>,-</td>
</tr>
<tr>
<td>Tunai</td>
<td>:</td>
<td>Rp.<?=number_format($tunai,0,",",".")?>,-</td>
</tr>
<tr>
<td>Kembalian</td>
<td>:</td>
<td>Rp.<?=number_format($kembalian,0,",",".")?>,-</td>
</tr>
</table>
<h3>Daftar Kembalian</h3>
<ul style="list-style-type:disc">
<?=kembalian($kembalian,$uang) ?>
</ul>