Anda di halaman 1dari 12

KUMPULAN SOAL DAN JAWABAN

UTS 2012 2014

DEPARTEMEN MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
2015

KUMPULAN SOAL DAN JAWABAN UTS 2012-2014


1. (Tahun 2012 )Jelaskan apa yang dimaksud dengan
a. Data vs Informasi
Data adalah kumpulan item item yang belum diolah, dapat berupa teks, angka,
gambar, audio, dan video.
Informasi adalah hasil pengelohan data yang mempunyai arti dan manfaat bagi
penggunanya.
b. Algoritma vs Program
Algoritma adalah suatu aturan atau langkah-langkah terbtas yang dirancang untuk
menyelesaikan suatu masalah.
Program adalah implementasi dari algoritma yang disusun menggunakan bahasa
pemogramma.
c. Built in function vs User-defined function
Built in function adalah fungsi-fungsi atau perintah-perintah yang sudah
terdefinisi di MATLAB
User-defined function adalah fungsi-fungsi yang dibuat sendiri oleh pengguna.
d. Local variable vs Global variable
Local variable adalah variabel yang hanya berlaku atau terdefinisi function
tertentu.
Global Variable adalah variabel yang berlaku atau terdefinisi di workspace
e. Logical error vs Syntax error
Logical error adalah kesalahan cara berpikir (logika) user dalam membuat
program.
Syntax error adalah kesalahan user dalam mengetik sebuah program, fungsi, atau
variabel.
Tambahan :

f. Sistem komputer adalah suatu jaringan elektronik yang terdiri dari perangkat
keras dan perangkat lunak yang memiliki fungsi tertentu menerima input,
memproses output, menyimpan perintah-perintah, dan menyediakan output dalam
bentuk informsi.
g. Hardware adalah komponen-komponen fisik yang membentuk kesatuan sistem
personal komputer.
h. Software adalah data yang diformat dan disimpan dalam bentuk digital termasuk
dalam program komputer, dokumentasi, dan berbagai informasi yang bisa dibaca
dan ditulis oleh komputer.
i. While box testing adalah cara pengujian yang belum pasti, karena akan ditest satu
persatu kumpulan kondisi.
j. Black box adalah apakah pemasukan data keluaran telah berjalan sesuai yang
diharapkan dan inforasi yang disimpan secara eksternal selalu dijaga
kemutakhirannya.

2. (Tahun 2013) Jelaskan apa yang dimaksud dengan :


a. Green Computing
Adalah usaha mengurangi konsumsi listrik dan pemborosan sumber daya
lingkungan yang diakibatkan penggunaan komputer.
b. Computer Literacy
Adalah pemahaman dan pengetahuan mengenai komputer dan kegunaannya.
3. (Tahun 2014) Hard disk dan flash disk adalah perangkat keras yang berfungsi untuk
menyimpan dokumen, data, atau program komputer. Memori utama atau memori
primer sering juga disebut RAM (Random Access Memory). Jelaskanlah fungsi
memori primer dalam sistem komputer?
Jawab :
Untuk pengalokasian memori pemrosesan data secara cepat, sehingga yang
ditekankan adalah kapasitas proses dan kecepatannya bukan keamanan penyimpanan
datanya.
4. (Tahun 2012) Tuliskan hasil eksekusi dari printah berikut bila X = [1 2 3 ; 4 5 6 ; 7 8
9]
a. >> X(2,:) adalah
ans = 4 5 6
b. >> X(:,3) adalah
ans =
3
6
9
c. >> X(2,1:2) adalah
ans = 4 5
d. >> X(1,2:end) adalah
ans = 2 3
e. >> X(2:end,3) adalah

ans =

6
9

5. (Tahun 2013) Uraikan kelebihan dan kekurangan MATLAB dibanding dengan bahasa
pemograman tingkat tinggi, mislkan bahasa pemogramman C.
Jawab :
Beberapa kelebihan MATLAB :
a. Kemudahan dalam penggunaan;
Dapat digunakan sebagai landasan awal untuk mengevaluasi ekspresi serta
mengeksekusi program besar
b. Platform yang independent;
Dapat digunakan dalam banyak sistem komputer yang berbeda, memfasilitasi
input dan output data dari platform lain.
c. Sangat kaya dengan fungsi yang sudah terdefinisi
Dapat memberikan solusi untuk tuga-tugas teknis dan masalah yang lebih
kompleks.
d. Dapat digunakan untuk merancang dan memplot berbagai jenis grafik.
Beberapa kekurangan MATLAB :
a. Bisa memperlambat komputer
b. Memiliki biaya yang mahal
Tambahan :
Kelebihan dan kekurangan SCILAB
Kelebihan
a.
b.
c.
d.

Mudah sekali digunakan


Operasi aritmatik dan beberapa fungsi lainnya dapat langsung diperoleh hasilnya
Pengerjaaan dapat dilakukan di 2 frame scilab yaitu di Scipad maupun di console
Namun console sering kali digunakan untuk melakukan proses kompiliasi
program.

Kekurangan
a. Tidak dapat mendefinisikan dan melakukan pemanggilan fungsi tertentu misalnya
untuk variabel fungsi utama maupun lokal
Tambahan :
Perbedaan yang mendasar antara MATLAB dan SCILAB. Yah, Apalagi lagi kalau
bukan soal lisensi, untuk program Matlab yang lengkap dan cukup familiar ini kita
harus membelinya dengan harga yang cukup mahal atau opsi lainya adalah
MEMBAJAKNYA. Padahal meskipun kita tidak punya dana untuk membelinya
sebenarnya kita tidak perlu menggunakan Matlab bajakan (penulis belum bisa
konsekuen dengan hal ini), karena sejak awal tahun 90-an telah dikembangkan
beberapa freeware sebagai pengganti matlab diantaranya ya Scilab ini.

Program freeware yang dikembangkan oleh konsorsium scilab prancis ini meskipun
bukan tiruan dari Matlab namun secara umum Scilab mempunyai kemiripan dengan
Matlab.
Sumber : http://cosmix25.blogspot.co.id/2008/11/matlab-vs-scilab-dari-judul-artikeldi.html
6. (Tahun 2014) Buatlah program dalam Scilab, yang membaca banyaknya data yang
akan dibaca yaitu berupa bilangan positif n(n 2) . Kemudian program membaca
n buah data dari masukkan yang diberikan oleh user. Program tersebut
menampilkan output rata-rata, bilangan terkecil, dan bilangan terbesar.
Jawab :
Program :
clear
function [D, r, k, b, st]=program(n)
D=length(n);
r=mean(n);
k=min(n);
b=max(n);
st=stdev(n);
endfunction
execute :
-->n=[12 34 54 23 53]
n =
12. 34. 54. 23. 53.
-->[D,r,k,b,st]=program(n)
st =
18.430952
b =
54.
k =
12.
r =
35.2
D =
5.
7. (Tahun 2012) Buat suatu program MATLAB untuk membuat tabel :
Kolom pertama berisi nilai n : 10, 20, 30, ... 100
Kolom kedua berisi nilai n^2
Kolom ketiga berisi nilai log(n)
Kolom keempat berisi nilai n*log(n)
Simpan hasilnya pada file yang bernama tabel1.dat. Pastikan tampilan program anda
memiliki judul tabel dan judul kolom, serta format penulisan yang rapih.
Jawab :
Program :
clear

n=10:10:100;
n=mtlb_sort(n);
y1=n.^2;
y2=log(n);
y3=n.*log(n);
tabel=[n;y1;y2;y3]';
judul=' n
n^2
log(n)
n*log(n)';
garis='---------------------------------------------';
disp(garis),disp(judul), disp(garis), disp(tabel),disp(garis)
Execute :
----------------------------------------------------n

n^2

log(n)

n*log(n)

---------------------------------------------------10.
20.
30.
40.
50.
60.
70.
80.
90.
100.

100.
400.
900.
1600.
2500.
3600.
4900.
6400.
8100.
10000.

2.3025851 23.025851
2.9957323 59.914645
3.4011974 102.03592
3.6888795 147.55518
3.912023
195.60115
4.0943446 245.66067
4.2484952 297.39467
4.3820266 350.56213
4.4998097 404.98287
4.6051702 460.51702

---------------------------------------------------8. (Tahun 2013) Apa hasil dari perintah berikut ?


>> y = 1-4*2-3/(2+5)*14-10/2^2+2;
Jawab :
-->y = 1-4*2-3/(2+5)*14-10/2^2+2
y =
- 13.5
9. (Tahun 2013 dan 2014) Berikut ini adalah algoritma yang dapat digunakan untuk
menghitung bilangan faktorial ke- n .
Prosedur A:
Prosedur B:
begin
begin
F0 = 1
if(n=0) or (n=1) then
F1=1
Fn=1
For i = 2 to n do
else
Fi = i*Fi-1
Fn=n*Fn-1
End(for)
end(if)
End
end
a. Bandingkan cara kerja kedua algoritma tersebut.
Jawab :
Prosedur A

Menghitung bilangan faktorial dimulai degan menginisialisasi F0 dan F1.


F0 = 1 artinya jika n = 0 maka 0! = 1
F1 =1 artinya jika n = 1 maka 1! = 1
Kemudian untuk n 2, dilakukan perhitungan faktorial
Fi = i * Fi-1
Yaitu faktorial ke n = nilai n * faktorial (n-1)
Jika n = 2 maka F2 = 2 * F1 = 2 * 1 =2
Jika n = 3 maka F3 = 3 * F2 = 3 * 2 = 6
dan seterusnya.
Dimana pengulangan dilakukan dengan menggunakan perintah for ... do ....
Untuk prosedur A yang melakukan looping dengan menggunakan perintah for ...
do ..., komputer hanya melakukan dua kali perhitungan dan selanjutnya diulangi
sampai ke-n.
Prosedur B
Menghitung bilangan faktorial dengan menggunakan perintah if ... then ....
Komputer melakukan perbandingan atau pemilihan,
jika n = 0 atau n = 1 maka F0 = F1 = 1.
jika n 0, n 1 maka Fn = n * Fn-1
Jadi, untuk menghitung nilai faktorial komputer harus mengetahui nilai faktorial
untuk (n-1). Sehingga, jika kita menggunakan perintah if untuk n = 10, maka F9
harus diinialisasikan, dengan demikian user harus menghitung sendiri nilai 9!
kemudian komputer dapat menghitung 10! = 10 * 9!.
b. Prosedur mana yang lebih baik untuk n=10 ?
Jawab :
Prosedur yang lebih baik adalah prosedur A karena lebih efektif dan efisien bagi
pengguna program (user). Komputer melakukan pengulangan dalam perhitungan
dengan menggunakan nilai yang telah diperoleh sebelumnya.
Sedangkan prosedur B yang mana digunakan untuk menghitung Fn, n = 10.
Dengan prosedur if ... then ... else hanya dapat membandingkan dua kondisi.
Jika n = 0 atau n = 1 maka F0 = F1 = 1. Tetapi untuk n 2 tidak dapat dilakukan
perkalian dengan nilai faktorial sebelumnya kerena pada prosedur tersebut tidak
terdapat perintah untuk mencari Fn-1.
Sehingga, user harus menambahkan inisialisasi F9 sebelum perintah if. Artinya,
user harus menghitung sendiri nilai faktorial untuk (n-1) atau Fn-1 sehingga
komputer dapat menghitung nilai faktorial untuk n atau Fn.
10. (Tahun 2012) Menggunakan data pada nomor 7 tuliskan perintah dalam MATLAB
untuk
a. Membuat plot data (n,n^2) menggunakan kurva berwarna hitam
Jawab :
n = 0 : 100;
a = n ^ 2;
plot (n , n ^ 2, k)
b. Membuat plot grafik (n,n^2), (n,log(n)) dan (n,n*log(n)) pada koordinat yang
sama
Jawab :
n = 1 : 100;

a = n ^ 2;
b = log (n);
c = n*b;
plot(n,a,k,n,b,b,n,c,r)
c. Bila ingin ditambahkan judul plot serta keterangan pada sumbu x dan sumbu y,
perintah apa yang perlu ditambahkan ?
Jawab :
title(), xlabel (), dan ylabel ()
11. (Tahun 2012 dan 2014)Diberikan suatu algoritma berikut :
Begin
[1] p := a0;
[2] rank :=1;
[3] for i := 1 to n do
[4]
rank := rank * x;
[5]
p := p + ai * rank;
[6] end (for)
End
a. (Tahun 2014) Tuliskan flowchart dari algoritma tersebut.
Jawab :
begin

Input i = 1 : n
P = a0
Rank = 1

i1

rank = rank * x

p = p + ai * rank

cetak p
Cetak

Algoritma Membuat_Polinomial
Kamus Data :
p = variabel
x = variabel
Deskripsi :

selesai

Begin
input i = i to n
p = a0
rank = 1
if i >= 1 then
rank = rank * x
p = p + ai * rank
display (p)
else
disp( )
end
b. (Tahun 2014) Apa yang dikerjakan algoritma tersebut?
Jawab : Membuat polinomial
c. (Tahun 2012) Apa yang menjadi input algoritma tersebut?
Jawab :
Input :
i=1:n
p = a0
rank = 1
d. (Tahun 2012) Apa yang menjadi output algoritma tersebut?
Jawab : p = a0 + a1x + a2x^2 + .........+ anx^n
e. (Tahun 2012) Berikan contoh prosesnya dari input menjadi output tersebut.
Jawab :
12. (Tahun 2013) Tuliskan hasil eksekusi dari perintah berikut :
>> a = 1.5;
>> b = 0.9;
>> disp((0 < a) & (b > 1));
>> fprintf(nilai a = %d \n nilai b = %4.2f\n,a,b);
Jawab :
False
a=1
b = 0,90
13. (Tahun 2014) Sebuah vending machine diprogram untuk memberikan sejumlah koin
yang diminta. Mesin tersebut memiliki stok 2 macam koin, yaitu 3 dan 5 yang tidak
terbatas.
a. Tunjukkan dengan hanya menggunakan 2 macam koin tersebut, mesin dapat
memenuhi semua permintaan, dengan syarat jumlah permintaan merupakan
bilangan asli 8.
Jawab :
Untuk n 8 dapat dituliskan sebagai
n=p 3+q 5 ,

p , q Z , p , q 0

Jika n=8 maka 8=1 3+1 5 dan p=1, q=1


Jika n=9 maka 9=3 3+0 5 dan p=3, q=0
Jika n=10 maka 10=0 3+2 5 dan p=0, q=2

Jika n=11 maka 11=2 3+1 5 dan p=2, q=1


Jika n=12 maka 12=4 3+ 0 5 dan p=4, q=0
Dan seterusnya.
Dapat dilihat bahwa
Jika n=kelip atan 3

maka

Jika n=kelipatan 5 maka

p=

n
3

p=0

dan q=0
dan

q=

n
5

Misalkan n=8

3c

5c

Sisa=3

3c

5c

p=1

q=1

Misalkan n=11

3c

5c

Sisa=115=6

6 kelipatan3

3c

5c

p=2

q=1

Setiap n yang bukan kelipatan 3 dan 5 . Tahap awal mengisi kotak


5c

kemudian hitung sisanya ( misalkan r=sisa ). Jika sisanya adalah

kelipatan 3 , maka masukkan nilai r


p=

r
3 .

ke kotak 3 c

sehingga diperoleh

b. Rancang sebuah algoritma untuk mengoperasikan mesin tersebut.


Jawab :
n = input (masukkan nilai yang diminta (n>=8), n =)
a = n mod 3
b = n mod 5
if a = 0 then
p = n/3
q=0
else if b = 0 then
p=0
q = n/5
else
p=0
q=1
r=n5
c = r mod 3
if c = 0 then p = c/3
else
repeat
q=q+1
r=n5*q
d = r mod 5
until d = 0
end if
disp (p, banyak koin 3c = )
disp (q, banyak koin 5c = )
14. (Tahun 2013) Ubah perintah berikut menggunakan comman while :
for ii = 1:10
disp(ii);
end
Jawab :
ii = 1
while ii <= 10
disp(ii)
ii = ii + 1
end
tambahan (untuk comman repeat) :
ii = 1
repeat
ii = ii + 1
disp(ii)
until ii>10
end
15. (Tahun 2013) Perhatikan perintah berikut :
>> x = [ 1 2 3 4 5 6 7 8 9 10 ];
>> y = [ 10 15 20 25 30 35 40 45 50 55 ];
Jelaskan :

a. Perintah apa yang perlu dituliskan untuk memplot data (x,y) menggunakan kurva
berwarna hitam ?
Jawab :
x = 1 : 10 ;
y = 10 : 5 : 55 ;
plot (x,y, k)
b. Bila ingin ditambahkan judul plot serta keterangan pada sumbu x dan sumbu y,
perintah apa yang perlu ditambahkan ?
Jawab :
title = (plot x dan y)
xlabel = (x)
ylabel = (y)
16. (Tahun 2013) Diberikan X = [ 2 -2 3 1 4 9 5 7 6 8 ]
a. Rancang sebuah algoritma untuk mencari MINI yaitu nilai terkecil dari X.
Jawab :
Algoritma Nilai_Terkecil
{Mencari MINI yaitu nilai terkecil dari x. Algoritma akan membaca bilangan pada
X dan akan menentukan nilai terkecilnya yaitu MINI}
Kamus Data :
X = integer
MINI = integer
Deskripsi :
Mulai
Input X = [2 -2 3 1 4 9 5 7 6 8]
MINI = min (X)
Display (MINI)
b. Fungsi MATLAB apa yang bisa digunakan untuk mencari nilai terkecil, nilai
terbesar, rataan, dan standar deviasi dari X?
Jawab :
Y1 = min (X)
Y2 = max (X)
Y3 = mean (X)
Y4 = stdev (X)

Anda mungkin juga menyukai