• Tidak ada hasil yang ditemukan

Bahan Ujian Komprehensif Sidang Sarjana

N/A
N/A
Protected

Academic year: 2017

Membagikan "Bahan Ujian Komprehensif Sidang Sarjana"

Copied!
4
0
0

Teks penuh

(1)

Bahan Ujian Komprehensif Sidang Sarjana Mata ujian : Algoritma dan Pemrograman

Koordinator : Dr. Bambang Wahyudi, SKom., MMSI 1. Pertanyaan:

Apa definisi dari “algoritma” ? Jawaban:

Algoritma adalah “urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis.”

2. Pertanyaan:

Apa saja pertimbangan dalam menyusun sebuah algoritma ? Jawaban:

a. Algoritma harus benar (hasilnya sesuai dengan keinginan pemecahan masalahnya);

b. Algoritma harus mampu memberikan hasil terbaiknya (dari beberapa kemungkinan hasil lain); c. Algoritma harus efisien dalam penggunaan waktu dan memori.

3. Pertanyaan:

Apa beda algoritma dengan program ? Jawaban:

Program adalah kumpulan pernyataan (perintah untuk) komputer, sedangkan metode dan tahapan sistematis dalam program adalah algoritma. Program ditulis dengan menggunakan bahasa pemrograman, sehingga bisa disebut bahwa program adalah implementasi bahasa pemrograman. 4. Pertanyaan:

Apa yang disebut dengan “pseudocode” ? Jawaban:

Pseudocode adalah tulisan (notasi) algoritma yang mendekati perintah dalam bahasa pemrograman.

5. Pertanyaan:

Apa beda compiler dan interpreter ? Jawaban:

Compiler adalah penerjemah yang bekerja memeriksa program sekaligus seluruhnya, dan interpreter adalah penerjemah yang bekerja memeriksa program baris demi baris.

6. Pertanyaan:

Apa yang disebut dengan “bahasa pemrograman tingkat tinggi” dan “bahasa pemrograman tingkat rendah” ?

Jawaban:

Bahasa tingkat tinggi adalah bahasa pemrograman yang ditulis dengan orientasi bahasa manusia (khususnya bahasa Inggris), sedangkan bahasa tingkat rendah adalah bahasa pemrograman yang ditulis mendekati bahasa mesin yang setiap instruksinya langsung dikerjakan oleh komputer, tanpa harus melalui penerjemah (translator).

7. Pertanyaan:

Bagaimana cara menyajikan algoritma ? Jawaban:

Penyajian algoritma secara garis besar bisa dalam dua bentuk penyajian yaitu tulisan dan gambar. Tulisan bisa dalam bahasa umum manusia (Indonesia, Inggris, dan sebagainya), maupun bahasa yang mendekati bahasa pemrograman (pseudocode). Sedangkan penyajian dengan gambar umumnya menggunakan flowchart.

8. Pertanyaan:

Apa beda flowchart sistem dan flowchart program ? Jawaban:

(2)

9. Pertanyaan:

Apa saja langkah-langkah pemecahan masalah dalam pembuatan program ? Jawaban:

1. Mendefinisikan masalah

2. Membuat Algoritma dan Struktur Cara Penyelesaian 3. Menulis Program

4. Mencari Kesalahan

5. Menguji dan Memverifikasi Program 6. Mendokumentasi Program

7. Pemeliharaan Program 10

.

Pertanyaan:

Apa yang dilakukan dalam menguji program ? Jawaban:

1. Melakukan kompilasi hingga program bersifat error free

2. Menguji dengan proses (perhitungan) manual, hasilnya harus tepat 3. Menguji dengan banyak data agar dipastikan kevalidan program 11. Pertanyaan:

Apa keperluan dilakukannya dokumentasi program ? Jawaban:

Tujuan dokumentasi adalah untuk mengingat kembali (khususnya alur kerja atau logika) dari program tersebut agar mudah jika harus melakukan perubahan atau penambahan sesuatu dalam programnya.

12 .

Pertanyaan:

Jelaskan pengelompokkan struktur proses dalam algoritma ! Jawaban:

• Proses urutan (sequence)

– Prosedur proses dalam algoritma yang dilakukan secara urut langkah demi langkah.

– Sebuah urutan terdiri dari satu atau lebih instruksi. Tiap instruksi dilaksanakan secara berurutan sesuai dengan urutan pelaksanaan, artinya suatu instruksi akan dilaksanakan setelah instruksi sebelumnya telah selesai dilaksanakan.

• Proses penyeleksian (selection)

– Suatu instruksi dikerjakan jika suatu kondisi tertentu dipenuhi. Dengan adanya proses ini maka ada kemungkinan beberapa jalur aksi yang berbeda berdasarkan kondisi yang ada.

• Proses pengulangan (looping)

– Suatu proses melakukan eksekusi suatu program secara berulang-ulang pada suatu blok instruksi tertentu yang terkendali.

13 .

Pertanyaan:

Apa kekurangan menuliskan algoritma dengan bahasa natural (bahasa manusia) ? Jawaban:

Kelemahan penulisan yang menggunakan bahasa natural antara lain (1) hanya dimengerti oleh orang yang memiliki pengetahuan bahasa tersebut, (2) bisa menghasilkan arti yang berbeda (ambiguous), (3) kadang sulit merangkainya secara terstruktur (harus menjelaskan dengan panjang lebar), apalagi jika harus dilakukan algoritma yang memiliki pengulangan proses (loop), atau yang bersifat rekursif.

14 .

Pertanyaan:

Apa kriteria algoritma yang baik menurut Donald E. Knuth ? Jawaban:

1. bisa menerima input dari luar, bukan hanya ada di dalam program, 2. memiliki sedikitnya sebuah hasil atau output,

3. memiliki kepastian (definiteness) pada setiap instruksinya atau tidak memiliki arti yang bias (tidak bersifat ambigu),

4. memiliki batas (finiteness) atau memiliki titik henti (stopping role), dan 5. bersifat efektif (effectiveness).

15 .

Pertanyaan:

(3)

ganjil atau genap ! Jawaban:

input a

if a/2 = int(a/2) write “genap” else

write “ganjil” endif

atau:

input a

if mod(a/2) = 0 write “genap” else

write “ganjil” endif

16 .

Pertanyaan:

Sebutkan tiga jenis kesalahan ketika menjalankan program ! Jawaban:

1. Syntax errors 2. Run-time errors 3. Logic errors 17

.

Pertanyaan:

Berapa banyak kondisi yang bisa digambarkan pada sebuah lambang decision pada flowchart ? Jawaban:

Tiga 18

.

Pertanyaan:

Apa perbedaan teknik looping yang menggunakan “repeat-until” dengan “for-next” ? Jawaban:

Kondisi pengulangan (iterasi banyaknya pengulangan) pada for-next terletak di posisi paling atas (ada di for), sedangkan pada repeat-until berada di bawah (di until).

19 .

Pertanyaan:

Gambarkan lambang konektor pada flowchart yang digunakan untuk menyatakan bahwa gambar proses atau prosedur berikutnya (sambungannya) berada di halaman yang sama atau berada di halaman yang berbeda ?

Jawaban:

“on-page reference” rangkaian (proses atau prosedur) berikutnya berada di halaman yang sama, sedangkan ”off-page reference” rangkaian (proses atau prosedur) berikutnya berada di halaman yang lain.

20 .

Pertanyaan:

Apa beda cara pembacaan untuk file yang bersifat sequential dan file yang bersifat direct ? Jawaban:

File yang bersifat sequential, hanya dapat dibaca secara berutan, yaitu sebuah record akan dibaca setelah record sebelumnya selesai dibaca. Sedangkan file yang bersifat direct, record dapat dibaca berurutan maupun langsung (ke nomor record tertentu tanpa harus membaca record sebelumnya).

21 .

Pertanyaan:

Bagaimana lambang dalam flowchart yang menandai bahwa file yang disimpan secara sequential atau secara direct ?

Jawaban:

(4)

. Apa yang Saudara ketahui tentang kartu berlubang (punch card) yang di dalam flowchart dilambangkan dengan

Jawaban:

Untuk menuliskan program atau memberi data yang akan digunakan komputer, kita harus melubangi kartu khusus yang didesain untuk itu yang disebut punch card dengan alat pelubang yang mirip dengan mesin ketik. Sebagai contoh, jika kita menuliskan program sebanyak 20 baris, maka kita butuh 20 kartu yang kita lubangi sesuai perintah per barisnya. Selanjutnya kartu-kartu itu disusun sesuai urutan baris program yang kemudian akan dibaca oleh card reader dan untuk selanjutnya diolah oleh komputer.

23 .

Pertanyaan:

Sebutkan lambang-lambang dalam flowchart yang digunakan untuk menampung hasil olah komputer (alat output)

Jawaban:

“document” yaitu hasil olahan dicetak melalui printer atau plotter dan sejenisnya; “stored data” yaitu penyimpan hasil olahan ke dalam file;

“display” yaitu penampil hasil olahan ke monitor; “card” yaitu output yang dihasilkan melalui puch card. “paper tape” yaitu output yang dihasilkan melalui pita kertas 24

.

Pertanyaan:

Sebutkan lambang-lambang dalam flowchart yang digunakan untuk memberikan data ke komputer (alat input)

Jawaban:

“manual input” yaitu input yang diberikan orang secara manual (misalkan melalui keyboard)

“sequential data” yaitu input yang diberikan melalui file yang bersifat sequential. “direct data” yaitu input yang diberikan melalui file yang bersifat direct.

“card” yaitu input yang diberikan melalui puch card. “paper tape” yaitu input yang diberikan melalui pita kertas. 25

.

Pertanyaan:

Jelaskan keuntungan menuliskan program menggunakan modul, sub-program, atau sub-routine ? Jawaban:

1. Memudahkan dalam penulisan atau pembacaan program;

2.

Memudahkan dalam menelusuri kesalahan (

error

) bila itu terjadi;

3.

Programmer

bisa lebih berkonsentrasi di modul yang sedang dikerjakannya.

26 .

Pertanyaan:

Sebutkan nilai angka seperti apa yang lebih cocok ditampung ke dalam variabel string ? Jawaban:

Nilai angka yang tidak diproses secara numerik (matematis), seperti nomor telepon. 27

.

Pertanyaan:

Apa saja kelemahan menyajikan algoritma dengan flowchart ? Jawaban:

Untuk masalah yang besar atau rumit, penggambarannya sulit dilakukan atau sulit dibaca (ditelusuri) karena banyaknya.

Referensi

Dokumen terkait

Saran yang bisa peneliti berikan adalah semoga karya yang jauh dari sempurna ini dapat memberikan pengetahuan kepada guru bahasa Indonesia, mahasiswa, peneliti lain, dan ilmu

Saran yang bisa peneliti berikan adalah semoga karya yang jauh dari sempurna ini dapat memberikan pengetahuan kepada guru bahasa Indonesia, mahasiswa, peneliti lain, dan ilmu

Maka problem moralitas seperti yang terjadi pada saat ini susah untuk hanya bisa didekati melulu dari ilmu pengetahuan.. Peran agama diperlukan untuk mengatasi kelemahan keilmuan

Pada bagian ini hanya akan berbicara menterjemahkan FoL ke bahasa natural. Jika diberikan bahwa arti dp semua predikat yang berada dlm formula diketahui, maka proses adalah sbb

Kita bisa berkomunikasi dengan orang-orang hanya karena mereka bersama kita memiliki separangkat cara bertingkah laku yang ‘tersepakati’ Bahasa dalam arti ini merupakan milik

Kedua, reaksi penyabunan hanya bisa menghasilkan sabun basa logam berkualitas memadai dengan menggunakan pelarut dimetil sulfoksida DMSO, suatu pelarut aprotik yang selain berkonstanta

Gadget adalah hal yang sangat populer saat ini. Hampir setiap orang menggunakan gadget untuk berbagai keperluan. Salah satu fungsinya adalah berkomunikasi dan mencari informasi dengan cepat. Gadget membutuhkan sebuah program yang berfungsi untuk mengatur berjalannya perangkat tersebut. Menurut Yulikuspartono (2009:29) mengemukakan bahwa “ program merupakan sederetan instruksi atau statement dalam bahasa yang dimengerti oleh komputer yang bersangkutan”. Program merupakan sebuah elemen inti untuk kinerja suatu perangkat. Program inilah yang akan mengolah dan menjalankan perintah yang diberikan oleh user agar dapat di kelola oleh perangkat/device. Program juga dibuat oleh manusia, dan orang yang membuat program ini disebut dengan Programmer. Seorang programmer membuat program dengan menggunakan bahasa pemrograman. Bahasa pemrograman inilah yang disusun dengan berdasarkan logika atau algoritma menusia yang di terjemahkan ke algoritma manusia yang di terjemahkan ke perangkat. Bahasa pemrograman ini dibuat untuk memudahkan manusia dalam membuat suatu aplikasi atau program. Bahasa pemrograman bisa di klasifikasikan dari beberapa sudut pandang. Salah satu pengklasifikasian bahasa pemrograman adalah pendekatan dari notasi bahasa pemrograman tersebut, apakah lebih dekat ke bahasa mesin atau ke bahasa manusia. Dengan cara ini, bahasa pemrograman dapat di kelompokan menjadi dua yakni bahasa tingkat rendah (low level languages) dan bahasa tingkat tinggi (high level language). Bahasa tingkat tinggi adalah bahasa yang mudah dipahami oleh manusia, C++ merupakan salah satu contoh dari bahasa tingkat tinggi. Contoh lain dari bahasa tingkat tinggi ini seperti Pascal, Perl, Java, dan lain-lain sebagainya. Sedangkan bahasa tingkat rendah adalah bahasa mesin atau bahasa assembly. Secara sederhana sebuah komputer hanya dapat mengeksekusi program yang ditulis dalam bentuk bahasa mesin. Oleh karena itu, jika suatu program ditulis dalam bahasa tingkat tinggi maka program tersebut harus diproses terlebih dahulu sebelum bisa dijalankan dengan komputer. Hal ini merupakan salah satu kekurangan bagi bahasa tingkat tinggi dimana diperlukan waktu untuk memproses suatu program sebelum program tersebut di jalankan. Sebagai bahasa yang beraras tinggi, yang menggunakan perintah-perintah yang mudah dimengerti oleh manusia, C++ mempunyai keunggulan yakni bersifat universal. Sebagai bahasa yang universal, C++ bisa dijumpai di berbagai platform (Linux, Unix, Windows, Mac, dan lain-lain). Artinya, jika kita menguasai C++ di platform PC, sangat mudah untuk berpindah di Linux ataupun system operasi yang lain.

Sehingga tujuan penelitian dan pengembangan ini dapat dirumuskan sebagai berikut: a menghasilkan perangkat pembelajaran bahasa Indonesia yang semula hanya berorientasi pada pengembangan