UTS Algoritma _ Pemrograman Saintifik - 2013

Post on 13-Jul-2016

33 views 1 download

description

Soal UTS Alprog 2013 Matematika UI

Transcript of UTS Algoritma _ Pemrograman Saintifik - 2013

UJIAN  TENGAH  SEMESTER  ALGORITMA  DAN  PEMROGRAMAN  SAINTIFIK  DEPARTEMEN  MATEMATIKA,  FMIPA  UI    4  APRIL  2013  (Open  Book,  120  menit)    1. (10)  Dengan  menggunakan  definisi  dari  Big  Oh  (O),  tunjukkan  :  

2𝑛! − 100𝑛 ∈ 𝑂(𝑛!)      

2. (10)  a.  Gambarkan  flowchart  untuk  pseudocode  di  bawah  ini  :  Program  Eg(n)  do  i  =  1...n     do  j  =  1...i       do  k  =  1...j         write  “HI”       end  do     end  do  end  do  end  Program  (10)  b.  Tentukan  Big  Oh  (O)  dari  running  time  𝑇(𝑛)  untuk  algoritma  pada  soal  no.  2a  dan  jelaskan  jawaban  Anda    

3. (20)  Bila  diberikan  sejumlah  data  sebanyak  𝑛  yang  diinput  asatu  per  satu  ke   dalam   suatu   program,   maka   buatlah   suatu   algoritma   (dapat   dalam  pseudocode   atau   flowchart)   yang   langsung   memberikan   output/hasil  yang  menghitung:  a. Jumlah  nilai  total  dari  seluruh  𝑛  data  tersebut  b. Nilai  rata-­‐rata  dari  𝑛  data  tersebut  c. Nilai  maksimum  dari  𝑛  data  tersebut        

4. (20)   Sebuah   perusahaan   X   memberlakukan   perhitungan   gaji   sebagai  berikut:  • Gaji  dibayar  sesuai  dengan  rate  standar  perjam  yang  ditentukan  oleh  

perusahaan  • Jika   jumlah   kerja  perminggu   kurang  daru   atau   sama  dengan  40   jam  

maka  gajinya  dibayar  sebesar  rate  standar  perjamnya  

• Jika  jam  kerja  perminggunya  lebih  dari  40  jam,  maka  40  jam  pertama  dihitung  dengan  rate  standar  dan  kelebihan  jamnya  dihitung  sebagai  lembur  sebesar  1,5  rate  standar  perjam  

 a. Buatlah   algoritma   berupa   flowchart   atau   pseudocode   untuk  

menghitung   gaji   perminggu   yang   harus   dibayarkan   perusahaan   X  kepada  seorang  karyawan  

b. Lengkapi  jawaban  algoritma  4.a  untuk  menghitung  total  gaji  perbulan  (per-­‐empat  minggu)  untuk  seorang  karyawan  

c. Misalkan  terdapat  𝑛  orang  karyawan,  lengkapi  jawaban  algoritma  4.b  untuk  menghitung   total   gaji   perbulan  masing-­‐masing   karyawan   dan  total  gaji   yang  harus  dikeluarkan  perbulan  oleh  perusahaan  X  untuk  semua  𝑛  karyawan  tersebut  

 5. (15)  Bila  diberikan  algoritma  sebagai  berikut  :  

Input  n  Sum  =  0  For  k  =  1  to  n     Print  Sum     Sum  =  Sum  +  (2*k)    End  For    a. Ubahlah  menjadi  struktur  REPEAT  ...  UNTIL  dalam  flowchart  b. Bila   diberikan   nilai   input   n   =   10,   bagaimana   output/hasil   dari  

algoritma  di  atas?      

6. (15)  Ubahlah  struktur  rekursiif  berikut  :  𝐹 𝑛 = 2  𝐹(𝑛 − 1)  dengan  𝐹 1 = 1  

menjadi  struktur   iterative  (non-­‐rekursif)  dengan  membuat  algoritmanya  dalam  pseudocode