• Tidak ada hasil yang ditemukan

Selamat Mengerjakan. 2. Keluaran dari baris 10 adalah? a. 1 b. 4 c. 2.5 d. 2 e Keluaran dari baris 11 adalah? a. 1 b. 4 c. 2.5 d. 2 e.

N/A
N/A
Protected

Academic year: 2021

Membagikan "Selamat Mengerjakan. 2. Keluaran dari baris 10 adalah? a. 1 b. 4 c. 2.5 d. 2 e Keluaran dari baris 11 adalah? a. 1 b. 4 c. 2.5 d. 2 e."

Copied!
13
0
0

Teks penuh

(1)

LAT SOAL ALGORITMA DAN PEMROGRAMAN

1 Selamat Mengerjakan

Perhatikan kode program berikut ini untuk soal

1 hingga 3

1. Kamus : 2. a, b : integer 3. d, e : real 4. Algoritma 5. a15 6. b6 7. d5 8. e2 9. output(a % b) 10. output(a / b) 11. output(d % e) 12. output(d / e)

1. Keluaran dari baris 9 adalah ?

a. 1 b. 4 c. 2.5 d. 2 e. 3

2. Keluaran dari baris 10 adalah ?

a. 1 b. 4 c. 2.5 d. 2 e. 3

3. Keluaran dari baris 11 adalah ?

a. 1 b. 4 c. 2.5 d. 2 e. 3

4. Perhatikan kode berikut ini

Kamus : a : integer b : boolean Algoritma : input(a) bfalse if (( a = 10 ) && b ) then output(“First”) else output(“Second”) end if output(“Third”)

Apakah keluaran dari kode program diatas jika pada input(a) dimasukkan nilai 10?

a. First b. Second c. First Third d. Second Third e. First Second Third

(2)

5. Perhatikan kode program dalam bahasa C++ berikut ini 1. int i,j,k; 2. k=0; 3. j=3; 4. printf("input : "); 5. scanf("%d",&i); 6. while(k<=i){ 7. j=j+1; 8. k=k+1; 9. } 10. printf("hasil %i ",j % k);

Jika pada baris 5 diberikan masukan nilai i=1234, maka hasil pada baris 10 adalah?

a. 3 b. 1000 c. 1234 d. 4 e. 2

6. Perhatikan kode berikut ini

1. int x;

2. scanf("%i", &x);

3. switch(x)

4. {

5. case 1 : printf("First ");

6. case 2 : printf("Second "); break;

7. case 3 : printf("Third ");

8. case 4 : printf("Fourth "); break;

9. default : printf("non-exist value(s) "); break;

10. }

Jika pada baris 2 diisi dengan x=3, apakah keluaran dari kode program diatas?

a. Third

b. Third Fourth

c. Non-exist value(s)

d. Third Fourth Non-exist value(s)

(3)

7. Perhatikan kode dalam bahasa C++ berikut ini 1. bool isFalse; 2. int y; 3. scanf("%i", &y); 4. isFalse=true; 5. if (true) 6. {

7. if ( ((y % 2) == 0) & isFalse )

8. { 9. y = y / 3; 10. } 11. else 12. { 13. y = y * y; 14. } 15. } 16. else 17. { 18. y = 100; 19. } 20. printf("%i", y);

Jika pada baris 3 diberikan inputan y=16, maka apakah keluaran pada baris 20 dari program tersebut?

a. 100 b. 64 c. 8 d. 5 e. 1

Untuk soal-soal no

8

hingga

10

, digunakan definisi variabel array A : array [0..9] of integer

Isi dari array A secara berurutan adalah 37, 25, 16, 31, 23, 19, 32, 28, 20, 14. 8. Perhatikan kode berikut ini

x : integer B : boolean x  0

B  ( x < 0 ) && ( false ) if (( (A[0] + A[4] ) > x) && B ) x  A[1] + A[2]

else

x  A[2] – A[3] end if

output(x)

Tampilan dari output(x) adalah …

(4)

9. Perhatikan kode berikut ini x  0 i  5 while (i<10) if A[i] > 30 x  x + 1 end if ii+1 end while output(x)

Tampilan dari output(x) adalah …

a. 5 b. 4 c. 3 d. 2 e. 1

10. Perhatikan kode berikut ini x, y : integer x  5 While ( x < 10 ) y  A[x]-10 x x + 2 end while output(y)

keluaran dari output(y) adalah?

a. 14 b. 4 c. 28 d. 8 e. 19

11. Tentukan Keluaran Potongan Algoritma Berikut :

i1 bil0 do bil2*i ii+1 while (i <4) output (bil) a. 2 4 6 b. 0 2 4 c. 6 d. 1 3 5 e. 5

12. Perhatikan kode dalam C++ berikut ini for (int a=0;a<jumlah;a=a+1) { for (int b=0;b<jumlah;b=b+1) { if (b != a) { printf("*"); } else { printf("+"); break; } } printf("\n"); }

(5)

Jika jumlah =5, apakah keluaran dari program diatas? a. ***** ***** ***** ***** ***** b. *++++ **+++ ***++ ****+ ***** c. ++++* +++** ++*** +**** ***** d. + *+ **+ ***+ ****+ e. * +* ++* +++* ++++*

13. Didefinisikan sebuah prosedur

procedure proc1(input a: integer, input/output b: integer) kamus c : integer begin c  a a  b b  c end

kemudian diberikan perintah-perintah berikut :

x  15

y  10

proc1(y,x) output(x,y)

akan memberikan tampilan :

a. 15 10

b. 10 15

c. 15 15

d. 10 10

e. salah semua

untuk soal nomor

14

dan

15

Perhatikan kode berikut ini

Fungsi ApangkatB( a , b : integer)integer

Kamus x, hasil : integer Algoritma hasil1 for ( x  0 , x < b , xx+1 ) hasilhasil * a end for

(6)

14. Perhatikan kode berikut Kamus

Fungsi ApangkatB(a,b:integer)integer

a,b : integer Algoritma a2 b3 aApangkatB( a , b ) output(a) output(b)

Apakah keluaran dari potongan kode diatas

a. 9 4 b. 9 3 c. 3 9 d. 4 27 e. 8 27

15. Perhatikan kode berikut

Kamus

Fungsi ApangkatB(a,b:integer)integer

a,b : integer Algoritma

a2

b1

aApangkatB( ApangkatB( a , a ), ApangkatB( b , 100 ))

output(a) output(b)

Apakah keluaran dari potongan kode diatas

a. 4 1 b. 8 1 c. 1 4 d. 1 8 e. 16 2

Untuk soal nomor

16

dan

17

perhatikan algoritma berikut ini

Procedure TulisKalimat1() Kamus Procedure TulisKalimat2() Algoritma Output(“Go Go Go”) TulisKalimat2() Procedure TulisKalimat2() Kamus Procedure TulisKalimat3() Algoritma TulisKalimat3()

(7)

Procedure TulisKalimat3() Kamus

Algoritma

Output(“Win Win Win”)

16. Apakah keluaran dari kode berikut ini

TulisKalimat1()

a. Go Go Go

Fight Fight Fight Win Win Win Fight Fight Fight

b. Go Go Go

Fight Fight Fight Fight Fight Fight

c. Go Go Go

Fight Fight Fight

d. Go Go Go

Win Win Win

e. Go Go Go

Win Win Win Fight Fight Fight

17. Apakah keluaran dari kode berikut ini

TulisKalimat3() TulisKalimat2()

a. Go Go Go

Fight Fight Fight Win Win Win Fight Fight Fight

b. Win Win Win

Fight Fight Fight Win Win Win

c. Win Win Win

Fight Fight Fight Win Win Win Fight Fight Fight

d. Win Win Win

Win Win Win Fight Fight Fight

e. Win Win Win

Fight Fight Fight Fight Fight Fight Win Win Win

Untuk soal nomor

18

hingga

20

, diberikan sebuah prosedur dan fungsi berikut ini

Procedure tambah(input/output a,b:integer) Kamus

Algoritma

aa+5

bb+2

output (a+b)

Fungsi hitung(c,d : integer)integer

Kamus Algoritma

(8)

18. Carilah jawaban yang paling tepat, jika diberikan nilai x=8 dan y=5 tambah(x,y)

a. Nilai x dan y tetap yaitu x=8 dan y=5

b. Nilai x dan y berubah menjadi x=7 dan y=13

c. Nilai x dan y tidak terpengaruh oleh nilai a dan b di procedure

d. Keluaran dari pemanggilan prosedur diatas adalah adalah 13

e. Semua pilihan jawaban salah

19. apakah keluaran dari kode berikut ini, jika diberikan nilai x=2 dan y=3

tambah(hitung(x,y), hitung(y,x))

a. 19 b. 35 c. 12 d. 24 e. 20

20. apakah keluaran dari kode berikut ini, jika diberikan nilai x=2 dan y=3

tambah(x,y) output(hitung(x,y))

a. 12 6 b. 35 12 c. 12 35 d. 6 12 e. 12 24

Untuk nomor

21

hingga

24

Diberikan sebuah pita karakter berisi :

“POLITEKNIK TELKOM GIVING AND CARING THE WORLD.”

(57 huruf, antara kata

dibatasi 3 spasi

)

Tentukan tampilan dari potongan algoritma yang diberikan :

21. Keluaran dari penggalan kode dibawah ini adalah?

START ADV output(cc)

a. P b. O c. T d. _ (spasi) e. E

22. Keluaran dari penggalan kode dibawah ini adalah?

x0 START while (x<6) ADV x  x + 2 endfor output(cc) a. P b. O c. L d. I e. _ (spasi)

(9)

23. Keluaran dari penggalan kode dibawah ini adalah? Kamus : c1 : char Algoritma START do ADV c1  cc while cc≠'K' output(c1,cc) a. EK b. KE c. KN d. NK e. KK

24. Perhatikan kode berikut

1. Kamus : 2. c1,c2,c3 : char 3. Algoritma 4. input(c2) 5. input(c3) 6. START 7. RESET 8. While (cc!=’.’) 9. c1cc 10. ADV 11. if ((cc=c2) && (c1=c3)) 12. INC 13. End if 14. End while

15. output(ci) //ci adalah variable yang digunakan oleh prosedur INC

jika pada baris ke 4 dan 5 secara berturut-turut dimasukkan nilai ‘_’(spasi) dan ‘G’, maka apakah keluaran pada baris ke 15

(10)

untuk nomor

25

hingga

32

gunakanlah kode program berikut

1. Procedure BinarySearch(Input ArrayData : array [0..N-1], input N : integer)

{I.S : Diberikan satu array ArrayData, isi terurut secara ASCENDING, N jumlah data didalam ArrayData

F.S : dicari sebuah nilai dengan menggunakan algoritma binary search, kemudian ditampilkan data ditemukan atau tidak}

2. Kamus

3. cari, atas, bawah, tengah : integer

4. ketemu : Boolean

5. Algoritma

6. atas  ………. //A

7. bawahN-1

8. ketemu false

9. while ( ( ! ketemu ) && ( atas <= bawah ) )

10. tengah……….. // B 11. if (ArrayData[tengah]=cari) 12. ketemutrue 13. else 14. if(ArrayData[tengah]<cari) 15. atas……… //C 16. else 17. bawah………. //D 18. end if 19. end if 20. end while 21. if(………..……) //E

22. output("Ditemukan pada indeks ke, tengah)

23. else

24. output("Tidak ditemukan")

25. end if

25. Isi titik-titik yang ditunjuk oleh A adalah?

a. 0 b. 1 c. N d. N-1 e. N-2

26. Isi titik-titik yang ditunjuk oleh B adalah?

a. (atas + bawah) % 2

b. (atas - bawah) / 2

c. (atas + bawah) / 2

d. (atas - bawah) % 2

e. bawah - atas

27. Isi titik-titik yang ditunjuk oleh C adalah?

a. tengah - 1

b. tengah + 1

c. tengah

d. atas - bawah

e. (atas+bawah)%2

(11)

LAT SOAL ALGORITMA DAN PEMROGRAMAN 11 a. tengah - 1 b. tengah + 1 c. tengah d. atas - bawah e. (atas+bawah)%2

29. Isi titik-titik yang ditunjuk oleh E adalah?

a. ketemu = false

b. ketemu

c. ! ketemu

d. ketemu = cari

e. ketemu != cari

jika N=10, ArrayData memiliki data 3, 7, 9, 13, 14, 19, 30, 41, 58, 99.

30. Dengan cari = 9. Berapakah nilai atas, bawah dan tengah pada saat mencapai akhir

dari program? a. 2 3 2 b. 3 3 2 c. 3 2 2 d. 2 2 2 e. 1 0 2

31. Dengan cari = 14. Berapakah nilai atas, bawah dan tengah pada saat mencapai akhir

dari program? a. 0 4 4 b. 9 4 4 c. 0 9 4 d. 4 4 4 e. 4 9 4

32. Dengan cari = 100. Berapakah nilai atas, bawah dan tengah pada saat mencapai akhir

dari program? a. 10 9 9 b. 9 9 9 c. 0 9 9 d. 9 10 9 e. 4 9 9

(12)

Perhatikan potongan algoritma sorting berikut

1. Procedure Bubble(Input/Output ArrayData:array [0..N-1] of integer, input N:integer)

{IS: Array data berisi data angka integer yang belum terurut, N adalah jumlah nilai yang ada

FS: Nilai-nilai dalam array terurut secara menurun (DESCENDING)}

2. Kamus

3. x, z, temp : integer

4. Algoritma

5. for ( x  0 ; x < N - 1 ; ... ) //  A

6. for ( ... ; z < N - 1 ; z  z + 1 ) //  B

7. if ArrayData [z] > ArrayData[z+1] then

8. //Switching data 9. temp ……… //  C 10. ArrayData [z] ………. //  D 11. ArrayData [z+1] ... //  E 12. endif 13. Endfor 14. //POSISI 15. endfor

33. Isi titik-titik yang ditunjuk oleh A adalah?

a. x  x + 1

b. z  z – 1

c. z  z + 1

d. z  z – 1

e. x  z + 1

34. Isi titik-titik yang ditunjuk oleh B adalah?

a. x  0

b. z  0

c. z  x

d. z  N

e. x  N

35. Isi titik-titik yang ditunjuk oleh C adalah?

a. x

b. z

c. ArrayData[z]

d. ArrayData[z+1]

e. temp

36. Isi titik-titik yang ditunjuk oleh D adalah?

a. x

b. z

c. ArrayData[z]

d. ArrayData[z+1]

e. Temp

37. Isi titik-titik yang ditunjuk oleh C adalah?

a. x

b. z

c. ArrayData[z]

d. ArrayData[z+1]

e. temp

Untuk Nomor

38

hingga

40

, untuk kode program diatas, gunakan data berikut

(13)

38. jika x=2 dan program berada di baris 14 (//POSISI), maka bagaimanakah isi dari ArrayData? a. 8 12 9 15 16 7 4 3 b. 7 8 12 9 15 16 4 3 c. 12 15 16 9 8 7 4 3 d. 16 15 12 9 8 7 4 3 e. 12 9 15 16 8 7 4 3

39. jika x=4 dan program berada di baris 14 (//POSISI), maka bagaimanakah isi dari

ArrayData? a. 16 15 12 9 8 7 4 3 b. 12 9 15 16 8 7 4 3 c. 12 15 16 9 8 7 4 3 d. 7 8 12 9 15 16 4 3 e. 15 16 12 9 8 7 4 3

40. jika x=6 dan program berada di baris 14 (//POSISI), maka bagaimanakah isi dari

ArrayData? a. 7 8 12 9 15 16 4 3 b. 8 12 9 15 16 7 4 3 c. 12 9 15 16 8 7 4 3 d. 15 16 12 9 8 7 4 3 e. 16 15 12 9 8 7 4 3

Referensi

Dokumen terkait

Dapat dilihat bahwa di setiap saat, grafik amplitudo sel[1,1] pada simulasi tanpa anomali (warna merah) selalu lebih tinggi daripada grafik simulasi dengan anomali.

Pengawasan kualitas merupakan alat bagi manajemen untuk memperbaiki kualitas produk bila dipergunakan, mempertahankan kualitas produk yang sudah tinggi dan

Guru mempersiapkan berbagai kegiatan dan media yang dapat menstimulus peserta didik dalam mengumpulkan informasi tentang materi pembelajaran binatang ikan Guru

Perusahaan harus mengetahui bagaimana cara untuk memenangkan persaingan diluar dari melaksanakan aktivitas yang ditentukan sebelumnya, salah satu cara dalam memenangkan

Sumber daya manusia merupakan faktor terpenting yang dapat menentukan berhasil atau tidaknya suatu proyek. Potensi setiap sumber daya manusia yang ada dalam proyek seharusnya

Para PNS lingkungan Kecamatan dan Kelurahan wajib apel pagi setiap hari senin di Halaman Kantor Kecamatan Kebayoran Baru, dan akan diberikan teguran kepada yang tidak ikut apel

Penyemaian bibit dengan cara ini dapat memberikan keseragaman pada bibit dan dapat diproduksi dalam jumlah besar.Mesin ini dapat bekerja lebih cepat, akurat dan stabil.Bila

Maksudnya, jika kata yang terhitung 100 tidak jatuh di ujung kalimat maka akan dihitung dalam bentuk desimal (perpuluhan). Cara melakukan persepuluh adalah jumlah