Deskripsi Untuk Soal Nomor 34 dan 35
Perhatikan potongan program berikut:
function f(a : integer):integer;
begin
if a=0 then
f:= 1
else
f:= 2*f(a-1);
end;
function g(b: integer):integer;
begin
if b=0 then
g:= f(b)
else
g:= f(b) + g(b-1);
end;Jika fungsi f(3) dipanggil maka nilai yang dihasilkan adalah.....
A. 1
B. 3
C. 4
D. 15
E. 16
Jika fungsi f(10) dipanggil maka nilai yang dihasilkan adalah.......
A. 1
B. 9
C. 10
D. 1023
E. 1024
Menurut saya juga gitu, tp function g jadi tak digunakan?
No. 35 jawabannya E. 1024. karena fungsi diatas merupakan fungsi pangkat. jadi 2^10=1024
Kalau nomor 34 berarti juga fungsi pangkat, 2^3=8 ,,
nomor 34 jawabannya 8 dan nomor 35 jawabannya 1024, karena fungsi tersebut menghitung f(n) = 2^n, tetapi jika di cocokkan tidak ada jawabannya (nomor 34) , saat saya coba compile juga jawabannya 8 dan 1024
Masuk untuk menulis jawaban
No 34 jawaban saya utk f(3) adalah 8 dan utk no 35 adalah 1024. Apa fungsi g tdk digunakan? Mungkin utk no 34 yg dimaksud fungsi g(3). Jika pertanyaan yg benar adalah g(3) maka hasilnya 15
34
- Jika yang ditanya f(3)
f(3) = 2f(2)
= 2 * 2f(1)
= 2 * 2 * 2f(0)
= 2* 2 *2
= 8
-> Fungsi f(n) untuk menghitung 2n
- Jika yang ditanya g(3)
g(3) = f(3) + g(2)
g(2) = f(2) + g(1)
g(1) = f(1) + g(0)
g(1) = 2 + 1 = 3
g(2) = 4 + 3 = 7
g(3) = 8 + 7 = 15 (D)
-> fungsi g(n) untuk menghitung 2n+1 - 1
35
Sesuai dari soal nomor 34, fungsi f(n) untuk mencari nilai dari 2n
f(10) = 210 = 1024 (E)