Anda di halaman 1dari 10

Jumlah Soal 60 Pilihan Ganda

Algoritma Dan Pemrograman B

Azhari, Skom

1. Sekumpulan informasi yang dimengerti oleh komputer merupakan pengertian dari :


A. Algoritma
C. Program
B. Diagram Alir
D. Variabel
2. Urutan langkah-langkah logis untuk menyelesaikan masalah yang disusun secara
sistematis disebut :
A. Algoritma
C. Program
B. Diagram Alir
D. Variabel
3. Dalam flowchart Simbol
A. Input/Output
B. Proses

digunakan untuk menyatakan :


C. Input
D. Output

4. Perhatikan algoritma di bawah ini :


Deklarasi
Z, Y, X : integer
Deskripsi
Z := X
X := Y
Y := Z
Algoritma di atas digunakan untuk :
A. Membandingkan bilangan
B. Menukar bilangan

C. Menyamakan bilangan
D. Memilih bilangan

5. Berikut ini merupakan kriteria terbaik dari pemilihan suatu algoritma, kecuali :
A. Setiap langkah harus didefinisikan dengan tepat
B. Tidak mengandung dua arti (ambiguitas)
C.
Jumlah langkahnya tidak berhingga
D. Algoritma memiliki nol atau lebih keluaran
6. Algoritma dapat dinyatakan dengan cara berikut, yaitu :
A. Pemrograman dan bagan alir
C. Pseudocode dan prosedur
B. Pseudocode dan bagan alir
D. Naratif dan prosedur
7. Perhatikan diagram alir di bawah ini :

Text
Expressio
n
True
Body of IF

False

Body of Else

STMIK JAKARTA STI&K - 1

Exit

Diagram alir di atas menggambarkan logika :


A. CASEOF
C. FORDO
B. IFTHENENDIF
D. IFTHENELSEENDIF
8. Aturan dalam pemberian nama suatu variabel adalah sebagai berikut, kecuali :
A. Harus dimulai dengan abjad, tidak boleh dengan angka atau simbol
B. Boleh ada spasi diantaranya
C. Jangan menggunakan simbol-simbol seperti titik, koma dan sebagainya
D. Sebaiknya jangan terlalu panjang
9. Struktur pengulangan yang didalamnya mengandung perintah yang akan dilakukan
paling sedikit satu kali adalah :
A. REPEATUNTIL
C. FORDO
B. WHILEDO
D. Jawaban A, B dan C BENAR
10. Operator AND, OR dan NOT termasuk dalam operator :
A. Aritmatika
C. String
B. Boolean
D. Integer
11. Di bawah ini yang termasuk dalam tipe data bentukan adalah :
A. Numerik
C. String
B. Real
D. Integer
12. Jika ada angka bernilai pecahan, maka data tersebut lebih baik disimpan dalam
variabel dengan tipe data :
A. Numerik
C. String
B. Real
D. Integer
13. Perhatikan algoritma di bawah ini :
Algoritma Cetak_Angka
Deklarasi
K : integer
Deskripsi
K=1
While K < 8 do
Write (K)
K=K+1
Endwhile
Algoritma di atas akan menghasilkan nilai :
A. 0 1 2 3 4 5 6 7 8
C. 1 2 3 4 5 6 7 8
B. 0 1 2 3 4 5 6 7
D. 1 2 3 4 5 6 7
14. Perhatikan diagram alir di bawah ini :

STMIK JAKARTA STI&K - 2

Instruksi

Kondisi

False

True

Diagram alir di atas menggambarkan logika :


A. WHILEDO
C. REPEATUNTIL
B. IFTHENENDIF
D. IFTHENELSEENDIF
15. Diketahui suatu array didefinisikan sebagai berikut : A : Array [1..10] of Integer
Penulisan [1..10] menyatakan :
A. Array mencetak data 1 2 3 4 5 6 7 8 9 10
B. Array menyimpan data sebanyak 1 + 10
C. Index data array 1 + 10
D. Index data array 1 sampai dengan 10
16. Diketahui suatu array didefinisikan sebagai berikut : A : Array [1..10] of Integer
Array A berdimensi :
A. Satu
C. Tiga
B. Dua
D. Empat
Petunjuk untuk soal no. 17 s/d no. 19, perhatikan algoritma berikut ini :
(1) Baca bilangan bulat positif A
(2) Nyatakan nilai B = 0
(3) Hitung C = B x B
(4) Jika C = A, maka B adalah akarnya, lalu berhenti
(5) Nilai B ditambah 1
(6) Kembali ke langkah 3
17. Jika A diberi nilai 36, maka hasil keluarannya adalah :
A. 6
C. 4
B. 18
D. 9
18. Langkah-langkah di atas akan berhenti jika nilai masukan yang diberikan adalah :
A. 124
C. 211
B. 121
D. 214
19. Bila masukannya bernilai 6 maka
sebanyak :
A. 3 kali
B. 4 kali

langkah ke-3 sampai ke-5 akan dikerjakan


C. 5 kali
D. 6 kali

20. Di bawah ini yang bukan merupakan teknik sortir adalah :


A. Bubble sort
C. Deletion sort
B. Insertion sort
D. Selection sort

STMIK JAKARTA STI&K - 3

21. Perhatikan urutan data berikut ini : 25 57 48 37 12 92 80 33. Bila dilakukan


pengurutan dengan menggunakan metode sortir gelembung, maka pada langkah ke3, hasil pengurutan sementara adalah :
A. 25 57 48 37 12 92 80 33
C. 25 48 37 57 12 92 80 33
B. 25 48 57 37 12 92 80 33
D. 25 48 37 12 57 80 92 33
22. Perhatikan diagram alir di bawah ini :
Mulai

X=1
Y=1

Z=X+Y

Y
Selesai

Z > 10
T
X=Z

Hasil dari bagan alir di atas adalah :


A. 2 4 6 8 10
B. 2 4 8

Y=Z

C. 2 4 8 16
D. 2 4 6 8

23. Perhatikan program di bawah ini :


Repeat
N := N + 2 ;
T := T + N ;
Until N > 1 ;
Write (N,T) ;
Jika nilai awal n dan t adalah 0 maka hasil dari program di atas adalah :
A. 2 2
C. 0 0
B. 2 0
D. Jawaban A, B dan C SALAH
24. Perhatikan diagram alir di bawah ini :
Mulai

Baca A

STMIK JAKARTA STI&K - 4

Y
A > 38
.AND. A <
38

B=A+B

T
B=A*3

Selesai

Jika A = 38 maka nilai B adalah :


A. 38
B. 152

C. 114
D. 0

25. Berikut ini merupakan struktur dasar algoritma bahasa pemrograman komputer,
kecuali :
A. Pengulangan (repetition)
C. Pengabungan (capsulation)
B. Runtunan (sequence)
D. Pemilihan (selection)
26. Berikut ini yang bukan merupakan struktur bagian bahasa pemrograman Pascal
adalah :
A. Bagian utama berisi definisi program
B. Bagian deklarasi berisi deklarasi identifier
C. Bagian judul berisi judul program
D. Bagian prosedur berisi bagian program
27. Berikut ini adalah pernyataan yang benar mengenai prosedur, kecuali :
A. Dapat membagi program ke dalam modul-modul program tertentu
B. Menghindari penulisan teks proram yang sama berkali-kali
C. Memudahkan dalam melakukan pelacakan kesalahan dalam program
D. Dapat membuat program menjadi lebih komplek dan rumit
28. Perhatikan proram di bawah ini :
Var
nilai : real ;
ket : string ;
Begin
Write(Masukkan nilai :) ; Readln(nilai) ;
If nilai > 60 then ket := Lulus
Else ket := Gagal ;
Write(ket) ;
End.
Jika nilai = 60 maka program di atas akan menghasilkan :
A. Gagal
C. Error out of program
B. Lulus
D. Data type invalid

STMIK JAKARTA STI&K - 5

29. Program Pascal yang benar untuk menghasilkan keluaran 2 4 10 28 82 di bawah


ini adalah :
A.A := 2;
C.A := 2;
For I := 1 to 5 Do
For I := 1 to 5 Do
Begin
Begin
Write (A);
Write (A);
A := (A*3-2);
A := (A+2*1);
End;
End;
B.A := 2;
For I := 1 to 5 Do
Begin
Write (A);
A := (A*8/2);
End;

D.A := 2;
For I := 1 to 5 Do
Begin
Write (A);
A := (A*5-6);
End;

30. Perhatikan prgram di bawah ini :


Var
suku, i = integer ;
Begin
suku := 3 ;
i := 1 ;
While i < 5 Do
Begin
Write(suku) ;
suku := (suku*7+3) ;
i := i +1 ;
End ;
End ;
Hasil keluaran dari program di atas adalah :
A. 3 24 161 1250
C. 3 23 161 1200
B. 3 24 171 1200
D. 3 25 171 1250
31. Pemberian nama pengenal (identifier) di bawah ini benar, kecuali :
A. jumlah_barang_masuk
C. nilai/1
B. nilai1
D. jumlahdata
32. Di bawah ini yang tidak termasuk tipe data dalam bilangan bulat adalah :
A. Integer
C. Byte
B. Word
D. Single
33. Pendefinisian konstanta yang benar di bawah ini adalah :
A. Const a = 10 ;
C. Const a := 10 ;
B. Const a = : 10 ;
D. Jawaban A, B dan C SALAH
34. Pernyataan yang dituju oleh pernyataan GOTO dalam Pascal adalah :
A. Label
C. Konstanta
B. Variabel
D. Type
35. Yang bukan merupakan fungsi aritmatika di bawah ini adalah :
STMIK JAKARTA STI&K - 6

A. Ln
B. Exp

C. Sqrt
D. Chr

36. Berikut ini adalah pengulangan dalam bahasa Pascal, kecuali :


A. FORTODO
C. WHILEWEND
B. REPEATUNTIL
D. WHILEDO
37. Pengulangan yang dikerjakan selama kondisi salah adalah :
A. FORTODO
C. WHILEDO
B. REPEATUNTIL
D. Jawaban A, B dan C SALAH
38. Identifier yang nilainya dapat berubah-ubah dalam program adalah :
A. Tipe
C. Procedure
B. Konstanta
D. Variabel
39. Tipe data terstruktur yang digunakan untuk menyimpan nilai dengan jenis yang sama
disebut :
A. Array
C. File
B. Record
D. Pointer
40. Untuk memberikan nilai 20 ke dalam variabel nilai yang berada pada elemen ke-20
dalam array adalah :
A. Nilai[20] := 20;
C. Readln(Nilai[20]);
B. Nilai := 20;
D. Jawaban A dan C BENAR
41. Jenis data terstruktur yang mengandung sejumlah elemen dengan setiap elemen
bisa mempunyai tipe data yang berlainan disebut :
A. Array
C. File
B. Record
D. Pointer

42. Berikut ini adalah potongan program pascal menggunakan struktur pengulangan
yang benar sesuai dengan outputnya. Pilih output dari program berikut ini:
Var I := Integer;
Begin
I := 1;
Repeat
Write (I);
I:=I+1;
Until I>3;
End
A. 1 2
B. 1 2 3

C. I dicetak terus menerus


D. 1

43. Cara untuk mengisi atau membaca isi field suatu record adalah :
A. Dengan menyebut nama variabel record diikuti dengan titik (.)
STMIK JAKARTA STI&K - 7

B. Dengan menggunakan WITH diikuti nama variabel DO


C. Dengan looping
D. Jawaban A dan B BENAR
44. Variabel yang berisi alamat dari variabel lain disebut :
A. Variabel numerik
C. Pointer
B. Variabel konstanta
D. Link
45. Perintah untuk mengambil data yang ditunjuk oleh pointer adalah :
A. Tanda ^ diikuti nama variabel
C. Tanda @ diikuti nama variabel
B. Nama variabel diikuti tanda ^
D. Write(nama variabel)
46. Operasi dalam file bertipe yang berguna untuk menempatkan pointer record pada
posisi record ke-n adalah :
A. Seek
C. Locate
B. Flush
D. Go to
47. Diketahui x := STMIK JAKARTA. Bila dilakukan perintah copy(x,8,4) akan
menghasilkan :
A. AKAR
C. JAKA
B. KART
D. ARTA
48. Pernyataan i := i+1 dalam program Pascal bisa diganti dengan perintah :
A. Inc(i)
C. Val(i)
B. Int(i)
D. Jawaban A, B dan C SALAH
49. Hasil dari 2+3*(10/2) adalah :
A. 17
B. 25

C. 30
D. 50

50. Jika dilakukan perintah seek(variabel file,0) dalam file bertipe maka pointer file akan
berada pada posisi :
A. Akhir Record
C. Ditengah Record
B. Awal Record
D. Jawaban A, B dan C SALAH
51. Jika di dalam file mahasiswa.dat terdapat 5 record maka bila dilakukan perintah
filesize(variabel file) akan menghasilkan nilai :
A. 4
C. 5
B. 3
D. 0
52. Jika A bernilai true dan B bernilai false, maka perintah berikut yang akan
menghasilkan nilai false adalah :
A. A AND B
C. NOT B
B. A OR B
D. A AND A
53. Pernyataan di bawah ini yang akan menghasilkan nilai bertipe boolean adalah :
A. A < B
C. 3.0/1.5
B. (1+6) = (6+1)
D. Jawaban A dan B BENAR
Petunjuk untuk soal no. 54 s/d no. 56, perhatikan program di bawah ini :
STMIK JAKARTA STI&K - 8

Program Ujian ;
Uses Crt ;
Var
a, t, l : real ;
Procedure luas(x,y,z : real ; var z :real) ;
Begin
z := (x*y) / 2 ;
End ;
Begin
Clrscr ;
a := 4 ; t := 3 ; l := 0 ;
luas(a,t,l) ;
Writeln(Luas Segitiga = , l : 3 : 0)
End.
54. Variabel a disebut sebagai variabel :
A. Global
B. Nilai

C. Lokal
D. Referensi

55. Perintah pemanggilan prosedur luas(a, t, l)


merupakan metode pengiriman
parameter secara :
A. Acuan
C. Aktual
B. Nilai
D. Sebagian nilai dan acuan
56. Nilai l dari program di atas adalah :
A. 0
B. 12

C. 6
D. 4

57. Perintah untuk menghubungkan variabel file dengan nama file adalah :
A. Assign
C. Rewrite
B. Reset
D. Jawaban B dan C BENAR
58. Perhatikan perintah berikut ini : While not EOF (variabel file) Do. Bila pointer telah
menunjuk pada posisi EOF maka pernyataan tersebut akan menghasilkan nilai :
A. True
C. Boolean
B. False
D. Jawaban A, B dan C SALAH
59. Perhatikan program di bawah ini :
Var
x, y, z, u : integer ;
Begin
x := 10 ; y := 5 ; z := 12 ;
If x < y then u := y Else u := x ;
If u < z then u := z ;
Write(y, ,u) ;
End.

STMIK JAKARTA STI&K - 9

Program di atas akan menghasilkan nilai :


A. 14 14
C. 10 14
B. 51 2
D. 5 12
60. Perhatikan program di bawah ini :
If x > 3 then x := x+2
Else if x <= 0 then x := x-2
Write(x)
Jika nilai awal x = 2 maka hasil keluaran dari program di atas adalah :
A. 0
C. 3
B. 2
D. 4

STMIK JAKARTA STI&K - 10