SlideShare a Scribd company logo
1 of 25
Download to read offline
csa-interganesha.com

Tutorial Dasar-dasar Algoritma

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
Created By Edi Casnadi-IM

1
csa-interganesha.com

Tutorial Dasar-dasar Algoritma

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)
Created By Edi Casnadi-IM

2
csa-interganesha.com

Tutorial Dasar-dasar Algoritma

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.

Created By Edi Casnadi-IM

3
csa-interganesha.com

3.

Tutorial Dasar-dasar Algoritma

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.

3.

4.

5.

6.

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.
Memilih algoritma,
Menentukan cara pemilihan suatu algoritma yang benar-benar sesuai atau tepat
sasaran dan efisien untuk permasalahan tersebut.
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.
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.
Menulis dokumentasi,

Created By Edi Casnadi-IM

4
csa-interganesha.com

Tutorial Dasar-dasar Algoritma

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:
Sumber
Masalah

Analisis dan
Solusi

Memilih
Algoritma
Menulis
Program

Menguji
Program
Menulis
Dokumentasi

Merawat
Program
Gambar 1.2 Langkah-langkah dalam pemrograman komputer

Created By Edi Casnadi-IM

5
csa-interganesha.com

Tutorial Dasar-dasar Algoritma

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
permasalahan secara logis dan sistematis.

cara

menyelesaikan suatu

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
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
Dimana:

5. Selesai

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

Created By Edi Casnadi-IM

6
csa-interganesha.com

Tutorial Dasar-dasar Algoritma

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
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
Created By Edi Casnadi-IM

7
csa-interganesha.com

Tutorial Dasar-dasar Algoritma

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:

Merah

Biru

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:

Merah

Biru

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

Biru
Bejana A

Merah

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.
Created By Edi Casnadi-IM

8
csa-interganesha.com

Tutorial Dasar-dasar Algoritma

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

Biru
Bejana A

Merah
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
Bejana A

Merah
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
Created By Edi Casnadi-IM

9
csa-interganesha.com

Tutorial Dasar-dasar Algoritma

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.

Created By Edi Casnadi-IM

10
csa-interganesha.com

Tutorial Dasar-dasar Algoritma

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.
Created By Edi Casnadi-IM

11
csa-interganesha.com

Tutorial Dasar-dasar Algoritma

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

Created By Edi Casnadi-IM

12
csa-interganesha.com

Tutorial Dasar-dasar Algoritma

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).
Created By Edi Casnadi-IM

13
csa-interganesha.com

Tutorial Dasar-dasar Algoritma

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

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
Created By Edi Casnadi-IM

14
csa-interganesha.com

Tutorial Dasar-dasar Algoritma

ALGORITMA Nilai_Rata_Rata
{ untuk menghitung nilai rata-rata dari sejumlah data tertentu }
DEKLARASI
n, dataN, jml, i  integer;
rata_rata  float

// mendeklarasikan semua variabel

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.

Created By Edi Casnadi-IM

15
csa-interganesha.com

5.

Tutorial Dasar-dasar Algoritma

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:

Piranti
masukan

Unit Pemroses
(CPU)

Piranti
keluaran

Memori

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.

Created By Edi Casnadi-IM

16
csa-interganesha.com

4.2.

Tutorial Dasar-dasar Algoritma

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 compilernya, 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

Created By Edi Casnadi-IM

17
csa-interganesha.com

6.

Tutorial Dasar-dasar Algoritma

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

Created By Edi Casnadi-IM

18
csa-interganesha.com

7.

Tutorial Dasar-dasar Algoritma

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
Created By Edi Casnadi-IM

19
csa-interganesha.com

Tutorial Dasar-dasar Algoritma

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.

Created By Edi Casnadi-IM

20
csa-interganesha.com

Tutorial Dasar-dasar Algoritma

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……

Created By Edi Casnadi-IM

21
csa-interganesha.com

Tutorial Dasar-dasar Algoritma

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

Created By Edi Casnadi-IM

22
csa-interganesha.com

Tutorial Dasar-dasar Algoritma

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”)
read(alamat=”Bandung”)

// membaca sebuah data nama
// 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) {
Created By Edi Casnadi-IM

23
csa-interganesha.com

Tutorial Dasar-dasar Algoritma

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)
println(a, b, c, d, e)

//memasukan data a, b, c, d, e dengan bil bulat(1,4,6,8,4)

// 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){
Created By Edi Casnadi-IM

24
csa-interganesha.com

Tutorial Dasar-dasar Algoritma

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

Created By Edi Casnadi-IM

25

More Related Content

What's hot

Modul 1 Algoritma Dan Pemrograman II
Modul 1 Algoritma Dan Pemrograman IIModul 1 Algoritma Dan Pemrograman II
Modul 1 Algoritma Dan Pemrograman IIsyahril17
 
Praktikum Algoritma Pemrograman
Praktikum Algoritma PemrogramanPraktikum Algoritma Pemrograman
Praktikum Algoritma PemrogramanWahyu Widodo
 
Micro teaching konsep logika algoritma
Micro teaching konsep logika algoritmaMicro teaching konsep logika algoritma
Micro teaching konsep logika algoritmaApriyanto_apo
 
Struktur data dan algoritma
Struktur data dan algoritmaStruktur data dan algoritma
Struktur data dan algoritmaChusnul Khotimah
 
Bab 1 pengantar algoritma
Bab 1 pengantar algoritmaBab 1 pengantar algoritma
Bab 1 pengantar algoritmaKang Koko
 
Sejarah Algoritma
Sejarah Algoritma Sejarah Algoritma
Sejarah Algoritma casnadi
 
Pertemuan 1 - Algoritma - Tri Lux
Pertemuan 1 - Algoritma - Tri LuxPertemuan 1 - Algoritma - Tri Lux
Pertemuan 1 - Algoritma - Tri Luxtri lux
 
logika algoritma & command prompt
 logika algoritma & command prompt logika algoritma & command prompt
logika algoritma & command promptaris tyanto
 
Laporan Praktikum Algoritma Pemrograman
Laporan Praktikum Algoritma PemrogramanLaporan Praktikum Algoritma Pemrograman
Laporan Praktikum Algoritma PemrogramanYulie Astin
 
Pertemuan 1 Pengertian Dasar Logika
Pertemuan 1 Pengertian Dasar LogikaPertemuan 1 Pengertian Dasar Logika
Pertemuan 1 Pengertian Dasar LogikaEndang Retnoningsih
 
Modul Logika dan algoritma
Modul Logika dan algoritmaModul Logika dan algoritma
Modul Logika dan algoritmalinda_rosalina
 
PENGERTIAN ALGORITMA DAN PEMROGRAMAN
PENGERTIAN ALGORITMA DAN PEMROGRAMANPENGERTIAN ALGORITMA DAN PEMROGRAMAN
PENGERTIAN ALGORITMA DAN PEMROGRAMANAziz Moeslim
 
Materi 1. algoritma pemrograman
Materi 1. algoritma pemrogramanMateri 1. algoritma pemrograman
Materi 1. algoritma pemrogramanMelva Amma Kalian
 
Algoritma dan pemrograman
Algoritma dan pemrogramanAlgoritma dan pemrograman
Algoritma dan pemrogramanMastur Cell
 

What's hot (20)

Modul 1 Algoritma Dan Pemrograman II
Modul 1 Algoritma Dan Pemrograman IIModul 1 Algoritma Dan Pemrograman II
Modul 1 Algoritma Dan Pemrograman II
 
Praktikum Algoritma Pemrograman
Praktikum Algoritma PemrogramanPraktikum Algoritma Pemrograman
Praktikum Algoritma Pemrograman
 
Program Penjualan Supermarket
Program Penjualan SupermarketProgram Penjualan Supermarket
Program Penjualan Supermarket
 
Micro teaching konsep logika algoritma
Micro teaching konsep logika algoritmaMicro teaching konsep logika algoritma
Micro teaching konsep logika algoritma
 
Struktur data dan algoritma
Struktur data dan algoritmaStruktur data dan algoritma
Struktur data dan algoritma
 
Definisi Algoritma
Definisi AlgoritmaDefinisi Algoritma
Definisi Algoritma
 
Dasar pemrograman ( algorithma pemrograman )
Dasar pemrograman ( algorithma pemrograman )Dasar pemrograman ( algorithma pemrograman )
Dasar pemrograman ( algorithma pemrograman )
 
Bab 1 pengantar algoritma
Bab 1 pengantar algoritmaBab 1 pengantar algoritma
Bab 1 pengantar algoritma
 
Sejarah Algoritma
Sejarah Algoritma Sejarah Algoritma
Sejarah Algoritma
 
Dasar dasar algoritma - 1
Dasar dasar algoritma - 1Dasar dasar algoritma - 1
Dasar dasar algoritma - 1
 
Pertemuan 1 - Algoritma - Tri Lux
Pertemuan 1 - Algoritma - Tri LuxPertemuan 1 - Algoritma - Tri Lux
Pertemuan 1 - Algoritma - Tri Lux
 
logika algoritma & command prompt
 logika algoritma & command prompt logika algoritma & command prompt
logika algoritma & command prompt
 
Laporan Praktikum Algoritma Pemrograman
Laporan Praktikum Algoritma PemrogramanLaporan Praktikum Algoritma Pemrograman
Laporan Praktikum Algoritma Pemrograman
 
Pertemuan 1 Pengertian Dasar Logika
Pertemuan 1 Pengertian Dasar LogikaPertemuan 1 Pengertian Dasar Logika
Pertemuan 1 Pengertian Dasar Logika
 
Algoritam1
Algoritam1Algoritam1
Algoritam1
 
Modul Logika dan algoritma
Modul Logika dan algoritmaModul Logika dan algoritma
Modul Logika dan algoritma
 
PENGERTIAN ALGORITMA DAN PEMROGRAMAN
PENGERTIAN ALGORITMA DAN PEMROGRAMANPENGERTIAN ALGORITMA DAN PEMROGRAMAN
PENGERTIAN ALGORITMA DAN PEMROGRAMAN
 
Materi 1. algoritma pemrograman
Materi 1. algoritma pemrogramanMateri 1. algoritma pemrograman
Materi 1. algoritma pemrograman
 
Algoritma dan pemrograman
Algoritma dan pemrogramanAlgoritma dan pemrograman
Algoritma dan pemrograman
 
Tugas Pt
Tugas PtTugas Pt
Tugas Pt
 

Similar to Dasar Algoritma

Pengantar Algoritma Dan Program
Pengantar Algoritma Dan ProgramPengantar Algoritma Dan Program
Pengantar Algoritma Dan ProgramAkmal Fajar
 
Modul teknik pemrograman mikrokontroler dan mikroprosesor
Modul teknik pemrograman mikrokontroler dan mikroprosesorModul teknik pemrograman mikrokontroler dan mikroprosesor
Modul teknik pemrograman mikrokontroler dan mikroprosesorBeny Abd
 
Dasar pemrograman
Dasar pemrogramanDasar pemrograman
Dasar pemrogramanUNTUNGSG
 
Algoritma pemrograman terstruktur
Algoritma pemrograman terstrukturAlgoritma pemrograman terstruktur
Algoritma pemrograman terstrukturRaden Maulana
 
Diktat kuliah Algoritma dan Pemograman
Diktat kuliah Algoritma dan PemogramanDiktat kuliah Algoritma dan Pemograman
Diktat kuliah Algoritma dan PemogramanPisca Prasetyo
 
Bab 1 pengantar logika algoritma
Bab 1 pengantar logika algoritmaBab 1 pengantar logika algoritma
Bab 1 pengantar logika algoritmarisal07
 
Algoritma Pemrograman
Algoritma Pemrograman Algoritma Pemrograman
Algoritma Pemrograman hanujisudiman
 
Algoritma dan Flowchart1.ppt
Algoritma dan Flowchart1.pptAlgoritma dan Flowchart1.ppt
Algoritma dan Flowchart1.pptBKKSMKN2Jombang
 
Algoritma X3.docx
Algoritma X3.docxAlgoritma X3.docx
Algoritma X3.docxekanet8th1
 
Algoritma & dasar pemrograman
Algoritma & dasar pemrogramanAlgoritma & dasar pemrograman
Algoritma & dasar pemrogramanSahat Tua
 
Laporan Algoritma dan Pemrograman Modul 1
Laporan Algoritma dan Pemrograman Modul 1Laporan Algoritma dan Pemrograman Modul 1
Laporan Algoritma dan Pemrograman Modul 1Tatalazy
 
Algoritma dan-pemrograman
Algoritma dan-pemrogramanAlgoritma dan-pemrograman
Algoritma dan-pemrogramanimmunandar
 
Algoritma dan-pemrograman
Algoritma dan-pemrogramanAlgoritma dan-pemrograman
Algoritma dan-pemrogramanimmunandar
 
Algoritma dan-pemrograman
Algoritma dan-pemrogramanAlgoritma dan-pemrograman
Algoritma dan-pemrogramanimmunandar
 

Similar to Dasar Algoritma (20)

Pengantar Algoritma Dan Program
Pengantar Algoritma Dan ProgramPengantar Algoritma Dan Program
Pengantar Algoritma Dan Program
 
Modul teknik pemrograman mikrokontroler dan mikroprosesor
Modul teknik pemrograman mikrokontroler dan mikroprosesorModul teknik pemrograman mikrokontroler dan mikroprosesor
Modul teknik pemrograman mikrokontroler dan mikroprosesor
 
Dasar pemrograman
Dasar pemrogramanDasar pemrograman
Dasar pemrograman
 
Algoritma pemrograman terstruktur
Algoritma pemrograman terstrukturAlgoritma pemrograman terstruktur
Algoritma pemrograman terstruktur
 
Algoritma Pemrogaman
Algoritma PemrogamanAlgoritma Pemrogaman
Algoritma Pemrogaman
 
Diktat kuliah Algoritma dan Pemograman
Diktat kuliah Algoritma dan PemogramanDiktat kuliah Algoritma dan Pemograman
Diktat kuliah Algoritma dan Pemograman
 
Bab 1 pengantar logika algoritma
Bab 1 pengantar logika algoritmaBab 1 pengantar logika algoritma
Bab 1 pengantar logika algoritma
 
Pertemuan 1
Pertemuan 1Pertemuan 1
Pertemuan 1
 
Algoritma Pemrograman
Algoritma Pemrograman Algoritma Pemrograman
Algoritma Pemrograman
 
Algoritma dan Flowchart1.ppt
Algoritma dan Flowchart1.pptAlgoritma dan Flowchart1.ppt
Algoritma dan Flowchart1.ppt
 
Algoritma X3.docx
Algoritma X3.docxAlgoritma X3.docx
Algoritma X3.docx
 
Simulasi Digital.pptx
Simulasi Digital.pptxSimulasi Digital.pptx
Simulasi Digital.pptx
 
Algoritma & dasar pemrograman
Algoritma & dasar pemrogramanAlgoritma & dasar pemrograman
Algoritma & dasar pemrograman
 
Tugas Pt
Tugas PtTugas Pt
Tugas Pt
 
Tugas Pt
Tugas PtTugas Pt
Tugas Pt
 
001 algoritma
001 algoritma001 algoritma
001 algoritma
 
Laporan Algoritma dan Pemrograman Modul 1
Laporan Algoritma dan Pemrograman Modul 1Laporan Algoritma dan Pemrograman Modul 1
Laporan Algoritma dan Pemrograman Modul 1
 
Algoritma dan-pemrograman
Algoritma dan-pemrogramanAlgoritma dan-pemrograman
Algoritma dan-pemrograman
 
Algoritma dan-pemrograman
Algoritma dan-pemrogramanAlgoritma dan-pemrograman
Algoritma dan-pemrograman
 
Algoritma dan-pemrograman
Algoritma dan-pemrogramanAlgoritma dan-pemrograman
Algoritma dan-pemrograman
 

More from casnadi

Pengulanganwhilealgoritma
PengulanganwhilealgoritmaPengulanganwhilealgoritma
Pengulanganwhilealgoritmacasnadi
 
Pengulangan for Algoritma
Pengulangan for AlgoritmaPengulangan for Algoritma
Pengulangan for Algoritmacasnadi
 
Kondisional If then Algoritma
Kondisional If then AlgoritmaKondisional If then Algoritma
Kondisional If then Algoritmacasnadi
 
Struktur Runtunan Algoritma
Struktur Runtunan AlgoritmaStruktur Runtunan Algoritma
Struktur Runtunan Algoritmacasnadi
 
Penulisanalgoritma
PenulisanalgoritmaPenulisanalgoritma
Penulisanalgoritmacasnadi
 
Program Hitung di java dan netbeans
Program Hitung di java dan netbeansProgram Hitung di java dan netbeans
Program Hitung di java dan netbeanscasnadi
 
Tampil data di tabel dg Java & netbeans
Tampil data di tabel dg Java & netbeansTampil data di tabel dg Java & netbeans
Tampil data di tabel dg Java & netbeanscasnadi
 

More from casnadi (7)

Pengulanganwhilealgoritma
PengulanganwhilealgoritmaPengulanganwhilealgoritma
Pengulanganwhilealgoritma
 
Pengulangan for Algoritma
Pengulangan for AlgoritmaPengulangan for Algoritma
Pengulangan for Algoritma
 
Kondisional If then Algoritma
Kondisional If then AlgoritmaKondisional If then Algoritma
Kondisional If then Algoritma
 
Struktur Runtunan Algoritma
Struktur Runtunan AlgoritmaStruktur Runtunan Algoritma
Struktur Runtunan Algoritma
 
Penulisanalgoritma
PenulisanalgoritmaPenulisanalgoritma
Penulisanalgoritma
 
Program Hitung di java dan netbeans
Program Hitung di java dan netbeansProgram Hitung di java dan netbeans
Program Hitung di java dan netbeans
 
Tampil data di tabel dg Java & netbeans
Tampil data di tabel dg Java & netbeansTampil data di tabel dg Java & netbeans
Tampil data di tabel dg Java & netbeans
 

Recently uploaded

PEMANASAN GLOBAL - MATERI KELAS X MA.pptx
PEMANASAN GLOBAL - MATERI KELAS X MA.pptxPEMANASAN GLOBAL - MATERI KELAS X MA.pptx
PEMANASAN GLOBAL - MATERI KELAS X MA.pptxsukmakarim1998
 
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdf
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdfMODUL 1 Pembelajaran Kelas Rangkap-compressed.pdf
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdfNurulHikmah50658
 
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..ikayogakinasih12
 
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)MustahalMustahal
 
tugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SDtugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SDmawan5982
 
Paparan Refleksi Lokakarya program sekolah penggerak.pptx
Paparan Refleksi Lokakarya program sekolah penggerak.pptxPaparan Refleksi Lokakarya program sekolah penggerak.pptx
Paparan Refleksi Lokakarya program sekolah penggerak.pptxIgitNuryana13
 
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docx
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docxLK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docx
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docxPurmiasih
 
Refleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptx
Refleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptxRefleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptx
Refleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptxIrfanAudah1
 
11 PPT Pancasila sebagai Paradigma Kehidupan dalam Masyarakat.pptx
11 PPT Pancasila sebagai Paradigma Kehidupan dalam Masyarakat.pptx11 PPT Pancasila sebagai Paradigma Kehidupan dalam Masyarakat.pptx
11 PPT Pancasila sebagai Paradigma Kehidupan dalam Masyarakat.pptxMiftahunnajahTVIBS
 
BAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptx
BAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptxBAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptx
BAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptxJamhuriIshak
 
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdf
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdfREFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdf
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdfirwanabidin08
 
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptxPPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptxdpp11tya
 
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdfContoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdfCandraMegawati
 
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdfTUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdfElaAditya
 
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptxKontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptxssuser50800a
 
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMMLaporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMMmulyadia43
 
Tugas 1 ABK di SD prodi pendidikan guru sekolah dasar.docx
Tugas 1 ABK di SD prodi pendidikan guru sekolah dasar.docxTugas 1 ABK di SD prodi pendidikan guru sekolah dasar.docx
Tugas 1 ABK di SD prodi pendidikan guru sekolah dasar.docxmawan5982
 
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdf
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdfBab 6 Kreatif Mengungap Rasa dan Realitas.pdf
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdfbibizaenab
 
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatan
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi SelatanSosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatan
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatanssuser963292
 
Modul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdfModul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdfSitiJulaeha820399
 

Recently uploaded (20)

PEMANASAN GLOBAL - MATERI KELAS X MA.pptx
PEMANASAN GLOBAL - MATERI KELAS X MA.pptxPEMANASAN GLOBAL - MATERI KELAS X MA.pptx
PEMANASAN GLOBAL - MATERI KELAS X MA.pptx
 
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdf
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdfMODUL 1 Pembelajaran Kelas Rangkap-compressed.pdf
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdf
 
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
 
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)
 
tugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SDtugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SD
 
Paparan Refleksi Lokakarya program sekolah penggerak.pptx
Paparan Refleksi Lokakarya program sekolah penggerak.pptxPaparan Refleksi Lokakarya program sekolah penggerak.pptx
Paparan Refleksi Lokakarya program sekolah penggerak.pptx
 
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docx
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docxLK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docx
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docx
 
Refleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptx
Refleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptxRefleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptx
Refleksi Mandiri Modul 1.3 - KANVAS BAGJA.pptx.pptx
 
11 PPT Pancasila sebagai Paradigma Kehidupan dalam Masyarakat.pptx
11 PPT Pancasila sebagai Paradigma Kehidupan dalam Masyarakat.pptx11 PPT Pancasila sebagai Paradigma Kehidupan dalam Masyarakat.pptx
11 PPT Pancasila sebagai Paradigma Kehidupan dalam Masyarakat.pptx
 
BAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptx
BAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptxBAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptx
BAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptx
 
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdf
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdfREFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdf
REFLEKSI MANDIRI_Prakarsa Perubahan BAGJA Modul 1.3.pdf
 
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptxPPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
 
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdfContoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
 
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdfTUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
 
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptxKontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
 
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMMLaporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
 
Tugas 1 ABK di SD prodi pendidikan guru sekolah dasar.docx
Tugas 1 ABK di SD prodi pendidikan guru sekolah dasar.docxTugas 1 ABK di SD prodi pendidikan guru sekolah dasar.docx
Tugas 1 ABK di SD prodi pendidikan guru sekolah dasar.docx
 
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdf
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdfBab 6 Kreatif Mengungap Rasa dan Realitas.pdf
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdf
 
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatan
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi SelatanSosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatan
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatan
 
Modul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdfModul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdf
 

Dasar Algoritma

  • 1. csa-interganesha.com Tutorial Dasar-dasar Algoritma 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 Created By Edi Casnadi-IM 1
  • 2. csa-interganesha.com Tutorial Dasar-dasar Algoritma 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) Created By Edi Casnadi-IM 2
  • 3. csa-interganesha.com Tutorial Dasar-dasar Algoritma 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. Created By Edi Casnadi-IM 3
  • 4. csa-interganesha.com 3. Tutorial Dasar-dasar Algoritma 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. 3. 4. 5. 6. 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. Memilih algoritma, Menentukan cara pemilihan suatu algoritma yang benar-benar sesuai atau tepat sasaran dan efisien untuk permasalahan tersebut. 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. 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. Menulis dokumentasi, Created By Edi Casnadi-IM 4
  • 5. csa-interganesha.com Tutorial Dasar-dasar Algoritma 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: Sumber Masalah Analisis dan Solusi Memilih Algoritma Menulis Program Menguji Program Menulis Dokumentasi Merawat Program Gambar 1.2 Langkah-langkah dalam pemrograman komputer Created By Edi Casnadi-IM 5
  • 6. csa-interganesha.com Tutorial Dasar-dasar Algoritma 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 permasalahan secara logis dan sistematis. cara menyelesaikan suatu 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 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 Dimana: 5. Selesai Keterangan: Cobalah perhatikan langkah-langkah di atas, merupakan sebuah analisis dari suatu permasalahan, untuk menghitung suatu gaya. Created By Edi Casnadi-IM 6
  • 7. csa-interganesha.com Tutorial Dasar-dasar Algoritma 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 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 Created By Edi Casnadi-IM 7
  • 8. csa-interganesha.com Tutorial Dasar-dasar Algoritma 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: Merah Biru 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: Merah Biru 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 Biru Bejana A Merah 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. Created By Edi Casnadi-IM 8
  • 9. csa-interganesha.com Tutorial Dasar-dasar Algoritma Langkah 2 : Pindahkan isi bejana B ke bejana A. ( A  B ) Biru Bejana A Merah 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 Bejana A Merah 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 Created By Edi Casnadi-IM 9
  • 10. csa-interganesha.com Tutorial Dasar-dasar Algoritma 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. Created By Edi Casnadi-IM 10
  • 11. csa-interganesha.com Tutorial Dasar-dasar Algoritma 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. Created By Edi Casnadi-IM 11
  • 12. csa-interganesha.com Tutorial Dasar-dasar Algoritma 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 Created By Edi Casnadi-IM 12
  • 13. csa-interganesha.com Tutorial Dasar-dasar Algoritma 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). Created By Edi Casnadi-IM 13
  • 14. csa-interganesha.com Tutorial Dasar-dasar Algoritma 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 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 Created By Edi Casnadi-IM 14
  • 15. csa-interganesha.com Tutorial Dasar-dasar Algoritma ALGORITMA Nilai_Rata_Rata { untuk menghitung nilai rata-rata dari sejumlah data tertentu } DEKLARASI n, dataN, jml, i  integer; rata_rata  float // mendeklarasikan semua variabel 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. Created By Edi Casnadi-IM 15
  • 16. csa-interganesha.com 5. Tutorial Dasar-dasar Algoritma 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: Piranti masukan Unit Pemroses (CPU) Piranti keluaran Memori 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. Created By Edi Casnadi-IM 16
  • 17. csa-interganesha.com 4.2. Tutorial Dasar-dasar Algoritma 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 compilernya, 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 Created By Edi Casnadi-IM 17
  • 18. csa-interganesha.com 6. Tutorial Dasar-dasar Algoritma 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.. Created By Edi Casnadi-IM 18
  • 19. csa-interganesha.com 7. Tutorial Dasar-dasar Algoritma 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 Created By Edi Casnadi-IM 19
  • 20. csa-interganesha.com Tutorial Dasar-dasar Algoritma 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. Created By Edi Casnadi-IM 20
  • 21. csa-interganesha.com Tutorial Dasar-dasar Algoritma 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…… Created By Edi Casnadi-IM 21
  • 22. csa-interganesha.com Tutorial Dasar-dasar Algoritma  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. Created By Edi Casnadi-IM 22
  • 23. csa-interganesha.com Tutorial Dasar-dasar Algoritma 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”) read(alamat=”Bandung”) // membaca sebuah data nama // 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) { Created By Edi Casnadi-IM 23
  • 24. csa-interganesha.com Tutorial Dasar-dasar Algoritma 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) println(a, b, c, d, e) //memasukan data a, b, c, d, e dengan bil bulat(1,4,6,8,4) // 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){ Created By Edi Casnadi-IM 24
  • 25. csa-interganesha.com Tutorial Dasar-dasar Algoritma 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() } } Created By Edi Casnadi-IM 25