• Tidak ada hasil yang ditemukan

Bahasa Pemrograman JAVA

N/A
N/A
Protected

Academic year: 2017

Membagikan "Bahasa Pemrograman JAVA"

Copied!
40
0
0

Teks penuh

(1)

MAKALAH TEKNOLOGI INFORMASI DAN KOMUNIKASI

“PEMROGRAMAN JAVA DAN C++”

Di susun oleh :

Nama : Arif Maulana Malik

NIM : 1102412084

Dosen Pengampu : Bpk. Septia Lutfi

KURIKULUM DAN TEKNOLOGI PENDIDIKAN

FAKULTAS ILMU PENDIDIKAN

UNIVERSITAS NEGERI SEMARANG

(2)

KATA PENGANTAR

Puji dan syukur saya panjatkan kehadirat Tuhan Yang Maha Esa yang telah memberikan rahmat dan karunia-Nya kepada penulis. Sehingga penulis dapat menyelesaikan makalah Mata Kuliah “Teknologi Informasi dan Komunikasi” ini dengan judul “ JAVA dan Pemrograman” dengan semaksimal mungkin. Makalah ini saya susun dalam rangka untuk memenuhi tugas mata kuliah yang diberikan oleh bapak Septia Lutfi sebagai dosen Mata Kuliah “Teknologi Informasi dan Komunikasi”.

Walaupun sebenarnya Saya menyadari bahwa dalam menyusun makalah ini masih jauh dari sempurna, untuk itu saya sebagai penulis sangat mengharapkan kritik dan saran yang sifatnya membangun guna sempurnanya makalah ini.

Selain itu tidak lupa penulis mengucapkan terima kasih kepada semua pihak yang telah membantu penulis baik materi maupun dukungannya dalam penulisan makalah ini.

Akhir kata penulis mengucapkan terimakasih semoga makalah ini dapat bermanfaat bagi pembaca umumnya dan bagi penulis khususnya.

Semarang , 14 Oktober 2013

(3)

DAFTAR ISI

i. Kata Pengantar……….…2

ii. Daftar Isi………...3

Bab I Pendahuluan A. Latar Belakang……….…4

B. Rumusan Masalah………5

C. Tujuan Penulisan………..5

D. Kegunaan Penulisan……….5

E. Metodologi Pengumpulan Data………5

Bab II Pembahasan A. Pengertian Java……….6

B. Sejarah Java………..7

C. Versi Awal Java………...9

D. Kelebihan Java ………9

E. Kekurangan dari Java……….10

F. Contoh kode Program Sederhana dalam Java………11

G. Tahap Kompilasi Java………12

H. Integrated Development Environment………..…12

I. Istilah-Istilah dalam Java………13

J. Pengertian C++………...25

K. Pustaka Dasar C++……….………26

L. Bahasa Penulisan C++………...….27

M. Fungsi Dari C++……….28

N. Header dan Fungsi Main………...…….29

O. Tipe Data………..……..31

P. Operator………..32

Bab III Penutup A. Kesimpulan………39

(4)

BAB I PENDAHULUAN

A. LATAR BELAKANG

Pesatnya teknologi, terutama teknologi komputer sudah tak bisa dipungkiri lagi, bagi yang mengikuti perkembangannya, ia tidak akan dipandang sebelah mata. Sebaliknya, bagi yang tidak mengikuti perkembangannya, bersiaplah untuk mundur secara suka rela dari panggung kompetisi. Ibarat wabah, teknologi komputer sudah menyusupi hampir semua bidang kehidupan manusia. Dari pemerintah pusat sampai tingkat pemerintah desa, perusahaan-perusahaan, supermarket, minimarket, perguruan tinggi, SLTA, SLTP, bahkan SD hamper semuanya mengenal komputer.

Saat ini, yang mempunyai lingkungan yang semakin luas dan banyak diminati, juga dapat digunakan untuk menghasilkan uang adalah dunia pemrograman komputer. Dalam dunia pemrograman komputer, dikenal banyak bahasa pemrograman, seperti C, C++, Pascal, Basic, Java, dan lain-lain. Di antara banyaknya bahasa pemrograman, tim penyusun akan membahas Java dan c++ dalam makalah ini.

B. RUMUSAN MASALAH

Dari latar belakang yang telah dijelaskan, penulis dapat merumuskan masalah sebagai berikut:

1. Apa yang dimaksud dengan JAVA? 2. Apa sejarah dari JAVA?

(5)

8. Bagaimana bahasa Pemrograman dari c++ ?

C. TUJUAN

1. Untuk mengetahui apa yang dimaksud dengan JAVA. 2. Untuk mengetahui sejarah dari JAVA.

3. Untuk mengetahui kelebihan dan kekurangan JAVA. 4. Untuk mengetahui seluk beluk dari JAVA.

5. Untuk mengetahui istilah-istilah dalam JAVA. 6. Untuk mengetahui apa yang dimaksud dengan C++. 7. Untuk mengetahui pustaka dasar C++.

8. Untuk mengetahui bahasa pemrograman dari C++. D. KEGUNAAN PENULISAN

Adapun kegunaan dari penulisan makalah ini antara lain:

1. Untuk mengetahui peranan java sebagai basic pemrograman 2. Untuk memenuhi tugas mata kuliah TIK

E. METODOLOGI PENGUMPULAN DATA

Dalam penulisan makalah ini, metode pengumpulan data yang penulis gunakan adalah metode kepustakaan. Yaitu dimana penulis mencari referensi melalui internet yang berkaitan dengan pokok bahasan yang penulis kembangkan.

(6)

BAB 2 PEMBAHASAN

A. PENGERTIAN JAVA

(7)

rentang waktu ini juga ditetapkan pemakaian Internet sebagai medium yang menjembatani kerja dan ide di antara mereka. Pada awal tahun 1990-an, Internet masih merupakan rintisan, yang dipakai hanya di kalangan akademisi dan militer. Mereka menjadikan perambah (browser) Mosaic sebagai landasan awal untuk membuat perambah Java pertama yang dinamai Web Runner, terinsipirasi dari film 1980-an, Blade Runner. Pada perkembangan rilis pertama, Web Runner berganti nama menjadi Hot Java. Pada sekitar bulan Maret 1995, untuk pertama kali kode sumber Java versi 1.0a2 dibuka. Kesuksesan mereka diikuti dengan untuk pemberitaan pertama kali pada surat kabar San Jose Mercury News pada tanggal 23 Mei 1995. Sayang terjadi perpecahan di antara mereka suatu hari pada pukul 04.00 di sebuah ruangan hotel Sheraton Palace. Tiga dari pimpinan utama proyek, Eric Schmidt dan George Paolini dari Sun Microsystems bersama Marc Andreessen, membentuk Netscape. Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan kerja "bapak java", James Gosling. Nama Oak ini tidak dipakai untuk versi release Java karena sebuah perangkat lunak sudah terdaftar dengan merek dagang tersebut, sehingga diambil nama penggantinya menjadi "Java". Nama ini diambil dari kopi murni yang digiling langsung dari biji (kopi tubruk) kesukaan Gosling.

B. SEJARAH JAVA

Bahasa pemrograman Java terlahir dari The Green Project, yang berjalan selama 18 bulan, dari awal tahun 1991 hingga musim panas 1992. Proyek tersebut belum menggunakan versi yang dinamakan Oak. Proyek ini dimotori oleh Patrick Naughton, Mike Sheridan, dan James Gosling, beserta sembilan pemrogram lainnya dari Sun Microsystems. Salah satu hasil proyek ini adalah maskot Duke

yang dibuat oleh Joe Palrang.

(8)

pengendali sebuah peralatan dengan teknologi layar sentuh (touch screen), seperti pada PDA sekarang ini. Teknologi baru ini dinamai "*7" (Star Seven).

Setelah era Star Seven selesai, sebuah anak perusahaan Tv kabel tertarik ditambah beberapa orang dari proyek The Green Project. Mereka memusatkan kegiatannya pada sebuah ruangan kantor di 100 Hamilton Avenue, Palo Alto.

Perusahaan baru ini bertambah maju: jumlah karyawan meningkat dalam waktu singkat dari 13 menjadi 70 orang. Pada rentang waktu ini juga ditetapkan pemakaian Internet sebagai medium yang menjembatani kerja dan ide di antara mereka. Pada awal tahun 1990-an, Internet masih merupakan rintisan, yang dipakai hanya di kalangan akademisi dan militer.

Mereka menjadikan perambah (browser) Mosaic sebagai landasan awal untuk membuat perambah Java pertama yang dinamai Web Runner, terinsipirasi dari film 1980-an, Blade Runner. Pada perkembangan rilis pertama, Web Runner berganti nama menjadi Hot Java.

Pada sekitar bulan Maret 1995, untuk pertama kali kode sumber Java versi 1.0a2 dibuka. Kesuksesan mereka diikuti dengan untuk pemberitaan pertama kali pada surat kabar San Jose Mercury News pada tanggal 23 Mei 1995.

Sayang terjadi perpecahan di antara mereka suatu hari pada pukul 04.00 di sebuah ruangan hotel Sheraton Palace. Tiga dari pimpinan utama proyek, Eric Schmidt dan George Paolini dari Sun Microsystems bersama Marc Andreessen, membentuk Netscape.

Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan kerja "Bapak Java", James Gosling. Nama Oak ini tidak dipakai untuk versi release Java karena sebuah perangkat lunak lain sudah terdaftar dengan merek dagang tersebut, sehingga diambil nama penggantinya menjadi "Java". Nama ini diambil dari kopi murni yang digiling langsung dari biji (kopi tubruk) kesukaan Gosling. Konon kopi ini berasal dari Pulau Jawa. Jadi nama bahasa pemrograman Java tidak lain berasal dari kata Jawa (bahasa Inggris untuk Jawa adalah Java).

(9)

Patrick Naughton, Mike Sheridan, James Gosling dan Bill Joy, beserta sembilan pemrogram lainnya dari Sun Microsystems. Salah satu hasil proyek ini adalah maskot Duke yang dibuat oleh Joe Palrang. Pertemuan proyek berlangsung di sebuah gedung perkantoran Sand Hill Road di Menlo Park.

C. Versi Awal

Versi awal Java ditahun 1996 sudah merupakan versi release sehingga dinamakan Java Versi 1.0. Java versi ini menyertakan banyak paket standar awal yang terus dikembangkan pada versi selanjutnya:

1) java.lang: Peruntukan kelas elemen-elemen dasar.

2) java.io: Peruntukan kelas input dan output, termasuk penggunaan berkas. 3) java.util: Peruntukan kelas pelengkap seperti kelas struktur data dan kelas

kelas penanggalan.

4) java.net: Peruntukan kelas TCP/IP, yang memungkinkan berkomunikasi dengan komputer lain menggunakan jaringan TCP/IP.

5) java.awt: Kelas dasar untuk aplikasi antarmuka dengan pengguna (GUI) 6) java.applet: Kelas dasar aplikasi antar muka untuk diterapkan pada

penjelajah web.

D. Kelebihan

(10)

Platform yang didukung sampai saat ini adalah Microsoft Windows, Linux, Mac OS dan Sun Solaris. Penyebabnya adalah setiap sistem operasi menggunakan programnya sendiri-sendiri (yang dapat diunduh dari situs Java) untuk meninterpretasikan bytecode tersebut.

2) OOP (Object Oriented Programming - Pemrogram Berorientasi Objek) 3) Perpustakaan Kelas Yang Lengkap, Java terkenal dengan kelengkapan

library/perpustakaan (kumpulan program program yang disertakan dalam pemrograman java) yang sangat memudahkan dalam penggunaan oleh para pemrogram untuk membangun aplikasinya. Kelengkapan perpustakaan ini ditambah dengan keberadaan komunitas Java yang besar yang terus menerus membuat perpustakaan-perpustakaan baru untuk melingkupi seluruh kebutuhan pembangunan aplikasi.

4) Bergaya C++, memiliki sintaks seperti bahasa pemrograman C++ sehingga menarik banyak pemrogram C++ untuk pindah ke Java. Saat ini pengguna Java sangat banyak, sebagian besar adalah pemrogram C++ yang pindah ke Java. Universitas-universitas di Amerika Serikat juga mulai berpindah dengan mengajarkan Java kepada murid-murid yang baru karena lebih mudah dipahami oleh murid dan dapat berguna juga bagi mereka yang bukan mengambil jurusan komputer.

5) Pengumpulan sampah otomatis, memiliki fasilitas pengaturan penggunaan memori sehingga para pemrogram tidak perlu melakukan pengaturan memori secara langsung (seperti halnya dalam bahasa C++ yang dipakai secara luas).

E. Kekurangan

(11)

2) Mudah didekompilasi. Dekompilasi adalah proses membalikkan dari kode jadi menjadi kode sumber. Ini dimungkinkan karena kode jadi Java merupakan bytecode yang menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-nama kelas, metode, dan tipe data. Hal yang sama juga terjadi pada Microsoft .NET Platform. Dengan demikian, algoritma yang digunakan program akan lebih sulit disembunyikan dan mudah dibajak/direverse-engineer.

3) Penggunaan memori yang banyak. Penggunaan memori untuk program berbasis Java jauh lebih besar daripada bahasa tingkat tinggi generasi sebelumnya seperti C/C++ dan Pascal (lebih spesifik lagi, Delphi dan Object Pascal). Biasanya ini bukan merupakan masalah bagi pihak yang menggunakan teknologi terbaru (karena trend memori terpasang makin murah), tetapi menjadi masalah bagi mereka yang masih harus berkutat dengan mesin komputer berumur lebih dari 4 tahun.

F. Contoh Kode Program Sederhana Dalam Java

Contoh program Halo dunia yang ditulis menggunakan bahasa pemrograman Java adalah sebagai berikut:

(12)

1. Tulis / Ubah. Pemrogram menulis program dan menyimpannya di media dalam bentuk berkas '.java'.

2. Kompilasi. Pengkompilasi membentuk bytecodes dari program menjadi bentuk berkas '.class'.

3. Muat. Pemuat kelas memuat bytecodes ke memori.

4. Verifikasi. Peng-verifikasi memastikan bytecodes tidak mengganggu sistem keamanan Java.

5. Jalankan. Penerjemah menerjemahkan bytecodes ke bahasa mesin.tidak bisa di pakai‘’

E. Integrated Development Environment

Banyak pihak telah membuat IDE (Integrated Development Environment -Lingkungan Pengembangan Terintegrasi) untuk Java. Yang populer saat ini (Juli 2006) antara lain:

 Dr. Java, program gratis yang dikembangkan oleh Universitas Rice, Amerika Serikat

 BlueJ, program gratis yang dikembangkan oleh Universitas Monash, Australia

 NetBeans (open source- Common Development and Distribution License (CDDL))

NetBeans disponsori Sun Microsystems, dan versi terkininya memilki Matisse, sebuah GUI Editor yang menurut pendapat umum merupakan yang terbaik.[rujukan?]

1) Eclipse JDT (open source- Eclipse Public License)

2) Eclipse dibuat dari kerja sama antara perusahaan-perusahaan anggota 'Eclipse Foundation' (beserta individu-individu lain). Banyak nama besar yang ikut dalam 'Eclipse Foundation', termasuk IBM, BEA, Intel, Nokia, Borland. Eclipse bersaing langsung dengan Netbeans IDE. Plugin tambahan pada Eclipse jauh lebih banyak dan bervariasi dibandingkan IDE lainnya.

(13)

4) Oracle JDeveloper (free)

5) Xinox JCreator (ada versi berbayar maupun free)

JCreator ditulis dalam C/C++ sehingga lebih cepat (dan menggunakan memori lebih sedikit) dari kebanyakan.

Pranala luar

F. ISTILAH –ISTILAH JAVA 1. Pernyataan Switch

· Pernyataan Switch satu-satunya jenis pernyataan yang mengimplementasikan java multiway percabangan

a) Ketika pernyataan switch dievaluasi, salah satu jumlah cabang pilihan yang berbeda untuk menjalankan cabang

b) ditentukan dengan mengendalikan ekspresi yang ditutupi dalam kisaran waktu setelah kata kunci mengkonfirmasi switch ekspresi harus mengevaluasi ke char, int, pendek, atau byte.

c) Setiap pernyataan cabang dalam sebuah pernyataan switch diawali dengan kata cadangan, diikuti oleh sebuah konstanta yang disebut label kasus, diikuti oleh titik dua, dan kemudian urutan laporan

d) Setiap kasus harus diberi label dengan jenis kasus yang sama perlu mengendalikan ekspresi

e) Label tidak terdaftar atau span interval lengkap, Tetapi masing-masing dapat terjadi sekali agar setiap laporan dapat diikuti dengan pernyataan istirahat (istirahat;)

Mungkin juga ada bagian berlabel Default:

f) default adalah opsional, dan biasanya berlangsung

(14)

untuk menyertakan bagian default digunakan untuk kesalahan output pesan, misalnya

h) ketika mengendalikan ekspresi lalu dievaluasi, kode untuk label yang nilainya sesuai dengan kasus mengendalikan ekspresi dieksekusi

i) Jika label tidak cocok dengan kasus ini, maka laporan hanya dilakukan oleh mereka dengan mengikuti label default (jika ada satu)

j) Pernyataan Switch berakhir ketika menjalankan sebuah pernyataan istirahat, atau ketika akhir pernyataan switch dicapai

k) ketika komputer menjalankan laporan setelah label kasus, terus sampai break tercapai

l) jika melanggar diabaikan, maka setelah melaksanakan kode untuk satu kasus, komputer akan melanjutkan untuk mengeksekusi kode untuk kasus berikutnya

m) Jika break tidak sengaja mengabaikan, compiler tidak akan mengeluarkan pesan kesalahan

Pernyataan Switch

switch (Controlling_Expression) {

case Case_Label_1:

Statement_Sequence_1 break;

case Case_Label_2:

Statement_Sequence_2 break;

case Case_Label_n:

Statement_Sequence_n break;

(15)

Default_Statement Sequence break;

}

2. Operator bersyarat

operator Bersyarat adalah varian notational dari beberapa bentuk pernyataan istilah

a) kata lain disebut juga operator ternary atau aritmetika , contoh

if (n1 > n2) max = n1; else max = n2; vs.

max = (n1 > n2) ? n1 : n2;

b) Ekspresi di sebelah kanan operator penugasan adalah operator ekspresi dari ekspresi kondisional Boolean

c) Jika benar, maka ekspresi dievaluasi ke nilai ungkapan pertama (n1), selain untuk mengevaluasi nilai dari ekspresi kedua (n2)

3. Ekspresi Boolean

1) Ekspresi Boolean adalah ekspresi benar atau salah

2) ekspresi Boolean yang paling sederhana untuk membandingkan nilai dari dua ekspresi <== myScore yourScore waktu batas

3) Catatan bahwa Java menggunakan dua tanda sama dengan (==) untuk pengujian kesetaraan: A sama satu sign (=) digunakan hanya untuk tugas Ekspresi

4) Boolean yang ditutupi dalam kurung tersebut tidak diperlukan, kecuali ia digunakan dalam pernyataan jika

(16)

1) v Kesetaraan operator perbandingan (==) dengan benar dapat menguji dua nilai dari tipe primitif,

2) v namun ketika diterapkan pada dua benda sebagai obyek uji String kelas == untuk melihat jika mereka disimpan dalam lokasi memori yang sama, bukan apakah atau tidak mereka memiliki

3) v Untuk sedikit nilai tes yang sama dua tali untuk melihat apakah mereka memiliki nilai yang sama, menggunakan metode yang serupa dengan, atau equalsIgnoreCase

4) string1.equals(string2) string1.equalsIgnoreCase(string2)

5. Leksikografis dan urutan abjad

Leksikografis server sama dengan ASCII server, termasuk huruf, angka, dan huruf besar lainnya

1) Semua karakter dalam urutan abjad, dan huruf kecil semua dalam urutan abjad, tetapi huruf kapital semua datang sebelum huruf kecil 2) Jika s1 dan s2 adalah dua variabel jenis String yang telah diberi nilai

String, kemudian s1.compareTo (s2) return angka negatif jika datang sebelum s1 s2 dalam rangka leksikografis, kembali nol jika kedua string sama, dan kembali angka positif jika s1 s2

Ketika datang sebelum melakukan perbandingan alfabet dari string (bukan perbandingan leksikografis), yang terdiri atas campuran huruf kecil dan huruf besar, gunakan metode tidak compareToIgnoreCase

6. Membuat ekspresi Boolean

Ketika dua ekspresi yang dikombinasikan dengan menggunakan Boolean "dan" (& &) operator, seluruh ekspresi benar memberikan dua ekspresi benar a. jika ekspresi salah

(17)

dari istilah ini adalah salah hanya jika kedua ekspresi palsu • Setiap ekspresi Boolean dapat menegasikan menggunakan! Tempat operator ekspresi dalam tanda kurung dan tempat!

• Tidak seperti operator di depan notasi matematika, string dari pertidaksamaan harus bergabung oleh & &

Gunakan (min <hasil) & & (hasil <max) daripada min <hasil <maks

7. Evaluasi Ekspresi Boolean

Meskipun ekspresi Boolean yang digunakan untuk mengontrol cabang dan laporan loop, ekspresi Boolean dapat eksis secara independen atau variable. Boolean dapat diberikan nilai ekspresi Boolean menggunakan. Boolean Expression tugas laporan dapat dievaluasi dengan cara yang sama bahwa ekspresi aritmatika dievaluasi

Satu-satunya perbedaan adalah bahwa ekspresi aritmatika menghasilkan sejumlah sebagai hasilnya, sementara ekspresi Boolean menghasilkan baik benar atau salah sebagai akibatnya mereka

boolean madeIt = (time < limit) && (limit < max);

8. Truth Tables

Hubungan singkat dan Evaluasi lengkap

• Java dapat mengambil jalan pintas ketika mengevaluasi bagian pertama dari ekspresi Boolean hasil dari bagian kedua bahwa evaluasi tidak dapat mengubah

• disebut sirkuit evaluasi singkat atau evaluasi malas,

(18)

v kedua cara itu, ketika mengevaluasi dua subexpressions bergabung dengan Boolean | |, jika subexpression pertama mengevaluasi true, maka ekspresi akan mengevaluasi seluruh menjadi true

• Ada saat-saat ketika menggunakan evaluasi hubung singkat dapat mencegah kesalahan runtime

v contoh berikut, jika jumlah anak-anak adalah sama dengan nol, maka subexpression kedua tidak akan dievaluasi, sehingga mencegah membagi dengan nol kesalahan

v Perhatikan bahwa urutan terbalik dari subexpressions tidak akan mencegah hal ini

if ((kids !=0) && ((toys/kids) >=2)) . . .

• Kadang-kadang lebih baik untuk selalu mengevaluasi kedua ekspresi, yaitu permintaan untuk evaluasi yang lengkap

v Dalam hal ini, menggunakan & dan | operator daripada & & dan | |

9. Pendahuluan dan peraturan Associativity

• Boolean dan ekspresi aritmatika tidak perlu sepenuhnya kurung

• Jika beberapa atau semua tanda kurung dihapus, Java akan mengikuti preseden dan aturan associativity (diringkas dalam tabel berikut) untuk menentukan urutan operasi

v jika satu operator terjadi lebih tinggi dalam tabel dari siapapun lain, memiliki hak yang lebih tinggi dan dikelompokkan dengan operan sebelum hak operator rendah

(19)

10. mengevaluasi ekspresi

• Secara umum, kurung dalam ekspresi dapat untuk membantu dokumen programmer

v Daripada mengandalkan aturan protokoler dan associativity, yang terbaik adalah memasukkan tanda kurung siku, kecuali arti yang diinginkan jelas • Binding: Hubungan dari operan dengan operator mereka

v ekspresi kurung menyelesaikan dan sepenuhnya mengikat untuk semua operator dalam ekspresi

• Side Effects: Bila, selain untuk nilai-nilai, ekspresi mengubah sesuatu, seperti nilai-nilai dari variable

v tugas, meningkatkan dan operator penurunan semua menghasilkan efek samping

11. Aturan untuk mengevaluasi ekspresi • Tentukan setara

v sepenuhnya melakukan ekspresi mengikat menggunakan kurung yang benar dan aturan associativity

• Prosiding kiri ke kanan, mengevaluasi apa yang bisa segera dievaluasi subexpressions

v subexpressions atau metode argumen, misalnya, evaluasi konstan atau variabel numerik

• untuk setiap operasi asing dan metode permintaan sesegera semua operator (argumen yaitu) telah dievaluasi

12. Pengulangan

• Loop di Java sama dengan dalam bahasa tingkat tinggi lain

• java memiliki tiga jenis laporan loop: Sementara itu, sementara agenda, dan melaporkan

(20)

13. Pernyataan While

• Sebuah pernyataan yang sementara digunakan untuk mengulang bagian dari kode tersebut (yaitu, tubuh loop) berdasarkan evaluasi ekspresi

v ekspresi Boolean Boolean diperiksa sebelum tubuh loop dijalankan ka salah, tubuh loop tidak dijalankan sama sekali

v sebelum pelaksanaan setiap loop iterasi berikut tubuh, ekspresi Boolean diperiksa kembali

Ø Jika itu benar, tubuh loop dijalankan lagi Ø Jika salah, pernyataan itu mengakhiri loop

v tubuh loop dapat terdiri dari sebuah pernyataan tunggal, atau pernyataan yang ditutupi dalam sepasang kurung (())

14. Pernyataan Do- while

• Do- while pernyataan yang digunakan untuk menjalankan beberapa kode (misalnya, tubuh loop), kemudian ulangi berdasarkan evaluasi ekspresi Boolean

v dari tubuh loop dieksekusi sedikitnya satu kali dalam ekspresi Ø Boolean diperiksa setelah tubuh loop dijalankan adalah

• ekspresi Boolean diperiksa setelah setiap iterasi dari tubuhar, tubuh loop dijalankan lagi palsu, pernyataan loop ujung

lupa untuk meletakkan titik koma setelah ekspresi Boolean

• Sebagai laporan sementara, tubuh loop dapat terdiri dari pernyataan tunggal, atau pernyataan yang ditutupi dalam sepasang tanda kurung (())

15. Algoritma dan kode pseudo

• Bagian yang sulit untuk memecahkan masalah dengan program komputer tidak berurusan dengan aturan sintaks bahasa pemrograman

• Sebaliknya, ia datang dengan metode solusi yang mendasari adalah bagian paling sulit

(21)

v algoritma biasanya ditulis dalam pseudo, yang merupakan campuran bahasa pemrograman dan bahasa manusia, seperti bahasa Inggris

v Pseudocode harus tepat dan cukup jelas sehingga seorang programmer yang baik dapat dikonversi menjadi sintaktis kode yang benar,

v bagaimanapun, adalah jauh lebih kaku daripada kode pseudo : Orang tidak perlu khawatir tentang poin sintaksis atau negara bagian variabel, misalnya

16. Pernyataan For

• Untuk klaim yang paling sering digunakan untuk langkah melalui variabel integer tahap yang sama

• diawali dengan kata kunci for, diikuti dengan tiga ekspresi dalam kurung yang menjelaskan apa yang harus dilakukan dengan satu atau lebih variabel untuk mengontrol

v ekspresi pertama memberitahu bagaimana variabel kontrol atau variabel diinisialisasi atau dideklarasikan dan diinisialisasi sebelum iterasi pertama v ekspresi kedua menentukan waktu loop harus berakhir, berdasarkan evaluasi ekspresi Boolean sebelum setiap iterasi

v ekspresi ketiga menceritakan bagaimana variabel kontrol atau variabel akan diperbarui setelah setiap tubuh loop iterasi

17. Pernyataan syntax for

for (inisialisasi; Boolean_Expression; Update) Badan

• Pengawas dapat terdiri dari pernyataan tunggal atau daftar laporan tertutup dalam sepasang tanda kurung (())

• Perhatikan bahwa tiga ekspresi kontrol dipisahkan oleh dua,, bukan tiga titik koma

• Perhatikan bahwa ada tidak ada titik koma setelah kurung tutup pada awal loop

(22)

• for loop dapat berisi beberapa inisialisasi tindakan dipisahkan oleh koma

v Perhatian harus digunakan ketika menggabungkan sebuah deklarasi dengan beberapa tindakan

v ini ilegal untuk menggabungkan beberapa jenis deklarasi dengan beberapa tindakan, seperti

v Untuk menghindari masalah yang mungkin, yang terbaik adalah untuk menyatakan semua variabel luar pernyataan for

• A untuk loop dapat berisi tindakan memperbarui beberapa, dipisahkan dengan koma juga Hal

v ini bahkan dimungkinkan untuk menghilangkan tubuh loop di jalan,

• namun, untuk loop hanya dapat berisi satu ekspresi Boolean untuk menguji loop akhir

19. Contoh program import java.util.Scanner; public class coba

{

public static void main(String args[]) {

Scanner input = new Scanner(System.in); int barang,pilihan,banyak,harga;

System.out.println("LPKIAMART");

System.out.println("selamat datang selamat berbelanja"); System.out.println("1. ice cream magnum");

System.out.println("2. susu ultra"); System.out.println("3. pulpy orange");

System.out.println("4. lays keripik kentang"); System.out.println("5. coca cola");

System.out.println("6. sari roti sandwich");

(23)

barang = input.nextInt();

switch(barang) {

case 1 : System.out.println("nama barang : ice cream magnum"); System.out.println("harga satuan : 8.500");

System.out.print("berapa banyak yang akan anda beli : "); banyak = input.nextInt();

harga = banyak * 8500;

System.out.print("Total harga : "); System.out.println(harga);

break;

case 2 : System.out.println("nama barang : susu ultra"); System.out.println("harga satuan : 4.500");

(24)

case 4 : System.out.println("nama barang : lays keripik kentang"); System.out.println("harga satuan : 7.500");

System.out.print("berapa banyak yang akan di beli : "); banyak = input.nextInt();

harga = banyak * 7500;

System.out.print("total harga : "); System.out.println(harga);

break;

case 5 : System.out.println("nama barang : coca cola"); System.out.println("harga satuan : 5.000");

System.out.print("berapa banyak yang akan di beli : "); banyak = input.nextInt();

harga = banyak * 5500;

System.out.print("total harga : "); System.out.println(harga);

break;

case 6 : System.out.println("nama barang : sari roti sandwich"); System.out.println("harga satuan : 2.500");

System.out.print("berapa banyak yang akan di beli : "); banyak = input.nextInt();

harga = banyak * 2500;

System.out.print("total harga : "); System.out.println(harga);

break;

(25)

public static void main(String args[ ] ) String[ ] args : method main menerima variable dengan nama args, bertipe String. Tanda [ ] menunjukkan args adalah variable array.

system.out.println( ) : menampilkan teks yang diapit “ “ ke layar. Jangan lupa memberi tanda ;

nextInt() untuk membaca inputan integer

{ : menandai dimulainya isi class tesProgram sedangkan, } : menutup isi class. Bentuk dari Switch-case merupakan pernyataan yang dirancangan khusus untuk menangani pengambilan keputusan yang melibatkan sejumlah atau banyak alternatif penyelesaian. Pernyataan switch - case ini memiliki kegunaan sama seperti if – else bertingkat.

break adalah perintah untuk mengakhiri statement. Apabila tidak ada break, komputer akan mengeksekusi intruksi yang berada di bawahnya walaupun berada di case yang berbeda.

G. PENGERTIAN C++

C++ adalah sebuah bahasa pemrograman yang memiliki banyak dialek, seperti bahasa orang yang banyak memiliki dialek. Dalam C++, dialek bukan disebabkan oleh karena si pembicara berasal dari Jepang atau Indonesia, melainkan karena bahasa ini memiliki beberapa kompiler yang berbeda. Ada empat kompiler umum yaitu : C++ Borland, C++ Microsoft Visual, C/386 Watcom, dan DJGPP. Anda dapat mendownload DJGPP atau mungkin saja anda telah memiliki kompiler lain.

(26)

saat anda hendak mengkompilasi kode sumber data (source code) (yaitu program berbahasa C++ yang ditulis oleh seorang programer) mempergunakan kompiler yang berbeda. Tutorial ini tidak terlepas dari masalah seperti itu.

Bila anda belum mempunyai sebuah kompiler, disarankan agar anda segera memiliki sebuah kompiler. Sebuah kompiler sederhana sudah cukup untuk dipergunakan oleh anda dalam mengikuti tutorial ini.

Bahasa pemrograman C++ adalah bahasa yang amat berbeda. Untuk kompiler C++ berbasis DOS, akan memerlukan beberapa kata kunci (keywords); keyword sendiri tidak cukup untuk difungsikan sebagai input dan output. Walau hampir semua fungsi dalam file library tampaknya bias diakses oleh header filenya. Berikut ini contoh program C++ yang sederhana

#include <iostream.h> void main()

{

cout << “Hello world.\n”; }

Setelah dicompile dan dirun, hasilnya adalah muncul pada layar Hello World

H. Pustaka dasar C++

(27)

Pustaka Pola Dasar (The Standard Template Library atau STL) adalah bagian dari Pustaka Dasar C++. Pustaka Pola Dasar C++ terdiri dari container, algorithm, iterator dan lain sebagainya. Orang kadang menyebutkan Pustaka Dasar C++ dan Pustaka Pola Dasar C++ untuk merujuk pada hal yang sama. Kepala (header) untuk penggunaan Pustaka Dasar C++ ditulis tanpa akhiran .h.

I. Penulisan Dalam Bahasa C++

Penulisan dalam bahasa C++ adalah case sensitive. Yang berarti, C++ membedakan huruf kecil dan kapital. Yang berarti (lagi): variabel_pertama tidak sama dengan variabel_Pertama atau mboknya_echi tidak sama dengan mboknya_Echi.

Komentar dalam C++ ditulis dengan ‘//’ untuk komentar dengan panjang satu baris atau ‘/*’ dan ‘*/’ untuk komentar lebih dari satu baris, dimana tanda /* merupakan “pembuka” komentar dan */ adalah “penutup” komentar. Komentar adalah cataatan ang ditulis oleh programmer untuk sebagai pengingat atau penjelasan ketika membaca sebuah kode. Kata – kata dalam sebuah komentar tidak akan dieksekusi oleh compiler.

Beberapa kesalahan dalam penulisan dalam C++ adalah:

• int int; /*salah karena nama sebuah variabel tidak boleh sama dengan seuah tipe data (int)*/

• int Jam_9; //salah karena nama variabel dimulai dengan huruf besar

• int 90jam; /*nah, ini juga salah karena nama sebuah variabel tidak boleh dimulai dengan bilangan*/

Penulisan yang benar dalam C++ adalah: • int myint; //betul

• char kata_2; //betul juga...

(28)

Setiap statement dalam C++ harus diberi tanda ‘;’ pada akhir dari statement. Contoh penulisan statement yang benar dalam C++ adalah:

int a, b, c; a = 1; b = 2; c = a + b;

Sedangkan penulisan yang salah adalah: int a, b, c

karena itu dianggap error oleh compiler, karena merupakan statement yang tidak lengkap.

J. FUNGSI

Fungsi adalah sekumpulan perintah operasi program yang dapat menerima argumen input dan dapat memberikan hasil output yang dapat berupa nilai ataupun sebuah hasil perasi.

Nama fungsi yang definisikan sendiri oleh pemrogram tidak boleh sama dengan nama build-in function pada compiler C++.

Fungsi digunakan agar pemrogram dapat menghindari penulisan bagian program (kode) berulang-ulang, dapat menyusun kode program agar terlihat lebih rapi dan kemudahan dalam debugging program.

Definisi lainnya yang terdapat dari beberapa sumber, Fungsi merupakan bagian dari kode program yang terpisah dari program utama.

(29)

Parameter merupakan suatu nilai yang di-pass-kan (diseberangkan) pada fungsi yang berguna untuk mengubah operasinya atau untuk menunjukan operasi yang lebih luas. Sebelum fungsi digunakan, fungsi harus dideklarasikan dulu. Deklarasi fungsi (prototype) berguna untuk memberitahukan compiler tentang bagaimana fungsi diambil dan tipe data yang

diambil/dihasilkan. Fungsi dapat dipanggil oleh fungsi yang lain maupun dirinya sendiri (rekursif).

Syntax deklarasi fungsi:

Re_type function_name(parameter);

Parameter berisi pengenal (argument) dan tipe pengenal (argument) yang berfungsi sebagai masukkan. Masukkan tersebut akan diproses sehingga dihasilkan nilai tertentu sesuai tipe datanya (re_type).

Syntax fungsi:

Re_type function_name(parameter) {statement-statement}

Dalam C++, program merupakan kumpulan dari fungsi-fungsi. C++ mempunyai fungsi utama yang disebut main. Fungsi merupakan subprogram dan berguna untuk menjadikan program bersifat modular sehingga dapat digunakan kembali, baik untuk program itu sendiri maupun untuk program lain yang memiliki proses yang sama. Fungsi dibedakan menjadi user-define function

(didefinisikan sendiri) dan built-in function (disediakan oleh compiler).

K. Header dan Fungsi main()

(30)

#include

using namespace std; void main ()

{

cout << “Hello, World!\n”; } Pada baris pertama, seperti yang kita lihat, ada perintah #include . Tanda ‘#’ adalah preprocessor directive. Preprocessor directive adalah perintah – perintah yang diberikan kepada compiler untuk melakukan definisi, memasukkan file library, dll. Contoh – contoh dari preprocessor ini adalah:

• #define maximum_number 100000 • #include “fileku.h”

• #ifdef maximum_number #undef maximum_number

#define maximum_number_2 1000

Itu berarti bahwa kita memasukkan (include) library iostream ke dalam kode program kita. iostream itu adalah header yang dibutuhkan untuk “kegiatan” input dan output dari program. Perintah cout sendiri ada karena kita memasukkan iostream ke dalam kode program kita dan juga using namespace std; dimana ada member cout di dalamnya.

8 Berikut beberapa header yang terdapat dalam C++: • ctime = header waktu

• cstdio = header untuk perintah C seperti printf dan scanf

• cmath = header untuk operasi matematika seperti sin, cos, sqrt, dan tan • cstring = header untuk memanipulasi string seperti strcpy, strcat, dll

(31)

perintah \n pada akhir “kalimat”berikutnya Hello, World!. Apa itu? ”\n” adalah perintah dalam banyak bahasa pemrograman sebagai baris baru (new line).

Perintah dengan menggunkan backslash (‘\’) juga ada beberapa jenis, diantaranya: • ‘\a’ = untuk menghasilkan bunyi alert

• ‘\t’= tabulasi

• ‘\0’ = null terminated dalam array

Tanda ‘{‘ juga harus ada dalam setiap fungsi C++, itu menandakan awal dari fungsi / program dan ‘}’ menandakan akhir dari fungsi / program.

L. Tipe Data

Tipe – tipe data yang dikenal dalam C++ adalah sebagai berikut: Tipe Bilangan Bula

Tipe Data Ukuran( dalam bit) Jangkauan

Int 16 atau 32 -32.767 sampai 32.767

Unsigned int 16 atau 32 0 sampai 65.535 Signed int 16 atau 32 Sama seperti int

Short int 16 -32.767 sampai 32.767

Unsigned short int

16 0 sampai 65.535

Signed short int 16 Sama seperti int

Long int 32 -2.147.483.647 sampai

2.147.483.647 Unsigned long

int

32 0 sampai 4.294.967.295 Signed long int 32 Sma seperti long int

Tipe Bilangan Desimal

(32)

Float 32 Enam digit presisi

Double 64 Sepuluh digir presisi

Long double 80 Sepuluh digit presisi

Tipe Logika boolean

adalah tipe yang hanya “menyimpan” nilai “benar” dan “salah” yaitu, true dan false (boolean). Contoh:

bool benar_atau_salah = true; Tipe Krakter/String

Tipe Data Ukuran (dalam bit) Jangkauan

Char 8 -127 sampai 127

Unsigned char 8 0 sampai 255

Signed 8 -127 sampai 127

M. Operator

1.Operator Assigment

Operator Assigment adalah operator yang berfungsi untuk memasukan (assign)nilai ke dalam suatu variable ataupun konstanta.Operator ini dilambngkan dengan samadengan (=).

2.Operator Unary

Operator Jenis Operasi contoh

+ Membuat nilai positif +9

- Membuat nilai negative -9

== Increment C++

-- Decrement

C--11

3.Operator Binary

(33)

operator Jenis Operasi Contoh

&& And (dan) 1&&1 = 1

|| Or (atau) 1||0 = 1

>= Lebih besar atau sama dengan

(8>=3)=1 <= Lebih kecil atau sama

dengan

(8<=3)=0

== Samadengan (8==5)=0

!= Tidak sama dengan (8!=3)=1

3.5 Daftar C++ compiler

Untuk mengubah kode-kode C++ program menjadi suatu program aplikasi yang dimengerti oleh sistem operasi dan komputer, diperlukan sebuah kompilator C++. Berikut ini adalah beberapa kompilator C++ yang dapat digunakan secara gratis. • Microsoft Visual C++ 2005 Express

• Turbo C++ Explorer

• Apple Xcode for Mac OS X

• Open Source Watcom / OpenWatcom C/C++ Compiler • Digital Mars C/C++ Compiler (Symantec C++ Replacement) • Bloodshed Dev-C++ C++ Compiler

• Free Microsoft .NET Framework Software Development Kit (SDK) / Free Microsoft Visual C++ Compiler

(34)

• Sun Studio Compilers and Tools • Open64 Compiler Tools

• Apple's Macintosh Programmer's Workshop (C and C++ compilers) • TenDRA C/C++ Compiler

• GNU C/C++ Compiler

• Ch Embeddable C/C++ Interpreter (Standard Edition) • DJGPP C and C++ Compilers

• CINT C and C++ Interpreter • SDCC C Cross-compiler

• Cygwin Project (C & C++ Compilers) • SDCC C Cross-compiler

CONTOH PROGRAM #include <constream.h> #include <dos.h>

void main() {

textbackground(WHITE); textcolor(LIGHTRED); clrscr();

(35)

int banyak;

gotoxy(35,1);cout<<"==============="; gotoxy(35,2);cout<<" LPKIAMART\n"; gotoxy(35,3);cout<<"===============\n";

gotoxy(25,5);cout<<"selamat datang selamat berbelanja";delay(500); gotoxy(30,7); cout<<"1. ice cream magnum\n";delay(500); gotoxy(30,8); cout<<"2. susu ultra coklat\n";delay(500); gotoxy(30,9); cout<<"3. pulpy orange\n";delay(500); gotoxy(30,10); cout<<"4. lays kripik kentang\n";delay(500); gotoxy(30,11); cout<<"5. coca cola\n";delay(500);

gotoxy(30,12); cout<<"6. sari roti sandwich\n";delay(500);

cout<<"\n\nmasukan barang yang anda pilih :";cin>>barang; switch(barang)

{ case 1:

cout<<"nama barang : ice cream magnum\n"; cout<<"harga satuan: Rp. 8.500\n";

cout<<"\n\nberapa banyak yang akan anda beli :";cin>>banyak; harga=banyak*8500;

cout<<"Total Harga =";cout<<harga; getch();

break; case 2:

cout<<"nama barang : susu ultra coklat\n"; cout<<"harga satuan: Rp. 4500\n";

cout<<"\n\nberapa banyak yang akan anda beli :";cin>>banyak; harga=banyak*4500;

(36)

break; case 3:

cout<<"nama barang : pulpy orange\n"; cout<<"harga satuan: Rp. 6500\n";

cout<<"\n\nberapa banyak yang akan anda beli :";cin>>banyak; harga=banyak*6500;

cout<<"\n\nberapa banyak yang akan anda beli :";cin>>banyak; harga=banyak*7000;

cout<<"\n\nberapa banyak yang akan anda beli :";cin>>banyak; harga=banyak*5000;

cout<<"Total Harga =";cout<<harga; getch();

break; case 6:

cout<<"nama barang : sari roti sandwich\n"; cout<<"harga satuan: Rp. 2500\n";

cout<<"\n\nberapa banyak yang akan anda beli :";cin>>banyak; harga=banyak*2500;

(37)

getch(); break;

cout<<"TERIMAKASIH BANYAK"; getch();

} }

Keterangan fungsi – fungsi dalam pemograman C

File Header:

#include<constream.h> : Merupakan Proposesor untuk memprogram syntax syntax nya

void main() : Fungsi Utama pada pemograman

Deklarasi Data

{ Untuk memulai aktivitas membuat program clrscr(); Untuk membersihkan layar

int Tipe Data untuk menentukan bilangan bulat (untuk int).

cout<< digunakan untuk menampilkan suatu data kelayar. Untuk menggunakan fungsi cout() ini, harus menyertakan file header iostream.h atau constream.h persatuan antara conio dan iostream .;

\n untuk membuat paragraf baru

cin>> Untuk memasukkan data secara manual (kita Tulis sendiri)

(38)

tertentu. Jika kondisi yang diuji salah, program akan menjalankan pernyataan yang lain

getch() Untuk menahan Tampilan

Bab 4 PENUTUP A. KESIMPULAN

Kesimpulan yang dapat ditarik dari pembahasan mengenai java yaitu:

1. Java dikenal sebagai bahasa pemrograman yang bersifat strongly, yang berarti diharuskan mendeklarasikan tipe data dari semua variable yang apabila lupa atau salah dalam mengikuti aturan pendeklarasian variable, maka akan terjadi error pada saat proses kompilasi.

2. Tipe data yang terdapat pada bahasa pemrograman Java pada umumnya tidak jauh berbeda dengan bahasa pemrograman lain seperti C, C++, Pascal, Basic, dan lainnya, yakni terdiri dari integer, floating point, char, dan boolean.

3. Aturan penulisan variabel pada bahasa pemrograman Java juga tidak jauh berbeda dengan bahasa pemrograman lain seperti C, C++, Pascal, Basic, dan lainnya, yakni harus diawali dengan huruf/abjad, karakter mata uang, dan underscore ( _ ) dan terdiri dari huruf/abjad, angka, dan underscore ( _ ), serta tidak boleh menggunakan kata-kata yang dikenal oleh bahasa pemrograman Java (keyword), seperti byte, case, int, dan lainnya.

(39)

5. Selain operator aritmatika, Java juga mempunyai operator-operator lain, seperti operator increment dan decrement, operator assignment (penugasan), operator relasi, operator logical, operator bitwise (yang terdiri dari and, or, xor, dan complement), dan operator precedence.

Sedangkan dari pembahasan c++ kami menarik kesimpulan C++ dan C sebagai bahasa pendahulunya, C merupakan termasuk bahasa pemrograma n tingkat menengah. Pencipta C adalah Brian W. Kernighan dan Dennis M. Ritchie pada tahun 1972. C merupakan bahasa pemrograman terstruktur yang membagi program ke dalam sejumlah blok (subprogram). Tujuannya adalah untuk

memudahkan dalam pembuatan dan pengembangan

program. Program yang ditulis dengan C mudah sekali dipindahkan dari satu jenis mesin ke mesin lain. Hal ini karena adanya standarisasi C yaitu ANSI (American National Standards Institute) yang menjadi acuan para pembuat compiler C. C++ diciptakan satu dekade setelah C. C++ diciptakan oleh Bjarne Stroustroup dari Laboratorium Bell, AT&T pada tahun 1983. Pada awalnya C++ diberi nama “A better

C”. Nama C++ sendiri diberinama oleh Rick Mascitti. Adapun anda ++ berasal dari

operator increment pada bahasa C.

Keistimewaan C++ adalah karena bahasa ini mendukung OOP

(Object Oriented Programming). Tujuan utama pembuatan C++ adalah untuk eningkatkan produktivitas pemrogram dalam membuat aplikasi. Kebanyakan pakar

setuju bahwa OOP dan C++ mampu mengurangi kompleksitas terutama program yang

(40)

4.2 SARAN

Dikarenakan cukup rumitnya bahasa pemrograman Java dan semakin banyaknya pesaing yang berkompetisi di bidang pemrograman Java, maka Penyusun menyarankan kepada pembaca (khususnya pemula), untuk sejak dini mempelajari bahasa pemrograman tersebut.

4.3 DAFTAR PUSTAKA

http://nengmungil.blogspot.com/2011/01/makalah-program-c.html

http://pahlawanbetopenk.blogspot.com/2011/01/makalah-program-java.htm http://ilmukomputer.org/2009/05/pemrograman-dengan-c-part-ii/

Referensi

Dokumen terkait

Sebagai pelaksannaan dari pasal 5 Keputusan Menteri Pendidikan Nasional Nomor 184/U/2001, maka setiap perguruan tinggi wajib melaporkan proses belajar mengajar

Rencana Pelaksanaan Pembelajaran (RPP) adalah rencana yang menggambarkan prosedur dan pengorganisasian pembelajaran untuk mencapai satu kompetensi dasar yang

Digital Global Maxinema ini, sebagai individu akademis yang melakukan kegiatan kerja praktik, peserta kegiatan kerja praktik mendapatkan tugas untuk membuat

tetap wajib membayar uang biaya pelaksanaan pendidikan. Kepada mahasiswa yang mengundurkan diri dari STKIP- YPUP dengan tujuan pindah keperguruan tinngi lain atas

Syukur Alhamdulillah penulis haturkan kehadirat Allah SWT, yang telah memberikan rahmat serta hidayah-Nya sehinga penulis dapat menyelesaikan penyusunan Skripsi yang

Kajian ini mengemukakan satu hipotesis bahawa KN jerebu (bahasa Melayu standard Malaysia) yang merujuk satu fenomena alam sekitar itu diterbitkan dari kata dasar

Berdasarkan penelitian yang dilakukan oleh Danistiya (2013) mengungkapkan bahwa 30,6% perilaku membolos dipengaruhi oleh persepsi pola asuh permisif orang tua yang

Selain masalah perilaku yang lebih berupa dorongan dari perkembangan neurobiologis, sering masalah perilaku merupakan manifestasi dari frustrasi anak (sulit memahami