You are on page 1of 21

Program Pascal

Bahasa pascal adalah bahasa pemrograman tingkat tinggi yang dikembangkan oleh Niklaus Wirth di Zurich pada akhir 1960-an hingga awal 1970-an. Pascal merupakan bahasa pemrograman yang terstruktur, sehingga sering digunakan sebagai sarana awal untuk mempelajari teknik pemrograman komputer. ---------Mata kuliah Komputer II memperkenalkan Anda pada algoritma dan pemrograman komputer secara sederhana dengan bahasa Pascal dan C++, dan memberikan beberapa contoh penggunaan algoritma dan pemrograman dengan bahasa Pascal dan C++ dalam bidang matematika maupun bidang umum. Mata kuliah ini merupakan lanjutan dari mata kuliah Komputer I, oleh karena itu penguasaan materi mata kuliah Komputer I merupakan prasyarat mengikuti mata kuliah ini. Mata kuliah ini berbobot 2 sks yang disajikan dalam 6 modul. Setelah mempelajari mata kuliah ini, diharapkan Anda dapat membuat algoritma dan pemrogramannya dalam bahasa Pascal dan C++. Tujuan mata kuliah ini dirinci menjadi tujuan instruksional umum (TIU) untuk setiap modul yaitu Anda dapat: menjelaskan pengertian dari algoritma dan pemrograman dalam bahasa Pascal dan C++; membuat algoritma sequential dan conditional serta pemrogramannya sebagai metode pemecahan masalah matematika; membuat algoritma pengulangan dan pemrogramannya sebagai metode pemecahan masalah matematika; membuat algoritma tentang prosedur dan fungsi serta pemrogramannya dalam bahasa Pascal dan C++; membuat algoritma dengan data array serta pemrogramannya dalam bahasa Pascal dan C++; membuat algoritma pemecahan masalah di bidang pendidikan dan non pendidikan serta pemrogramannya dalam bahasa Pascal dan C++. Berdasarkan kompetensi yang akan dicapai tersebut, maka untuk mengikuti mata kuliah ini Anda harus banyak melakukan praktek dengan menggunakan perangkat komputer dan perangkat lunak (software) Pascal dan C++. Materi yang disajikan tiap modul berdasarkan TIU yang dijabarkan adalah: Pengantar Pemrograman Pemecahan Masalah Matematika I Pemecahan Masalah Matematika II Pemecahan Masalah Matematika III Pemecahan Masalah Matematika IV Pemecahan Masalah Aplikasi Materi pada modul 6 tentang Pemecahan Masalah Aplikasi merupakan materi pengayaan mata kuliah Komputer II yang diperuntukkan bagi Anda penggemar pemrograman komputer. Oleh karena itu, Ujian Akhir Semester (UAS) untuk mata kuliah ini tidak mencakup materi pada modul 6.

Selanjutnya agar Anda berhasil dalam mempelajari materi yang tersaji pada mata kuliah ini, perhatikan dan turutilah beberapa saran berikut: Bacalah setiap modul secara bertahap dan berulang-ulang, serta mempraktekkan semua teori yang memerlukan praktek; Jangan sekali-kali menganggap mudah atau ringan sesuatu pokok bahasan atau topik; Kerjakan latihan yang disediakan dengan tertib dan sungguh-sungguh; Jangan malu bertanya kepada siapapun yang diperkirakan dapat memberi penjelasan; Gunakan pertemuan kelompok dengan teman-teman sejawat untuk memantapkan penguasaan atas materi tertentu. Selamat belajar, semoga sukses!

Materi referensi:
BAHASA PASCAL http://www.rey1024.com/?p=12 apakah belajar pascal itu berguna? http://www.gamexeon.com/forum/computer-s komputer II http://pustaka.ut.ac.id/puslata/online.p

6 bulan lalu

Contoh Soal Dan Pembahasan Olimpiade Komputer Materi For To Do


2008 April 7 tags: Olimpiade Komputer by Doantara yasa untuk soal 1 -2 y := 10; x := 0; for i := 0 to y-1 do begin x:=x+ 2 * i; end; Writeln (x); 1. Berapakah output dari program diatas? a. 112 b. 110 c. 90 d. 72 e. 45 Pembahasan Program diatas akan mengulang pernyataan x:=x +2*i sebanyak 10 kali dari i = 0 sampai 9. 0 + 2*0 = 0 0 + 2*1= 2 2 + 2*2 = 6 6 + 2*3 = 12 12 + 2*4= 20 20 + 2*5= 30 30 + 2*6= 42 42 + 2*7= 56 56 + 2*8= 72 76 + 2*9= 90 jadi nilai x yang akan dimunculkan adalah 90. 2. jika baris kelima (x:=x+2*i) diganti dengan x:= x + i Berapakah output program tersebut? a. 112 b. 110 c. 90 d. 72 e. 45 Pembahasan 0=0+0 1=0+1 3=1+2 6=3+3

10 = 6 + 4 15 = 10 + 5 21 = 15 + 6 28 = 21 + 7 36 = 28 + 8 45 = 36 + 9 jadi output nya adalah 45. untuk soal no 3 program x; var i,j,k,l : integer; begin for i:= 1 to 2 do for j := 1 to 2 do write (i*j); end. 3. output program diatas adalah? a. 4 b. 6 c. 9 d. 123246369 e. 1 2 3 2 4 6 3 6 9 Pembahasana i * j 1) > 1 * 1 = 1 2*1=2 3*1=3 2) > 1 * 2 = 2 2*2=4 3*2=6 3) > 1 * 3 = 3 2*3=6 3*3=9 karena write jadi hasil yang akan dimunculkan berjejeer ke samping 123246369. Trims

Var i, j, k,: integer; begin j:= 3; k:= 1; repeat dec(j) ; for I := 1 to j do k:= I + 5 * K; dec(j) : until j < 0; writeln(K); end. apakah output dari program berikut..?? hasilnya 32 tapi saya ingin tahu penjelasannya????? Doantara Yasa Berkata: Sebelumnya mohon maaf jika ada kesalahan dalam pembahasan, karena keterbatasan saya. saya hanya orang baru yang mencoba bergelut dibidang olimpiade ini karena tugas untuk membimbing siswa dalam olimpiade komputer, mohon juga masukannya. semoga blog ini bermanfaat.. salam kenal dan trimkasih buat komentarnya. lanjut ke permasalahan.. Var i, j, k,: integer; begin j:= 3; k:= 1; repeat dec(j) ; for i := 1 to j do k:= i + 5 * k; dec(j) : until j < 0; writeln(k); end. apakah output dari program berikut..?? hasilnya 32 Pembahasan Sebelumnya perlu diketahui arti atau guna dari fungsi dec(j). dec (fungsi) : mengurangi (decrements) nilai suatu variabel sintaks : dec (x, i); i >= 1 x adalah varaibel yang dikurangi i adalah nilai pengurang

dalam penggalan program diatas terdapat dec (j) artinya pengurangan variabel j sebanyak 1 (karena ketentuan nilai pengurang lebih besar sama dengan 1. Berikutnya mari kita coba untuk menjalankan pernyatan yang terdapat dalam begin end. repeat dec (3) = 2 untuk i = 1 k=1+5*1 k=6 dec (2) = 1 1 < 0 <false {program masih dijalankan} dec (1) = 0 untuk i = 2 k=2+5*6 k = 32 dec (0) = -1 -1 < 0 < True {program berhenti dijalankan} Jadi output program diatas adalah 32. Trims

www.toki.or.id http://olimpiade.org
http://artofmathematics.wordpress.com

Contoh Soal Dan Pembahasan Olimpiade Komputer Materi Fungsi Dalam Turbo Pascal
2008 April 4 tags: soal olimpiade komputer by Doantara yasa Untuk soal 1 2 FUNCTION fak (x, y: integer) : Integer; BEGIN if y:= 0 then fak := 1 else fak := x * fak (x, y-1); END; Writeln (fak(5, 3)); 1. Apa hasil dari program di atas! a. 125 b. 8

c. 81 d. 3 e. 15 Pembahasan : Ini adalah contoh kasus fungsi dengan mempergunakan rekursi (fungsi yang mampu memangil dirinya sendiri) Nilai x awal adalah 5, nilai y awal adalah 3 maka fak (5,3) > 5 * fak (5, 3-1) = 5 * 25 = 125 fak (5,2) > 5 * fak (5, 2-1) = 5 * 5 = 25 fak (5,1) > 5 * fak (5,1-1) = 5 * 1 = 5 fak (5,0) (proses selesai karena y =0) Jadi yang muncul adalah 125 2. Jika writeln (fak(5,3)) diganti menjadi writeln (fak(4,5)), hasil dimunculkan adalah a. 20 b. 9 c. 1024 d. 64 e. 5 Pembahasan: Kasus ini sama seperti pada soal 1 Nilai x awal adalah 4, nilai y awal adalah 5 maka fak (4,5) > 4 * fak (4, 5-1) dengan mempergunakan hasil fak ( 4,4) > 4 * 256 = 1024 fak (4,4) > 4 * fak (4, 4-1) dengan mempergunakan hasil fak ( 4,3) > 4 * 64 = 256 fak (4,3) > 4 * fak (4,3-1) dengan mempergunakan hasil fak ( 4,2) > 4 * 16 = 64 fak (4,2) > 4 * fak (4,2-1) dengan mempergunakan hasil fak ( 4,1) > 4 * 4 = 16 fak (4,1) > 4 * fak (4,1-1) = 4 * 1 = 4 fak (4,0) (proses selesai karena y =0) Jadi yang muncul adalah 1024 3. Manakah yang salah dari deklarasi dibawah ini a. function info(a:byte):real; b. function info:byte; c. function info(a,b:byte) : real; d. function info(a: real; b:integer):real; e. function info(a:real); Pembahasan Ingat bentuk dekelarasi dari suatu fungsi FUNCTION nama_fungsi(daftar_fungsi):tipe; - daftar parameter berisi sejumlah parameter - tipe menyatakan tipe dari hasil fungsi - Jika fungsi tidak memiliki parameter, tanda () tidak perlu disertakan. jadi jawabannya adalah e.function info(a:real);

PETUNJUK KHUSUS : I. Pilihlah salah satu jawaban yang tepat dengan memberi tanda silang (x) pada salah satu huruf jawaban a, b, c, d, dan e pada lembar jawaban. 1. Gambar yang membentuk sejumlah obyek garis dan kurva secara matematis disebut .. a. Format c. Obyek Vektor e. Vektor b. obyek d. Bitmap 2. Gambar yang membentuk obyek berdasarkan komposisi unsur warna, ttik, raster disebut.. a. Format c. Vektor e. Obyek Bitmap b. Bitmap d. Obyek 3. ruang penyimpanan format vektor relatif daripada format bitmap a. Lebih besar c. Lebih rendah e. sama b. Lebih kecil d. Lebih PEndek 4. Software yang berhubungan dengan format vektor adalah. a. Paint brush c. Corel Photo Show e. Macromedia Freehand b. adobe Photoshop d. Movie Maker 5. Objek dua Dimensi kecuali. a. garis c. lingkaran e. bujur sangkar b. Balok d. Persegi 6. Dalam Toolbox di aplikasi CorelDraw Grapic terdapat ikon yang berguna untuk menggambar Secara bebas. Nama ikon tersebut adalah . a. Shape c. Smartdrawing e. Freehand b. Pick d. Fill 7. Dalam Toolbox di aplikasi CorelDraw Grapic terdapat ikon yang berguna untuk menggambar obyek simetris. Nama ikon tersebut adalah .. a. Shape c. Smartdrawing e. Freehand b. Pick d. Fill

8. Dalam Toolbox di aplikasi CorelDraw Grapic terdapat ikon yang berguna untuk menggambar obyek yang disediakan program nama ikon tersebut adalah. a. Shape c. Smartdrawing e. Freehand b. BasicShape d. Fill 9. Dalam Toolbox di aplikasi CorelDraw Grapic terdapat ikon yang berguna untuk mewarnai obyek. Nama ikon tersebut adalah. a. Shape c. Smartdrawing e. Freehand b. Pick d. Fill 10. Gambar yang membentuk obyek berdasarkan komposisi unsur warna, ttik, raster disebut.. a. Format c. Vektor e. Obyek Bitmap b. Bitmap d. Obyek 11. Dalam Toolbox di aplikasi CorelDraw Grapic terdapat ikon yang berguna untuk membuat obyek 3D. Nama ikon tersebut . a. Interactive blend c. Rectangle e. Paint b. basic shape d. Smartdrawing 12. Fungsi Sub menu 3D effect dalam program coreldraw graphics adalah. a. Membuat efek 3D dimensi d. membuat halaman baru b. memberi warna pada benda 3 Dimensi e. Membuat tampilan 3D menjadi 2 D c. Menggambar dengan bebas semua benda 3 dimensi 13. Berikut ini adalah menu-menu yang terdapat dalam corel Draw graphic kecuali. a. File c. Utilities e. Effects b. edit d. Bitmap 14. Hal-hal berikut yang paling tepat dilakukan dalam program Corel Draw Graphic adalah. a. Membuat desain web c. Menulis naskah e. membuat presentasi b. Mengolah Teks d. Membuat bentuk gambar garis 15. Berikut ini yang tidak dapat dilakukan dari Corel Draw Graphic adalah.

a. Membuat dokumen d. Menggambar bentuk 3 dimensi b. Mencetak dokumen e. Membuat desain web c. Mengatur ukuran dokumen 16. Untuk membuat teks atau tulisan dalam Corel Draw Graphic Digunakan fasilitas a. Type tool c. Text Tool e. Pen Tool b. Transtool d. Teks Tool 17. Untuk menggambar kotak Corel Draw Graphic menggunakan. a. Elipse Tool c. Poligon Tool e. Rectangle Tool b. 2D Tool d. Shape Tool 18. Untuk mengganti tipe huruf dalam Corel Draw Graphic menggunakan fasilitas . a. Font setup c. Font Bold e. Font size b. Font Tipe d. Font Artistic 19. Teknik Untuk memasukkan gambar dalam Corel Draw Graphic menggunakan perintah. a. Open c. Export e. Cut b. Insert d. Import 20. Fasilitas yang ada di Corel Draw Graphic untuk menggabungkan dua gambar menjadi satu, sehingga gambar tersebut dapat menjadi satu menggunakan perintah. a. arrange c. combine e. group b. tranfomation d. Lock Objek

II. Jawablah pertanyaan di bawah ini dengan benar


1. Jelaskan Kegunaan Corel Draw Graphic dan Adobe Photoshop, serta bedanya kedua program tersebut?

2. Jelaskan kegunaan Ikon Pick Tool dalam Corel Draw Graphic?

3. Terangkan cara memasukkan gambar dalam Corel Draw 4. sebuah foto Gunung, bagaimana cara kita untuk menggambil gambar gunung, tanpa ada gambar yang lain. 5. Jelaskan kegunaan menu layer pada Adobe Photosop?

Materi Olimpiade Komputer, FOR TO dan FOR DOWNTO dalam Turbo Pacal
2008 April 5 by Doantara yasa PERNYATAAN FOR TO Pernyataan FOR biasa digunakan untuk melakukan pengulangan yang jumlahnya telah diketahui sebelumnya, dengan proses mencacah naik. Bentuk pernyatan for sebagai berikut: FOR variabel := nilai_awal TO nilai akhir DO pernyataan;

berdasarkan gambar, variabel bertindak sebagai variabel pengontrol perulangan. variabel akan diisi dengan nilai, dimulai dari nilai_awal hingga nilai_akhir untuk setiap putaran, dan untuk setiap putaran pernyataan akan dijalankan. variabel nilai_awal dan nilai_akhir harus bertipe sama dan harus berupa tipe ordinal dengan nilai_awal harus lebih atau sama dengan nilai_akhir contoh program: PROGRAM For1; Uses Crt; Var x : integer; BEGIN FOR x := 1 TO 10 DO

Writeln (Saya mencoba pernyataan FOR TO); END. Perogram diatas akan memunculkan dilayar Saya mencoba pernyataan FOR TO sebanyak 10 tulisan. contoh program lainnya. PROGRAM For2; Uses Crt; Var x : integer; BEGIN FOR x := 1 TO 10 DO Writeln (x); END. HASIL 1 2 3 4 5 6 7 8 9 10 tetapi jika writeln(x) diganti dengan write (x) akan menghasilkan 1 2 3 4 5 6 7 8 9 10 PERNYATAAN FOR DOWNTO Pernyatan FOR DOWNTO merupakan kebalikan dari pernyataan FOR TO. Bentuk pernyatan for sebagai berikut: FOR variabel := nilai_awal DOWNTO nilai akhir DO pernyataan; PROGRAM ForDOWNTO1; Uses Crt; Var x : integer; BEGIN FOR x := 10 TO 1 DO Write (x); END. HASIL 10 9 8 7 6 5 4 3 2 1 contoh program gabungan FOR TO dengan FOR DOWNTO

PROGRAM Lat1; Uses crt; Var x,y,z : integer; BEGIN FOR x := 1 TO 4 DO y := 4 DOWNTO x DO Write(x); Readln; END. HASIL 4444333221 contoh soal olimpiade materi FOR DO segaera di post. Trims

SOAL & PEMBAHASAN SELEKSI TAHAP 1 OLIMPIADE KOMPUTER SMAN 1 METRO TAHUN 2009
SCORE PENILAIAN : BENAR = +4 SALAH = -1 TIDAK MENJAWAB = 0 Soal dan Pembahasan Seleksi I 1. Seorang pedagang barang elektronik menjual sebuah televisi berwarna layar datar seharga Rp.3.000.000, jika tarif pajak barang elektronik yang tergolong barang mewah tersebut adalah antara 5 % sampai 8 %, maka harga yang paling mungkin untuk televisi tersebut setelah ditambah pajak adalah : (A) Rp. 3.180.000 (B) Rp. 3.100.000 (C) Rp. 3.120.000 (D) Rp. 3.140.000 (E) Rp. 3.250.000 Pembahasan X = Rp 3.000.000 Tarif Pajak = 5% - 8% Harga televisi + pajak 5% = 3.150.000 6% = 3.180.000 7% = 3.210.000 8% = 3.240.000 2. Manakah yang mendeklarasikan tipe enumerasi dengan tepat? a. Type a=integer; b. Type a=1..300; c. Type a=(baik, jelek, buruk); d. Type a=[baik, jelek, buruk]; e. Type a=baik, jelek, buruk; 3. Tipe di bawah ini mana yang tidak dapat melakukan operasi aritmatika? a. Integer b. Byte c. Real d. boolean e. word 4. Deklarasi prosedur manakah yang tidak dibenarkan? a. procedure hapus; b. procedure hapus(s:string); c. procedure hapus(var s:string); d. procedure hapus(s:string):boolean; e. procedure hapus(var data); Pembahasan: Untuk penulisan prosedur, tidak diperbolehkan adanya nilai kembali. Sedangkan parameter tanpa tipe data (pada opsi e), dapat dibenarkan.

5. Tipe variabel ekspresi manakah yang tidak dapat ditampilkan dengan procedure Writeln? a. Type T=Integer; b. Type T=String; c. Type C=Char; d. Type T=(Small, Medium, Large) e. Semua valid Pembahasan: Opsi d adalah tipe data enumerasi. Tipe data enumerasi tidak dapat ditampilkan dengan perintah Writeln. 6. Perhatikan program berikut : var s:string; begin s:='TOKI GO GET GOLD!'; delete(s,1,length(s)-12); writeln(s); end. Apa keluaran program di atas ? a. GO GET GOLD! b. GO GET GOLD! c. GET GOLD! d. TOKI GO GET e. TOKI GO GE Pembahasan: Procedure delete: Deklarasi : procedure Delete(var S: String; Index: Integer; Count:Integer); Keterangan : procedure delete akan menghapus S sebanyak count karakter, dimulai dari posisi Index. Function length: Deklarasi : Function Length (S : String) : Integer; Keterangan : Length menghasilkan panjang dari S, bernilai antara 0 sampai dengan 255. Jika S tidak berisi apa-apa maka akan menghasilkan 0. Statement delete(s,1,length(s)-12) akan menghapus s dari posisi 1 sebanyak panjang s, yaitu 17-12 = 5. Sehingga yang dihapus adalah karakter TOKI dan s akan bernilai GO GET GOLD! 7. Perhatikan penggalan program berikut : var i,k: integer; begin i:=5; k:=0; k:=trunc(sqrt(i))+1; writeln(k); end. Apa keluaran program di atas ? a. 3 b. 2.24 c. 2 d. 0

e. program tidak dapat dijalankan Pembahasan: Fungsi sqrt : Deklarasi : Function Sqrt (X : Real) : Real; Keterangan : menghasilkan akar pangkat dua dari x, di mana x harus positif Fungsi trunc: Deklarasi : Function Trunc (X : Real) : Longint; Keterangan : menghasilkan bilangan bulat dari X, akan selalu lebih kecil atau sama dengan X. Sqrt(5) akan menghasilkan 2.23 Trunc(2.23) akan menghasilkan 2 Sehingga k:=trunc(sqrt(i))+1; akan menghasilkan 3 8. Mengacu pada program berikut : var A,B:string; C:string[10]; begin A:='TOKI MEMANG'; B:='HEBAT'; C:=A+B; if (Pos(B)>0) then Begin Writeln('A'); end else Writeln('B'); end. Apa yang terjadi jika program di atas di jalankan... a. Huruf A tercetak b. Huruf B tercetak c. Tidak dapat dipastikan d. Terjadi error e. Tidak bisa di compile Pembahasan: Kesalahan pertama yang akan ditemui program adalah pada function pos. Deklarasi : Function Pos (Substr : String; S : String) : Integer; Keterangan : function pos akan menghasilkan urutan atau posisi substr di S. Jika tidak ditemukan, maka akan menghasilkan 0. Pada program function pos hanya terdiri dari 1 parameter saja sehingga program tidak akan dapat dijalankan. 9. Jika n dan p adalah dua bilangan bulat, dan n + p berharga ganjil, manakah dari berikut ini bil ganjil? a. n p + 1 b. np c. n2 + p2 1 d. 3p + 5n e. (p n)(n p) Pembahasan ; A bukan, karena (n+p) adalah ganjil maka dari n dan p salah satu ganjil dan yang lain

genap. Selisih antara n dan p pasti ganjil sehingga jika ditambah 1 menjadi genap. B bukan karena perkalian antara suatu bilangan genap dengan bilangan apapun akan menjadi genap. C bukan karena pangkat bulat positif berapapun dari bilangan genap, tetap genap, dan ganjil tetap ganjil, kemudian ganjil ditambah genap dan dikurang ganjil menjadi genap. D bukan karena pangkat bulat positif berapapun dari bilangan ganjil tetap bilangan ganjil, dan jumlah dua bilangan ganjil menjadi genap. E benar, karena perkalian antara dua bilangan ganjil menghasilkan bilangan ganjil. 10. var i,j : integer; begin for i :=1 to 3 do for j :=i to 3 do write(*); writeln; end. Output program di atas : a. * ** *** b. *** *** *** c. *** ** * d. ****** 11. Perhatikan potongan program berikut : begin writeln(round(frac(3.7))); end. Apa keluaran program di atas ? a. 0 b.1 c. 2 d. 3 e. 4 Pembahasan: Fungsi frac (lihat pembahasan di atas) Fungsi round Deklarasi : Function Round (X : Real) : Longint; Keterangan : membulatkan bilangan X, yang mungkin lebih besar atau lebih kecil dari X. Frac(3.7) akan menghasilkan 0.7

Round(0.7) akan menghasilkan 1 12. Delegasi-delegasi dari negara W dan negara R duduk berhadap-hadapan pada meja perundingan. Masing-masing delegasi terdiri atas seorang ketua, dua atase militer dan dua wakil kamar dagang negara masing-masing. Delegasi W beranggotakan A, B, C, D, dan E. Delegasi R beranggotakan F, G, H, I, dan J. Masing-masing delegasi berada pada sisi-sisi memanjang berlainan (satu negara pada sisi yang sama dan ketua duduk di tengah delegasinya). Batasan dalam mengatur urutan duduk mereka: Delegasi W menempatkan A dan B di kedua ujung barisannya. Kuping kanan G tuli shg ia harus paling kanan dari delegasi R. Baik D maupun F bukan ketua. Para atase militer W, salah seorangnya B, didudukkan berdampingan,dan tidak ada satupun yang berseberangan dengan atase militer R G bukan atase militer. C wakil dari kamar dagang, duduk berseberangan dgn H. Manakah yang paling mungkin mengenai F berikut? a. Wakil kamar dagang yang duduk di sebelah I b. Wakil kamar dagang yang duduk di sebelah H c. Wakil kamar dagang yang duduk berseberangan dengan B d. Atase militer yang duduk di sebelah I e. Atase militer yang duduk di sebelah J Pembahasan Dibuat diagram sbb x1x2x3x4x5 negara W y1y2y3y4y5 negara R Dari (1) kemungkinan {x1,x5} adalah {A,B} atau {B,A} Dari (2) maka y5=G yang karena pernyataan (4) dan (5) (G bukan a.m dan B adalah a.m) menyebabkan x5=B, sehingga (atase militer dengan bold) A x2x3x4 B y1y2y3y4G Dari pernyataan (6) dan (4) diperoleh C = x2 dan y2 = H, sehingga A C x3x4 B y1H y3y4G Dari pernyataan (3) dan diagram di atas D = x4 dan F = y1 atau y4 A C E D B y1H y3y4 G Jadi tinggal 2 kemungkinan F=y1 (atase militer), atau F=y4 (wakil kamar dagang). Jika atase militer maka (D) dan (E) salah karena sebelah y1 adalah H. Jika wakil kamar dagang maka (B) salah karena H atase militer dan (C) salah karena B ada di depan G. Jadi tinggal pilihan (A) yang paling mungkin. (Note: ini bukan satu-satunya kemungkinan.Kemungkinan lainnya masih ada tapi tidak ada di kelima pilihan itu). 13. Berapakah jangkauan tipe data Word? a. 0255 b. 065536

c. 065535 d. -3276832767 e. Salah semua 14. Tipe data manakah yang dapat memuat bilangan pecahan? a. Byte b. Integer c. Boolean d. Real e. LongInt 15. Dalam potongan program berikut, var Z1, Z2, Z3, Z4: set of Byte; begin Z1 := [1, 2, 6, 8, 9]; Z2 := [3, 6, 8, 12, 14]; Z3 := Z1 + Z2; Z4 := Z1 * Z2; end. Berapakah nilai akhir Z3 dan Z4? a. Z3 = [6, 7, 8] Z4 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14] b. Z3 = [6, 8] Z4 = [1, 2, 3, 6, 8, 9, 12, 14] c. Z3 = [1, 2, 3, 6, 6, 8, 8, 9, 12, 14] Z4 = [6, 6, 8, 8] d. Z3 = [1, 2, 3, 6, 8, 9, 12, 14] Z4 = [6, 8] e. Salah semua Soal di bawah ini untuk no. 16 s.d 18 6 orang pengusaha P Q R S T & U mengadakan rapat tertutup. Dgn formasi kursi diatur berjarak sama satu sama lain mengelilingi meja, sedemikian sehingga setiap kursi di seberangnya: - P tidak boleh ditempatkan di samping Q - R tidak boleh ditempatkan di samping S - T harus ditempatkan di samping S 16. Jika R duduk di seberang Q, ada berapa kombinasi urutan keempat pengusaha lainnya dapat didudukan a. 5 b. 4 c. 3 d. 2 e. 1 Pembahasan Urutan 1 : R,P,U,Q,T,S Urutan 2 : P,U,Q,T,S,R 17. Jika P duduk di seberang T, siapa yg duduk di seberang S? a. P

b. Q c. S d. T e. U Pembahasan Urutan 1 : P, U,R,T,S,Q 18. Jika P duduk di seberang Q, siapa yang dapat ditempatkan di seberang T, jika I.S II.R III. U? a. Hanya II b. Hanya III d. I, II dan III c. Hanya I dan II d. Hanya II dan III e. I, II dan III Pembahasan Urutan 1 : P,T,S,Q,R,U Urutan 2 : T,S,Q,R,U,P Urutan 3 : S,Q,R,U,P,T Urutan 4 : Q,R,U,P,T,S 19. Deklarasi manakah yang benar? a. type Anggota = record Nama: String[40]; NomorAnggota: Word; End; b. type Anggota: record Nama = String; NomorAnggota = Word; End; c. type Anggota := record Nama := String[20]; NomorAnggota := Word; End; d. Type Anggota = record Nama: String[]; NomorAnggota: Word; end; e. Semua deklarasi di atas salah 20. Tipe data mana yang sanggup memuat numerik hingga 75000? a. Word b. Integer c. Real d. Longint e. String 21. Seorang manajer perusahaan kecil sedang mengatur Jadwal kerja para pegawainya. Setiap hari kerja (Senin s.d Jumat, lima hari kerja seminggu) diperlukan paling sedikit tiga orang pegawai. Karena perusahaan ini masih kecil, jumlah

pegawainya hanya ada lima orang yang bekerja secara paruh waktu (part time, artinya tidak masuk setiap hari lima hari seminggu), Ali hanya bisa masuk kerja pada hari Senin, Rabu, dan Jumat. Baiquini tidak bisa masuk kerja pada hari Rabu. Chali hanya bisa masuk kerja pada hari Selasa dan Rabu. Dita tidak bisa masuk kerja pada hari Jumat. Eko bisa masuk kerja kapan saja kecuali setiap hari Senin pertama dan setiap hari Kamis pertama dalam setiap bulan. Siapa saja yang selalu dapat masuk kerja pada hari Senin ? a. Dita, Baiquini, dan Ali b. Ali, Eko, dan Chali c. Baiquini, Eko, dan Chali d. Eko, Chali, dan Dita e. Baiquini, Chali, dan Dita Pembahasan Ali : Senin,Rabu,Jumat Baiquini : Senin,Selasa,Kamis,Jumat Chali : Selasa, Rabu Dita : Senin,Selasa,Rabu,Kamis, Eko : Selasa, Rabu, Jumat 22. Siapa saja yang selalu dapat masuk kerja pada hari Jumat? a. Ali, Baiquini, dan Dita. b. Ali, Chali, dan Dita. c. Baiquini, Chali, dan Eko. d. Chali, Baiquini, dan Ali. e. Ali, Baiquni, dan Eko. 23. Pada hari apa kemungkinan sang manajer menghadapi kesulitan untuk mendapatkan minimum tiga orang pegawai ? a. Senin b. Selasa c. Rabu d. Kamis e. Jumat Pembahasan Senin = 3 pegawai pasti Selasa & Rabu = 4 pegawai siap Kamis = 2 pegawai (Eko tidak dapat hadir senin dan minggu pertama) Jumat = 3 pegawai pasti 24. Pada hari apa sang manajer harus (tidak ada pilihan lain) untuk meminta Eko masuk kerja ? a. Senin b. Selasa c. Rabu d. Kamis e. Jumat

You might also like