TUGAS KELOMPOK 4 PEMROGRAMAN BERBASIS OBJEK

dokumen-dokumen yang mirip
TPI4202 e-tp.ub.ac.id

PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM

PERTEMUAN 2 PEMOGRAMAN BERORIENTASI OBJEK L/O/G/O

Pengenalan JAVA. Farhat, ST., MMSI., MSc

Diciptakan oleh James Gosling. Resmi diperkenalkan tahun Merupakan bahasa pemrograman berorientasi obyek murni. Pada awalnya hanya mampu

Pemrograman Berorientasi. Class dan Obyek 2

Pengantar Pemrograman dengan Bahasa Java

Tabel 1. Instruksi untuk menampilkan teks No. Bahasa Pemrograman Instruksi 1. Pascal WRITE ( Bahasa pemrograman itu mudah );

Pengantar Pemrograman dengan Bahasa Java

LAPORAN 2 PEMOGRAMAN JAVA III APPLICATION PROGRAMMING INTERFACE

Diciptakan oleh James Gosling. Resmi diperkenalkan tahun Merupakan bahasa pemrograman berorientasi obyek murni. Pada awalnya hanya mampu

Modul II Object Oriented Programming

PEMROGRAMAN BERORIENTASI OBJEK

MODUL 1. Class, Object, Constructor dan Method

PEWARISAN. Disusun Oleh: Reza Budiawan. Untuk: Tim Dosen Algoritma & Pemrograman Lanjut

LAPORAN 4 PEMOGRAMAN JAVA III APPLICATION PROGRAMMING INTERFACE

Pemrograman. Fery Updi,M.Kom

MODUL 1. CLASS, OBJECT, CONSTRUCTOR DAN METHOD

OVERLOADING, CONSTRUCTOR DAN DESTRUCTOR. Dewi Sartika, M.Kom

BAB 3 CLASS DAN OBJECT. Tujuan:

Konsep Lanjut Pemrograman Objek

MEMBUAT KELAS SENDIRI. Dewi Sartika, M.Kom

PENGENALAN BAHASA PEMROGRAMAN JAVA

Pemrograman Berorientasi Objek / Object Oriented Programming / (OOP) Nur Hasanah, M.Cs

Pemrograman Lanjut Review Class dan Object PTIIK

Bahasa Pemrograman 2.

JAVA FUNDAMENTAL ATURAN PERKULIAHAN SILABUS

Pengenalan OOP. Object-Oriented programming (OOP) Menitikberatkan pada konsep object sebagai elemen dasar dari program.

Pemrograman Berorientasi Objek

Praktikum Pemograman Berorientasi Objek

JAVA PADA NETBEANS IDE 7.4 ASRI WIDYADHARI KOM E 13

MODUL 1 PRAKTIKUM ALGORITMA & PEMROGRAMAN I

Dasar Pemograman Java

Java Application. Aplikasi: Menampilkan Tulisan

Review C/C++ & Intro to Java. Pemrograman Berorientasi Obyek IT209

BAB VII. CLASS DAN OBJECT

Pemrograman Lanjut Jurusan S1 Teknik Informatika. 9/17/2012 Ratno

Java Application. Menampilkan Tulisan

Object Oriented Programming (Class, Inheritance, Encapsulation dan Interface)

Pemrograman dengan Java

Encapsulation (Encapsulasi) Minggu 5 Pemrograman Berorientasi Objek Alfa Faridh Suni

PRAKTIKUM I Class dan Obyek

Pendahuluan Dasar Pemrograman Java

MODUL 1 PENGENALAN OOP

LAPORAN PERCOBAAN V ( APLIKASI NILAI MAHASISWA) BERBASIS JAVA

Bag 4.4 Bagian ini sudah cukup menjelaskan dan memberikan gambaran yang tepat tentang JVM (Java Virtual Machine).

Pemrograman Berbasis Objek. Pengenalan Java. Entin Martiana. Politeknik Elektronika Negeri Surabaya

PENGENALAN JAVA PROGRAMMING

PERTEMUAN 3 OBJEK DAN CLASS

PEMROGRAMAN BERORIENTASI OBJEK

CLASS, METHOD DAN MODIFIER

PEMROGRAMAN BERORIENTASI OBJEK

Nama : Julian Chandra W Telp :

TUGAS AKHIR APLIKASI KALKULATOR BOLA BERBASIS JAVA

TPI4202 e-tp.ub.ac.id

Class & Object 2 ~Praktikum~ Imam Fahrur Rozi

Membuat dan Menggunakan Class

SUMBER BELAJAR PENUNJANG PLPG

LAPORAN PERCOBAAN IV PEMBUATAN CALCULATOR ( MENGHITUNG GAJI KARYAWAN DAN TUNJANGANNYA) BERBASIS JAVA

Tutorial FDM Nurul Huda 2008, bundled by samsonasik. Modul Java 1

MODUL 1 PRAKTIKUM PEMROGRAMAN BERORIENTASI OBYEK(PBO) KELAS DAN OBJEK. TGL PRAKTIKUM : 24 September 2012 :ACHMAD FAJAR NORULLAH NRP :

DASAR PEMROGRAMAN JAVA. Astrid Lestari Tungadi, S.Kom., M.TI.

LAPORAN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN ( Implementasi Rekursi Pada Java)

Konsep Pemrograman Berbasis Obyek

PEMROGRAMAN BERORIENTASI OBJEK

PRAKTIKUM OBJECT ORIENTED PROGRAMING

[Lanjutan] Nurochman

INTERAKSI ANTAR OBJECT

BAB 2 PENGENALAN JAVA. Tujuan:

BAB 2 Pengenalan Bahasa JAVA

Cover Daftar isi Latar belakang Rumusan masalah Batasan masalah Tujuan Uml (Unified modelling language) Use case diagram Class diagram Activity

IKG2I4 / Software Project I

Praktikum 3 Konsep Class, Attribute dan Method

I. Tujuan Instruksional Umum Mengenal konsep dasar berorientasi objek Memahami dan dapat mengimplementasikan Kelas dan Objek pada java.

PERTEMUAN I PENGENALAN JAVA

Class & Object 2. Imam Fahrur Rozi

ALGORITMA DAN PEMROGRAMAN 2. 3 SKS By : Sri Rezeki Candra Nursari

UNIVERSITAS GUNADARMA

Konsep Pemrograman Berorientasi Obyek

Diperkenalkan pertama oleh tim Sun System yang dipimpin Patrick Naughton dan James Gosling tahun 1991 dengan code

PERTEMUAN 1 PEMOGRAMAN BERORIENTASI OBJEK L/O/G/O

Membuat Class Class merupakan template (konsep) dari objek. Class menggambarkan bagaimana sifat-sifat objek, seperti properties dan behaviornya

JAVA. Sekilas tentang java : FITUR JAVA :

MODUL PRAKTIKUM BERORIENTASI OBJEK NINF615 SEMESTER GASAL 2016/2017 PROGRAM STUDI S1 TEKNIK INFORMATIKA

Modul 1 Pengenalan Java. Oleh: Mike Yuliana PENS-ITS

PEMROGRAMAN JAVA. Yoannita, S.Kom. Class & Method sederhana Konsep Pemrograman Berorientasi Objek. Company LOGO

Politeknik Elektronika Negeri Surabaya

MODUL 3 PEWARISAN TUJUAN DASAR TEORI

PEMROGRAMAN JAVA. Pengenalan Java Kompilasi Java Program Java Sederhana. Yoannita. Skill to do comes of doing. (Ralph Waldo Emerson)

INTRODUCTION JAVA NORHIKMAH,M.KOM

LAB PEMROGRAMAN I (JAVA FUNDAMENTAL)

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

Pada akhir pembahasan, peserta diharapkan dapat :

E-Book PEMROGRAMAN BERORIENTASI OBJEK. Disusun Oleh: Arfian Hidayat, S.Kom

Pemograman Berorientasi Objek. Week 4 Initialization dan Instance dalam Kelas

PRAKTIKUM 3 KONSTRUKTOR DAN OVERLOADING

BAB 1 KONSEP DASAR JAVA

Dasar Pemrograman Java

Konsep Dasar Pemrograman Berorientasi Obyek I JAVA. Anugrah Kusuma Seno Adi Putra

PEMAHAMAN DASAR DASAR JAVA

Transkripsi:

TUGAS KELOMPOK 4 PEMROGRAMAN BERBASIS OBJEK CLASS, INSTANCE, METHOD DAN CONSTRUCTOR Disusun Oleh : Kelompok Andita Maynitasari (50412806) Ibnu Zamratul Iman (53412533) M. Syauqi Wairoy (55412107) Syafro Afni (57412233) KELAS 2IA08 FAKULTAS TEKNOLOGI INDUSTRI JURUSAN TEKNIK INFORMATIKA Mata Kuliah : Pemrograman Berbasis Objek Dosen : Ibu Rogayah

DAFTAR ISI Daftar Isi... Pendahuluan... Pengenalan Java... Class... Instance... Atribut... Instance Variable... Method... Instance Method... Constructor... Program Sederhana... Daftar Pustaka... i ii 1 2-3 3 4-5 5 5-6 6-7 8 9 11 i

PENDAHULUAN A.Latar Belakang Java adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk telepon genggam. Bahasa ini awalnya dibuat oleh James Gosling saat masih bergabung di Sun Microsystems saat ini merupakan bagian dari Oracle dan dirilis tahun 1995. Bahasa ini banyak mengadopsi sintaksis yang terdapat pada C dan C++ namun dengan sintaksis model objek yang lebih sederhana serta dukungan rutin-rutin aras bawah yang minimal. Aplikasi-aplikasi berbasis java umumnya dikompilasi ke dalam p-code (bytecode) dan dapat dijalankan pada berbagai Mesin Virtual Java (JVM). Java merupakan bahasa pemrograman yang bersifat umum/non-spesifik (general purpose), dan secara khusus didisain untuk memanfaatkan dependensi implementasi seminimal mungkin. Karena fungsionalitasnya yang memungkinkan aplikasi java mampu berjalan di beberapa platform sistem operasi yang berbeda, java dikenal pula dengan slogannya, "Tulis sekali, jalankan di mana pun". Saat ini java merupakan bahasa pemrograman yang paling populer digunakan, dan secara luas dimanfaatkan dalam pengembangan berbagai jenis perangkat lunak aplikasi ataupun aplikasi berbasis web. B. Tujuan Penulisan: Makalah ini ditulis dengan tujuan: A. Memahami tentang Class, Instance, Atribute, Instance Variable, Method, Instance Method, Konstruktor. B. Mampu membuat program menggunakan Class, Instance, Atribute, Instance Variable, Method, Instance Method, Konstruktor. C. Rumusan Masalah: A.Pengenalan Java B.Class C.Instance D. Atribute E.Method F.Constructor ii

Pengenalan Java Java adalah bahasa pemograman tingkat tinggi yang berorientasi objek, diedarkan oleh Sun Microsystem, Sun Microsystem adalah Sebuah perusahaan berasal dari California yang membuat software dan hardware komputer dan Didirikan tahun 1982 oleh Andeas Bechtolsheim, Vinod Khosla dan Scott Mc Neally. Perusahaan ini lebih terkenal karena pengembangan komputer untuk system operasi UNIX. UNIX merupakan Sistem operasi yang dikembangkan oleh Bell Labs pada awal tahun 1970. pada awal tahun 1996. Sejarah awal Java berawal di tahun 1991 ketika satu group insinyur-insinyur Sun, yang dipimpin oleh Ptrick Naughton dan James Gosling, ingin mendesain sebuah bahasa pemograman komputer yang berukuran kecil yang dapat digunakan untuk peralatan elektronika konsumen sepertu switchboxes TV kabel. Dikarenakan peralatan-peralatan ini menggunakan konsumsi daya dan memory yang rendah, maka bahasa pemograman tersebut harus berukuran sangat kecil. Juga karena setiap vendor menggunakan CPUs (Central Processing Unit) yang berbeda, maka bahasa tersebut harus bersifat multiplatfrom, tidak terikat hanya pada satu arsitektur (Architecture Neutral). Proyek ini diberi nama Green Project. Karena harus bersifat Architecture Neutral, maka Green Project menggunakan Virtual Machine (atau dikenal dengan Java Virtual Machine) yang berasal dari model implementasi bahasa Pascal di awal-awal perkembangan PC. Dikarenakan insinyur- insinyur Sun berlatar belakang Unix, jadi mereka mendasari bahasa pemograman mereka dengan C++ dari pada Pascal. Secara khusus mereka membuat bahasa mereka berorientasi obyek (object oriented), bukan berorientasi prosedur (procedural oriented) seperti model bahasa Pascal. Bahasa pemograman tersebut dinamakan Oak, kemudian diubah menjadi Java. Karena pada awalnya ditujuan untuk pemograman device kecil, Java memiliki karakteristik berukuran kecil, efisien, dan portable untuk berbagai hardware. Perkembangannya sempat terhenti karena tidak ada yang tertarik dan tidak memiliki pasar seperti yang diramalkan. Ketika teknologi internet berkembang, Java diarahkan untuk menjadi bahasa pemograman internet karena fitur-fitur Java seperti Architecture Neutral, real time, reliable dan secure sangat sesuai untuk pengembangan internet. Didalam java terdapat beberapa istilah umum seperti Class, Method, dan Constructor berikut adalah penjelasan tentang istilah-istilah umum tersebut. 1

A. Class Class merupakan bagian utama pada pemrograman Java. Class digunakan untuk membuat object, dan berperan sebagai tipe dari objek. Class merupakan sarana pengkapsulan kumpulan-kumpulan data dan kumpulan method yang mengoperasikan data tersebut. Kelas pada java di defenisikan dengan menggunakan kata kunci class. Class di definisikan sebagai sebuah blueprint(denah), atau prototipe, yang mendefiniskan variabel-variabel dan metode-metode yang umum untuk semua objek dari n jenis tertentu (n maksudnya jumlah tertentu). Sebuah kelas menyerupai sebuah struktur yang merupakan tipe data sendiri, misalkan tipe data titik yang terdiri dari koordinat x dan y. Bahasa Java telah menggunakan sebuah kelas untuk menyatakan tipe data titik karena bahasa pemrograman Java merupakan bahasa pemrograman berorientasi objek murni sehingga tidak mengenal struktur, melainkan mengenal apa yang disebut dengan kelas. Perbedaan sebuah kelas dengan sebuah struktur adalah sebuah kelas dapat berdiri sendiri dan dapat digunakan untuk berbagai keperluan kelas-kelas yang lain, sedangkan sebuah struktur tidak dapat berdiri sendiri. Sebuah kelas lebih fleksibel untuk digunakan oleh kelas lain tanpa harus membongkar kode program utama, sedangkan jika digunakan struktur maka kode program harus dibongkar unuk disalin bagian strukturnya ke kode program utama yang lain. 1. File dalam class a. Terdiri dari berbagai kelas Sebuah file dapat terdiri dari berbagai kelas, namun biasanya pada bahasa pemrograman Java sebuah file hanya terdiri dari satu kelas yang disimpan dengan nama kelas, misal file List.java berisi kelas List. Namun jika kelas yang dibuat misalnya public class nama_kelas, maka kelas itu harus disimpan dalam satu file hanya untuk satu kelas. Setelah dilakukan kompilasi maka pada Java akan ada sebuah file.class yang berisi bytecode dari setiap kelas. b. Terdiri dari 2 kelas. Jika sebuah file terdiri dari dua kelas, maka setelah dilakukan kompilasi akan dihasilkan dua buah file.class yang nantinya akan dibaca oleh interpreter Java saat program dieksekusi. Sebuah kelas saat program dieksekusi dan perintah new dijalankan, maka akan dibuat sebuah objek. Class adalah template untuk pembuatan objek. Class juga memiliki anggota, diantaranya : atribut dan method. 2

2. Karakteristik Class Class memiliki beberapa karakteristik, diantaranya : anggota class terdiri dari atribut dan method. Tiap-tiap anggota class memiliki control pengaksesan tersendiri, maksudnya adalah apakah anggota class tersebut dapat diakses dengan bebas (dengan tipe public) atau hanya dapat diakses melalui sebuah interface. Dalam hal ini, interface adalah device yang digunakan untuk komunikasi antar object berbeda yang tidak memiliki hubungan apapun. Interface bisa dikatakan sebagai protokol komunikasi antar object tersebut. 3. Bentuk Umum Class [modifier1] class Namakelas [modifier2]{ Class body; } B. Instance Instantiate adalah proses penciptaan objek. Untuk membuat objek atau instance dari sebuah class yaitu dengan menggunakan operator new. Bila kita mendeklarasikan suatu kelas file dalam program java. Instantiate ini berfungsi untuk melakukan operasi baca/tulis, mengambil nama file, mengetahui ukuran suatu file, delete dan read only file, mengetahui jumlah file dalam suatu direktori (folder) Bentuk Umum : NamaKelas namaobyek = new NamaKelas ( [parameter] ); ContohProgram : Manusia tukijan = new Manusia(); 3

C. Atribut Atribut dari sebuah kelas adalah variabel global yang dimiliki sebuah kelas, Atribut dapat memiliki hak akses private, public maupun protected. Sebuah atribut yang dinyatakan sebagai private hanya dapat diakses secara langsung oleh kelas yang membungkusnya, sedangkan kelas lainnya tidak dapat mengakses atribut ini secara langsung. Sebuah atribut yang dinyatakan sebagai public dapat diakses secara langsung oleh kelas lain di luar kelas yang membungkusnya. Sebuah atribut yang dinyatakan sebagai protected tidak dapat diakses secara langsung oleh kelas lain di luar kelas yang membungkusnya, kecuali kelas yang mengaksesnya adalah kelas turunan dari kelas yang membungkusnya. Atribut juga biasa disebut state/ properties/ field merupakan bagian yang dimiliki oleh sebuah class yang tidak melakukan operasi, tetapi kepadanya dilakukan operasi sehingga dapat merubah nilai dari attribute tersebut. 1. Karakteristik Atribut Dalam class, atribut disebut sebagai variabel. Atribut dapat membedakan antara satu object dengan object yang lain. Sebagai contoh, pada class : mahasiswa, terdapat object mahasiswa si A, dan object mahasiswa si B. Yang membedakan antara object si A dan si B adalah NPM-nya (Nomor Pokok Mahasiswa) yang merupakan atribut dari object tersebut. Pada atribut, terdapat pula dua istilah variabel, yaitu Instance Variabel dan Class Variable. Dimana pada tiap variabel memiliki karakteristik tersendiri, diantaranya : Pada Instance Variabel à tiap object memiliki instance variabel dan menyimpan nilainya tersendiri. Sedangkan pada Class Variabel à atribut yang dimiliki oleh semua object yang berasal dari class yang sama, serta semua object memiliki nilai class variabel yang sama. atribut yang dimiliki object dari class yang sama. 2. Bentuk Umum Atribut [modifier] tipedata namavariabel; [public] [static] final tipedata NAMA_KONSTANTA = nilai; 4

3. Contoh program : public class CircleClass { public static final double PI = 3.14159265358979323846; public double x, y, r; // dan seterusnya } D. Instance Variable Instance variable adalah pendefinisian atribut atau variable dari suatu class. Suatu yang digunakan untuk mengambil nilai dari suatu variable dengan menggunakan tanda titik (.) dan untuk memberi nilai menggunakan (=) Contohnya seperti dibawah ini, membuat instance variable : public class belajar { } private String nama; private String matkul; private int nilai; E. Method Method adalah fungsi atau prosedur yang dibuat oleh seorang programmer didalam suatu Class. Dengan kata lain, method pada sebuah kelas hampir sama dengan fungsi atau prosedur pada pemrograman prosedural. Pada sebuah method di dalam sebuah kelas juga memiliki izin akses seperti halnya atribut pada kelas, izin akses itu antara lain private, public dan protected yang memiliki arti sama pada izin akses atribut yang telah dibahas sebelumnya. Sebuah kelas boleh memiliki lebih dari satu method dengan nama yang sama asalkan memiliki 5

parameter masukan yang berbeda sehingga kompiler atau interpreter dapat mengenali method mana yang dipanggil. Hal ini dinamakan overloading. Di dalam sebuah kelas, terdapat juga yang disebut sebagai method atau atribut statis yang memiliki kata kunci static. Maksud dari statis di sini adalah method yang dapat diakses secara berbagi dengan semua objek lain tanpa harus membuat objek yang memiliki method statis tadi (tanpa proses new), tapi sebuah method statis mempunyai keterbatasan yaitu hanya dapat mengakses atribut atau method lain di dalam kelas yang membungkusnya yang juga bersifat statis. Method statis biasanya diimplementasikan untuk method main. 1. Karakteristik Method Didalam suatu class, behavior disimpan dalam bentuk Method. Method merupakan serangkaian statemen / perintah (perintah = baris program) dalam suatu class yang menghandle task tertentu. Method merupakan hal-hal yang bisa dilakukan oleh object dari suatu class. Method didefinisikan pada class akan tetapi dipanggil melalui object. Method memiliki peranan diantaranya : a. merubah nilai atribut dari suatu object, b. menerima informasi dari object lain, dan c. mengirim informasi ke obyek lain untuk melakukan suatu task (cara obyek berkomunikasi dengan obyek lain adalah dengan menggunakan method). 2. Bentuk Umum Method : [modifier1]tipenilaikembalian namamethod(parameter input){ } Method body; F. Instance Method Method dapat didefinisikan lebih dari satu, dan dapat dipanggil dari method yang berbeda.pemanggilan suatu method yang telah dideklarasikan dengan menggunakan tanda(.) 6

Contoh program: public class Belajar{ public String baca; public String tulis; public void cetak(){ System.out.println( bacaan diatas adalah +baca); Public void cetak1(){ System.out.println( tulisan diatas adalah +tulis); } } } G. Constructor Constructoradalahmethodkhususyangdidefinisikandidalamkelasdanakan dipanggilsecaraotomatissetiapkaliterjadiinstansiasiobjek,danmerupakanmethod yangmengembalikantipekelas(dirinyasendiri).fungsidariconstructoradalahuntuk melakukaninstansiasinilaiterhadapdata-datayangterdapatpadakelasbersangkutan. ApabilatidakmendefinisikanconstructormakasecaraotomatisJavaakan membuatkannyauntukkita.constructorsemacaminidisebutdengan default constructor,yangakanmenginisialisasikansemuadatayangadadengannilainol,string dengan nilai null, variabelboolean diset kefalse. Beberapahalyangperludiperhatikanpadasaatmendefinisikan constructor kelasadalahconstructortidakmempunyaitipekembalian,namaconstructorharussama persis dengan namakelasyangdidefinisikan. Constructor digunakan pada saat penciptaan objek dari sebuah class. Pendeklarasian constructor mirip dengan pendeklarasian method, dengan satu pengecualian bahwa constructor tidak mencantumkan tipe return. Penamaan constructor harus sama dengan nama class. Dan constructor tidak memiliki nilai kembalian. 1. Karakteristik Constructor : Namanya sama dengan nama class Boleh memiliki argument lebih dari satu atau tidak sama sekali. Tidak boleh mengembalikan nilai (termasuk tidak ada kata-kata void). 7

2. Bentuk umum Constructor : [modifier] namaconstructor (tipe namaparameter) { constructorbody; } 3. Contoh Program : class Mahasiswa { private String nama = ""; private int nim = 0; private static int NIM = 0; private double ipk = 0.0; public Mahasiswa() { this.nim = ++NIM; } public Mahasiswa(String na, double i) { this.nama = na; this.ipk = i; this.nim = ++NIM; } public void LihatData() { System.out.println("Nama : " + nama + "\tnim : " + nim +"\tipk : " + ipk ); } 8

H. Program Sederhana public class Kubus { double sisi; public static class kubus { private double sisi; public static void main(string[] args) { int volume1, volume2; Kubus S1; S1 = new Kubus(); // Mengisikan nilai ke dalam objek S1 S1.sisi = 4; // Menghitung isi/volume dari objek S1 volume1 = (int) (S1.sisi * S1.sisi * S1.sisi * S1.sisi); // Menampilkan nilai volume S1 dan S2 ke layar monitor System.out.println("Volume kubus = " + volume1); } 9

} } 10

Daftar Pustaka : 1. http://cuepricornz.wordpress.com/tutorial/pemrograman-berorientasi-obyek/ 2. http://hairilmahardhika.blogspot.com/2012/10/class-method-constructor-modifier-dan.html 3. http://id.wikipedia.org/wiki/java 4. http://nita-afrilia.blogspot.com/2011/01/pengenalan-java-2.html 5. http://informaticunsil.blogspot.com/2012/02/sejarah-singkat-java.html 6. Modul Praktikum I-Lab Universitas Gunadarma : Algoritma Pemrograman 1 11