MODUL I PENGENALAN DAN STRUKTUR BAHASA C++

dokumen-dokumen yang mirip
Pada bahasa pemrograman C++, dapat dibuat program dengan beberapa sub-program sesuai dengan keinginan dengan menggunakan fungsi.

KURSUS ONLINE JASA WEBMASTERS

PENGENALAN BAHASA C DAN C++

BAB 1 KONSEP DASAR BAHASA C

BAB 4 PENGENALAN BAHASA C

PENGENALAN C++ DADANG MULYANA 2012

Algoritma Pemrograman. Fery Updi,M.Kom

BAB I SEKILAS TENTANG C

PENGENALAN BAHASA C. Praktikum 3

LANGKAH-LANGKAH MENULISKAN PROGRAM DALAM TURBO C++

P3 Pengantar Pemrograman C

Bahasa C-M6 By Jamilah, Skom 1

ALGORITHM 7 C++ Dahlia Widhyaestoeti, S.Kom dahlia74march.wordpress.com

PRAKTIKUM 1 ALGORITMA & PEMROGRAMAN. 1. Mengenal C/C++

PENGENALAN C++ Bab 1

PENGANTAR BAHASA C++

Bahasa Pemrograman Sejarah singkat C++ Struktur program C++ Yoannita

fungsi Oleh: Sri Supatmi,S.Kom

Objectives Menjelaskan sejarah dan ruang lingkup pemakaian bahasa C Menjelaskan kelebihan dan kekurangan bahasa C Menjelaskan proses kompilasi dan lin

Abstrak. Pendahuluan. cerita. Pemrograman. mewakili semua. Struktur Bahasa. dan deklarasi. Mari. ilmuti.org Seluruh disertakan dalam

Pengantar Pemrograman Dengan C++

IT234 - Algoritma dan Struktur Data. Ramos Somya

2 BEBERAPA FUNGSI PUSTAKA DALAM BAHASA C

2. Uraian Materi. a. Pengertian Fungsi

Objectives Menjelaskan sejarah dan ruang lingkup pemakaian bahasa C Menjelaskan kelebihan dan kekurangan bahasa C Menjelaskan proses kompilasi dan lin

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

Sekilas Tentang C. Dasar Pemrograman & Algoritma

Dasar Pemrograman. Visual Studio Program C++ Sederhana. Yoannita, S.Kom.

DASAR PEMROGRAMAN. PENGANTAR BAHASA C ( Sejarah, Struktur Pemrograman, Tipe Data, Operator ) Djoko Soerjanto, M.Kom

PEMROGRAMAN TERSTRUKTUR OLEH : IR. H. SIRAIT, MT

MATERI/BAHAN PRAKTIKUM PENDAHULUAN DAN PENGENALAN (IDENTIFIER)

Komentar, Identifier, Konstanta dan Variabel

P - 3 Bab 2 : Pengantar Pemrograman C

PENGERTIAN C++ DAN FUNGSI-FUNGSINYA

BAB I PENGENALAN BAHASA C

PENGENALAN PROGRAM C++

MODUL PRAKTIKUM ALGORITMA DAN PEMROGRAMAN

MODUL 1 STANDAR INPUT DAN OUTPUT

Struktur Bahasa C dan C++

PRAKTIKUM 2 SEKILAS TENTANG C

Konsep Dasar Pemrograman Dan Pengenalan C++

Part 2 - Algoritma & Pemrograman Konsep dasar Pemrograman

Bab 1. Pengenalan Pemrograman C

Chapter 1 KONSEP DASAR C

Bahasa C. Dosen : Dhamayanti

Pemrograman dan Bahasa Pemrograman

KONSEP DASAR PROGRAM BAHASA C

Pengenalan Bahasa C++, Algoritma Pemrograman, Integrated Development Equipment (IDE) Visual C++ dan Dasar Dasar Bahasa C++

Pengenalan Bahasa C++ Oleh : Agus Priyanto, M.Kom

Teknik Pemrograman Terstruktur 1 PENGENALAN BAHASA C

Rosihan Ari Yuana, S.Si, M.Kom Lisensi Dokumen: BAB I. PENDAHULUAN C++ Oleh:

Algoritma dan Pemrograman. Pertemuan Ke-5 Input dan Output

Elemen Bahasa Pemrograman. Aditya Rizki Yudiantika, M.Eng.

MODUL PRAKTIKUM ALGORITMA DAN PEMOGRAMAN I. Oleh : Wahyu Widodo, S.Kom

Library yang Sering Digunakan pada C program

1.4 Struktur Program Pada C++ Program C maupun C++ secara umum tersusun dari beberapa bagian utama, yaitu :

dilakukan oleh bahasa mesin dapat dilakukan oleh C dengan penyusunan program yang lebih sederhana dan mudah. Bahasa C dalam pemakainnya memerlukan

KARAKTER DAN STRING, ARRAY, STRUCT DAN REVIEW PADA BAHASA C

VI. FUNGSI. Fungsi Main ( ) Fungsi a ( ) Fungsi b ( ) Fungsi c ( ) Fungsi c1 ( ) Fungsi c2 ( ) Fungsi c3 ( ) Bentuk umumnya :

MODUL 1 PENGENALAN ENVIROMENT C++

Struktur Program C++ Preprocessor directive : perintah dalam bahasa c++ yang akan membuat dan mengkompilasi file perantara dengan program utama

BAB II TEORI DASAR. Gambar 1 Kurva untuk interpolasi linier. Sehingga diperoleh persamaan dari interpolasi linier sebagai berikut :

Keg. Pembelajaran 2 : Mengenal Bahasa C++

Sejarah C. Dirancang oleh Denis M. Ritchie tahun 1972 di Bell Labs.

MODUL IV OPERASI DASAR MASUKAN DAN KELUARAN

Algoritma Pemrograman. Fery Updi,M.Kom

MODUL I PENGENALAN IDE C++, ALGORITMA DAN PEMROGRAMAN

BAB V INPUT DAN OUTPUT

1.1. Sejarah Bahasa C

STRUKTUR DASAR PEMROGRAMAN

Fungsi. Nisa ul Hafidhoh

Algoritma & Pemrograman #11. by antonius rachmat c, s.kom, m.cs

Pengantar Visual C++ & Penulisan Program

Dosen : Dede Kurniadi, S.Kom.,M.Kom HP :

String dpat dideklarasikan dengan menggunakan array karakter seperti berikut:

INPUT DAN OUTPUT BAHASA C

SOAL C++ Created by Yuli Astuti,S.Kom Copyright 2009

Algoritma & Pemrograman I BORLAND C++ Bina Sarana Informatika

Review: Algoritme dan Program 12/29/2011. Algoritme dan Pemrograman. Review: Bagaimana memecahkan masalah dengan komputer?????

ALGORITMA DAN PEMROGRAMAN #2

BAB II KEGIATAN PEMBELAJARAN

VARIABEL & TIPE DATA PEMROGRAMAN C++

Software Engineering atau yang diartikan Rekayasa Perangkat Lunak adalah:

Mengenal Subroutine pada Pemrograman C Dian Wirdasari

10.1 DASAR FUNGSI PADA BAHASA C

Algoritme dan Pemrograman

Pengenalan Bahasa C week 1

Konsep Pemrograman Prosedural

MODUL PRAKTIKUM ALGORITMA DAN STRUKTUR DATA PERTEMUAN 1

BAB 2. FUNGSI INPUT OUTPUT

Pengantar dalam Bahasa Pemrograman Turbo Pascal Tonny Hidayat, S.Kom

Kurikulum Qt. Chapter 4 Function. Fungsi

Program pendek dan simple = mudah dihandle. Program besar, banyak dan kompleks = tidak

Program pendek dan simple = mudah dihandle. Program besar, banyak dan kompleks = tidak

mengatur jumlah digit pecahan yang diinginkan mengatur atau mengontrol sejumlah tanda format, misalkan rata kiri, kanan, huruf capital dll.

Algoritma dan Pemrograman

BAB VII. FUNCTION. A. Pengantar Function. #include <iostream.h> #include <conio.h> { clrscr(); // detail function

Struktur Dasar Bahasa C Tipe Data Dalam bahasa C terdapat lima tipe data dasar, yaitu :

Bahasa C, pada awalnya dirancang sebagai bahasa pemrograman yang dioperasikan pada sistem operasi UNIX.

Transkripsi:

MODUL I PENGENALAN DAN STRUKTUR BAHASA C++ 1.1 Tujuan Praktikum 1 Praktikum memahami algoritma pemrograman 2 Praktikum memahami struktur bahasa C++ 3 Praktikan mampu membuat program sederhana dengan menggunakan bahasa C++ 1.2 Tinjauan Pustaka A. Algoritma & Pemrograman Algoritma adalah metode dan tahapan sistematis yang digunakan untuk memecahkan suatu permasalahan. Sedangkan pemrograman adalah proses pembuatan program dengan menerapkan algoritma dan struktur data tertentu menggunakan bahasa pemrograman. Struktur data adalah tempat tatanan penyimpanan data yang dibutuhkan program pada komputer. Kode program yang telah ditulis kemudian akan di-compile dan dieksekusi untuk menjalankannya. Compile adalah menerjemahkan kode program yang ditulis menggunakan bahasa pemrograman, ke bahasa mesin yang dapat dimengerti oleh komputer sehingga komputer mengerti apa yang diperintahkan. B. Sejarah C++ Tahun 1978, Brian W. Kerninghan & Dennis M. Ritchie dari AT & T Laboratories mengembangkan bahasa B menjadi bahasa C. Bahasa B yang diciptakan oleh Ken Thompson sebenarnya merupakan pengembangan dari bahasa BCPL ( Basic Combined Programming Language ) yang diciptakan oleh Martin Richard. Sejak tahun 1980, bahasa C banyak digunakan pemrogram di Eropa yang sebelumnya menggunakan bahasa B dan BCPL. Dalam perkembangannya, bahasa PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 1

C menjadi bahasa paling populer diantara bahasa lainnya, seperti PASCAL, BASIC, FORTRAN. Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National Standards Institute (ANSI). Bahasa C yang diciptakan Kerninghan & Ritchie kemudian dikenal dengan nama ANSI C. Mulai awal tahun 1980, Bjarne Stroustrup dari AT & T Bell Laboratories mulai mengembangkan bahasa C. Pada tahun 1985, lahirlah secara resmi bahasa baru hasil pengembangan C yang dikenal dengan nama C++. Sebenarnya bahasa C++ mengalami dua tahap evolusi. C++ yang pertama, dirilis oleh AT&T Laboratories, dinamakan cfront. C++ versi kunoini hanya berupa kompiler yang menterjemahkan C++ menjadi bahasa C. Pada evolusi selanjutnya, Borland International Inc. mengembangkan kompiler C++ menjadi sebuah kompiler yang mampu mengubah C++ langsung menjadi bahasa mesin (assembly). Sejak evolusi ini, mulai tahun 1990 C++ menjadi bahasa berorientasi obyek yang digunakan oleh sebagian besar pemrogram professional. C. Kelebihan dan Kekurangan C++ Kelebihan C++ Bahasa Standard-nya ANSI bisa dipakai diberbagai platform. Kecepatan program jika dibanding dengan program yang sama buatan bahasa lain, relatif lebih cepat. Kode bahasa C++ dengan portabilitas dan fleksibilitas yang tinggi untuk semua jenis komputer. Bahasa C++ tersedia hampir di semua jenis komputer. Kode program bersifat reuseable, sehingga dapat digunakan kembali pada project lain dengan hanya menggunakan library dan file header. Kekurangan C++ tidak murni OOP sehingga kurang cocok untuk mengajarkan Konsep OOP karena kaidahkaidah OOP dapat dilanggar. Dan di C++ ada konsep PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 2

pointer yang sangat membingunkan, ini salah satu alasan mengapa C++ menjadi sesuatu yg paling tidak disukai. C++ walapun tidak terpengaruh oleh Sistem Operasi tetapi tool untuk developmentnya harus spesific pada salah satu sistem operasi contoh Visual Studio hanya dapat berjalan di Windows. Alasan ini juga nantinya akan dapat menurunkan minat terhadap sistem operasi yang lain contohnya Linux. Apabila dalam praktiknya menggunakan Visual Studio maka otomatis akan menggunakannya juga dan pada akhirnya malas untuk mencoba sistem operasi yang lain. Implementasi C++ dalam teknologi IT pada saat sekarang sudah sangat sedikit sekali. Sulitnya untuk membuat sesuatu dengan C++ sehingga kepeminatannya dalam memperdalam programming akhirnya harus kandas, kecuali dengan inisiatif sendiri mempelajari bahasa/teknologi lain. D. Struktur bahasa C++ Struktur bahasa C++ terdiri atas komentar, preprocessor directive, fungsi utama maupun tambahan, definisi fungsi dan deklarasi. Berikut ini syntax program beserta penjelasan masing-masing struktur yang ada dalam C++. 1. // Contoh komentar satu baris // 2. 3. #include <iostream> 4. using namespace std; 5. 6. void prosedur() 7. { 8. char nama[20]="..."; 9. cout<<" Nama saya adalah "<<nama<<endl; 10. } PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 3

11. 12. int main() 13. { 14. cout<<"hello"<<endl; 15. prosedur(); 16. return 0; 17. } 1. Komentar // Contoh komentar satu baris // Bagian ini berisi mengenai keterangan pada program kita. Tidak akan dieksekusi dan tidak akan ditampilkan ketika program dijalankan alias nggak ngaruh. Tapi cukup penting, karena komentar akan mempermudah orang lain yang ingin mempelajari program yang kita melalui keterangan yang ada. Dan juga sangat membantu kita megingat ketika kita membuat program dengan statement yang panjang dan terdiri dari banyak fungsi. Komentar ditulis dengan 2 cara yaitu : a. Dimulai dengan tanda // untuk komentar 1 baris (contoh di atas) b. Diapit dengan tanda /*...*/ untuk komentar multi baris 2. Preprocessore Directive (Pengarah Compiler) #include using namespace std; Preprocessor directive ditandai dengan simbol #. Bertugas untuk mengarahkan prepocessor yang akan digunakan untuk membaca file header atau bisa dikatakan sebagai pengatur proses kompilasi. Contoh preprocessor directive :#include, #define,#if,#else, dan lainnya. Contoh file header :,,, dan lainnya. 3. Fungsi Utama (main) dan Tambahan (function dan procedure) a. Fungsi Utama int main() { cout<<"selamat datang"< PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 4

prosedur(); return 0; } Fungsi utama adalah bagian yang pertama kali akan dieksekusi, walaupun sebelum bagian dari fungsi utama ini ada fungsi tambahan. Sehingga fungsi utama pasti ada di dalam program C++. Fungsi utama ini tersusun atas kata main lalu diikuti dengan tanda (). Lalu diikuti lagi dengan definisi fungsi (bagian dalam tanda {} )yang berisi deklarasi dan perintah-perintah yang akan dieksekusi dalam program tersebut. b. Fungsi Tambahan void prosedur() { char nama[20]="..."; cout<<" Nama saya adalah "< } Fungsi tambahan ini adalah fungsi yang mendukung dan merupakan pemecahan dari fungsi utama. Terdiri atas function dan procedure. Function merupakan fungsi dengan nilai balik, sedangkan procedure adalah fungsi tanpa nilai balik. Untuk fungsi tambahan nanti akan kita kupas lebih lebar lagi. 4. Definisi fungsi int main() { cout<<"selamat datang"< prosedur(); return 0; } Definisi fungsi adalah bagian yang menyertai fungsi. Di dalamnya berisi syntaxsyntax yang nantinya akan dieksekusi apabila fungsi tersebut dipanggil. Bagian definisi ini selalu diawali dengan tanda kurawal buka { dan diakhiri dengan tanda PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 5

kurawal tutup }. Di dalam definisi fungsi ini terdapat beberapa statement. Statement harus diakhiri dengan tanda ;. Tanda ini berfungsi untuk memberi tanda bahwa satu statement sudah selesai dan akan terjadi error jika tidak ditutupi dengan tanda ;. Contoh : cout<<"selamat datang"< 5. Bagian deklarasi void prosedur() { char nama[20]="aa"; cout<<" Nama saya adalah "< } Bisa dikatakan sebagai statement tempat pengenalan variabel, konstanta, fungsi, array dan lainnya. Deklarasi yang sederhana da pada contoh di atas. Pada contoh di atas diperkenalkan tentang tipe data apa yang digunakan variabel nama dalam procedure tersebut. Kemudian diketahui pula nilai dari variabel nama adalah AA. E. Macam-Macam File Header pada C++ Dan Fungsinya Macam-Macam File Header pada C++ Dan Fungsinya--Sebelum melangkah jauh untuk lebih mendalamai bahasa pemrograman C++,alangkah baiknya kita mengenal terlebih dahulu beberapa bagian dalam bahasa C++,salah satunya adalah file header.file Header merupakan sebuah file yang berisi deklarasi untuk berbagai fungsi yang dibutuhkan oleh program baik itu sebagai standar Input/Output maupun sebagai syntax. File Header dalam bahasa pemrograman C++ digunakan untuk memanggil library-library yang ada sehingga suatu fungsi dapat digunakan secara baik dan benar. #Include digunakan untuk mendeklarasikan file header dalam C++, Berikut macam-macam file header dalam bahasa pemrograman C++: 1.#Include<Iostream.h> Digunakan untuk menampilkan perintah: - Cin PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 6

Merupakan fungsi masukan(digunakan untuk menyimpan data dalam suatu variabel). Bentuk umum: cin>>var x; - Cout Merupakan fungsi keluaran(digunakan untuk menampilkan data ataupun tulisan). Bentuk umum: cout<< tulisan ; atau cout<<var x; - Endl Digunakan untuk pindah baris/ enter. Bentuk umum: cout<< tulisan <<endl; -Ends ends merupakan suatu fungsi manipulator yang digunakan untuk menambah karakter null ( nilai ASCII NOL ) ke deretan suatu karakter. Fungsi ini akan berguna untuk mengirim sejumlah karakter ke file di disk atau modem dan mangakhirinya dengan karakter NULL. 2. #Include <Conio.h> Digunakan untuk menampilakan perintah: - getch berfungsi untuk menahan tampilan. Bentuk umum: getch(); - clrscr berfungsi untuk membersihkan layar. Bentuk umum: clrscr; - getche Fungsi dipakai untuk membaca sebuah karakter dengan sifat karakter yang dimasukkan tidak perlu diakhiri dengan menekan tombol ENTER, dan karakter yang dimasukan ditampilkan di layar. - Putch Akan menampilkan karakter ASCII dari nilai x ke layer monitor tanpa memindahkan letak kursor ke baris berikutnya. - Clreol Fungsi ini digunakan untuk membersihkan layar mulai dari posisi kursor hingga kolom terakhir, posisi kursor tiak berubah. - Gotoxy Fungsi gotoxy digunakan untuk memindahkan kursor ke kolom x, baris y. PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7

- Wherex Fungsi wherex digunakan untuk mengembalikan posisi kolom kursor. - Wherey Fungsi wherey digunakan untuk mengembalikan posisi baris kursor. - Window Fungsi window digunakan untuk mendefinisikan sebuah window berdasarkan koordinat kiri atas dan kanan bawah. 3.#Include <Stdio.h> Digunakan untuk menampilan perintah : - Printf Merupakan fungsi keluaran. Bentuk umum: printf ( tulisan ); - Scanf Merupakan fungsi masukan. Bentuk umum: scanf ( %c,&karakter); - Gets Fungsi inputan yang bisa membaca spasi. Bentuk umum: gets(var x); 4.#Include <String.h> - Strcpy Digunakan untuk menyailn nilai string - Strlen Untuk mengetahui panjang string - Strupr Digunakan untuk membuat string menjadi capital. - Strcmp Digunakan untuk membandingkan dua buah string. Hasil dari fungsi ini bertipe integer dengan nilai: Negative, jika string pertama kurang dari string kedua. Nol, jika string pertama sama dengan string kedua Positif, jika string pertama lebih besar dari string kedua Bentuk umum : strcmp(string1, string2); - strlwr PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 8

Digunakan untuk mengubah huruf menjadi kecil semua.bentuk umum : strlwr(string); - strcat Digunakan untuk menggabungkan string.bentuk umum : strcat(string1,string2); 5.#Include <Math.h> Digunakan untuk menampilan perintah : - Sqrt Fungsi akar - Pow Fungsi pangkat - Sin (), cos(), tan() Masing-masing digunakan untuk menghitung nilai sinus, cosinus dan tangens dari suatu sudut. Bentuk umum: Sin(sudut); Cos(sudut); Tan(sudut); - Max Digunakan untuk menghitung hasil pembagian dan sisa pembagian. Bentuk umum: max(bilangan1, bilangan2); - Min Digunakan untuk menentukan bilangan terkecil dari dua buah bilangan. Bentuk umum : min(bilangan1, bilangan2). 6.#Include <Iomanip.h> Digunakan untuk menampilan perintah : - Setiosflags() Digunakan untuk mengatur jumlah digit decimal dibelakang koma 7.#Include <Stdlib.h> Digunakan untuk menampilan perintah : - Atof() Digunakan untuk mengonfersi nilai string menjadi bilangan bertipe double. Bentuk umum : atof(char x); - Atoi() PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 9

Digunakan untuk merubah tipe data string menjadi integer. - Pow Digunakan untuk pemangkatan suatu bilangan.bentuk umum : pow(bilangan, pangkat). 9.#Include <assert.h> Berisi menegaskan makro, digunakan untuk membantu mendeteksi kesalahan logis dan jenis lain dari bug dalam debugging versi dari sebuah program. 10. #Include <complex.h> Sebuah set fungsi untuk memanipulasi bilangan kompleks. 11. #Include <ctype.h> Mendefinisikan set fungsi yang digunakan untuk mengklasifikasikan karakter dengan jenis mereka atau untuk mengkonversi antara atas dan huruf kecil dengan cara yang independen dari yang digunakan set karakter (biasanya ASCII atau salah satu ekstensi, meskipun implementasi menggunakan EBCDIC juga dikenal). 12. #Include <errno.h> Untuk menguji kode kesalahan dilaporkan oleh fungsi perpustakaan. 13. #Include fenv.h> Mendefinisikan sebuah set fungsi untuk mengendalikan floating-point lingkungan. 14. #Include <float.h> Mendefinisikan konstanta makro menentukan implementasi khusus properti dari floating-point library. 15. #Include <inttypes.h> Mendefinisikan tipe bilangan bulat lebar yang tepat. 16. #Include <iso646.h> Mendefinisikan macro beberapa yang menerapkan cara-cara alternatif untuk mengekspresikan token beberapa standar. Untuk pemrograman di ISO 646 set varian karakter. 17. #Include <Limits.h> PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 10

Mendefinisikan konstanta makro menentukan implementasi khusus properti dari tipe integer. 18. #Include <Locale.h> Mendefinisikan fungsi lokalisasi. 19. #Include <Setjmp.h> Demikianlah macro setjmp dan longjmp, yang digunakan untuk non-lokal keluar. 20. #Include <Signal.h> Mendefinisikan fungsi sinyal penanganan. 21. #Include <Stdalign.h> Untuk query dan menentukan keselarasan benda. 22. #Include <Stdarg.h> Untuk mengakses berbagai jumlah argumen dilewatkan ke fungsi. 23. #Include <stdatomic.h> Untuk operasi atom pada data dibagi antara benang. 24. #Include <stdbool.h> Mendefinisikan tipe data Boolean. 25. #Include <stddef.h> Mendefinisikan jenis beberapa berguna dan macro. 26. #Include <stdint.h> Mendefinisikan tipe bilangan bulat lebar yang tepat. 27. #Include <stdnoreturn.h> Untuk menentukan non-kembali fungsi. 28. #Include <tgmath.h> Mendefinisikan jenis generik-fungsi matematika. 29. #Include <threads.h> Mendefinisikan fungsi untuk mengelola beberapa Threads serta mutexes dan variable kondisi. 30. <time.h> Mendefinisikan fungsi tanggal dan waktu penanganan. PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 11

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 12