Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012                              DASAR-DASAR ALGORITMA3.1. Pend...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012    Dimana:   a = perecpatan(m/s2)              m = massa be...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012Pada dasarnya, sebuah algoritma merupakan deskripsi dari pel...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012Langkah 2 : Pindahkan isi bejana B ke bejana A. ( A  B )   ...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012Catatan:ingat C merupakan variabel kosong atau tempat penyim...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012Penulisan algoritma di atas dapat diringkas dalam teknik pen...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012Dengan kasus di atas tersebut mulai sekarang marilah kita be...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012 3. Sebuah algoritma minimal memiliki nol atau lebih input y...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012                       readln(dataN)       // inputan dataN ...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012                          I           kondisi ( i mod 2 = 1 ...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012Dalam kehidupan sehari-hari pun banyak terdapat proses yang ...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012                          Gambar 3.2 Komponen-komponen utama...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012(dengan catatan semua aturan pada resep diikuti). Mengapa bi...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012yang salah, dengan kasus seperti ini. Jadi supaya bisa membe...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012Contohnya lainnya yaituDua buah algoritma sederhana, diberik...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012    print(“ 1 Hello World!”)   //print, menampilkan tetapi k...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012Belajar melalui contoh-contohContoh-1: printah read atau inp...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012 ALGORITMA susunanAngka { untuk menampilkan/mencetak susunan...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012   Mendeklarasikan suatu variabel dan memiliki tipe data ter...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012     public static void hitung(){       String angka1 = JOpt...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012Latihan-4.1, Menggunakan method dalam bahasa Java, yaituMemb...
Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com)   2012         System.out.println("----DAFTAR PRIBADI----");      ...
Upcoming SlideShare
Loading in...5
×

Dasar Algoritma ECasnadi

8,798

Published on

tentang dasar algoritma

Published in: Technology
1 Comment
0 Likes
Statistics
Notes
  • Be the first to like this

No Downloads
Views
Total Views
8,798
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
213
Comments
1
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Dasar Algoritma ECasnadi"

  1. 1. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012 DASAR-DASAR ALGORITMA3.1. PendahuluanBanyak cabang dari ilmu komputer yang mengacu pada terminologi algoritma, misalnya algoritmarouting (pesan di dalam jaringan komputer), algoritma brensenham untuk menggambar garis lurus(bidang grafika komputer), algoritma modelview untuk modeling animasi, itulah contoh berbagai jenisalgoritma.Marilah kita tinjau terlebih dahulu asal-usul dari kata algoritma, menurut beberapa sumber, asal kataalgoritma sendiri mempunyai sejarah yang aneh. Orang hanya menemukan kata Algorism yang berartiproses menghitung dengan angka arab. Anda dikatakan Algorist jika anda menghitung menggunakanangka Arab.Para ahli bahasa berusaha menemukan asal kata ini namun hasilnya kurang memuaskan. Akhirnya paraahli sejarah matematika menemukan asal kata tersebut yang berasal dari nama penulis buku arab yangterkenal yaitu Abu Ja’far Muhammad Ibnu Musa Al-Khuwarizmi. Al-Khuwarizmi dibaca orang baratmenjadi Algorism. Al-Khuwarizmi menulis buku yang berjudul Kitab Al Jabar Wal-Muqabala yangartinya “Buku pemugaran dan pengurangan” (The Book of Restoration and Reduction). Dari judul bukuitu kita juga memperoleh akar kata “Aljabar” (Algebra). Perubahan kata dari Algorism menjadi Algorithmmuncul karena kata Algorism sering dikelirukan dengan Arithmetic, sehingga akhiran –sm berubahmenjadi –thm. Karena perhitungan dengan angka Arab sudah menjadi hal yang biasa. Maka lambat launkata Algorithm berangsur-angsur dipakai sebagai metode perhitungan (komputasi) secara umum, sehinggakehilangan makna kata aslinya. Dalam Bahasa Indonesia, kata Algorithm diserap menjadi Algoritma.Sehingga algoritma dikatakan langkah-langkah logis untuk penyelesaian suatu masalah yang disusunsecara sistematis dan logis.Perhatikan contoh penyelesaian untuk suatu masalah gaya benda ( F ), yaitu:1. Diketahui terlebih dahulu dari percepatan dengan cara mengukur percepatan suatu benda tertentu (dalam meter/sekon kuadrat), misalnya 100 m/s22. Kemudian timbanglah benda tersebut, sehingga menghasilkan suatu nilai massa (dalam kg), misalnya 2 kg3. Setelah itu buat proses perhitungan gaya sebagai berikut: F = a .mAlgortma Dasar Page 1
  2. 2. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012 Dimana: a = perecpatan(m/s2) m = massa benda (kg) F = gaya (N)4. Masukan nilai a dan nilai m, misalnya a =100 m/s2 dan m =2 kg seperti berikut: F=a.m menjadi F = 100 m/s2 . 2 kg F = 200 N5. SelesaiKeterangan:Cobalah perhatikan langkah-langkah di atas, merupakan sebuah analisis dari suatu permasalahan, untukmenghitung suatu gaya.Analisis perhitungan gaya ( F ) di atas kita akan buat algoritma sederhana, maka menjadi sebegai berikut: Mulai / Start Memberikan judul algoritma dan mendefinisikan setiap variabel yang akan terlibat. Variabel a untuk percepatan dan variabel m untuk massa, sedangkan F untuk gaya benda. Inputan / Masukan Menginputkan nilai a (percepatan) dan m (massa), misalnya untuk a = 100 dan m = 2 Proses Dengan cara mengkalikan antara percepatan benda dan massa benda untuk menghasilkan nilai gaya F, seperti proses perhitungan berikut: F=a.m Sehingga F = 100 . 2, maka nilai F = 200 Proses ini berguna untuk menghitung rumus tertentu, pada kasus buku ini yaitu menghitung gaya F. Outputan / keluaran Menampilkan nilai dari suatu proses tertentu ke layar monitor/print, dalam kasus ini yaitu untuk menampilkan nilai F (gaya) = 200 Berhenti/Stop Diakhiri dengan stop untuk berhenti dari proses perhitungan gaya, karena suatu algoritma harus berhenti pada kondisi tertentu.Contoh di atas merupakan langkah-langkah dari algoritma dalam menyelesaikan suatu permasalahanperhitungan gaya (F)benda.Meskipun kita tidak dapat menyebutkan langkah-langkah pekerjaan di atas secara detail, tetapi dalamkonteks ini, semua pernyataan di atas adalah suatu algoritma karena prosesnya dikerjakan secarasistematis dan logis.Sekarang kita mengerti bahwa sebuah algoritma harus mengerjakan suatu proses dan berhenti padakondisi tertentu. Secara umum, sesuatu yang mengerjakan proses disebut pemroses (processor).Pemrosesan tersebut dapat berupa manusia, komputer, robot, atau alat-alat mekanik lainnya. Pemrosesandilakukan pada suatu proses dengan melaksanakan atau mengeksekusi algoritma yang menjabarkanpemrosesan tersebut.Algortma Dasar Page 2
  3. 3. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012Pada dasarnya, sebuah algoritma merupakan deskripsi dari pelaksanaan suatu proses. Bahwa algoritmadisususn oleh langkah-langkah instruksi yang logis dan sistematis. Setiap langkah instruksi tersebutmengerjakan suatu tindakan (aksi/statement). Bila suatu statement dilaksanakan, maka sejumlah operasiyang bersesuaian dengan aksi/statement itu akan dikerjakan oleh pemrosesan. Efek dari pengerjaan suatuaksi dapat diamati dengan membandingkan keadaan pada saat aksi sebelum dimulai disebut t0 dankeadaan pada saat aksi selesai di kerjakan disebut t1.contoh :t0 : keadaan sebelum aksi dikerjakaan Aksi/Statementt1 : keadaan setelah aksi dikerjakaanSebagai contoh berfikir secara logika dalam algoritma yaitu: kita akan membahas tentang algoritmapertukaran isi bejana.Diketahui dua buah bejana, yaitu bejana A berisi berwarna merah, bejana B berisi berwarna biru, sepertigambar berikut: Merah Biru Bejana A Bejana BMaka untuk menyelesaikan pertukaraan isi bejana di atas memerlukan suatu bejana kosong untukmelakukan pertukaran isi bejana di atas. Sehingga kita tambahkan suatu Bejana Kosong atau kita sebutdengan Bejana Temp: Merah Biru Bejana A Bejana B Bejana TempSetelah Bejana Temp sudah ada, maka proses berikutnya menukarkan isi bejana dengan langkah-langkahsebagai berikut:Langkah 1 : Pindahkan isi Bejana A ke Bejana Temp. (Temp A) Temp Biru Merah Bejana A Bejana B Bejana Temp Kita lihat langkah 1, sehingga isi Bejana A akan dituangkan atau dipindahkan ke Bejana Temp. Artinya Bejana A tidak berisi warna merah lagi karena isinya sudah dipindahkan ke Bejana Temp, sehingga warna merah pindah ke Bejana Temp.Algortma Dasar Page 3
  4. 4. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012Langkah 2 : Pindahkan isi bejana B ke bejana A. ( A  B ) Biru Merah Bejana A Bejana B Bejana Temp Kemudian isi dari Bejana B dituangkan Ke Bejana A, sehingga Bejana B kosong dan Bejana A berisi warna biru.Langkah 3 : Pindahkan isi bejana Temp ke bejana B. (B  Temp) Biru Merah Bejana A Bejana B Bejana Temp Setelah itu pindahkan Bejana Temp Ke Bejana B, sehingga Bejana Temp tidak berisi cairan lagi dan Bejana B berisi warna merah, dengan demikian isi Bejana sudah tertukar antara Bejana A dan Bejana B.Langkah 4 : Selesai.Algoritma di atas merupakan permasalahan atau kasus dalam bentuk pertukaran isi dua bejana, tetapidalam pertukaran isi tabung tersebut membutuhkan sebuah bejana kosong untuk menampung data yangbersifat sementara selama proses pertukaran berlangsung yang disebut Bejana Temp/Kosong. BejanaTemp ini nantinya akan kembali kosong ketika proses pertukaran isi bejana selesai dilaksanakan. Padakasus pertukaran isi bejana ini bisa diterapkan dalam berbagai kasus lain seperti menentukan nilai rata-rata, penjumlahan sejumah data, melakukan pencarian, pengurutan data dan lain-lain. Jadi Anda janganterpaku atau terjebak dalam algoritma pertukaran isi bejana saja, tetapi algoritma pertukaran isi bejanamerupakan bentuk dasar logika sederhana atau satu kasus dari seribu kasus.Pada kasus pertukaran isi bejana di atas kita rubah dalam bentuk media lain yaitu sebuah variabel A untukmenggantikan Bejana A, variabel B untuk menggantikan Bejana B, sedangkan variabel C untukmenggantikan Bejana Temp, untuk lebih mudahnya sebagai berikut: A = Bejana A B = Bejana B C = Temp/Bejana kosongMarilah kita analisis pertukaran dalam bentuk variabel ini, yaitu:Pertukaran isi bejana dalam bentuk variabel A, B dan C yang memiliki tipe data String atau berupakumpulan karakter atau gabungan beberapa kata-kata, kemudian kita isi variabel A dengan kata “merah”dan untuk variabel B kita isi dengan kata “biru”, seperti berikut: A = ”merah” B = ”biru”Algortma Dasar Page 4
  5. 5. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012Catatan:ingat C merupakan variabel kosong atau tempat penyimpanan data sementara selama prosesberlangsung, jadi variabel C dalam inputan awal dan hasil akhir tidak usah dituliskan kecuali dalamproses saja.Kita tidak bisa melakukan pertukaran isi variabel A dan B kecuali dengan bantuan variabel C yangmerupakan tempat penampungan data sementara.Berikut dalam bentuk algoritma untuk pertukaran isi variabel A dan B, yaitu: Data awal sebelum pertukaran A = “merah” B = “biru” Data ditambahkan dengan variabel C A = “merah” B = “biru” C= { kosong } Langkah 1 : dengan printah (C =A ) maka akan menghasilkan A= { kosong } B = “biru” C = “merah” Maka isi dari A akan berpindah ke variabel C, setelah itu variabel A akan kosong, seperti pernyataan di atas. Langkah 2 : dengan printah (A = B) maka akan menghasilkan A = “biru” B= { kosong } C = “merah” Maka isi dari B akan pindah ke variabel A, dan isi dari variabel B akan kosong, seperti peryataan di atas. Langkah 3 : dengan printah (B = C) maka akan menghasilkan A = “biru” B = “merah” C= { kosong } Maka isi dari C akan pindah ke variabel C, dan isi dari variabel C akan kosong kembali, seperti masalah di atas. Langkah 3 : Proses selesai.Hasil dari pertukaran isi variabel A dan B di atas, yaitu: A = “biru” B = “merah”Di atas merupakan sedikit contoh logika sederhana, untuk menukarkan isi bejana diantara dua Bejana,dengan isi berbeda dan perpindahan dari isi dengan variabel A dan variabel B. Kalau kita perhatikanproses di atas terjadi secara sistematis dan logis, yang merupakan bagian dari definisi algoritma.Algortma Dasar Page 5
  6. 6. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012Penulisan algoritma di atas dapat diringkas dalam teknik penulisaan prosesnya, sebagai berikut: //input A  ”merah” B  ”biru” //proses CA AB BC //output A  ”biru” B  ”merah” //selesai Akhir algoritmaDengan perkembangan bahasa pemrograman yang sangat pesat setiap saat dan masalah yang dihadapiperusahaan dengan permasalahan yang lebih kompleks dan rumit saat ini, maka dalam setiap pembuatanprogram memerlukan pengetahuan yang lebih, seperti salah satunya mengikuti perkebangan algoritmadan teknik pemecahkan algoritma untuk permasalahan-permasalahan yang dihadapi oleh manusia.Istilah program komputer adalah rangkaian kata perintah yang telah dimengerti oleh komputer untukdikerjakannya. Kata-kata perintah tersebut membentuk suatu bahasa yang disebut dengan bahasapemrograman. Sebagai mana bahasa pada manusia yang memiliki beragam bahasa, bahasa pemrogramanjuga terdiri atas banyak bahasa yang berbeda tergantung bahasa pemrogramannya yang memiliki aturanmasing-masing jadi Anda jangan bingung dengan bahasa pemrograman. Perkembangan komputer saat inibelum diberi hak inisiatif, sehingga jika ada sedikit saja kesalahan penulisan perintah oleh pemrogram, iatidak mau memakluminya atau berusaha memperbaiki sendiri karena kesalahan tersebut, serta-merta ia“ngambek” dan tidak mau mengerjakan perintah-perintah lainnya.3.2. Implementasi Algoritma Ke Bahasa PemrogramanDalam pembuatan algoritma dibutuhkan suatu implementasikan ke dalam suatu bahasa pemrogramanagar menjadi suatu program yang mempunyai kehandalan, berkualitas dan juga sekaligus untuk mengujiapakah algoritma yang kita buat tersebut berhasil atau tidak. Apakah algoritma yang sudah kitaimplementasikan ke dalam bahasa pemrograman tersebut mempunyai logika keluaran yang kita harapkan.Jadi algoritma dan pemrograman sangat erat hubungannya, ingat jangan salah kaprah dalam pembuatanprogram, saya melihat banyak siswa, mahasiswa dan para pembuat program komputer masih banyakmengabaikan dalam pembuatan algoritma, sehingga mengakibatkan banyak kesalahan yang tidak kitaharapkan dan melakukan perombakan coding yang berlebihan, bahkan menjadi pusing sendiri dalampembuatan programnya, ujung-ujungnya membuat program dimulai dari awal lagi, hal ini dikarenakanpembuatan program tersebut dimulai dari membuat program tanpa melakukan analisis dan pembuatanalgoritma terlebih dahulu. Ya, jadilah programan yang kita buat hanya sekali pakai saja dan programtersebut tidak tahan lama alias menjadi sampah.Algortma Dasar Page 6
  7. 7. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012Dengan kasus di atas tersebut mulai sekarang marilah kita belajar algoritma dengan lebih baik dan benar.Pada dasarnya bahasa pemrograman dibedakan menjadi:  Bahasa tingkat rendah (low level language): bahasa yang berorientasi ke mesin. Bahasa ini dirancang agar setiap instruksinya langsung dikerjakan oleh komputer, tanpa harus melalui penerjemah (translator). Bahasa tingkat rendah bersifat primitif, sangat sederhana, orientasinya lebih dekat ke bahasa mesin dan sulit dipahami oleh manusia. Sedangkan bahasa rakitan dimasukan ke dalam kelompok ini, karena alasan notasi yang dipakai dalam bahasa ini lebih dekat ke mesin, meskipun untuk melaksanakan instruksinya masih diperlukan penerjemah ke dalam bahasa mesin. Contohnya adalah bahasa Pemrograman Assembly.  Bahasa tingkat menengah (middle level language) adalah bahasa pemrograman yang menggunakan aturan-aturan gramatikal dalam penulisan pernyataan, mudah dipahami dan memiliki instruksi- instruksi tertentu yang dapat diakses oleh komputer. Contohnya adalah bahasa C dll  Bahasa tingkat tinggi (high level language): bahasa yang berorientasi ke manusia (seperti bahasa inggris). Hanya saja bahasa tingkat tinggi, tidak dapat langsung dilaksanakan oleh komputer. Ia perlu diterjemahkan terlebih dahulu oleh sebuah translator bahasa, ke dalam bahasa mesin sebelum akhirnya dieksekusi oleh CPU. Contoh bahasa Pascal, visual basic 6, delphi dll. Berikut gambaran pengoperasian bahasa tingkat tinggi, yaitu: Algoritma Implementasi (terjemah algo ke pemrograman) Program bahasa tingkat tinggi Kompilasi Program bahasa mesin Interpretasi oleh CPU Operasi perhitungan Gambar 3.1 Proses implementasi bahasa tingkat tinggi  Object Oriented Language (bahasa berorientasi objek): yaitu bahasa yang berorientasi pada objek, bahasa pemrograman yang populer saat ini. Seperti Visual Basic.net, Visual Foxpro, Delphi, Visual C++, Java,C##, Pyton dll.Sifat dasar dari sebuah algoritma, yaitu: 1. Algoritma harus berhenti after a finite number of steps artinya sebuah algoritma harus berhenti pada angka tertentu dan dalam kondisi tertentu. 2. Setiap langkah harus didefinisikan secara tepat, tidak boleh membingungkan (ambiguous).Algortma Dasar Page 7
  8. 8. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012 3. Sebuah algoritma minimal memiliki nol atau lebih input yang diberikan kepada algoritma sebelum dijalankan. 4. Sebuah algoritma memiliki satu atau lebih output, yang biasanya bergantung kepada input. 5. Setiap algoritma diharapkan miliki sifat efektif, atau setiap langkah harus sederhana sehingga dapat dikerjakan dalam sejumlah waktu yang masuk akal.Contoh-1:Algoritma untuk menghitung nilai rata-rata dari jumlah data. Sebelum melakukan perhitungan rata-rata,sebaiknya data sudah dimasukan atau tersimpan dalam memori atau perhitungan secara langsung.Langkah 1, definisikan variabel n untuk menampung nilai banyaknya jumlah data, jml untuk menampung penjumlahan rata-rata, dataN untuk mengisi nilai satu persatu, sedangkan variabel rata_rata untuk menampung hasil dari perhitungan rata-rata.Langkah 2, masukan nilai dataN dan jml yang akan dirata-ratakan, seperti berikut: Pendefinisikan awal untuk dataN=23 dan jml = 0, Tabel 3.1 Menghitung rata-rata n dataN jml = jml + dataN 1 23 23 2 40 63 3 20 83 4 10 93Langkah 3, melakukan perhitungan Rumus untuk rata-rata: rata_rata = jml / n Kita sudah diketahui bahwa nilai akhir dari n adalah 4 dan jml adalah 93, sehingga nilai rata_rata = 93 / 4, maka menghasilkan nilai rata_rata = 23.25.Langkah 4, menampilkan nilai rata_rata ke alat keluaran seperti monitor, yaitu rata_rata = 23.25Langkah 5, berhenti dari algoritma.Penulisan algoritma rata-rata secara lengkap, yaitu ALGORITMA Nilai_Rata_Rata { untuk menghitung nilai rata-rata dari sejumlah data tertentu } DEKLARASI n, dataN, jml, i  integer; // mendeklarasikan semua variabel rata_rata  float DESKRIPSI readln(n  4) // input banyaknya data n = 4 for (i=0; i<=n; i++) do // inputan dengan pengulangan iAlgortma Dasar Page 8
  9. 9. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012 readln(dataN) // inputan dataN yang akan proses (23,40,20,10) jml = jml + dataN // melakukan penjumlahan 23+40+20+10 end_for // akhir dari pengulangan for rata_rata = jml / n // nilai rata-rata println(rata_rata) // menampilkan nilau rata-rata End_algoHasil outputnya: 23.25Contoh-2Untuk menentukan bilangan ganjil, yaitu kita analisis terlebih dahulu untuk bagaimana menampilkanbilangan ganjil, yaitu:1. Jika suatu nilai dibagi dua menghasilkan sisa bagi atau desimal maka bilangan tersebut termasuk bilangan ganjil, dan akan ditampilkan pada layar. Contoh 3/2 = 1,5 //menghasilkan sisa bagi atau desimal yaitu 5.2. Jika suatu nilai dibagi dua, menghasilkan sisa bagi nol maka ia bukan termasuk bilangan ganjil, dan nilai tersebut tidak dapat ditampilkan dalam layar atau monitor. Contoh 4/2 = 2 //tidak menghasilkan sisa bagi.3. Jika pada kondisi angka tertentu maka perulangan, berhenti.Catatan : mod adalah sisa bagi. misakanl: 1 / 2 = 0.5, maka sisa baginya memiliki satu digit yaitu .5.Kita tuliskan permasalahan bilangan ganjil, dalam notasi algoritma secara lengkap untuk menampilkanbilangan ganjil, yaitu: ALGORITMA Bilangan_Ganjil { menampilkan bilangan ganjil, dengan rumus “i mod 2 = 1” dengan i adalah bil bulat jika manghasilkan sisa bagi maka ditampilkan } DEKLARASI i  integer; DESKRIPSI for (i=0; i<=4; i++) do // inputan dengan pengulangan i if ( i mod 2 = 1 ) then // kondisi bilangan ganjil println(“Bil Ganjil ”, i) // menampilkan data i ganjil end_if end_for End_AlgoUntuk lebih jelasnya, kita lihat tabel untuk menampilkan bilangan ganjil, sebagai berikut:Misal: i = data masukan, dengan nilai=4 Tabel 3.2. Menampilkan bilangan GanjilAlgortma Dasar Page 9
  10. 10. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012 I kondisi ( i mod 2 = 1 ) Bil Ganjil 0 0 mod 2, hasil sisa bagi 0 Bukan 1 1 mod 2, hasil sisa bagi 1 Ya 2 2 mod 2, hasil sisa bagi 0 Bukan 3 3 mod 2, hasil sisa bagi 1 Ya 4 4 mod 2, hasil sisa bagi 0 BukanMaka hasil akhir dari proses di atas, akan menampilkan sejumlah bilangan ganjil dalam monitor atau alatkeluaran, yaitu: 1 3Karena 1 dan 3, yang memenuhi syarat kondisi bilangan ganjil (i mod 2 = 1) tersebut. Algoritma BilnganGanjil di atas, kita implementasikan ke dalam bahasa Java, yaitu: public class Bilangan_Ganjil{ public static void main(String[] args) { int i; for (i=1; i<8; i++) { if (i % 2 ==1) { // % adalah tanda modulus System.out.println(“Bil Ganjil: ” + i ); // menampilkan bil ganjil } } } }Hasil output Bil Ganjil: 1 Bil Ganjil: 3 Bil Ganjil: 5 Bil Ganjil: 7 Process completed.Untuk mempelajari coding di atas, kita sabar dulu ya… Kita akan membahasnya nanti pada bab-babberikutnya, kita hanya memberikan contoh bahwa suatu algoritma bisa diimplementasikan ke dalampemrograman Java.Contoh algoritma di atas, merupakan langkah awal sebelum dibuat ke dalam pemrograman, Ada yangmengatakan bahwa algoritma, merupakan jantung dari ilmu komputer atau informatika, hal ini mungkindikarena sangat pentingnya peranan dari algoritma. Pemrogram tanpa menggunakan algoritma diibaratkansebagai nasi tanpa lauk-pauk, jelas gak enak…, segitunya…ha… Banyak cabang ilmu komputer yangmengacu pada terminologi algoritma tersebut. Namun, jangan beranggapan bahwa algoritma selaluidentik dengan ilmu komputer saja.Algortma Dasar Page 10
  11. 11. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012Dalam kehidupan sehari-hari pun banyak terdapat proses yang dinyatakan dalam suatu algoritma, sepertimerakit komputer, merakit mobil dan cara-cara membuat kue atau masakan yang dinyatakan dalam suaturesep juga dapat disebut sebagai algoritma, membuat roti. Pada setiap resep makanan selalu ada urutanlangkah-lankah membuat masakan. Bila langkah-langkahnya tidak logis, tidak dapat dihasilkan masakanyang diinginkan, maka itu bukan disebut algoritma. Ibu-ibu yang mencoba suatu resep masakan akanmembaca satu per satu langkah-langkah pembuatannya lalu ia mengerjakan proses sesuai yang ia baca.Melaksanakan algoritma berarti mengerjakan langkah-langkah di dalam algoritma tersebut. Dalammengerjakan suatu proses yang sesuai dengan algoritma yang diberikan kepadanya, seorang juru masakmembuat kue berdasarkan resep yang diberikan kepadanya, pianis memainkan lagu berdasarkan papannot balok. Jadi karena itu suatu algoritma harus dinyatakan dalam bentuk yang dapat dimengerti olehpemroses. Jadi sesuatu pemroses harus memenuhi beberapa hal berikut ini:1. Menentukan judul permasalahan2. Mengerti setiap langkah yang dilakukan (algoritma)3. Variabel sudah terdefinisi dan terisi nilai4. Mengerjakan operasi, bersesuaian dengan langkah-langkah yang ditentukan5. Berhenti pada kondisi pengulangan tertentu3.3. Mekanisme Pelaksanan Algoritma Oleh PemrosesKomputer hanyalah salah satu pemroses, agar dapat dilaksanakan oleh komputer, algoritma harus ditulisdalam notasi bahasa pemrograman sehingga dinamakan program. Jadi program adalah perwujudan atauimplementasi teknis algoritma yang ditulis dalam bahasa pemrogaman tertentu sehingga dapatdilaksanakan oleh komputer.Secara garis besar komputer tersusun atas empat komponen utama: Piranti masukan Piranti keluaran Unit pemrosesan utama dan Dan memori.Unit pemrosesan utama (central processing unit –CPU) adalah ”otak” komputer, yang berfungsimengerjakan operasi-operasi dasar seperti operasi perbandingan, operasi perhitungan, operasi membaca,analisi dan operasi menulis. Memori adalah komponen program (berisi operasi-operasi yang akandikerjakan oleh CPU) dan data atau informasi (sesuatu yang dioperasi oleh operasi-operasi). Pirantimasukan dan keluaran (I/O devices) adalah alat yang memasukan data atau program ke dalam memori,dan alat yang digunakan komputer untuk mengkomunikasikan hasil-hasil aktivitasnya.Contoh keyboard, scanner, mouse, joystick, disk dll, contoh alat keluaran adalah monitor, printer danplotter dll. Berikut dasar proses aliran data, yaitu: Piranti Unit Pemroses Piranti masukan (CPU) keluaran MemoriAlgortma Dasar Page 11
  12. 12. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012 Gambar 3.2 Komponen-komponen utama komputerMekanisme kerja keempat komponen di atas sangat jelas sekali, dimulai dari piranti masukan kemudianke CPU dan kemudian ke memori untuk menyimpan data sementara dan dikembalikan lagi ke CPU dansetelah itu dikirim ke piranti keluaran.3.4. Memprogram dan Bahasa PemrogramanBelajar memprogram sangatlah mudah, yang penting kita ada niat dan bersabar. Belajar memprogramtidak sama dengan belajar bahasa pemrograman. Belajar memprogram adalah belajar tentang metodologipemecahan masalah, kemudian menuangkannya dalam suatu notasi tertentu yang mudah dibaca dandipahami. Sedangakan belajar bahasa pemrograman berarti belajar memakai suatu bahasa, aturan-aturantata bahasanya, instruksi-instruksinya, tata cara pengoperasian compiler-nya, dan memanfaatkaninstruksi-instruksi tersebut untuk membuat program yang ditulis hanya dalam bahasa itu saja, contohnyabelajar pemrograman Java maka kita akan belajar bagaimana menggunakan Java, memahami bahasa Java,compiler apa saja yang bisa digunakan dan lain-lain.Ada bebrapa hal yang harus diperhatikan dalam belajar memprogram yaitu:  Belajar memahami bahasa pemrograman  Belajar tentang strategi bagaimana pemecahan masalah, metodologi dan sistematika pemecahan masalah kemudian menuliskannya dalam notasi yang disepakati bersama  Bersifat pemahaman persoalan, analisis dan sintesis dan belajar mendesigner program  Belajar bagaimana menuangkan algoritma ke dalam suatu pemrograman  Belajar memakai suatu bahasa pemrograman, aturan sintaks, tata cara untuk memanfaatkan instruksi yang spesifik untuk setiap bahasa  Belajar dititik berat pada coding atau pengkodean  Belajar bagaimana testing programProduk yang dihasilkan pemrogram sebaiknya memenuhi syarat sebagai berikut:  Program dengan rancangan yang baik (metodologis, sistematis)  Dapat dieksekusi oleh mesin  Penggunaan memori yang tidak berlebihan  Berfungsi dengan benar  Sanggup melayani segala kemungkinan masukan  Disertai dokumentasi  Menghandle semua kesalahan yang terjadi melalui pesan  Belajar memprogram, titik berat : designer program3.5. Penggunaan Dalam Notasi AlgoritmaNotasi algoritma ini dapat diterjemahkan ke dalam berbagai bahasa pemrograman. Analogikanya sepertidaftar bahan membuat sebuah meja. Sebuah resep membuat meja dapat ditulis dalam berbagai macambahasa pemrograman seperti bahasa Inggris, Prancis, Jerman, Indonesia, Jepang, Belanda, Brazil,Vietnam, Cina, Jawa, Sunda dll. Apapun bahasa resep tetap dalam rangka membuat meja, meja yangakan dihasilkan tetap sama walupun berbeda bahasa resep membuat meja, sebab algoritmanya samaAlgortma Dasar Page 12
  13. 13. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012(dengan catatan semua aturan pada resep diikuti). Mengapa bisa demikian? Karena setiap tukang kayu(yang merupakan pemrosesan) mampu melakukan operasi dasar yang sama, seperti memotong kayu,memaku kayu, dan kemudian membuat meja tersebut. Jadi, resep membuat meja tidak terikat pada bahasayang digunakannya, hal inilah mengapa notasi algoritma tidak terpengaruh pada bahasa yang digunakan.Demikian pula dengan komputer. Setiap komputer berbeda teknologinya, tetapi secara umum semuakomputer dapat melakukan operasi-operasi dasar dalam pemrograman seperti pembacaan data, operasiperbandingan, operasi aritmatika, analisis pasar dan sebagainya. Dengan perkembangan komputer itutidak mengubah operasi-operasi dasar itu melainkan yang berubah yaitu hanyalah kecepatan, energi,biaya, atau tingkat ketelitian.Menjadi catatan bahwa notasi algoritma bukanlah bahasa pemrograman, sehingga siapa pun dapatmembuat notasi algoritma yang berbeda. Hal yang terpenting dari notasi tersebut adalah ia mudah dibacadan dimengerti oleh orang lain. Selain itu, meskipun notasi algoritma bukan notasi baku sebagaimanapada notasi bahasa pemrograman, namun ketaatan terhadap notasi, perlu diperhatikan untuk menghindarikekeliruan.Dalam notasi algoritma dalam penulisannya terbagi menjadi beberapa hal, yaitu: a. Natural b. Algoritma pseudo code c. Flowchart d. FundamentalAlgoritma sebetulnya banyak teknik yang kita gunakan dalam penulisannya tergantung pada kebiasaansetiap negara dan aturan internasional yang disepakati, tetapi pada dasarnya penulisan algoritma terbagimenjadi tiga hal, seperti di atas.Notasi algoritma di atas akan dipelajari pada bab selanjutnya. Sabar aja...ya..Catatan:Mudah-mudahan Anda mengerti apa itu notasi algoritma. Ingat cara kerja komputer selalu berurutandan tidak loncat kesana dan loncat kesini. Kecuali pada syarat tertentu.Seorang programmer yang baik, harus memiliki bekal dasar-dasar pemrograman yang kuat biak dalambidang logika maupun teknik penulisan algoritma.3.6. Penulisan Teks AlgoritmaAlgoritma suatu konsep atau blue print, bukan sebuah program tetapi hanya sebuah rancangan sebelummembuat program, algoritma tersebut yang nantinya dapat diimplementasikan ke dalam berbagai bahasapemrograman, seperti Java, Pascal, Delphi, Visual Basic, C##, PHP dan lain-lain. Untuk kebanyakanorang sering salah pengertian tentang algoritma ini. Sebagai contoh ada seorang mahasiswa yang sedangbelajar algoritma dan pemrograman Java, suatu ketika saya bertanya pada mahasiswa tersebut “apaalgoritma itu?” dan mahasiswa tersebut dengan bangga menjawab “Algoritma adalah belajar bahasa Javapak”, saya pun berkata “kata siapa?”, kemudian jawab mahasiswa “kata dosen algoritma, pak”. Wah..waah.. mahasiswa ini mungkin salah pengertian apa yang disampaikan dosen tersebut dan tidak bisamembedakan mana algoritma dan mana pemrograman atau mungkin murid tersebut tidak mau belajartentang algoritma dengan baik. Saya hanya bisa senyum saja.. dengan pernyataan di atas, entah siapakahAlgortma Dasar Page 13
  14. 14. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012yang salah, dengan kasus seperti ini. Jadi supaya bisa membedakan mana algoritma dan manapemrograman, marilah kita belajar algoritma yang sunguh-sunguh, sebetulnya algoritma itu sangat mudahdi pelajari dan Anda jangan asal belajar saja.Sebetulnya algoritma merupakan rancangan awal dari suatu masalah dalam dunia nyata yang nantinyaalgoritma tersebut dapat diimplementasikan ke dalam berbagai bahasa pemrograman dan program akanmemerintahkan komputer untuk melakukan sesuatu sesuai apa yang kita tulis dalam program tersebutatau disebut dengan penulisan source code.Catatan: Jadi algoritma tidak sama dengan program, ingat ya…!!!Dalam penulisan algoritma banyak cara yang dilakukan dalam hal penulisan algoritma baik denganalgoritma teks maupun dengan algoritma flowchart atau penulisan algoritma dengan metode lainnya,teknik penulisan algoritma ini kita akan bahas pada bab berikutnya.3.7. Penggambaran AlgoritmaAlgoritma berisi tentang suatu deskripsi(menggambarkan) mengenai langkah-langkah untuk penyelesaiansuatu masalah tertentu. Deskripsi tersebut dapat ditulis dalam notasi apa pun, asalkan mudah dimengertidan dipahami oleh manusia. Tidak ada notasi yang baku dalam penulisan teks algoritma sebagaimanapada notasi bahasa pemrograman (notasi yang digunakan dalam penulisan algoritma disebut notasialgoritmik).Setiap orang dapat membuat aturan penulisan dan notasi algoritma sendiri. Hal ini dapat dimengertikarena teks algoritma tidak sama dengan teks program. Karena program adalah implementasi darialgoritma dalam suatu notasi bahasa pemrograman tertentu. Namun, algoritma merupakan rancanganyang menggambarkan jalannya program, agar notasi algoritma tersebut mudah ditranslasikan ke dalamnotasi bahasa pemrograman, maka sebaiknya notasi algoritma tersebut berkoresponden dengan notasibahasa pemrograman secara umum.Berikut adalah contoh bahasa pemrograman secara umum, yaitu: Menampilkan data Penulisan teks untuk menampilkan variabel x dan y Maka dalam notasi algoritmik menjadi : print(x, y)penulisan print merupakan suatu printah yang akan mencetak nilai x dan y ke piranti keluaran (monitoratau printer) dalam algoritma untuk keluaran boleh menggunakan kata write atau print ataupun outtergantung dari si pembuat algoritmanya, karena untuk implementasinya menggunakan bahasa Java,alangkah baiknya kita mengunakan kata print, karena kata print lebih dekat dengan bahasa Java danuntuk seterusnya guna menampilkan data atau nilai menggunkan kata println atau print dalam penulisanalgoritmanya.Dalam penulisan dalam bahada Java hampir sama dengan bahasa pemrograman lainnya, hanya saja yangmembedakannya adalah masalah sintaks bahasa, kita analisis penulisan algoritma di atas untukmenampilkan data dan kita coba untuk mengimplementasikan dalam berbagai bahasa pemrograman yaitu: 1. Pascal : write(x,y) 2. Java : system.out.print(x,y) 3. bahasa C : printf(x,y) 4. Basic : write(x,y) dllAlgortma Dasar Page 14
  15. 15. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012Contohnya lainnya yaituDua buah algoritma sederhana, diberikan untuk mengilustrasikan teks algoritma. Algoritma pertama, adalah untuk mencetak tulisan, “Hello World”, yaitu: Maka penulisan dalam algoritmanya yaitu: println(“Hello World’) maka dengan printah println, maka kata “Hello World” akan ditampilkan pada monitor komputer atau alat keluaran. Algoritma untuk mencetak suatu variabel A Dengan proses hasil sebuah perhitungan yang ditampung pada variabel A, yaitu: Proses perhitngan: A = (2 * 3) + 5, maka penulisan dalam algoritmanya yaitu: A  (2 * 3) + 5, // proses perhitungan di variabel A println( A ) // menampilkan variabel A Pada printah di atas akan menampilkan angka 11 di layar monitor yang merupakan hasil dari suatu proses, dan bukan variabel A nya yang ditampilkan melainkan hasil proses (( 2 * 3) + 5) perhitungan yang ditampung pada variabel A yang berisi nilai 11. Perlu diingat juga dalam penulisan A pada perintah println, ditulis tanpa menggunakan petik dua (“ “) atau petik tunggal („ „), karena variabel A memiliki nilai dan bukan suatu pernyataan, seperti “Hello world”, jadi Anda harus bisa membedakan, mana yang menggunakan tanda petik, mana yang tidak menggunakan tanda petik.Catatan:Untuk println, adalah suatu printah yang menampilkan data dan setelah printah statement tersebutdiproses maka cursor akan pindah baris baru, sedangkan print yaitu setelah printah statement diprosesmaka cursor tetap pada baris tersebut atau tidak ganti baris baru. Lebih jelasnya kita lihat pada latihan-latihan pemrograman saja.Algoritma Hello World! sebetulnya hampir selalu ditemukan pada buku-buku bahasa pemrograman, apalagi dalam bahasa Java. Kadang kala kita sering menjumpai dalam suatu pemrograman, ketika pertamakali kita membuka suatu pemrograman tertentu misalnya bahasa Java maka secara default program Javaakan menampilkan kata “Hello World!” ke layar monitor. Program “Hello World!”, pertama kaliditemukan oleh Brian W. Kernighan, yaitu penemu bahasa C [KER88].Sebagai contoh membuat algoritma untuk mencatak kata “Hello World!” ini, yaitu sebagai berikut: ALGORITMA HelloWorld { untuk menampilkan/mencetak kata-kata “Hello World!” yang berupa tipe data string” } DEKLARASI { Tidak ada } DESKRIPSIAlgortma Dasar Page 15
  16. 16. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012 print(“ 1 Hello World!”) //print, menampilkan tetapi kursor tidak ganti baris println(“ 2 Hello World!”) //println, menampilkan dg posisi kursor ganti baris print(“ 3 Hello World!”) //print, menampilkan tetapi kursor tidak ganti baris End_AlgoHasil Output 1 Hello World! 2 Hello World! 3 Hello World!Keterangan:Algoritma di atas untuk menampilkan atau mencetak ke layar berupa kata “1 Hello World!”, “2 HelloWorld!”, dan “3 Hello World!”, misalnya alat keluaran seperti monitor, jelas sekali bukan…… Membaca DataPenulisan teks atau membaca data seperti: baca atau inputan nilai x dan y maka dalam notasi algoritmik menjadi : read(x,y)Untuk penulisan read ini berarti untuk menginputkan data atau membaca data (keyboard, scanner dll)dalam penulisan algoritma boleh menggunakan kata read atau readln atau input dan diikutimenggunakan lambang  (panah) yaitu lambang proses input nilai atau menggunakan lambang = (samadengan). Jadi read merupakan suatu perintah untuk menginputkan atau membaca data, dalam hal iniberupa variabel x dan y baik dibaca melalui keyboard maupun dengan alat inputan lainnya.Marilah kita analisis penggunaan printah read(inputan) tersebut dan kita implementasikan dalam berbagaimacam pemrograman tertentu yaitu: a. Pascal : read(x,y) b. Java : JOptionPane.showInputDialog(“x,y” ); atau menggunakan InputStreamReader reader = new InputStreamReader(System.in); BufferedReader input = new BufferedReader(reader);Penggunaan read dalam algoritma, yaituContoh-1: read(b  5) Artinya variabel b akan diisi dengan nilai 5, berarti variabel b bertipe data integer (bilangan bulat)Contoh-2: read(c  7.5) Artinya variabel c akan diisi dengan nilai 7.5, berarti variabel c bertipe data float atau real.Contoh-3: read(a ”Selamat datang”) Artinya variabel a akan diisi dengan nilai “Selamat datang”, berarti variabel a bertipe data string.Algortma Dasar Page 16
  17. 17. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012Belajar melalui contoh-contohContoh-1: printah read atau inputan dalam algoritma, yaitu ALGORITMA LatRead { untuk membaca data dari alat inputan dengan beberapa tipe data } DEKLARASI { Tidak ada } DESKRIPSI read(nama=”Ani Java”) // membaca sebuah data nama read(alamat=”Bandung”) // membaca sebuah data alamat End_algoContoh-1 dalam bahasa Java import javax.swing.*; public class LatRead{ public static void main(String[] args) { String nama, alamat; nama = JOptionPane.showInputDialog("Nama Anda ?"); // read nama alamat = JOptionPane.showInputDialog("Alamat Anda ?"); //read alamat } }Contoh-2: printah read atau inputan dan outputan dalam bahasa Java dengan method, yaitu import javax.swing.*; public class DataPribadi { public static String nama, alamat; public static void masuk() { nama = JOptionPane.showInputDialog("Nama Anda ?"); // read nama alamat = JOptionPane.showInputDialog("Alamat Anda ?");//read alamat } public static void keluar() { System.out.println("Nama :" + nama); System.out.println("Alamat :" + alamat); } public static void main(String[] args) { masuk(); keluar(); } }Contoh-3: dalam algoritma,Menampilkan data dengan nilai yang sudah terdefinisi (1,4,6,8,4) yang akan ditampung dalam variabel(a,b,c,d,e), yaituAlgortma Dasar Page 17
  18. 18. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012 ALGORITMA susunanAngka { untuk menampilkan/mencetak susunan angka dalam tipe data string” } DEKLARASI a, b, c, d, e  integer DESKRIPSI read(a , b, c, d, e) //memasukan data a, b, c, d, e dengan bil bulat(1,4,6,8,4) println(a, b, c, d, e) // menampilkan variabel a, b, c, d, e End_algoContoh-4: algoritma inputan data “Hello World!” dengan variabel kata yang bertipe String, dandiinputkan melalui keyboard, yaitu: ALGORITMA HelloWorld { untuk menampilkan atau mencetak kata-kata “Hello World!” yang berupa tipe data string } DEKLARASI kata  String // kata memiliki tipe data teks DESKRIPSI read (kata =“Hello World!”) // inputan data berupa string End_algoContoh-4: Dalam bahasa Java, public class HelloWorld { public static void main(String[] args ) { String kata; // definisi kata dengan tipe data string kata = “Hello World!”; // inputan data berupa string System.out.println(kata); // ini tambahan saja, menampilkan kata } }Hasil outputnya Hello World!Jadi jelas sudah.. perbedaan antara algoritma dan bahasa Java, kalau belum jelas Anda pelajari lagi.Lihatlah perbedaan antara penulisan “Hello World!” pada algoritma dan bahasa Java di atas.Pada dasarnya kalau kita perhatikan dalam struktur teks algoritma terdiri dari beberapa hal, yaitu :a. Judul Algoritma Bagian ini memuat judul dari suatu algoritma yang menggambarkan masalahnya, ingat judul harus simpel, jelas dan tidak boleh ada spasib. Deklarasi atau menggunakan kata KamusAlgortma Dasar Page 18
  19. 19. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012 Mendeklarasikan suatu variabel dan memiliki tipe data tertentu seperti: string, integer, float, maupun double dllc. Deskripsi atau menggunakan kata Algo Deskripsi merupakan tempat inputan, pemprosesan dan outputan atau tempat beradanya suatu statement.d. Penutup algoritma Suatu algoritma harus ada stop atau penutup algoritma. Inilah yang menjadi ciri algoritma yang baik. Penutupan biasanya tergantung algoritmanya bisa menggunakan End_algo atau StopBelajar melalui latihan-latihan dalam bahasa JavaLatihan-1, Menampilkan data variabel c dari perhitungan a dan b dalam Java yaitu: import javax.swing.*; public class perhitungan { public static void main(String[] args){ int a, b, c; a = 28; // read(a = 28) b= 70; //read(b = 70) c= (a * b) + ( a * a); // proses perhitungan System.out.println("nilai c = " + c); // menampilkan data c } }Latihan-1, Menggunakan method dalam Java, yaitu: import javax.swing.*; public class perhitungan { public static void hasil(){ int a, b, c; a = 28; // read(a = 28) b= 70; //read(b = 70) c= (a * b) + ( a * a); // proses perhitungan System.out.println("nilai c = " + c); // menampilkan data c } public static void main(String[] args){ hasil(); //memanggil method hasil() } }Latihan-2, Menghitung luas segitiga dengan membaca dari JOptionPane menggunakan method . import javax.swing.*; public class Konversi_Luas { public static float a, t, L; //variable globalAlgortma Dasar Page 19
  20. 20. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012 public static void hitung(){ String angka1 = JOptionPane.showInputDialog("alas ? "); String angka2 = JOptionPane.showInputDialog("tinggi ? "); a = Float.parseFloat(angka1); t = Float.parseFloat(angka2); } public static void hasil(){ L = (a * t)/2; System.out.println("Luas = " + L); } public static void main(String[] args){ hitung(); hasil(); } }Latihan-3, Membuat inputan dan menampilkannya. import javax.swing.*; public class inputantulis { public static void latihan3(){ String tulis = JOptionPane.showInputDialog("Tsulisan Anda ? "); System.out.println("Anda menulis = " + tulis); } public static void main(String[] args){ latihan3(); } }Latihan-4, Membuat program inputan, nama dan umur, yiatu: import javax.swing.*; public class inputandata { public static void main(String[] args){ System.out.println("----DAFTAR PRIBADI----"); String angka1 = JOptionPane.showInputDialog("nama Anda ? "); String angka2 = JOptionPane.showInputDialog("umur Anda ? "); System.out.println("Nama Anda = " + angka1 ); System.out.println("Umur Anda = " + angka2 ); } }Algortma Dasar Page 20
  21. 21. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012Latihan-4.1, Menggunakan method dalam bahasa Java, yaituMembuat program inputan, nama dan umur, dengan pemanggilan suatu method import javax.swing.*; public class inputandata { public static String nama, umur; public static void masuk(){ //sebuah method masuk nama = JOptionPane.showInputDialog("nama Anda ? "); umur= JOptionPane.showInputDialog("umur Anda ? "); } public static void tampil() { //sebuah method tampil System.out.println("Nama Anda = " + nama ); System.out.println("Umur Anda = " + umur ); } public static void main(String[] args) { System.out.println("----DAFTAR PRIBADI----"); masuk(); //memanggil method masuk() tampil(); //memanggil method tampil() } }Latihan-4.2, Menggunakan class dalam bahasa JavaMembuat program inputan, nama dan umur, dengan pemanggilan suatu method import javax.swing.*; public class data{ //mendefinisikan untuk class data public static String nama, umur; public static void masuk(){ //sebuah method masuk nama = JOptionPane.showInputDialog("nama Anda ? "); umur= JOptionPane.showInputDialog("umur Anda ? "); } } public class inputandata { //mendefinisikan class inputdata public static void tampil() { //sebuah method tampil data dt = new data(); System.out.println("Nama Anda = " + dt.nama ); System.out.println("Umur Anda = " + dt.umur ); } public static void main(String[] args) {Algortma Dasar Page 21
  22. 22. Created by: Edi Casnadi.(Email:ed.mobilejava@gmail.com) 2012 System.out.println("----DAFTAR PRIBADI----"); data dt = new data(); dt.masuk(); //memanggil method masuk()dikelas data tampil(); //memanggil method tampil() dikelas input data } }Hasil output ----DAFTAR PRIBADI---- Nama Anda = edi c Umur Anda = 25 Process completed.Soal Latihan 31. Buatlah algoritma untuk menghitung jarak tempuh kendaraan, dari jarak tertentu!.2. Buat pemrograman dalam bahasa Java dengan method untuk menghitung empat persegi panjang, hitunglah: a. Luas b. Keliling c. Panjang diagonal Dengan aturan: Inputan/read (panjang dan lebar) Untuk inputan harus diisi dengan alat inputan yaitu keyboard dan nilai inputan nilai sembarang Output/println (luas, keliling, diagonal)Algortma Dasar Page 22

×