LATIHAN 1 (Fungsi)
A. Soal
1 <?php
2 function mySum($numX, $numY){
3 $total = $numX + $numY;
4 return $total;
5 }
6
7 $myNumber = 0;
8 echo "Sebelum fungsi dijalankan, myNumber = ". $myNumber ."<br>";
9
10 $myNumber = mySum(3, 4);
11 echo "Setelah fungsi dijalankan, myNumber = ". $myNumber ."<br>";
B. Screenshoot
C. Syntax
1 <?php
2 function mySum($numX, $numY) {
3
$total = $numX + $numY;
4
5 return $total;
6 }
7
8 $myNumber = 0;
9 echo "Sebelum fungsi diajalankan, myNumber = ". $myNumber .
10 "<br>";
11
12
$myNumber = mySum(3, 4);
13 echo "Setelah fungsi dijalankan, myNumber = ". $myNumber ."
14 <br>";
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
D. Penjelasan
Pada variable $myNumber sebelumnya sudah diberi nilai 0, lalu dijalankan fungsi pada
variable $total dengan pertambahan pada variable $myNumber dengan nilai 3 dan 4.
B. Screenshoot
1. Kode Pertama
2. Kode Kedua
3. Kode Ketiga
C. Syntax
1 Kode Pertama :
2 <?php
3 function myFunction(): int {
4
return 10;
5
6 }
7
8 echo myFunction();
9 Kode Kedua :
10 <?php
11 function myFunction(): int {
12
return 'ten';
13
14 }
15
16 echo myFunction();
17
18 Kode Ketiga :
19 <?php
20 function myFunction(): string {
21 return 'ten';
22
}
23
24
25 echo myFunction();
26
27
28
29
30
D. Penjelasan
Apabila method myFunction() diberi int dan dimasukkan nilai 10, maka kode tidak akan
error. Namun apabila dimasukkan nilai „ten‟ akan error, karena „ten‟ merupakan tipe data
stirng. Dan ketika method myFunction(), int nya diganti dengan string, maka nilai „ten‟
akn muncul dan tidak error.
Buat sebuah fungsi yang menerima beberapa parameter dengan tipe integer dan
menentukan angka terbesar dari parameter-parameter tersebut. Gunakan parameter bebas
(poin g di dasar teori) pada fungsi tersebut sehingga fungsi tersebut dapat dipanggil
seperti berikut.
1 <?php
2 function get_max() {
3 // ...
4 }
5
6 echo get_max(10, 20); // Output: 20
7 echo get_max(10, 20, 30); // Output: 30
8 echo get_max(10, 20, 30, 40); // Output: 40
B. Screenshoot
C. Syntax
1 <?php
2 function get_max() {
3
$angka_max=func_get_args(0);
4
5
6 foreach (func_get_args() as $angka_awal){
7
8 if($angka_awal>$angka_max){
9 $angka_max=$angka_awal;
10 }
11
}
12
13 return $angka_max;
14 }
15
echo get_max(10, 20)."<br>";
echo get_max(10, 20, 30)."<br>";
echo get_max(10, 20, 30, 40)."<br>";
D. Penjelasan
Jadi disini menggunakan seleksi kondisi untuk menyeleksi bilangan yang lebih besar.
Foreach bisa digunakan untuk perulangan dari $angka_awal.
Latihan 4 (Rekursi)
A. Soal
1. Perhitungan Fibonacci dengan sistem rekursif di mana input pada fungsi digunakan
untuk menunjukkan bilangan ke sekian dari deret tersebut.
2. Perhitungan nilai pangkat, dengan input x (bilangan yang akan dikuadratkan) dan
input y (bilangan pangkat).
B. Screenshoot
1. Fibonacci
C. Syntax
1. Fibonacci
1 <?php
2 function fibonacci($deret) {
3
for ($j=0;$j<$deret;$j++){
4
5
6 if ($j==0)
7 echo " | ".rekursif($j)." | ";
8 else
9 echo rekursif($j)." | ";
10 }
11
}
12
13
14 function rekursif($a){
15 if ($a==0){
16 return 0;
17 }
18 else if($a==1){
19
return 1;
20
21 }
22 return rekursif($a-1)+rekursif($a-2);
}
$nilai =10;
echo "deret fibonacci dari bilangan ".$nilai." adalah : ";
fibonacci($nilai);
2. Perhitungan nilai pangkat
1 <?php
2 function pangkat($a,$b) {
3
4
5 if($b==0){
6 return 1;
7 }
8 else {
9 return $a*pangkat($a,$b-1);
10 }
11
}
12
13
14 $nilai=10;
15 $nilai_pangkat=3;
echo "Hasil perhitungan ".$nilai." yang dikuadratkan dengan "
.$nilai_pangkat." adalah ";
echo pangkat($nilai,$nilai_pangkat);
D. Penjelasan
Untuk cara kerja Fibonacci adalah bilangan yang sekarang akan ditambah dengan
bilangan sebelumnya dan menggunakan perulangan. Lalu untuk bilangan pangkat,
$bilangan akan dikuadratkan dengan $bilangan_pangkat