Dasar Algoritma

25
csa-interganesha.com Tutorial Dasar-dasar Algoritma Created By Edi Casnadi-IM 1 Judul : Dasar Algoritma Penulis : Edi Casnadi Level : Basic Hak : csa-interganesha Kategori: Untuk dipublic DASAR-DASAR ALGORITMA 1. Pendahuluan Dalam kehidupan manusia tidak akan lepas dari suatu permasalahan yang kita hadapi. Kadang-kadang kita juga tidak menyadari bahwa dalam mengatasi permasalahan, kita melakukannya secara sistematis dan logis. Kalau kita sadar bahwa berfikir secara logis biasanya kita merasa pusing, dikarenakan dalam memecahkan masalah tersebut kita membutuhkan suatu analisis dan konsentrasi yang tepat. Kata-kata logis inilah yang kadang-kadang membuat kita merasa pusing sampai tujuh keliling dan males. Sebetulnya kata logis tidak serumit apa yang kita bayangkan, karena berpikir logis merupakan suatu anugerah pembawaan manusia sejak dilahirkan. Dengan adanya pola berpikir logis manusia bisa menciptakan berbagai macam alat hebat dan canggih. Jadi yang kita butuhkan dalam belajar algoritma, hanya suatu trigger (pemicu) untuk membiasakan berpikir secara sistematis dan logis dalam memecahkan suatu masalah. Sistematis dan logis inilah yang merupakan dasar dari suatu algoritma. Cara kerja komputer pun tidak jauh berbeda yaitu berdasarkan logic dalam menjalankan printah-printah yang diberikan oleh user. Dalam perkembangannya, komputer banyak mengalami evolusi sangat cepat, tanpa kita bisa menghentikannya baik dalam bidang pemrograman maupun dalam bidang perangkat keras (hardware), coba kita lihat teknologi sekarang yang manusia ciptakan seperti : HP, Blackberry, Laptop, PDA, Personal Computer (PC), PS, Nintendo, x-Box, Tablet, simulasi pesawat tempur, deteksi gelombang, perkiraan cuaca, sistem pencitraan dan lain-lain. Dengan perkembangan teknologi tersebut, merupakan dasar dari suatu perkembangan dari pemikiran yang berdasarkan algoritma. Algoritma dan pemrograman inilah yang akan kita bahas pada buku ini selanjutnya. Belajar algoritma merupakan hal terpenting sebagai syarat menjadi programmer yang handal karena dasar algoritma jarang terpengaruh oleh suatu perkembangan teknologi walaupun sekarang banyak bermunculan berbagai macam algoritma baru dan kompleks untuk mengatasi permasalahan yang ada. Pembelajaran algoritma sekarang pun sudah mulai berpindah dari terstruktural ke arah berbasis objek. Kalau kita perhatikan pemrograman sekarang cepat mengalami evolusi (perubahan) karena

description

Tutorial tentang dasar algoritma

Transcript of Dasar Algoritma

Page 1: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 1

Judul : Dasar Algoritma Penulis : Edi Casnadi Level : Basic Hak : csa-interganesha Kategori : Untuk dipublic

DASAR-DASAR ALGORITMA

1. Pendahuluan Dalam kehidupan manusia tidak akan lepas dari suatu permasalahan yang kita hadapi. Kadang-kadang kita juga tidak menyadari bahwa dalam mengatasi permasalahan, kita melakukannya secara sistematis dan logis. Kalau kita sadar bahwa berfikir secara logis biasanya kita merasa pusing, dikarenakan dalam memecahkan masalah tersebut kita membutuhkan suatu analisis dan konsentrasi yang tepat. Kata-kata logis inilah yang kadang-kadang membuat kita merasa pusing sampai tujuh keliling dan males. Sebetulnya kata logis tidak serumit apa yang kita bayangkan, karena berpikir logis merupakan suatu anugerah pembawaan manusia sejak dilahirkan. Dengan adanya pola berpikir logis manusia bisa menciptakan berbagai macam alat hebat dan canggih. Jadi yang kita butuhkan dalam belajar algoritma, hanya suatu trigger (pemicu) untuk membiasakan berpikir secara sistematis dan logis dalam memecahkan suatu masalah. Sistematis dan logis inilah yang merupakan dasar dari suatu algoritma.

Cara kerja komputer pun tidak jauh berbeda yaitu berdasarkan logic dalam menjalankan printah-printah yang diberikan oleh user. Dalam perkembangannya, komputer banyak mengalami evolusi sangat cepat, tanpa kita bisa menghentikannya baik dalam bidang pemrograman maupun dalam bidang perangkat keras (hardware), coba kita lihat teknologi sekarang yang manusia ciptakan seperti : HP, Blackberry, Laptop, PDA, Personal Computer (PC), PS, Nintendo, x-Box, Tablet, simulasi pesawat tempur, deteksi gelombang, perkiraan cuaca, sistem pencitraan dan lain-lain. Dengan perkembangan teknologi tersebut, merupakan dasar dari suatu perkembangan dari pemikiran yang berdasarkan algoritma. Algoritma dan pemrograman inilah yang akan kita bahas pada buku ini selanjutnya. Belajar algoritma merupakan hal terpenting sebagai syarat menjadi programmer yang handal karena dasar algoritma jarang terpengaruh oleh suatu perkembangan teknologi walaupun sekarang banyak bermunculan berbagai macam algoritma baru dan kompleks untuk mengatasi permasalahan yang ada. Pembelajaran algoritma sekarang pun sudah mulai berpindah dari terstruktural ke arah berbasis objek. Kalau kita perhatikan pemrograman sekarang cepat mengalami evolusi (perubahan) karena

Page 2: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 2

pemrograman harus beradaptasi dengan kebutuhan manusia setiap saat, sebegai contoh: hari ini kita belajar mati-matian pemrograman xxx, kemudian dalam waktu empat bulan kemudian sudah berganti versi bahkan ada juga bahasa pemrogramannya. Jadi kadang-kadang kita juga bingung harus belajar pemrograman apa? pusing maning son...he.., tetapi tenang saja, karena untuk menanggulangi perkembangan pemrograman tersebut, Anda harus dapat menguasai dasar dari algoritma dengan baik dan benar, karena ”apapun bahasa pemrogramannya, pada dasarnya algoritma tetap satu”, itu sekelumit betapa pentingnya belajar algoritma.

2. Algoritma dan Pemrograman Dalam pembuatan algoritma dibutuhkan suatu implementasikan ke dalam suatu bahasa pemrograman tertentu agar menjadi suatu program yang mempunyai kehandalan dan membuktikan bahwa algoritma yang kita susun tersebut memang benar dan tepat. Algoritma yang kita buat tidak langsung dibuat menjadi algoritma sesungguhnya tetapi kita harus menganalisis dan mempelajari permasalahan tersebut dengan seksama, sebagai contoh kita akan pergi ke Jakarta, apa yang Anda lakukan, yang pasti Anda bertanya dimana sih letak Jakarta? naik kendaraan apa sehingga sampai kesana?, apa yang dilakukan jika sudah sampai ke Jakarta? dan harus membawa bekal apa saja? dll. Itu semua merupakan analisis ketika kita mau menuju ke Jakarta, setelah itu kita buat algoritmanya atau langkah-langkahnya supaya kita sampai di Jakarta dengan tepat dan aman, yaitu: Pertama, siapkan bekal yaitu ongkos, baju, makanan dan tentukan tujuan perjalannya Kedua, naik kendaraan dan kita memilih kendaraan yang menuju ke Jakarta. Ketiga, berhenti pada daerah tertentu di wilayah Jakarta, misalnya berhenti di Monas. Keempat, selesai.. Kalau kita perhatikan perbedaan antara analisis dengan algoritma yaitu kalau analisis bertujuan untuk mendefinisikan suatu variabel atau komponen apa saja yang terlibat, sedangkan algoritma merupakan penerapan dari analisis dengan menggunakan langkah-langkah secara sistematis dan logis, nantinya algoritma tersebut akan mudah dalam mengimplementasikan ke dalam bahasa pemrograman. Contoh algoritma lagi: Kasus algoritma penjumlahan angka, yaitu: 1. Sebagai langkah awal kita harus menganalisis permasalahan penjumlahan, yaitu

dengan menjumlahkan beberapa variabel antara a dan b, serta variabel c untuk menampung proses penjumlahan antara a dan b. Penjumlahan ini memiliki sifat bilangan bulat

2. Definisikan variabel a, b, c dengan tipe integer 3. Isi setiap variabel a dan b. (misal a = 3, b = 7)

Page 3: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 3

4. Melakukan operasi penjumlahan yaitu c = a + b, maka c = 3 + 7

5. Hasil akhir dari c adalah 10, sehingga tujuan proses penjumlahan sudah terpenuhi..

6. Tampilkan hasil penjumlahan (c = 10) 7. selesai.

Setelah pembuatan algoritma selesai langkah selanjutnya kita membuat program berdasarkan algoritma yang kita buat tadi. Tetapi sebelum membuat program, sebaiknya kita belajar mengenai bahasa pemrograman yang tepat, yaitu: Belajar bahasa pemrograman: dengan mempelajari dan pemakaian suatu bahasa

pemrograman tertentu dengan aturan sintaks, dan tata cara untuk memanfaatkan instruksi yang spesifik untuk setiap bahasa pemrograman

Belajar bahasa pemrograman, titik berat pada : coder Pelajarilah library bahasa pemrograman Banyak berlatih dari berbagai kasus dan contoh-contoh dari program yang sudah

dibuat. Dalam mempelajari suatu bahasa pemrograman, Anda harus perhatikan beberapa hal, supaya program yang Anda pelajari tidak sia-sia, [EDI C09] yaitu: 1. Program yang Anda pelajari harus bisa lintas bahasa mesin dan lintas operating

system, seperti Php, Java dll 2. Mempunyai prospek kedepannya 3. Bahasanya mudah dipelajari oleh siapapun 4. Memiliki kehandalan dan sudah dipercayai tingkat keamananya 5. Penggunaan atau manajemen memori lebih kecil 6. Bahasanya support dengan berbagai smart phone, artinya mudah beradaptasi

dengan program lain. 7. Pergunakan pemrograman berbasis open source atau free.. he.. maklum orang

susah.. Kata ”algoritma” dan kata ”program” seringkali terbalik dalam penggunannya, sebetulnya sangat berbeda sekali yaitu algoritma adalah urutan langkah-langkah logis dan sistematis dalam menyelesaikan masalah, sedangkan program adalah realisasi algoritma dalam bentuk program dan dikerjakan oleh mesin komputer atau memerintahkan mesin komputer untuk melakukan tindakan yang sesuai dengan tujuan program tersebut. Jadi algoritma bukan Java tetapi dua hal yang berbeda tetapi saling membutuhkan sehingga akan menghasilkan sesuatu yang luar biasa. Program ditulis dalam salah satu bahasa pemrograman, dan kegiatan membuat program disebut pemrograman (programming). Orang yang menulis program disebut pemrogram (programmer) tiap-tiap langkah di dalam program disebut pernyataan atau instruksi. Jadi, program tersusun atas deretan instruksi.

Page 4: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 4

3. Langkah-Langkah Pembuatan Program Langkah-langkah dalam pembuatan pemrograman komputer yaitu: 1. Mendefinisikan masalah,

Ini merupakan langkah pertama yang sering dilupakan orang. Menurut hukum Murphy (oleh Henry Ledgard): “Semakin cepat menulis program, akan semakin lama kita dapat menyelesaikannya”.Untuk mendefinisikan masalah yaitu dengan cara menententukan masalahnya, apa saja yang harus dipecahkan, memiliki tujuan dan menghasilkan output yang diharapkan.

2. Menemukan analisis dan solusi, Setelah masalah didefinisikan, maka langkah berikutnya adalah menganalisis dan memberikan suatu variabel-variabel yang tepat yang nantinya mempermudah dalam menentukan solusinya. Jika masalah terlalu kompleks, maka ada baiknya masalah tersebut dipecah menjadi method atau modul kecil/kelas-kelas agar lebih mudah diselesaikan. Contohnya masalah dalam menghitung luas segitiga, maka kita dapat membagi menjadi beberapa sub method atau sub kelas: Method masukkan,

merupakan method inputan dari nilai tinggi dan nilai alas dari luas segitiga Method proses,

suatu method yang dapat melakukan proses perhitungan seperti: L= ½ * (alas * tinggi)

Method keluar, yaitu suatu method yang dapat menampilkan inputan dan proses dari hasil perhitungan tertentu. Pada kasus ini menampikan nilai luas segitiga kepada pengguna.

Dengan penggunaan method tersebut, pada program utama akan menjadi lebih singkat dan mudah dilihat karena berisi coding pemanggilan berbagai macam method saja. Dengan adanya pembuatan method, maka pekerjaan kita lebih mudah dalam mengetahui suatu kesalahan di dalam coding sehingga dengan cepat ditanggulanginya.

3. Memilih algoritma, Menentukan cara pemilihan suatu algoritma yang benar-benar sesuai atau tepat sasaran dan efisien untuk permasalahan tersebut.

4. Menulis program/ coding, Pilihlah bahasa yang mudah dipelajari, mudah digunakan, dan lebih baik lagi jika kita sudah menguasainya, memiliki tingkat kompatibilitas tinggi dengan perangkat keras (hardware) dan lintas platform lainnya.

5. Menguji program, Setelah program jadi, silahkan uji program tersebut dengan segala macam kemungkinan yang ada, termasuk error-handling-nya sehingga program tersebut akan benar-benar handal dan layak digunakan.

6. Menulis dokumentasi,

Page 5: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 5

Menulis dokumentasi ini, sangat penting agar pada suatu saat jika kita akan melakukan perubahan atau membaca source code yang sudah kita tulis dapat kita ingat-ingat lagi dan kita akan mudah membacanya atau untuk mempermudahkan dalam pembacaan coding oleh programmer lain. Caranya adalah dengan menuliskan komentar-komentar kecil tentang apa maksud kode tersebut, untuk apa? variabel apa saja yang digunakan? dan parameter-parameter yang ada pada suatu method tersebut?.

7. Merawat program, Program yang sudah jadi perlu dirawat untuk mencegah munculnya bug yang sebelumnya tidak terdeteksi atau mungkin juga pengguna membutuhkan fasilitas baru yang sebelumnya belum terpasang.

Setiap tahapan-tahapan di atas memiliki peranan yang sangat penting, untuk membuat pemrograman yang handal, jadi jangan dipandang remeh atau malahan menjadi sesuatu yang harus dihindari. Untuk memahami lebih jelasnya, kita gambarkan tahapan-tahapan di atas dengan suatu bagan, yaitu sebagai berikut:

Gambar 1.2 Langkah-langkah dalam pemrograman komputer

Sumber Masalah

Analisis dan Solusi

Memilih Algoritma

Menguji Program

Merawat Program

Menulis Dokumentasi

Menulis Program

Page 6: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 6

Keterangan: Tanda panah merupakan jalur proses ke bagan selanjutnya, jika pada bagan sebelumnya tidak selesai maka sebaliknya kembali ke bagan sebelumnya, perhatikan dan lihatlah tanda panah tersebut. Algoritma merupakan hasil analisis dan yang akan diterjemahkan ke dalam bahasa pemrograman dengan semua aspek atruan algoritma sehingga menghasilkan pemrograman yang tepat. Dengan bahasa pemrograman inilah sebagai penghubung ke bahasa mesin atau yang akan memerintahkan mesin sesuai dengan tujuan pembentukan algoritma. Pada dasarnya algoritma merupakan bagaimana cara menyelesaikan suatu permasalahan secara logis dan sistematis. 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/s2 2. Kemudian timbanglah benda tersebut, sehingga menghasilkan suatu nilai massa

(dalam kg), misalnya 2 kg 3. Setelah itu buat proses perhitungan gaya sebagai berikut:

F = a .m 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 N

5. Selesai Keterangan: Cobalah perhatikan langkah-langkah di atas, merupakan sebuah analisis dari suatu permasalahan, untuk menghitung suatu gaya.

Page 7: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 7

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:

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 permasalahan perhitungan gaya (F)benda. Meskipun kita tidak dapat menyebutkan langkah-langkah pekerjaan di atas secara detail, tetapi dalam konteks ini, semua pernyataan di atas adalah suatu algoritma karena prosesnya dikerjakan secara sistematis dan logis. Sekarang kita mengerti bahwa sebuah algoritma harus mengerjakan suatu proses dan berhenti pada kondisi tertentu. Secara umum, sesuatu yang mengerjakan proses disebut pemroses (processor). Pemrosesan tersebut dapat berupa manusia, komputer, robot, atau alat-alat mekanik lainnya. Pemrosesan dilakukan pada suatu proses dengan melaksanakan atau mengeksekusi algoritma yang menjabarkan pemrosesan tersebut. Pada dasarnya, sebuah algoritma merupakan deskripsi dari pelaksanaan suatu proses. Bahwa algoritma disususn oleh langkah-langkah instruksi yang logis dan sistematis. Setiap langkah instruksi tersebut mengerjakan suatu tindakan (aksi/statement). Bila suatu statement dilaksanakan, maka sejumlah operasi yang bersesuaian dengan

F=a.m

Page 8: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 8

aksi/statement itu akan dikerjakan oleh pemrosesan. Efek dari pengerjaan suatu aksi dapat diamati dengan membandingkan keadaan pada saat aksi sebelum dimulai disebut t0 dan keadaan pada saat aksi selesai di kerjakan disebut t1. contoh : t0 : keadaan sebelum aksi dikerjakaan Aksi/Statement t1 : keadaan setelah aksi dikerjakaan Sebagai contoh berfikir secara logika dalam algoritma yaitu: kita akan membahas tentang algoritma pertukaran isi bejana. Diketahui dua buah bejana, yaitu bejana A berisi berwarna merah, bejana B berisi berwarna biru, seperti gambar berikut:

Bejana A Bejana B

Maka untuk menyelesaikan pertukaraan isi bejana di atas memerlukan suatu bejana kosong untuk melakukan pertukaran isi bejana di atas. Sehingga kita tambahkan suatu Bejana Kosong atau kita sebut dengan Bejana Temp:

Bejana A Bejana B Bejana Temp

Setelah Bejana Temp sudah ada, maka proses berikutnya menukarkan isi bejana dengan langkah-langkah sebagai berikut:

Langkah 1 : Pindahkan isi Bejana A ke Bejana Temp. (Temp A) Temp

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.

Merah Biru

Merah Biru

Biru Merah

Page 9: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 9

Langkah 2 : Pindahkan isi bejana B ke bejana A. ( A B )

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)

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, tetapi dalam pertukaran isi tabung tersebut membutuhkan sebuah bejana kosong untuk menampung data yang bersifat sementara selama proses pertukaran berlangsung yang disebut Bejana Temp/Kosong. Bejana Temp ini nantinya akan kembali kosong ketika proses pertukaran isi bejana selesai dilaksanakan. Pada kasus 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 jangan terpaku atau terjebak dalam algoritma pertukaran isi bejana saja, tetapi algoritma pertukaran isi bejana merupakan 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 untuk menggantikan Bejana A, variabel B untuk menggantikan Bejana B, sedangkan variabel C untuk menggantikan Bejana Temp, untuk lebih mudahnya sebagai berikut:

A = Bejana A

Biru Merah

Biru Merah

Page 10: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 10

B = Bejana B C = Temp/Bejana kosong

Marilah kita analisis pertukaran dalam bentuk variabel ini, yaitu: Pertukaran isi bejana dalam bentuk variabel A, B dan C yang memiliki tipe data String atau berupa kumpulan 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” Catatan: ingat C merupakan variabel kosong atau tempat penyimpanan data sementara selama proses berlangsung, jadi variabel C dalam inputan awal dan hasil akhir tidak usah dituliskan kecuali dalam proses saja. Kita tidak bisa melakukan pertukaran isi variabel A dan B kecuali dengan bantuan variabel C yang merupakan 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.

Page 11: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 11

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 perhatikan proses di atas terjadi secara sistematis dan logis, yang merupakan bagian dari definisi algoritma. Penulisan 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 algoritma

Dengan perkembangan bahasa pemrograman yang sangat pesat setiap saat dan masalah yang dihadapi perusahaan dengan permasalahan yang lebih kompleks dan rumit saat ini, maka dalam setiap pembuatan program memerlukan pengetahuan yang lebih, seperti salah satunya mengikuti perkebangan algoritma dan teknik pemecahkan algoritma untuk permasalahan-permasalahan yang dihadapi oleh manusia.

Page 12: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 12

Istilah program komputer adalah rangkaian kata perintah yang telah dimengerti oleh komputer untuk dikerjakannya. Kata-kata perintah tersebut membentuk suatu bahasa yang disebut dengan bahasa pemrograman. Sebagai mana bahasa pada manusia yang memiliki beragam bahasa, bahasa pemrograman juga terdiri atas banyak bahasa yang berbeda tergantung bahasa pemrogramannya yang memiliki aturan masing-masing jadi Anda jangan bingung dengan bahasa pemrograman. Perkembangan komputer saat ini belum diberi hak inisiatif, sehingga jika ada sedikit saja kesalahan penulisan perintah oleh pemrogram, ia tidak mau memakluminya atau berusaha memperbaiki sendiri karena kesalahan tersebut, serta-merta ia “ngambek” dan tidak mau mengerjakan perintah-perintah lainnya. 4. Implementasi Algoritma Ke Bahasa Pemrograman Dalam pembuatan algoritma dibutuhkan suatu implementasikan ke dalam suatu bahasa pemrograman agar menjadi suatu program yang mempunyai kehandalan, berkualitas dan juga sekaligus untuk menguji apakah algoritma yang kita buat tersebut berhasil atau tidak. Apakah algoritma yang sudah kita implementasikan ke dalam bahasa pemrograman tersebut mempunyai logika keluaran yang kita harapkan. Jadi algoritma dan pemrograman sangat erat hubungannya, ingat jangan salah kaprah dalam pembuatan program, saya melihat banyak siswa, mahasiswa dan para pembuat program komputer masih banyak mengabaikan dalam pembuatan algoritma, sehingga mengakibatkan banyak kesalahan yang tidak kita harapkan dan melakukan perombakan coding yang berlebihan, bahkan menjadi pusing sendiri dalam pembuatan programnya, ujung-ujungnya membuat program dimulai dari awal lagi, hal ini dikarenakan pembuatan program tersebut dimulai dari membuat program tanpa melakukan analisis dan pembuatan algoritma terlebih dahulu. Ya, jadilah programan yang kita buat hanya sekali pakai saja dan program tersebut tidak tahan lama alias menjadi sampah. Dengan 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

Page 13: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 13

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:

Implementasi (terjemah algo ke pemrograman)

Kompilasi

Interpretasi oleh CPU

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).

Algoritma

Program bahasa tingkat tinggi

Program bahasa mesin

Operasi perhitungan

Page 14: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 14

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

2

3

4

23

40

20

10

23

63

83

93

Langkah 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.25

Langkah 5, berhenti dari algoritma. Penulisan algoritma rata-rata secara lengkap, yaitu

Page 15: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 15

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 i 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_algo

Hasil outputnya:

23.25

Contoh algoritma di atas, merupakan langkah awal sebelum dibuat ke dalam pemrograman, Ada yang mengatakan bahwa algoritma, merupakan jantung dari ilmu komputer atau informatika, hal ini mungkin dikarena sangat pentingnya peranan dari algoritma. Pemrogram tanpa menggunakan algoritma diibaratkan sebagai nasi tanpa lauk-pauk, jelas gak enak…, segitunya…ha… Banyak cabang ilmu komputer yang mengacu pada terminologi algoritma tersebut. Namun, jangan beranggapan bahwa algoritma selalu identik dengan ilmu komputer saja. Melaksanakan algoritma berarti mengerjakan langkah-langkah di dalam algoritma tersebut. Dalam mengerjakan suatu proses yang sesuai dengan algoritma yang diberikan kepadanya, seorang juru masak membuat kue berdasarkan resep yang diberikan kepadanya, pianis memainkan lagu berdasarkan papan not balok. Jadi karena itu suatu algoritma harus dinyatakan dalam bentuk yang dapat dimengerti oleh pemroses. Jadi sesuatu pemroses harus memenuhi beberapa hal berikut ini: 1. Menentukan judul permasalahan 2. Mengerti setiap langkah yang dilakukan (algoritma) 3. Variabel sudah terdefinisi dan terisi nilai 4. Mengerjakan operasi, bersesuaian dengan langkah-langkah yang ditentukan 5. Berhenti pada kondisi pengulangan tertentu.

Page 16: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 16

5. Mekanisme Pelaksanan Algoritma Oleh Pemroses Komputer hanyalah salah satu pemroses, agar dapat dilaksanakan oleh komputer, algoritma harus ditulis dalam notasi bahasa pemrograman sehingga dinamakan program. Jadi program adalah perwujudan atau implementasi teknis algoritma yang ditulis dalam bahasa pemrogaman tertentu sehingga dapat dilaksanakan 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 berfungsi mengerjakan operasi-operasi dasar seperti operasi perbandingan, operasi perhitungan, operasi membaca, analisi dan operasi menulis. Memori adalah komponen program (berisi operasi-operasi yang akan dikerjakan oleh CPU) dan data atau informasi (sesuatu yang dioperasi oleh operasi-operasi). Piranti masukan 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 dan plotter dll. Berikut dasar proses aliran data, yaitu:

Gambar 3.2 Komponen-komponen utama komputer

Mekanisme kerja keempat komponen di atas sangat jelas sekali, dimulai dari piranti masukan kemudian ke CPU dan kemudian ke memori untuk menyimpan data sementara dan dikembalikan lagi ke CPU dan setelah itu dikirim ke piranti keluaran.

Piranti masukan

Unit Pemroses (CPU)

Piranti keluaran

Memori

Page 17: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 17

4.2. Memprogram dan Bahasa Pemrograman Belajar memprogram sangatlah mudah, yang penting kita ada niat dan bersabar. Belajar memprogram tidak sama dengan belajar bahasa pemrograman. Belajar memprogram adalah belajar tentang metodologi pemecahan masalah, kemudian menuangkannya dalam suatu notasi tertentu yang mudah dibaca dan dipahami. Sedangakan belajar bahasa pemrograman berarti belajar memakai suatu bahasa, aturan-aturan tata bahasanya, instruksi-instruksinya, tata cara pengoperasian compiler-nya, dan memanfaatkan instruksi-instruksi tersebut untuk membuat program yang ditulis hanya dalam bahasa itu saja, contohnya belajar 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 program

Produk 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 program

Page 18: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 18

6. Penggunaan Dalam Notasi Algoritma Notasi algoritma ini dapat diterjemahkan ke dalam berbagai bahasa pemrograman. Analogikanya seperti daftar bahan membuat sebuah meja. Sebuah resep membuat meja dapat ditulis dalam berbagai macam bahasa pemrograman seperti bahasa Inggris, Prancis, Jerman, Indonesia, Jepang, Belanda, Brazil, Vietnam, Cina, Jawa, Sunda dll. Apapun bahasa resep tetap dalam rangka membuat meja, meja yang akan dihasilkan tetap sama walupun berbeda bahasa resep membuat meja, sebab algoritmanya sama (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 bahasa yang digunakannya, hal inilah mengapa notasi algoritma tidak terpengaruh pada bahasa yang digunakan. Demikian pula dengan komputer. Setiap komputer berbeda teknologinya, tetapi secara umum semua komputer dapat melakukan operasi-operasi dasar dalam pemrograman seperti pembacaan data, operasi perbandingan, operasi aritmatika, analisis pasar dan sebagainya. Dengan perkembangan komputer itu tidak 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 dapat membuat notasi algoritma yang berbeda. Hal yang terpenting dari notasi tersebut adalah ia mudah dibaca dan dimengerti oleh orang lain. Selain itu, meskipun notasi algoritma bukan notasi baku sebagaimana pada notasi bahasa pemrograman, namun ketaatan terhadap notasi, perlu diperhatikan untuk menghindari kekeliruan. Dalam notasi algoritma dalam penulisannya terbagi menjadi beberapa hal, yaitu:

i. Natural ii. Algoritma pseudo code

iii. Flowchart iv. Fundamental

Algoritma sebetulnya banyak teknik yang kita gunakan dalam penulisannya tergantung pada kebiasaan setiap negara dan aturan internasional yang disepakati, tetapi pada dasarnya penulisan algoritma terbagi menjadi tiga hal, seperti di atas. Notasi algoritma di atas akan dipelajari pada bab selanjutnya. Sabar aja...ya..

Page 19: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 19

7. Penulisan Teks Algoritma Algoritma suatu konsep atau blue print, bukan sebuah program tetapi hanya sebuah rancangan sebelum membuat program, algoritma tersebut yang nantinya dapat diimplementasikan ke dalam berbagai bahasa pemrograman, seperti Java, Pascal, Delphi, Visual Basic, C##, PHP dan lain-lain. Untuk kebanyakan orang sering salah pengertian tentang algoritma ini. Sebagai contoh ada seorang mahasiswa yang sedang belajar algoritma dan pemrograman Java, suatu ketika saya bertanya pada mahasiswa tersebut “apa algoritma itu?” dan mahasiswa tersebut dengan bangga menjawab “Algoritma adalah belajar bahasa Java pak”, 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 bisa membedakan mana algoritma dan mana pemrograman atau mungkin murid tersebut tidak mau belajar tentang algoritma dengan baik. Saya hanya bisa senyum saja.. dengan pernyataan di atas, entah siapakah yang salah, dengan kasus seperti ini. Jadi supaya bisa membedakan mana algoritma dan mana pemrograman, marilah kita belajar algoritma yang sunguh-sunguh, sebetulnya algoritma itu sangat mudah di pelajari dan Anda jangan asal belajar saja. 8. Penggambaran Algoritma Algoritma berisi tentang suatu deskripsi(menggambarkan) mengenai langkah-langkah untuk penyelesaian suatu masalah tertentu. Deskripsi tersebut dapat ditulis dalam notasi apa pun, asalkan mudah dimengerti dan dipahami oleh manusia. Tidak ada notasi yang baku dalam penulisan teks algoritma sebagaimana pada notasi bahasa pemrograman (notasi yang digunakan dalam penulisan algoritma disebut notasi algoritmik). Setiap orang dapat membuat aturan penulisan dan notasi algoritma sendiri. Hal ini dapat dimengerti karena teks algoritma tidak sama dengan teks program. Karena program adalah implementasi dari algoritma dalam suatu notasi bahasa pemrograman tertentu. Namun, algoritma merupakan rancangan yang menggambarkan jalannya program, agar notasi algoritma tersebut mudah ditranslasikan ke dalam notasi bahasa pemrograman, maka sebaiknya notasi algoritma tersebut berkoresponden dengan notasi bahasa 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 (monitor atau printer) dalam algoritma untuk keluaran boleh menggunakan kata write atau print ataupun out tergantung dari si pembuat algoritmanya, karena

Page 20: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 20

untuk implementasinya menggunakan bahasa Java, alangkah baiknya kita mengunakan kata print, karena kata print lebih dekat dengan bahasa Java dan untuk seterusnya guna menampilkan data atau nilai menggunkan kata println atau print dalam penulisan algoritmanya. Dalam penulisan dalam bahada Java hampir sama dengan bahasa pemrograman lainnya, hanya saja yang membedakannya adalah masalah sintaks bahasa, kita analisis penulisan algoritma di atas untuk menampilkan 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) dll

Contohnya lainnya yaitu Dua 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.

Page 21: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 21

Catatan: Untuk println, adalah suatu printah yang menampilkan data dan setelah printah statement tersebut diproses maka cursor akan pindah baris baru, sedangkan print yaitu setelah printah statement diproses maka 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, apa lagi dalam bahasa Java. Kadang kala kita sering menjumpai dalam suatu pemrograman, ketika pertama kali kita membuka suatu pemrograman tertentu misalnya bahasa Java maka secara default program Java akan menampilkan kata “Hello World!” ke layar monitor. Program “Hello World!”, pertama kali ditemukan 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 } DESKRIPSI 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_Algo

Hasil 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 Hello World!”, dan “3 Hello World!”, misalnya alat keluaran seperti monitor, jelas sekali bukan……

Page 22: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 22

Membaca Data Penulisan 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 diikuti menggunakan lambang (panah) yaitu lambang proses input nilai atau menggunakan lambang = (sama dengan). Jadi read merupakan suatu perintah untuk menginputkan atau membaca data, dalam hal ini berupa 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 berbagai macam 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, yaitu Contoh-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.

Page 23: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 23

Belajar melalui contoh-contoh Contoh-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_algo

Contoh-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) {

Page 24: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 24

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), yaitu

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_algo

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 spasi

b. Deklarasi atau menggunakan kata Kamus Mendeklarasikan suatu variabel dan memiliki tipe data tertentu seperti: string, integer, float, maupun double dll

c. 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 Stop

Belajar melalui latihan-latihan dalam bahasa Java Latihan-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){

Page 25: Dasar Algoritma

csa-interganesha.com Tutorial Dasar-dasar Algoritma

Created By Edi Casnadi-IM 25

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() } }