Anda di halaman 1dari 6

Latihan

01. Opsi berikut ini yang bukan merupakan kriteria untuk mengevaluasi bahasa pemrograman adalah a. readability b. writeability c. reliability d. realibility

02. Contoh dari bahasa yang diimplementasikan secara hybrid adalah a. Basic b. Perl c. C d. Java 03. Karakteristik dari sistem implementasi kompilasi adalah a. translasi cepat eksekusi cepat b. translasi lambat eksekusi cepat c. translasi cepat eksekusi lambat d. translasi lambat eksekusi lambat 04. Opsi-opsi berikut ini yang merupakan contoh dari bahasa pure interpreter, kecuali a. Perl b. Lisp c. Java Script d. JVM 05. Exception handling adalah kemampuan program untuk menangani a. machine error b. type checking c. type comptability d. run time error 06. Opsi-opsi berikut ini merupakan fitur bahasa imperative kecuali a. variable memodelkan memori b. assignment didasarkan pada piping c. iterasi berbentuk repetisi d. alokasi/dealokasi secara dinamis 07. Fitur-fitur yang mempunyai efek signifikan pada reliability program adalah opsiopsi berikut ini kecuali a. type checking b. exception handling c. data abstracting c. aliasing 08. Bahasa yang pertama kali menggnakan windowing system dan mouse pointing adalah a. Oberon b. Eiffell c. Simula 67 d. SmallTalk 09. Pionir dari bahasa functional adalah a. FORTRAN b. Perl

c. LISP

d. Prolog

10. Konsep block structured pertama kali dikenalkan di bahasa a. Algol 58 b. Algol 60 c. Algol 68

d. COBOL

11. Opsi berikut ini yang bukan merupakan fitur dari bahasa Algol 60 adalah a. block structuted b. passing parameter (by value and by name) c. recursive procedure d. heap dynamic array 12. Bahasa yang dipandang sebagai bahasa paling ortogonal adalah

a. Algol 58

b. Algol 60

c. Algol 68

d. COBOL

13. Contoh dari bahasa OOP yang diturunkan dari bahasa Pascal adalah a. Delphi b. Modula 3 c. Oberon d. SmallTalk 14. Opsi berikut yang mengindikasikan mengapa bahasa Delphi kurang kompleks daripada bahasa C++ adalah a. inheritance b. parametrized class c. generic programming d. user defined operator overloading 15. Orang yang dipandang sebagai pemrogram pertama di dunia adalah a. Konrad Zuse b. John Backus c. Grace M. Hoper d. Augusta Ada Byron 16. Contoh dari bahasa deklaratif adalah a. LISP dan Java b. LISP dan Prolog c. Java dan Prolog d. LISP, Prolog dan Java 17. Ketua tim perancang Java adalah a. James Gosling b. Alan Kay Stroustrup

c. Bertrand Meyer

d. Bjarne

18. Fasilitas makro pertama kali dikenalkan oleh bahasa a. APL b. FORTRAN c. COBOL 19. Karakteristik dasar dari OOP adalah a. ADT dan inheritance c. Inheritance dan dynamic binding d. ADT, inheritance dan dynamic binding

d. PL/i

b. ADT dan dynamic binding

20. Storage deallocation dilakukan secara a. ekplisit di C++ dan Java b. eksplisit di C++, implisit di Java c. implisit di C++ dan Java d. implisit di C++, eksplisit di Java 21. Multiple inheritance, a. berlaku di C++ dan Java b. berlaku di C++ tetapi tidak berlaku di Java c. tidak berlaku di C++ tetapi berlaku di Java d. tidak berlaku di C++ dan Java 22. Opsi-opsi berikut ini merupakan komponen dari structured programming kecuali a. structured theory b. modular programming c. top down design d. bottom up design 23. Bahasa yang pertama kali mengimplementasikan konsep data abstraction adalah a. PL/I b. Ada c. SIMULA 67 d. Pascal

24. Fitur-fitur OOD adalah opsi-opsi berikut ini kecuali a. structured programming b. data abstraction c. inheritance d. dynamic method binding 25. Metodologi pemrograman yang paling akhir dikembangkan di bahasa imperative adalah a. data abstraction b. top down development c. object oriented design d. step wise refinement 26. Bahasa Java awalnya dirancang untuk aplikasi produk konsumen, diantaranya adalah a. radio b. robot c. toaster d. telepon 27. Compound assignment operator (e.g. += di C/C++) dikenalkan di bahasa a. C b. Pascal c. PL/I d, Algol 68 28. Axiomatic semantic didesain berdasarkan a. predicate calculus b. algebra calculus c. lambda calculus d. general calculus 29. Tool yang digunakan untuk membuktikan kebenaran suatu program adalah a. axiomatic semantic b. operational semantic c. denotational semantic d. axiomatic, operational dan denotational semantics. 30. Denotational semantic dikembangkan berdasarkan a. mathematical logic b. recursive function theory c. induction theory d. inference rule 31. Contoh dari meta language adalah a. BNF b. Miranda

c. ML

d. Ada

32. Basis yang digunakan oleh axiomatic semantic adalah a. algebra calculus b. lambda calculus c. predicat calculus d. logical calculus 33. Context Free Grammar (CFG) dikembangkan oleh a. John Backus b. Noam Chomsky c. Peter Naur d. Donald Knuth 34. Tipe semantic yang didesain berdasarkan pada algoritma adalah a. static semantic b. operational semantic c. axiomatic semantic d. denotational semantic 35. RHS dari suatu abstraksi terdiri dari a. token b. lexeme c. referensi untuk abstraksi lain d. lexeme, token, dan referensi untuk abstraksi lain

36. Operational semantics pertama kali digunakan untuk menguraikan semantic bahasa a. PL/I b. APL c. Pascal d. FORTRAN 37. Semantik denotational awalnya dikembangkan oleh a. Scott dan Strachey c. Peter Naur b. Noam Chomsky d. Donald Knuth 38. Bagian alternative RHS di EBNF diletakkan di a. Brackets c. parentheses dan dipisahkan dengan tanda | b. Braces d. parentheses dan dipisahkan dengan tanda ! 39. Type checking yang diinginkan terjadi saat a. compile time b. run time c. execution time time

d. loading

40. Binding yang terjadi antara data type dan identifier name terjadi saat a. run time b. load time c. link time d. compile time 41. Binding time antara explicit heap dynamic variable dengan tipenya terjadi saat a. run time b. compile time c. linking time d. load time 42. Keuntungan dari static variable adalah opsi-opsi berikut ini kecuali a. akses global b. direct addressing c. history sensitive d. sharing memory 43. Bahasa-bahasa berikut menggunakan konsep dynamic binding antara varibel dan tipenya kecuali a. APL b. SNOBOL4 c. JavaScript d. Perl 44. Variabel dalam block statements, dikenalkan oleh Algol 60, bersifat a. static b. stack dynamic c. explicit heap dynamic d. implicit heap dynamic

45. Bahasa-bahasa yang menggunakan konsep dynamic binding antara variable dan tipenya seringkali diimplementasikan menggunakan a. compile b. interpreter c. hybrid d. compiler, interpreter dan hybrid 46. Deklarasi variable secara eksplisit dilakukan oleh bahasa-bahasa berikut ini kecuali a. PL/I b. BASIC c. Perl d, FORTRAN90

47. Keuntungan dari static variable adalah opsi-opsi berikut ini kecuali a. akses global b. history sensitive c. direct access (efficiency) d. indirect access 48. Variabel static tidak ditemui di bahasa a. FORTRAN b. C c. Java

d. Pascal

49. Bahasa-bahasa yang variable lokalnya by default static dynamic adalah a. Ada dan C++ b. C++ dan Java c. Java dan Ada d. Ada, C++ dan Java 50. A new static scoping dikenalkan di bahasa a. Algol 60 b. Ada c. C++

d, Java

51. Dynamic scoping variable digunakan oleh bahasa-bahasa berikut ini kecuali a. APL b. SNOBOL4 c. Pascal d. Perl 52. Keuntungan static scoping dibandingkan dengan dynamic scoping adalah opsiopsi berikut ini kecuali a. easier to read b. more reliable c. execute faster d. simple passing parameters. 53. Opsi berikut yang bukan merupakan atribut variable adalah a. address b. value c. name d. size 54. Static scoping pertama kali digunakan oleh bahasa a. Algol 60 b. Algol 68 c. PL/I d. FORTRAN 55. Hierarchy scope terjadi karena adanya subprogram dalam subprogram. Konsep ini berlaku untuk bahasa-bahasa berikut kecuali a. Pascal b. Ada c. Java Script d. C/C++

56. Bahasa pemrograman disebut strongly type jika a. type compatability b. type name c. type error selalu terdeteksi

c. type equivalency

57. Static scoping adalah metode yang efisien untuk menyajikan visibilitas variable nonlokal dalam suatu subprogram. Static scoping merupakan fitur utama dari bahasa a. FORTRAN b. COBOL c. BASIC d. Algol 60

58. Variabel local di block structure adalah a. static b. stack dynamic d. implicit heap dynamic

c. explicit heap dynamic

59. Contoh dari rule based language adalah a. imperative language b. functional language c. logic programming language d. OOPL 60. Operator evaluation order ditentukan oleh opsi-opsi berikut ini kecuali a. precedence b. associativity c. parentheses d. side effects 61. Explicit type conversion dikenal dengan nama a. coercion b. cast c. fetching 62. Union di Pascal disebut a. free union c. EQUIVALENCE

d. executing

b. discriminating union c. record variant

63. Aliases dapat terjadi dengan berbaga cara pada bahasa yang berbeda yaitu a. EQUIVA:LENCE (FORTRAN) dan variant record (Pascal. Ada0 b. EQUIVA:LENCE (FORTRAN) dan union (C/C++) c. Variant record (Pascal, Ada) dan union (C/C++) d. EQUIVA:LENCE (FORTRAN), variant record (Pascal, Ada) dan union (C/C++). 64. Aliases dapat dihindari menggunakan a. static storage b. variable storage d. static, variable dan dynamic storage.

c. dynamic storage

65. Opsi berikut yang bukan merupakan manfaat dari tipe data pointer adalah a. programming flexibility b. addressing flexibility c. indirect addressing e. control dynamic storage management 66. Tipe data pointer pertama kali dikenalkan di bahasa a. C b. Pascal c. PL/I

d. Fortran

67. Variabel yang dapat menyimpan berbagai bentuk tipe data pada waktu yang berlainan selama eksekusi program berjalan disebut a. record b. union c. array d. set

68. Deklarasi yang menyatakan bahwa variable r adalah reference dari variable n di C++ adalah a. int& r = &n; b. int &r = n; c. int r = &n; d. nt r = n;