SlideShare a Scribd company logo
1 of 42
Download to read offline
TP4 SMK NEGERI 1 PUNGGING
February6,2014
BUKU PEGANGAN SISWA DAN GURU
TEKNIK PENYIARAN
DASAR PEMROGRAMAN
ALGORITHMA PEMROGRAMAN
DISUSUN OLEH : ZAINUL ARIFIN, S. Kom
= TEKNIK BROADCASTING =
PAKET KEAHLIAN
TEKNIK PRODUKSI DAN PENYIARAN PROGRAM PERTELEVISIAN
BIDANG KEAHLIAN TEKNIK INFORMASI DAN KOMUNIKASI
DINAS PENDIDIKAN. KAB. MOJOKERTO
SMK NEGERI 1 PUNGGING
2013/2014
TP4 SMK NEGERI 1 PUNGGING
February6,2014
A. PENGERTIAN ALGORITHMA PEMROGRAMAN
Diagram Alur sering digunakan untuk menggambarkan sebuah
algorithma. Dalam matematika dan komputasi, algorithma merupakan
kumpulan perintah untuk menyelesaikan suatu masalah. Perintah-perintah
ini dapat diterjemahkan secara bertahap dari awal hingga akhir. Masalah
tersebut dapat berupa apa saja, dengan catatan untuk setiap masalah, ada
kriteria kondisi awal yang harus dipenuhi sebelum menjalankan algorithma.
Algorithma akan dapat selalu berakhir untuk semua kondisi awal yang
memenuhi kriteria, dalam hal ini berbeda dengan heuristik. Algorithma
sering mempunyai langkah pengulangan (iterasi) atau memerlukan
keputusan (logika Boolean dan perbandingan) sampai tugasnya selesai.
Desain dan analisis algorithma adalah suatu cabang khusus dalam ilmu
komputer yang mempelajari karakteristik dan performa dari suatu algorithma
dalam menyelesaikan masalah, terlepas dari implementasi algorithma
tersebut. Dalam cabang disiplin ini algorithma dipelajari secara abstrak,
terlepas dari sistem komputer atau bahasa pemrograman yang digunakan.
Algorithma yang berbeda dapat diterapkan pada suatu masalah dengan
kriteria yang sama.
Kompleksitas dari suatu algorithma merupakan ukuran seberapa
banyak komputasi yang dibutuhkan algorithma tersebut untuk
menyelesaikan masalah. Secara informal, algorithma yang dapat
menyelesaikan suatu permasalahan dalam waktu yang singkat memiliki
TP4 SMK NEGERI 1 PUNGGING
February6,2014
kompleksitas yang rendah, sementara algorithma yang membutuhkan waktu
lama untuk menyelesaikan masalahnya mempunyai kompleksitas yang tinggi.
Sejarah istilah "algorithma" berasal dari bahasa Latin, dari nama
seorang ahli matematika dari Uzbekistan Al Khawārizmi (hidup sekitar abad
ke-9), sebagaimana tercantum pada terjemahan karyanya dalam bahasa latin
dari abad ke-12 "Algorithmi de numero Indorum". Pada awalnya kata
algorithma adalah istilah yang merujuk kepada aturan-aturan aritmetis untuk
menyelesaikan persoalan dengan menggunakan bilangan numerik arab
(sebenarnya dari India, seperti tertulis pada judul di atas). Pada abad ke-18,
istilah ini berkembang menjadi algorithma, yang mencakup semua prosedur
atau urutan langkah yang jelas dan diperlukan untuk menyelesaikan suatu
permasalahan.
JENIS-JENIS ALGORITHMA
Terdapat beragam klasifikasi algoritma, dan setiap klasifikasi
mempunyai alasan tersendiri. Salah satu cara untuk melakukan klasifikasi
jenis-jenis algoritma adalah dengan memperhatikan paradigma dan metode
yang digunakan untuk mendesain algoritma tersebut.
Beberapa paradigma yang digunakan dalam menyusun suatu algoritma
akan dipaparkan dibagian ini. Masing-masing paradigma dapat digunakan
dalam banyak algoritma yang berbeda.
TP4 SMK NEGERI 1 PUNGGING
February6,2014
 Divide and Conquer
Paradigma untuk membagi suatu permasalahan besar menjadi
permasalahan-permasalahan yang lebih kecil. Pembagian masalah ini
dilakukan terus menerus sampai ditemukan bagian masalah kecil yang
mudah untuk dipecahkan. Singkatnya menyelesaikan keseluruhan
masalah dengan membagi masalah besar dan kemudian memecahkan
permasalahan-permasalahan kecil yang terbentuk.
 Dynamic Programming
Paradigma pemrograman dinamik akan sesuai jika digunakan pada
suatu masalah yang mengandung sub-struktur yang optimal dan
mengandung beberapa bagian permasalahan yang tumpang tindih .
Paradigma ini sekilas terlihat mirip dengan paradigma Divide and
Conquer, sama-sama mencoba untuk membagi permasalahan menjadi sub
permasalahan yang lebih kecil, tapi secara intrinsik ada perbedaan dari
karakter permasalahan yang dihadapi.
 Metode Serakah
Sebuah algoritma serakah mirip dengan sebuah Pemrograman
dinamik, bedanya jawaban dari submasalah tidak perlu diketahui dalam
setiap tahap dan menggunakan pilihan “serakah” apa yang dilihat terbaik
pada saat itu.
TP4 SMK NEGERI 1 PUNGGING
February6,2014
 Pseudo Code (Kode Semu)
Pseudo Code (kode semu) merupakan metode yang cukup efisien
untuk menggambarkan suatu algoritma . Pseudo Code dituliskan dengan
menggunakan bahasa yang mudah dipahami (boleh menggunakan bahasa
Indonesia) agar alur logika yang digambarkan dapat dimengeti oleh orang
awam sekalipun.
Flowchart Pseudo Code (kode semu) disusun dengan tujuan untuk
menggambarkan tahap-tahap penyelesaian suatu masalah dengan kata-
kata (teks). Metode ini mempunyai kelemahan, dimana penyusunan
algoritma dengan kode semu sangat dipengaruhi oleh tata bahasa
pembuatnya, sehingga kadang-kdang sulit dipahami oleh orang lain. Oleh
karena itu kemudian dikembangkan suatu metode lain yang dapat
menggambarkan suatu algoritma program secara lebih mudah dan
sederhana yaitu dengan menggunakan flowchart (diagram alir).
 Sistem Flowchart
Sistem flowchart merupakan diagram alir yang menggambarkan
suatu sistem peralatan komputer yang digunakan dalam proses
pengolahan data serta hubungan antar peralatan tersebut. Sistem flow
chart tidak digunakan untuk menggambarkan urutan langkah untuk
memecahkan masalah, tetapi hanya untuk menggambarkan prosedur
dalam sistem yang dibentuk.
TP4 SMK NEGERI 1 PUNGGING
February6,2014
B. KONSEP ALGORITHMA PEMROGRAMAN
“Algoritma adalah urutan langkah-langkah logis penyelesaian masalah
yang disusun secara sistematis dan logis”. Kata logis merupakan kata kunci
dalam algoritma. Langkah-langkah dalam algoritma harus logis dan
harusdapat ditentukan bernilai salah atau benar. Dalam beberapa konteks,
algoritma adalah spesifikasi urutan langkah untuk melakukan pekerjaan
tertentu.
Pertimbangan dalam pemilihan algoritmaadalah, pertama, algoritma
haruslah benar. Artinya algoritma akan memberikan keluaran yang
dikehendaki dari sejumlah masukan yang diberikan. Tidak peduli sebagus
apapun algoritma, kalau memberikan keluaran yang salah, pastilah algoritma
tersebut bukanlah algoritma yang baik.
Konsep Algoritma
TP4 SMK NEGERI 1 PUNGGING
February6,2014
Pertimbangan kedua yang harus diperhatikan adalah kita harus
mengetahui seberapa baik hasil yang dicapai oleh algoritma tersebut. Hal ini
penting terutama pada algoritma untuk menyelesaikan masalah yang
memerlukan aproksimasi hasil (hasil yang hanya berupa pendekatan).
Algoritma yang baik harus mampu memberikan hasil yang sedekat mungkin
dengan nilai yang sebenarnya.
Ketiga adalah efisiensi algoritma. Efisiensi algoritma dapat ditinjau dari
2 hal yaitu efisiensi waktu dan memori. Meskipun algoritma memberikan
keluaran yang benar (paling mendekati), tetapi jika kita harus menunggu
berjam-jam untuk mendapatkan keluarannya, algoritma tersebut biasanya
tidak akan dipakai, setiap orang menginginkan keluaran yang cepat. Begitu
juga dengan memori, semakin besar memori yang terpakai maka semakin
buruklah algoritma tersebut.
Dalam kenyataannya, setiap orang bisa membuat algoritma yang
berbeda untuk menyelesaikan suatu permasalahan, walaupun terjadi
perbedaan dalam menyusun algoritma, tentunya kita mengharapkan
keluaran yang sama. Jika terjadi demikian, carilah algoritma yang paling
efisien dan cepat.
TP4 SMK NEGERI 1 PUNGGING
February6,2014
BEDA ALGORITHMA DENGAN PROGRAM
Program adalah kumpulan pernyataan komputer, sedangkan metode
dan tahapan sistematis dalam program adalah algoritma. Program ditulis
dengan menggunakan bahasa pemrograman. Jadi bisa disebut bahwa
program adalah suatu implementasi dari bahasa pemrograman. Beberapa
pakar memberi formula bahwa :
Program = Algoritma + Bahasa (Struktur Data)
Bagaimanapun juga struktur data dan algoritma berhubungan sangat
erat pada sebuah program. Algoritma yang baik tanpa pemilihan struktur
data yang tepat akan membuat program menjadi kurang baik, demikian juga
sebaliknya. Pembuatan algoritma mempunyai banyak keuntungan di
antaranya :
 Pembuatan atau penulisan algoritma tidak tergantung pada bahasa
pemrograman manapun, artinya penulisan algoritma independen dari
bahasa pemrograman dan komputer yang melaksanakannya.
 Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa
pemrograman.
 Apapun bahasa pemrogramannya, output yang akan dikeluarkan sama
karena algoritmanya sama.
TP4 SMK NEGERI 1 PUNGGING
February6,2014
Beberapa hal yang perlu diperhatikan dalam membuat algoritma :
 Teks algoritma berisi deskripsi langkah-langkah penyelesaian masalah.
Deskripsi tersebut dapat ditulis dalam notasi apapun asalkan mudah
dimengerti dan dipahami.
 Tidak ada notasi yang baku dalam penulisan teks algoritma seperti
notasi bahasa pemrograman. Notasi yang digunakan dalam menulis
algoritma disebut notasi algoritmik.
 Setiap orang dapat membuat aturan penulisan dan notasi algoritmik
sendiri. Hal ini dikarenakan teks algoritma tidak sama dengan teks
program. Namun, supaya notasi algoritmik mudah ditranslasikan ke
dalam notasi bahasa pemrograman tertentu, maka sebaiknya notasi
algoritmik tersebut berkorespondensi dengan notasi bahasa
pemrograman secara umum.
 Notasi algoritmik bukan notasi bahasa pemrograman, karena itu
pseudocode dalam notasi algoritmik tidak dapat dijalankan oleh
komputer. Agar dapat dijalankan oleh komputer, pseudocode dalam
notasi algoritmik harus ditranslasikan atau diterjemahkan ke dalam
notasi bahasa pemrograman yang dipilih. Perlu diingat bahwa orang
yang menulis program sangat terikat dalam aturan tata bahasanya dan
spesifikasi mesin yang menjalannya.
 Algoritma sebenarnya digunakan untuk membantu kita dalam
mengkonversikan suatu permasalahan ke dalam bahasa pemrograman.
TP4 SMK NEGERI 1 PUNGGING
February6,2014
 Algoritma merupakan hasil pemikiran konseptual, supaya dapat
dilaksanakan oleh komputer, algoritma harus ditranslasikan ke dalam
notasi bahasa pemrograman. Ada beberapa hal yang harus diperhatikan
pada translasi tersebut, yaitu :
a) Pendeklarasian variable
Untuk mengetahui dibutuhkannya pendeklarasian variabel dalam
penggunaan bahasa pemrograman apabila tidak semua bahasa
pemrograman membutuhkannya.
b) Pemilihan tipe data
Apabila bahasa pemrograman yang akan digunakan membutuhkan
pendeklarasian variabel maka perlu hal ini dipertimbangkan pada
saat pemilihan tipe data.
c) Pemakaian instruksi-instruksi
Beberapa instruksi mempunyai kegunaan yang sama tetapi masing-
masing memiliki kelebihan dan kekurangan yang berbeda.
d) Aturan sintaksis
Pada saat menuliskan program kita terikat dengan aturan sintaksis
dalam bahasa pemrograman yang akan digunakan.
e) Tampilan hasil
Pada saat membuat algoritma kita tidak memikirkan tampilan hasil
yang akan disajikan. Hal-hal teknis ini diperhatikan ketika
mengkonversikannya menjadi program.
TP4 SMK NEGERI 1 PUNGGING
February6,2014
f) Cara pengoperasian compiler atau interpreter.
Bahasa pemrograman yang digunakan termasuk dalam kelompok
compiler atau interpreter.
C. STRUKTUR ALGORITHMA
Pada dasarnya, sebuah algoritma merupakan deskripsi pelaksanaan
suatu proses. Algoritma itu sendiri disusun oleh sederetan langkah instruksi
yang logis. Tiap langkah instruksi tersebut mengerjakan suatu tindakan
(aksi).
Bila suatu aksi dilaksanakan, maka sejumlah operasi yang bersesuaian
dengan aksi itu dikerjakan oleh pemroses. Efek dari pengerjaan suatu aksi
dapat diamati dengan membandingkan keadaan pada saat aksi belum dimulai
(t0), dan keadaan pada saat aksi selesai dikerjakan (t1).
t0 : keadaan sebelum aksi dikerjakan aksi
t1 : keadaan setelah aksi dikerjakan
Sebagai contoh, tinjau kembali algoritma yang menggambarkan proses
mempertukarkan larutan dari dua buah bejana A dan B. Pada setiap
pelaksanaan aksi amati keadaan awal dan keadaan akhir akhirnya
t0 : Bejana A berisi larutan berwarna merah, bejana B berisi larutan
berwarna biru (bejana C masih kosong)
TP4 SMK NEGERI 1 PUNGGING
February6,2014
1. Tuangkan larutan dari bejana A ke dalam bejana C
t1 : Bejana A kosong, bejana C berisi larutan berwarna Biru
t0 : Bejana A kosong, bejana B berisi larutan berwarna Merah
2. Tuangkan larutan dari bejana B ke dalam bejana A
t1 : Bejana A berisi larutan berwarna Merah, bejana B kosong
t0 : Bejana B kosong, bejana C berisi larutan berwarna Biru
3. Tuangkan larutan dari bejana C ke dalam bejana B
t1 : Bejana B berisi larutan berwarna Biru, bejana A sudah berisi larutan
berwarna Merah (bejana C kosong)
TP4 SMK NEGERI 1 PUNGGING
February6,2014
Algoritma berisi langkah suatu masalah. Langkah-langkah tersebut
dapat berupa runtunan aksi, pemilihan aksi, dan pengulangan aksi. Ketiga
jenis langkah tersebut membentuk konstruksi suatu algoritma. Jadi sebuah
algoritma dapat dibangun dari tiga buah struktur dasar, yaitu:
 Runtunan (sequence)
 Pemilihan (selection)
 Pengulangan (repetition)
a) RUNTUTAN (SEQUENCE)
Sebuah runtunan terdiri dari satu atau lebih instruksi.Tiap instruksi
dikerjakan secara berurutan sesuai dengan urutan penulisannya, yakni
sebuah instruksi dilaksanakan setelah instruksi sebelumnya selesai
dilaksanakan.Urutan instruksi menetukan keadaan akhir algoritma.Bila
urutan diubah, maka hasil akhirnya mungkin juga bisa berubah.
Perhatikan runtunan instruksi berikut:
A1
A2
A3
A4
A5
Sebagai contoh, tinjau kembali algoritma mempertukarkan larutan
di dalam dua buah bejana A dan B. Algoritma diatas disusun oleh runtunan
TP4 SMK NEGERI 1 PUNGGING
February6,2014
yang terdiri atas 3 buah instruksi. Tiap instruksi dikerjakan secara
berurutan, maka hasil akhir adalah hasil diinginkan.
Bila instruksi diubah, maka hasil akhirnya pun juga berubah
sehingga pertukaran isi dua buah bejana pun tidak benar. Karena itu,
penting perlu memperhatikan urutan aksi di dalam sebuah runtunan.
Urutan aksi di dalam runtunan mencerminkan cara berpikir si penyusun
algoritma dalam menuliskan langkah-langkah pemecahan masalah.
b) PEMILIHAN (SELECTION)
Adakalanya sebuah instruksi dikerjakan jika kondisi tertentu
dipenuhi. Contoh dalam algoritma pencarian data terkecil dilakukan
dengan membanding-bandingkan data. Mula-mula data pertama dianggap
data terkecil sementara (min). Kemudian membandingkan min dengan
data ke-2, 3, …..(n).
Selama proses perbandingan, bila data lebih kecil dari min, maka
date ke-j itu menjadi min yang baru. Langkah terakhir ditulis dalam
pernyataan berikut
Jika data ke-j lebih kecil dari min, maka
isikan data ke-j sebagai min yang baru
TP4 SMK NEGERI 1 PUNGGING
February6,2014
Pernyataan diatas dapat ditulis dalam struktur umum
if kondisi then
aksi
Dalam bahasa indonesia, if berati “jika” dan then artinya “maka”.
Kondisi adalah persyaratan yang dapat bernilai benar atau salah. Aksi
hanya dilaksanakan apabila kondisi bernilai benar.Sebaliknya, apabila
kondisi bernilai benar. Sebaliknya apabila bernilai salah, maka aksi tidak
dilaksanakan. Kata yang digarisbawahi, if dan then, merupakan kata kunci
(keywords) untuk struktur pemilihan ini.
Struktur pemilihan if-then hanya memberikan satu pilihan aksi bila
kondisi (persyartan) dipenuhi (bernilai benar), dan tidak memberi pilihan
aksi lain bila kondisi bernilai salah.
Bentuk pemilihan yang lebih umum ialah pemilihan satu dari dua
buah aksi bergantung pada nilai kondisinya. Apabila pilihan aksi yang
dilakukan lebih dari dua buah, maka struktur pemilihannya menjadi lebih
rumit, seperti pada contoh berikut (pemilihan bersarang)
If lampu pengatur lalu lintas berwarna merah then
anda harus berhenti
else
if lampu pengatur lalu lintas berwarna kuning then
anda boleh jalan tapi dengan hati-hati
else
anda dipersilahkan terus berjalan
TP4 SMK NEGERI 1 PUNGGING
February6,2014
Perhatikanlah bahwa penggunaan indentasi (rongak kosong)
membuat algoritma menjadi lebih mudah dibaca. Tanpa indentasi,
algoritma menjadi lebih sulit dibaca, misalnya algoritma ditulis seperti
dibawah ini
if lampu pengatur lalu lintas berwarna merah then
anda harus berhenti
elseif lampu pengatur lalu lintas berwarna kuning then
anda boleh jalan tapi dengan hati-hati else
anda dipersilahkan terus berjalan
Perancang algoritma sangat dianjurkan membuat indentasi agar
algoritma yang dibuat lebih mudah dibaca.
Contoh lain dari pemilihan bersarang adalah menentukan bilangan
terbesar dari tiga buah bilangan: x, y, dan z.
if x > y then
if x > z then
tulis x sebagai bilangan terbesar
else
tulis z sebagai bilangan terbesar
else
if y > z then
tulis y sebagai bilangan terbesar
else
tulis z sebagai bilangan terbesar
Kelebihan struktur pemilihan terletak pada kemampuannya yang
memungkinkan pemroses mengikuti jalur aksi yang berbeda berdasarkan
kondisi yang ada.Tanpa struktur pemilihan, kita tidak mungkin menulis
algoritma untuk permasalahan praktis yang demikian kompleks.
TP4 SMK NEGERI 1 PUNGGING
February6,2014
c) PENGULANGAN (REPETITION)
Salah satu kelebihan komputer adalah kemampuannya untuk
mengerjakan pekerjaan yang sama berulang kali tanpa mengenal lelah.
Sewaktu duduk di sekolah dasar, bila anda pernah dihukum oleh guru
untuk menuliskan sebuah kalimat sebanyak 500 kali, misalnya
dikarenakan anda nakal tidak mengerjakan PR. Misalkan kalimat yang
harus ditulis 500 kali tersebut adalah:
“Saya berjanji tidak akan nakal dan malas lagi”
Bila pekerjaan menulis kalimat ini diserahkan kepada komputer, maka
pemrogram mungkin menuliskannya sebagai berikut:
Algoritma menulis 500 kalimat
Deskripsi :
1. Saya berjanji tidak akan nakal dan malas lagi
2. Saya berjanji tidak akan nakal dan malas lagi
3. Saya berjanji tidak akan nakal dan malas lagi
4. Saya berjanji tidak akan nakal dan malas lagi
....
500
Tentu saja algoritma untuk menulis 500 buah kalimat seperti diatas
tidak elegan, karena instruksi “Saya berjanji tidak akan nakal dan malas
lagi” harus dibuat di dalam teks algoritma sebanyak 500 kali. Untuk
mengatasi hal ini, maka anda dapat menggunakan struktur pengulangan
TP4 SMK NEGERI 1 PUNGGING
February6,2014
for-do sehingga algoritma menulis 500 buah kalimat dapat ditulis sebagai
berikut:
Algoritma menulis 500 kalimat :
Menuliskan kalimat " Saya berjanji tidak akan nakal dan malas lagi "
Sebanyak 500 kali.
Deskripsi :
for K dari 1 sampai 500 do
tulis kalimat "Saya berjanji tidak akan nakal dan malas
lagi "
“K” adalah pencacah pengulangan yang dari 1 sampai 500. Komputer akan
melaksanakan aksi tulis kalimat tersebut sebanyak 500 kali.
Struktur pengulangan ini dapat ditulis secara umum sebagai berikut:
for pencacah pengulangan dari 1 sampai Kdo
aksi
Struktur pengulangan yang kedua adalah REPEAT yang terdiri atas
kata kunci repeat-until (repeat artinya “ulangi” dan until artinya “sampai”
atau “hingga”) yang mempunyai bentuk umum sebagai berikut:
Repeat
aksi
Until
kondisi
yang artinya adalah pengulangan aksi dilakukan hingga kondisi
(persyaratan) berhenti terpenuhi.
TP4 SMK NEGERI 1 PUNGGING
February6,2014
Struktur pengulangan yang ketiga adalah WHILE dengan kata kunci
while-do (while artinya “selagi” atau “selama” dan do artinya “lakukan”)
yang mempunyai bentuk umum sebagai berikut:
while kondisi do
aksi
yang artinya adalah selama kondisi (persyaratan) pengulangan masih
benar, maka aksi dikerjakan. Perbedaannya dengan repeat-until, jika pada
repeat-until kondisi pengulangan dievaluasi diakhir, sedangkan pada while-
do kondisi pengulangan dievaluasi di awal perhitungan.
Meskipun struktur repeat-until dan while-do mempunyai fungsi yang
mirip sehingga pada beberapa kasus dapat saling menggantikan, namun
secara umum penggunaannya bergantung pada spesifikasi masalah.
D. ALGORITHMA MENGGUNAKAN BAHASA NATURAL
Bahasa Natural atau yang biasa disebut Natural Language
Programming (NLP) merupakan cara penyajian suatu algoritma yang paling
sederhana dan paling mudah dimengerti. karena Bahasa Natural adalah
bahasa yang biasa kita gunakan sehari – hari namun tetap sesuai dengan
kaidah bahasa yang baku. Ada beberapa hal yang perlu diperhatikan jika kita
akan menyajikan suatu algoritma sebuah program dengan bahasa Natural,
antara lain Start dan End yang harus dituliskan secara explisit.
Bahasa Natural, Start biasanya dituliskan sebagai ‘inisialisasi’ atau
‘Mulai’ dan merupakan langkah pertama dalam algoritma, sedangkan End
TP4 SMK NEGERI 1 PUNGGING
February6,2014
sendiri dituliskan sebagai ‘selesai’ dan dituliskan pada akhir algoritma.
Namun sebenarnya tidak ada aturan baku dalam hal penamaan lain dari Start
dan End itu sendiri.
Salah satu contoh sederhana adalah algoritma untuk menentukan
sebuah bilangan adalah ganjil atau genap. Jadi diberikan input sebuah
bilangan dari user, dan program akan secara otomatis menentukan dan
memberikan output berupa informasi genap atau ganjil.
Contoh :
1. Inisialisasi : (START)
2. Input sebuah bilangan, masukkan ke dalam sebuah variabel, misalkan saja
bil.
3. Apakah bil modulus 2 sama dengan nol?
 Jika ya, maka bilangan tersebut adalah bilangan genap.
 Jika tidak, maka sudah dapat dipastikan bahwa bilangan tersebut
adalah bilangan ganjil.
4. Tampilkan jenis bilangan (genap, atau ganjil).
5. Apakah ingin mengulang proses?
 Jika ya, kembali ke langkah 2.
 Jika tidak, langsung ke langkah 5 (selesai).
6. Selesai : (END)
TP4 SMK NEGERI 1 PUNGGING
February6,2014
ISI / CONTENT
Pemrograman Bahasa Alami (NLP) adalah cara ontologi dibantu
pemrograman dalam hal kalimat bahasa alam, misalnya Bahasa Inggris.
Sebuah dokumen terstruktur dengan Content, bagian dan sub-bagian untuk
penjelasan kalimat bentuk dokumen NLP, yang sebenarnya adalah sebuah
program komputer. Sebuah contoh dari pemrograman bahasa alami adalah
dalam "sEnglish" yang pendek untuk "sistem bahasa Inggris".
Unit terkecil dari pernyataan di NLP adalah ‘kalimat’. Setiap kalimat
dinyatakan dalam bentuk konsep dari ontologi yang mendasari, atribut dalam
ontologi itu dan nama benda-benda dalam huruf kapital. Dalam sebuah teks
NLP setiap kalimat jelas kompilasi menjadi panggilan prosedur dalam bahasa
pemrograman yang mendasari tingkat tinggi seperti MATLAB, Oktaf, Scilab,
Pythondan-lain-lain.
Bahasa simbolik seperti [Mathematica] mampu Diartikan atau
ditafsirkan pengolahan pertanyaan oleh kalimat. Hal ini dapat
memungkinkan permintaan interaktif seperti yang diterapkan. Perbedaan
antara dan NLP adalah bahwa yang kedua membangun sebuah program
tunggal atau perpustakaan rutinitas yang diprogram melalui kalimat bahasa
alam dengan menggunakan ontologi yang mendefinisikan struktur data yang
tersedia dalam bahasa pemrograman tingkat tinggi.
Sebuah teks contoh dari program bahasa NLP Inggris (dalam sEnglish) adalah
sebagai berikut:
TP4 SMK NEGERI 1 PUNGGING
February6,2014
Yang mendefinisikan skema kontrol umpan balik menggunakan [sliding
mode kontrol] metode. Catatan ini menjelaskan NLP dalam bentuk umum,
tanpa spesifik tentang bahasa pemrograman tingkat tinggi yang mendasari.
E. PENGENALAN VARIABEL, TIPE DATA, KONSTANTA DAN OPERATOR
a) VARIABEL
Variabel adalah merupakan tempat penyimpanan data yang sifatnya
sementara.Variabel dialokasikan oleh computer untuk menampung nilai
data dan variable harus memiliki tipe data atau jenis data. Setiap variable
harus mempunyai nama untuk pemberian nama variable terdapat
beberapa syarat yaitu :
Syarat Penamaan Variabel :
 Panjang Karakter Maksimal 255 Karakter
 Tidak dapat menggunakan Spasi
TP4 SMK NEGERI 1 PUNGGING
February6,2014
 Tidak dapat dimulai dengan angka
 Tidak dapat menggunakan Tanda Baca selain ( _ )
Pendeklarasian Variabel adalah suatu kegiatan untuk mengenalkan
Nama Variabel dengan Tipe Data yang digunakan di Memory (Random
Access Memory) atau dapat juga didefenisikan sebagai awal pemesanan
tempat pada blok – blok memory. Didalam Visual Basic contohnya, sangat
dianjurkan untuk mendeklarasikan suatu variable dengan cara
menentukan nama dan type data yang digunakan.Pada saat
mendeklarasikan variable terdapat beberapa tempat yang dapat
digunakan yaitu :
 General Declarations Form / Module
 Didalam Procedure atau Fungsi
Mendeklarasikan variabel
 Memberikan nama variabel sebagai identitas pengenal
 Menentukan tipe data variable
Bentuk umum:
Var
NamaVariabel1,
NamaVariabel2,
:
:
NamaVariabelN : TipeData1;
NamaVariabel1,
NamaVariabel2,
:
TP4 SMK NEGERI 1 PUNGGING
February6,2014
:
NamaVariabelN : TipeData2;
:
:
NamaVariabel1,
NamaVariabel2,
:
:
NamaVariabelN : TipeDataN;
Contoh Deklarasi variabel :
Var
Angka1,
Angka2 :Integer;
Nama1,
Nama2 :String;
b) TIPE DATA
Tipe data atau Jenis Data dapat diartikan sebagai media untuk
mendefinisikan Variabel. Secara sederhana tipe data dapat didefinisikan
dengan istilah tempat untuk menentukan pemberian nilai terhadap suatu
variabel sesuai atau tidak dengan nilai yang diberikan oleh user. Dalam
versi lain tipe data juga diartikan sebagai batasan terhadap fungsi tanda
pengenal terhadap semua nilai yang diterima.
Logika yang dapat kita berikan adalah ketika kita menempatkan
tanda pengenal harga hanya mengenal angka, maka ketika kita
TP4 SMK NEGERI 1 PUNGGING
February6,2014
memberikan nilai berupa string maka secara otomatis data tersebut akan
ditolak karena nilai tersebut tidak dikenali oleh tipe data yang diberikan.
JENIS-JENIS TIPE DATA
1. Tipe data Integer / Ordinal
Tipe data ini adalah tipe data yang berupa bilangan bulat yang
akan digunakan untuk operasi matematika. Ada beberapa tipe data
yang termasuk integer, yaitu antara lain:
 ShortInt : memiliki nilai range -128 sampai 127 (signed 8-bit)
 SmallInt : memiliki nilai range antara - 32768 sampai dengan 32767
(signed 16-bit)
 LongInt : memiliki nilai range -2147483648 sampai 2147483647
(signed 32-bit )
 Int64 : memiliki range -263+1 sampai 263-1 (signed 64-bit)
 Byte : memiliki nilai range 0 sampai 255 (unsigned 8-bit)
 Word : memiliki nilai range 0 sampai 65535 (unsigned 16-bit)
 LongWord : memiliki nilain range 0 sampai 4294967295(unsigned
32-bit )
Pada pemakaian integer type di implemetasi 16 bit maka:
 Integer : memiliki range antara - 32768 sampai dengan 32767
(signed 16-bit)
 Cardinal : memiliki range 0 sampai 65535 (unsigned 16-bit)
TP4 SMK NEGERI 1 PUNGGING
February6,2014
Pada pemakaian integer type di implemetasi 32 bit maka:
 Integer : memiliki range antara -2147483648 sampai 2147483647
(signed 32-bit)
 Cardinal : memiliki range 0 sampai 4294967295 (unsigned 32-bit)
Penulisan pada deklarasi variable:
[variable] : [type data integer];
2. Tipe data Boolean
Tipe data ini hanya terdiri dari nilai logika True (1) dan False (0).
Ada beberapa jenis dari tipe Boolean ini, yaitu:
 Boolean : berukuran 1 byte (false 0, true 1)
 ByteBool : berukuran Byte (false 0, true 255 - 8 bit)
 Bool : berukuran Double (false 0, true -1)
 WordBool : berukuran Word (false 0, true 65535 - 16 bit)
 LongBool : berukuran Double (false 0, true -1)
Penulisan pada deklarasi variable:
[variable] : [type data boolean];
3. Tipe data Floating Point /Real
Tipe data Floating Point/Real ini meliputi bentuk bilangan
desimal. Beberapa bentuk dari tipe data ini adalah :
TP4 SMK NEGERI 1 PUNGGING
February6,2014
 Real : memiliki range 2.9 x 10-39 sampai 1.7 x 1038
 Single : memiliki range 1.5 x 10-45 sampai 3.4 x 1038
 Double : memiliki range 5.0 x 10-324 sampai 1.7 x 104392
 Extended : memiliki range 3.6 x 10-4951 sampai 1.1 x 104392
 Currency : memiliki range -922337203685477.5808 sampai
922337203685477.5808
 Comp : memiliki range -263+1 sampai 263-1
Untuk currency, tipe data ini memiliki kepresisian tinggi yaitu 4
angka dibelakang koma (pembulatan bilangan real menjadi bilangan
desimal dengan 4 angka dibelakang koma). Biasanya digunakan untuk
satuan uang. Dan untuk comp, tipe data ini akan menyimpan nilai
integer (bulat) dari nilai decimal yang masuk (melakukan pembulatan).
Penulisan pada deklarasi variable:
[variable] : [type data floating point];
4. Tipe Data Enumerated
Tipe data Enumeratedadalah tipe data yang berupa nilai urutan
dari data yang telah dibuat.
Penulisan pada deklarasi variable :
[variable] : ( [data0],[data1],[data2] );
Masing-masing data akan diberikan nilai integer secara urut.
Urutan dimulai dengan nilai urut 0.
TP4 SMK NEGERI 1 PUNGGING
February6,2014
Jika ingin melihat nilai integer dari setiap data maka dengan perintah:
ord( [data1] )
5. Tipe data Sub Range
Tipe data ini memungkinkan kita membuat range sendiri. Dengan
perintah:
[variable] : [constant start]..[constant end];
contoh:
a :5.....10;
Jika kita mendeklarasikan 5 adalah a maka proses compile akan
terus berjalan jika kita mendeklarasikan 15 adalah a maka proses
compile tidak akan berjalan atau berhenti, sehingga terdapat error pada
proses compile sehingga tidak dapat di run.
6. Tipe data String dan Character
Tipe data String adalah tipe data yang merupakan rangkaian dari
huruf, angka atau symbol yang tidak mengandung harga (nilai).
Beberapa tipe data string adalah sebagai berikut:
 ShortString : Dapat menampung 255 karakter (ANSIChar)
 AnsiString : Dapat menampung ~231 karakter (ANSIChar)
 WideString : Dapat menampung ~230 karakter (WideChar)
 String : Dapat menampung 255 karakter (ANSIChar)
TP4 SMK NEGERI 1 PUNGGING
February6,2014
Tipe data Character adalah tipe data yang berkaitan dengan
karakter ( huruf, angka, symbol). Ada beberapa tipe data dari Character
yaitu:
 ANSIChar : Satu karakter ANSI
 WideChar : Satu karakter Unicode
 Char : Sama dengan ANSIChar
Jika Anda ingin memunculkan karakter dari nomor urut, Anda
dapat menggunakan perintah chr([NoUrut]). Dan untuk mengetaui no
urut dari sebuah karakter, Anda dapat menuliskan perintah
:chr([karakter]);
c) KONSTANTA
Kontanta adalah tempat penyimpanan data yang sifatnya tetap.
Konstanta sama seperti halnya variable yaitu sama – sama sebagai tempat
penyimpanan data akan tetapi Konstanta hanya dapat memiliki satu Data
dan tidak memiliki tipe data. Konstanta hanya mengenal 2 tipe data / jenis
data yaitu :
 Data String adalah tipe data yang digunakan untuk menyimpan barisan
karakter.
 Data Double adalah tipe bilangan riil termasuk bilangan pembagian
atau koma.
TP4 SMK NEGERI 1 PUNGGING
February6,2014
Pada saat mendeklarasikan Konstanta terdapat beberapa tempat
yang dapat digunakan yaitu :
 General Declarations Form / Module
 Konstanta Didalam Procedure atau Fungsi
Bentuk Umum :
Const
NamaKonstanta1 = NilaiKonstanta1;
NamaKonstanta2 = NilaiKonstanta2;
:
:
NamaKonstantaN = NilaiKonstantaN;
Contoh deklarasi konstanta:
Const
Jumlah = 100; {integer}
Nama = 'Rini'; {string}
Konstanta Bertipe
Konstanta bertipe adalah suatu konstanta yang dideklarasikan dengan tipe
tertentu:
Bentuk Umum:
Const
NamaKonstanta1:Tipe1 = NilaiKonstanta1;
NamaKonstanta2:Tipe2 = NilaiKonstanta2;
:
:
NamaKonstantaN:TipeN = NilaiKonstantaN;
TP4 SMK NEGERI 1 PUNGGING
February6,2014
Contoh deklarasi konstanta:
Const
Jumlah : integer = 100;
Nama : string = ‘Rini’;
d) OPERATOR
Operator adalah sebuah simbol yang berguna dalam
memerintahkan suatu perintah dalam komputer untuk menjalankan
persamaan matematika atau suatu logika, misalnya untuk:
 Menjumlahkan dua nilai
 Memberikan nilai ke suatu variabel (assignment)
 Membandingkan kesamaan dua nilai.
Contoh penggunaan operasi operator diatas:
$x = 100;
$y = 10;
TP4 SMK NEGERI 1 PUNGGING
February6,2014
Operasi Operator Contoh Sintax
Penjumlahan + $x + $y
Pengurangan - $x – $y
Perkalian * $x * $y
Pembagian / $x / $y
Sisa Pembagi % $x % $y
Increament ++ $x++
Decreament -- $x–
F. PSEUDOCODE
Pseudocode adalah bentuk penulisan algoritma yang menggunakan
struktur bahasa pemrograman sederhana. Walaupun pseudocode memakai
struktur bahasa pemrograman, pseudocode tidak mengikuti aturan penulisan
bahasa pemrograman manapun. Mengapa begitu? Karena pseudocode
dituliskan hanya untuk mempermudah seseorang memahami sebuah
algoritma.
Dengan begitu, pseudocode hanyalah menyerupai kode program saja,
dan tidak bisa dimengerti langsung oleh komputer.Pseudocode baru bisa
diolah oleh komputer jika telah mengikuti aturan penulisan sebuah bahasa
pemrograman.(Bisa bahasa C, Java, Pascal, dan lain-lain.)
Contoh-contoh penulisan pseudocode:
1. Menampilkan tulisan Test
Start
Print ‚Test‛
End
TP4 SMK NEGERI 1 PUNGGING
February6,2014
2. Menampilkan variable berisi tulisan Test
Start
a = ‚Test‛
Print a
End
3. Menghitung hasil penjumlahan
Start
Read b, c
d = b + c
Print b, ‚ ditambah ‚, c, ‚ hasilnya ‚, d
End
4. Menampilkan isi variable yang hanya lebih kecil dari 10
Start
Read e
If e < 10 Then
Print e
Else
Print ‚Masukkan angka kurang dari 10!‛
End If
End
5. Menampilkan isi variable yang hanya di antara 0 dan 10
Start
Read f
If f > 0 Then
If f < 10 Then
Print f
Else
Print ‚Masukkan angka di antara 0 dan 10!‛
End If
Else
Print ‚Masukkan angka di antara 0 dan 10!‛
End If
End
TP4 SMK NEGERI 1 PUNGGING
February6,2014
6. Menampilkan mata pelajaran sesuai nomor yang dimasukkan
Start
Print ‚Masukkan nomor mata pelajaran Anda (1-3):‛
Read g
Switch g
Case 1 : Print ‚Matematika‛
Case 2 : Print ‚Bahasa Indonesia‛
Case 3 : Print ‚Bahasa Inggris‛
Else : Print ‚Masukkan hanya nomor 1-3‛
End Switch
End
7. Menampilkan tulisan Test sebanyak 5 kali dengan fungsi For
Start
For h = 1 To 5 Do
Print ‚Test ‛
End For
End
8. Menampilkan tulisan Test sebanyak 5 kali dengan fungsi While-Do
Start
i = 1
While i <= 5 Do
Print ‚Test ‛
i = i + 1
End While
End
9. Menampilkan tulisan Test sebanyak 5 kali dengan fungsi Repeat-Until
Start
j = 1
Repeat
Print ‚Test ‛
j = j + 1
Until j <= 5
End
TP4 SMK NEGERI 1 PUNGGING
February6,2014
G. FLOWCHART
Flowchart atau diagram alir merupakan sebuah diagram dengan
simbol-simbol grafis yang menyatakan aliran algoritma atau proses yang
menampilkan langkah-langkah yang disimbolkan dalam bentuk kotak,
beserta urutannya dengan menghubungkan masing masing langkah tersebut
menggunakan tanda panah. Diagram ini bisa memberi solusi selangkah demi
selangkah untuk penyelesaian masalah yang ada di dalam proses atau
algoritma tersebut.
Tujuan utama penggunaan flowchart adalah untuk menyederhanakan
rangkaian proses atau prosedur untuk memudahkan pemahaman pengguna
terhadap informasi tersebut. Oleh karena itu, design sebuah flowchart harus
ringkas, jelas, dan logis.
Jenis jenis Flowchart
Ada beberapa jenis flowchart diantaranya:
1. Bagan alir sistem (systems flowchart).
2. Bagan alir dokumen (document flowchart).
3. Bagan alir skematik (schematic flowchart).
4. Bagan alir program (program flowchart).
5. Bagan alir proses (process flowchart).
TP4 SMK NEGERI 1 PUNGGING
February6,2014
System Flowchart
System flowchart dapat didefinisikan sebagai bagan yang menunjukkan
arus pekerjaan secara keseluruhan dari sistem.Bagan ini menjelaskan urut-
urutan dari prosedur-prosedur yang ada di dalam sistem. Bagan alir sistem
menunjukkan apa yang dikerjakan di sistem.
Document Flowchart
Bagan alir dokumen (document flowchart) atau disebut juga bagan alir
formulir (form flowchart) atau paperwork flowchart merupakan bagan alir
yang menunjukkan arus dari laporan dan formulir termasuk tembusan-
tembusannya.
TP4 SMK NEGERI 1 PUNGGING
February6,2014
Schematic Flowchart
Bagan alir skematik (schematic flowchart) merupakan bagan alir yang
mirip dengan bagan alir sistem, yaitu untuk menggambarkan prosedur di
dalam sistem.Perbedaannya adalah, bagan alir skematik selain menggunakan
simbol-simbol bagan alir sistem, juga menggunakan gambar-gambar
komputer dan peralatan lainnya yang digunakan.Maksud penggunaan
gambar-gambar ini adalah untuk memudahkan komunikasi kepada orang
yang kurang paham dengan simbol-simbol bagan alir. Penggunaan gambar-
gambar ini memudahkan untuk dipahami, tetapi sulit dan lama
menggambarnya.
TP4 SMK NEGERI 1 PUNGGING
February6,2014
Program Flowchart
Bagan alir program (program flowchart) merupakan bagan yang
menjelaskan secara rinci langkah-langkah dari proses program. Bagan alir
program dibuat dari verifikasi bagan alir sistem.
Bagan alir program dapat terdiri dari dua macam, yaitu bagan alir logika
program (program logic flowchart) dan bagan alir program komputer
terinci (detailed computer program flowchart). Bagan alir logika program
digunakan untuk menggambarkan tiap-tiap langkah di dalam program
komputer secara logika.
Bagan alat- logika program ini dipersiapkan oleh analis sistem.Gambar
berikut menunjukkan bagan alir logika program. Bagan alir program
komputer terinci (detailed computer program flow-chart) digunakan untuk
TP4 SMK NEGERI 1 PUNGGING
February6,2014
menggambarkan instruksi-instruksi program komputer secara terinci. Bagan
alir ini dipersiapkan oleh pemrogram.
Process Flowchart
Bagan alir proses (process flowchart) merupakan bagan alir yang
banyak digunakan di teknik industri. Bagan alir ini juga berguna bagi analis
sistem untuk menggambarkan proses dalam suatu prosedur.
TP4 SMK NEGERI 1 PUNGGING
February6,2014
SIMBOL DAN FUNGSI FLOWCHART
Pedoman Membuat Flowchart
Bila seorang analis dan programmer akan membuat flowchart, ada
beberapa petunjuk yang harus diperhatikan, seperti:
 Flowchart digambarkan dari halaman atas ke bawah dan dari kiri
kekanan.
 Aktivitas yang digambarkan harus didefinisikan secara hati-hati dan
definisi ini harus dapat dimengerti oleh pembacanya.
 Kapan aktivitas dimulai dan berakhir harus ditentukan secara jelas.
TP4 SMK NEGERI 1 PUNGGING
February6,2014
 Setiap langkah dari aktivitas harus diuraikan dengan menggunakan
deskripsi kata kerja
 Setiap langkah dari aktivitas harus berada pada urutan yang benar.
 Lingkup dan range dari aktifitas yang sedang digambarkan harusditelusuri
dengan hati-hati. Percabangan-percabangan yang memotong aktivitas
yang sedang digambarkan tidak perlu digambarkan pada flowchart yang
sama. Simbol konektor harus digunakan dan percabangannya diletakan
pada halaman yang terpisah atau hilangkan seluruhnya bila
percabangannya tidak berkaitan dengan sistem.
 Gunakan simbol-simbol flowchart yang standar.
Contoh
TP4 SMK NEGERI 1 PUNGGING
February6,2014
Keterangan :
Dari gambar flowchart di atas terlihat bahwa suatu flowchart harus
terdapat proses persiapan dan proses akhir. Dan yang menjadi topik dalam
pembahasan ini adalah tahap proses. Karena kegiatan ini banyak
mengandung variasi sesuai dengan kompleksitas masalah yang akan
dipecahkan. Walaupun tidak ada kaidah-kaidah yang baku dalam penyusunan
flowchart, namun ada beberapa anjuran yaitu:
 Hindari pengulangan proses yang tidak perlu dan logika yang berbelit
sehingga jalannya proses menjadi singkat
 Penggambaran flowchart yang simetris dengan arah yang jelas.
 Sebuah flowchart diawali dari satu titik START dan diakhiri dengan END.

More Related Content

What's hot

Dasar dasar algoritma - 1-1
Dasar dasar algoritma - 1-1Dasar dasar algoritma - 1-1
Dasar dasar algoritma - 1-1Rachmat Narendra
 
PENGERTIAN ALGORITMA DAN PEMROGRAMAN
PENGERTIAN ALGORITMA DAN PEMROGRAMANPENGERTIAN ALGORITMA DAN PEMROGRAMAN
PENGERTIAN ALGORITMA DAN PEMROGRAMANAziz Moeslim
 
Pertemuan 2 Pemrograman Dasar
Pertemuan 2 Pemrograman DasarPertemuan 2 Pemrograman Dasar
Pertemuan 2 Pemrograman DasarDisma Ariyanti W
 
Modul Logika dan algoritma
Modul Logika dan algoritmaModul Logika dan algoritma
Modul Logika dan algoritmalinda_rosalina
 
Pengantar Algoritma Dan Program
Pengantar Algoritma Dan ProgramPengantar Algoritma Dan Program
Pengantar Algoritma Dan ProgramAkmal Fajar
 
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 pemrogramanMastur Cell
 
Algoritma dan pemrograman - Disusun oleh Fitri Ratna Dewi
Algoritma dan pemrograman - Disusun oleh Fitri Ratna DewiAlgoritma dan pemrograman - Disusun oleh Fitri Ratna Dewi
Algoritma dan pemrograman - Disusun oleh Fitri Ratna DewiFitri Ratna Dewi
 
Algoritma pemrograman
Algoritma pemrogramanAlgoritma pemrograman
Algoritma pemrogramanFebri Fazain
 
Bahan ajar-dasar-pemrograman
Bahan ajar-dasar-pemrogramanBahan ajar-dasar-pemrograman
Bahan ajar-dasar-pemrogramanAndri Yanto
 
Dasar Pemrogaman Algoritma
Dasar Pemrogaman AlgoritmaDasar Pemrogaman Algoritma
Dasar Pemrogaman AlgoritmaKhairul Anwar
 
Module algoritma
Module algoritma Module algoritma
Module algoritma Rony BolaNk
 
Dasar dasar algoritma - 3 kontrol-1
Dasar dasar algoritma - 3  kontrol-1Dasar dasar algoritma - 3  kontrol-1
Dasar dasar algoritma - 3 kontrol-1Rachmat Narendra
 
Sejarah Algoritma
Sejarah Algoritma Sejarah Algoritma
Sejarah Algoritma casnadi
 

What's hot (20)

Dasar dasar algoritma - 1-1
Dasar dasar algoritma - 1-1Dasar dasar algoritma - 1-1
Dasar dasar algoritma - 1-1
 
Pemrograman dasar
Pemrograman dasarPemrograman dasar
Pemrograman dasar
 
PENGERTIAN ALGORITMA DAN PEMROGRAMAN
PENGERTIAN ALGORITMA DAN PEMROGRAMANPENGERTIAN ALGORITMA DAN PEMROGRAMAN
PENGERTIAN ALGORITMA DAN PEMROGRAMAN
 
Pertemuan 2 Pemrograman Dasar
Pertemuan 2 Pemrograman DasarPertemuan 2 Pemrograman Dasar
Pertemuan 2 Pemrograman Dasar
 
Dasar dasar algoritma - 2
Dasar dasar algoritma - 2Dasar dasar algoritma - 2
Dasar dasar algoritma - 2
 
3.algoritma dasar
3.algoritma dasar3.algoritma dasar
3.algoritma dasar
 
Definisi Algoritma
Definisi AlgoritmaDefinisi Algoritma
Definisi Algoritma
 
Modul Logika dan algoritma
Modul Logika dan algoritmaModul Logika dan algoritma
Modul Logika dan algoritma
 
Pengantar Algoritma Dan Program
Pengantar Algoritma Dan ProgramPengantar Algoritma Dan Program
Pengantar Algoritma Dan Program
 
Laporan Algoritma dan Pemrograman Modul 1
Laporan Algoritma dan Pemrograman Modul 1Laporan Algoritma dan Pemrograman Modul 1
Laporan Algoritma dan Pemrograman Modul 1
 
Algoritam1
Algoritam1Algoritam1
Algoritam1
 
Algoritma dan pemrograman
Algoritma dan pemrogramanAlgoritma dan pemrograman
Algoritma dan pemrograman
 
Algoritma dan pemrograman - Disusun oleh Fitri Ratna Dewi
Algoritma dan pemrograman - Disusun oleh Fitri Ratna DewiAlgoritma dan pemrograman - Disusun oleh Fitri Ratna Dewi
Algoritma dan pemrograman - Disusun oleh Fitri Ratna Dewi
 
Algoritma pemrograman
Algoritma pemrogramanAlgoritma pemrograman
Algoritma pemrograman
 
Bahan ajar-dasar-pemrograman
Bahan ajar-dasar-pemrogramanBahan ajar-dasar-pemrograman
Bahan ajar-dasar-pemrograman
 
Pengenalan Algoritma Komputer
Pengenalan Algoritma KomputerPengenalan Algoritma Komputer
Pengenalan Algoritma Komputer
 
Dasar Pemrogaman Algoritma
Dasar Pemrogaman AlgoritmaDasar Pemrogaman Algoritma
Dasar Pemrogaman Algoritma
 
Module algoritma
Module algoritma Module algoritma
Module algoritma
 
Dasar dasar algoritma - 3 kontrol-1
Dasar dasar algoritma - 3  kontrol-1Dasar dasar algoritma - 3  kontrol-1
Dasar dasar algoritma - 3 kontrol-1
 
Sejarah Algoritma
Sejarah Algoritma Sejarah Algoritma
Sejarah Algoritma
 

Viewers also liked

Pengantar Kecerdasan Buatan
Pengantar Kecerdasan BuatanPengantar Kecerdasan Buatan
Pengantar Kecerdasan BuatanHerman Tolle
 
Macam-Macam Teknik Pengambilan Gambar
Macam-Macam Teknik Pengambilan GambarMacam-Macam Teknik Pengambilan Gambar
Macam-Macam Teknik Pengambilan GambarArdian Restu
 
Definisi kecerdasan buatan
Definisi kecerdasan buatanDefinisi kecerdasan buatan
Definisi kecerdasan buatanAs As
 
teknik cara pengambilan gambar dan editing video menggunakan corel video stud...
teknik cara pengambilan gambar dan editing video menggunakan corel video stud...teknik cara pengambilan gambar dan editing video menggunakan corel video stud...
teknik cara pengambilan gambar dan editing video menggunakan corel video stud...Agung Rismawan
 
Memahami cara penggunaan tata cahaya english
Memahami cara penggunaan tata cahaya englishMemahami cara penggunaan tata cahaya english
Memahami cara penggunaan tata cahaya englishEko Supriyadi
 

Viewers also liked (20)

Perangkat audio
Perangkat audioPerangkat audio
Perangkat audio
 
Proses capturing
Proses capturingProses capturing
Proses capturing
 
Pengantar Kecerdasan Buatan
Pengantar Kecerdasan BuatanPengantar Kecerdasan Buatan
Pengantar Kecerdasan Buatan
 
Macam-Macam Teknik Pengambilan Gambar
Macam-Macam Teknik Pengambilan GambarMacam-Macam Teknik Pengambilan Gambar
Macam-Macam Teknik Pengambilan Gambar
 
Definisi kecerdasan buatan
Definisi kecerdasan buatanDefinisi kecerdasan buatan
Definisi kecerdasan buatan
 
teknik cara pengambilan gambar dan editing video menggunakan corel video stud...
teknik cara pengambilan gambar dan editing video menggunakan corel video stud...teknik cara pengambilan gambar dan editing video menggunakan corel video stud...
teknik cara pengambilan gambar dan editing video menggunakan corel video stud...
 
Memahami cara penggunaan tata cahaya english
Memahami cara penggunaan tata cahaya englishMemahami cara penggunaan tata cahaya english
Memahami cara penggunaan tata cahaya english
 
Sistem komunikasi Broadcast SMKN 1 Pungging
Sistem komunikasi Broadcast SMKN 1 PunggingSistem komunikasi Broadcast SMKN 1 Pungging
Sistem komunikasi Broadcast SMKN 1 Pungging
 
Sistem Komputer Pengenalan komputer
Sistem Komputer Pengenalan komputerSistem Komputer Pengenalan komputer
Sistem Komputer Pengenalan komputer
 
Sistem jaringan komputer
Sistem jaringan komputerSistem jaringan komputer
Sistem jaringan komputer
 
Teknik penyiaran 1 Sejarah dan Dasr-Dasar Penyiaran
Teknik penyiaran 1 Sejarah dan Dasr-Dasar PenyiaranTeknik penyiaran 1 Sejarah dan Dasr-Dasar Penyiaran
Teknik penyiaran 1 Sejarah dan Dasr-Dasar Penyiaran
 
Sop penyiaran Broadcast SMKN 1 Pungging
Sop penyiaran Broadcast SMKN 1 PunggingSop penyiaran Broadcast SMKN 1 Pungging
Sop penyiaran Broadcast SMKN 1 Pungging
 
Menyusun produksi
Menyusun produksi Menyusun produksi
Menyusun produksi
 
Mengenal jenis jenis file video
Mengenal jenis jenis file videoMengenal jenis jenis file video
Mengenal jenis jenis file video
 
Sejarah dan dasar fotografi
Sejarah dan dasar fotografiSejarah dan dasar fotografi
Sejarah dan dasar fotografi
 
Istilah dalam broadcasting
Istilah dalam broadcastingIstilah dalam broadcasting
Istilah dalam broadcasting
 
Master control
Master controlMaster control
Master control
 
Dasar dasar video)
Dasar dasar video)Dasar dasar video)
Dasar dasar video)
 
Jurnalistik
JurnalistikJurnalistik
Jurnalistik
 
Desain produksi siaran
Desain produksi siaranDesain produksi siaran
Desain produksi siaran
 

Similar to Dasar pemrograman ( algorithma pemrograman )

Algoritma & dasar pemrograman
Algoritma & dasar pemrogramanAlgoritma & dasar pemrograman
Algoritma & dasar pemrogramanSahat Tua
 
Algoritma dan pemrograman; teori dan praktik dalam pascal edisi kedua normal ...
Algoritma dan pemrograman; teori dan praktik dalam pascal edisi kedua normal ...Algoritma dan pemrograman; teori dan praktik dalam pascal edisi kedua normal ...
Algoritma dan pemrograman; teori dan praktik dalam pascal edisi kedua normal ...farizky berian
 
Algoritma pemrograman terstruktur
Algoritma pemrograman terstrukturAlgoritma pemrograman terstruktur
Algoritma pemrograman terstrukturRaden Maulana
 
Algoritma dan pemrograman; teori dan praktik dalam pascal edisi kedua normal ...
Algoritma dan pemrograman; teori dan praktik dalam pascal edisi kedua normal ...Algoritma dan pemrograman; teori dan praktik dalam pascal edisi kedua normal ...
Algoritma dan pemrograman; teori dan praktik dalam pascal edisi kedua normal ...Bay Cliquers
 
Dasar Algoritma
Dasar Algoritma Dasar Algoritma
Dasar Algoritma casnadi
 
Dasar pemrograman
Dasar pemrogramanDasar pemrograman
Dasar pemrogramanUNTUNGSG
 
Bab 1 pengantar algoritma
Bab 1 pengantar algoritmaBab 1 pengantar algoritma
Bab 1 pengantar algoritmaKang Koko
 
Makalah algoritma dan hubungannya dengan pemrograman
Makalah algoritma dan hubungannya dengan pemrogramanMakalah algoritma dan hubungannya dengan pemrograman
Makalah algoritma dan hubungannya dengan pemrogramanwanakuroyuri
 
Makalah algoritma dan hubungannya dengan pemrograman
Makalah algoritma dan hubungannya dengan pemrogramanMakalah algoritma dan hubungannya dengan pemrograman
Makalah algoritma dan hubungannya dengan pemrogramanwanakuroyuri
 
algoritma pemrogaman 4.4.44.4.4.4.pptx
algoritma pemrogaman 4.4.44.4.4.4.pptxalgoritma pemrogaman 4.4.44.4.4.4.pptx
algoritma pemrogaman 4.4.44.4.4.4.pptx5160411341ShalehEfri
 
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
 
Algoritma dan-pemrograman
Algoritma dan-pemrogramanAlgoritma dan-pemrograman
Algoritma dan-pemrogramanimmunandar
 
Algoritma Pemrograman
Algoritma Pemrograman Algoritma Pemrograman
Algoritma Pemrograman hanujisudiman
 

Similar to Dasar pemrograman ( algorithma pemrograman ) (20)

Algoritma & dasar pemrograman
Algoritma & dasar pemrogramanAlgoritma & dasar pemrograman
Algoritma & dasar pemrograman
 
Algoritma dan pemrograman; teori dan praktik dalam pascal edisi kedua normal ...
Algoritma dan pemrograman; teori dan praktik dalam pascal edisi kedua normal ...Algoritma dan pemrograman; teori dan praktik dalam pascal edisi kedua normal ...
Algoritma dan pemrograman; teori dan praktik dalam pascal edisi kedua normal ...
 
Algoritma pemrograman terstruktur
Algoritma pemrograman terstrukturAlgoritma pemrograman terstruktur
Algoritma pemrograman terstruktur
 
Algoritma dan pemrograman; teori dan praktik dalam pascal edisi kedua normal ...
Algoritma dan pemrograman; teori dan praktik dalam pascal edisi kedua normal ...Algoritma dan pemrograman; teori dan praktik dalam pascal edisi kedua normal ...
Algoritma dan pemrograman; teori dan praktik dalam pascal edisi kedua normal ...
 
Dasar Algoritma
Dasar Algoritma Dasar Algoritma
Dasar Algoritma
 
Pertemuan 1
Pertemuan 1Pertemuan 1
Pertemuan 1
 
Makalah Algoritma
Makalah AlgoritmaMakalah Algoritma
Makalah Algoritma
 
Dasar pemrograman
Dasar pemrogramanDasar pemrograman
Dasar pemrograman
 
Bab 1 pengantar algoritma
Bab 1 pengantar algoritmaBab 1 pengantar algoritma
Bab 1 pengantar algoritma
 
Modul Pemrograman Dasar.pdf
Modul Pemrograman Dasar.pdfModul Pemrograman Dasar.pdf
Modul Pemrograman Dasar.pdf
 
Modul algoritma pemrograman-dasar x rpl
Modul algoritma pemrograman-dasar x rplModul algoritma pemrograman-dasar x rpl
Modul algoritma pemrograman-dasar x rpl
 
Pemrograman dasar
Pemrograman dasarPemrograman dasar
Pemrograman dasar
 
Makalah algoritma dan hubungannya dengan pemrograman
Makalah algoritma dan hubungannya dengan pemrogramanMakalah algoritma dan hubungannya dengan pemrograman
Makalah algoritma dan hubungannya dengan pemrograman
 
Makalah algoritma dan hubungannya dengan pemrograman
Makalah algoritma dan hubungannya dengan pemrogramanMakalah algoritma dan hubungannya dengan pemrograman
Makalah algoritma dan hubungannya dengan pemrograman
 
algoritma pemrogaman 4.4.44.4.4.4.pptx
algoritma pemrogaman 4.4.44.4.4.4.pptxalgoritma pemrogaman 4.4.44.4.4.4.pptx
algoritma pemrogaman 4.4.44.4.4.4.pptx
 
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
 
Algoritma dan-pemrograman
Algoritma dan-pemrogramanAlgoritma dan-pemrograman
Algoritma dan-pemrograman
 
Algoritma Pemrograman
Algoritma Pemrograman Algoritma Pemrograman
Algoritma Pemrograman
 

More from MULTIMEDIA 'n BROADCASTING SMKN 1 PUNGGING MOJOKERTO

More from MULTIMEDIA 'n BROADCASTING SMKN 1 PUNGGING MOJOKERTO (20)

KD Mendiskusikan format gambar
KD Mendiskusikan format gambarKD Mendiskusikan format gambar
KD Mendiskusikan format gambar
 
Menerapkan tata cahaya dalam pengambilan gambar
Menerapkan tata cahaya dalam pengambilan gambarMenerapkan tata cahaya dalam pengambilan gambar
Menerapkan tata cahaya dalam pengambilan gambar
 
Menerapkan prinsip desain user interface pada multimedia interaktif berbasis ...
Menerapkan prinsip desain user interface pada multimedia interaktif berbasis ...Menerapkan prinsip desain user interface pada multimedia interaktif berbasis ...
Menerapkan prinsip desain user interface pada multimedia interaktif berbasis ...
 
PEMROGRAMAN DASAR KD. Menganalisis penggunaan array untuk penyimpanan data di...
PEMROGRAMAN DASAR KD. Menganalisis penggunaan array untuk penyimpanan data di...PEMROGRAMAN DASAR KD. Menganalisis penggunaan array untuk penyimpanan data di...
PEMROGRAMAN DASAR KD. Menganalisis penggunaan array untuk penyimpanan data di...
 
Menerapkan tipografi
Menerapkan tipografiMenerapkan tipografi
Menerapkan tipografi
 
KD. Menganalisi video sesuai naskah produksi.
KD. Menganalisi video sesuai naskah produksi.KD. Menganalisi video sesuai naskah produksi.
KD. Menganalisi video sesuai naskah produksi.
 
Memahami perancangan alur multimedia interaktif berbasis halaman web dan medi...
Memahami perancangan alur multimedia interaktif berbasis halaman web dan medi...Memahami perancangan alur multimedia interaktif berbasis halaman web dan medi...
Memahami perancangan alur multimedia interaktif berbasis halaman web dan medi...
 
TEKNIK PENGOLAHAN AUDIO dan VIDEO KD Menganalisis proses pengemasan produksi ...
TEKNIK PENGOLAHAN AUDIO dan VIDEO KD Menganalisis proses pengemasan produksi ...TEKNIK PENGOLAHAN AUDIO dan VIDEO KD Menganalisis proses pengemasan produksi ...
TEKNIK PENGOLAHAN AUDIO dan VIDEO KD Menganalisis proses pengemasan produksi ...
 
Menganalisis prosedur pengukuran bidang pandang dan sudut pengambilan gambar
Menganalisis prosedur pengukuran bidang pandang dan sudut pengambilan gambarMenganalisis prosedur pengukuran bidang pandang dan sudut pengambilan gambar
Menganalisis prosedur pengukuran bidang pandang dan sudut pengambilan gambar
 
Menerapkan pengoperasian kamera digital dan perawatan peralatan fotografi
Menerapkan pengoperasian kamera digital dan perawatan peralatan fotografiMenerapkan pengoperasian kamera digital dan perawatan peralatan fotografi
Menerapkan pengoperasian kamera digital dan perawatan peralatan fotografi
 
KD Menerapkan pengalamanatan ip pada jaringan komputer
KD Menerapkan pengalamanatan ip pada jaringan komputerKD Menerapkan pengalamanatan ip pada jaringan komputer
KD Menerapkan pengalamanatan ip pada jaringan komputer
 
Menganalisis permasalahan pada instalasi software aplikasi
Menganalisis permasalahan pada instalasi software aplikasiMenganalisis permasalahan pada instalasi software aplikasi
Menganalisis permasalahan pada instalasi software aplikasi
 
KOMPUTER DAN JARINGAN DASR KD : Menganalisis permasalahan pada perangkat keras
KOMPUTER DAN JARINGAN DASR KD : Menganalisis permasalahan pada perangkat kerasKOMPUTER DAN JARINGAN DASR KD : Menganalisis permasalahan pada perangkat keras
KOMPUTER DAN JARINGAN DASR KD : Menganalisis permasalahan pada perangkat keras
 
KOMPUTER DAN JARINGAN DASR KD : Menerapkan instalasi driver perangkat keras k...
KOMPUTER DAN JARINGAN DASR KD : Menerapkan instalasi driver perangkat keras k...KOMPUTER DAN JARINGAN DASR KD : Menerapkan instalasi driver perangkat keras k...
KOMPUTER DAN JARINGAN DASR KD : Menerapkan instalasi driver perangkat keras k...
 
KD 3.6 Menerapkan gerak digital puppetter pada animasi 2 d
KD 3.6 Menerapkan gerak digital puppetter pada animasi 2 dKD 3.6 Menerapkan gerak digital puppetter pada animasi 2 d
KD 3.6 Menerapkan gerak digital puppetter pada animasi 2 d
 
Animasi 2 d dan 3d memahami prinsip dasar menggambar latar
Animasi 2 d dan 3d memahami prinsip dasar menggambar latarAnimasi 2 d dan 3d memahami prinsip dasar menggambar latar
Animasi 2 d dan 3d memahami prinsip dasar menggambar latar
 
Animasi 2D dan 3D KD: Memahami teknik rendering pada object 3d
Animasi 2D dan 3D KD: Memahami teknik rendering pada object 3dAnimasi 2D dan 3D KD: Memahami teknik rendering pada object 3d
Animasi 2D dan 3D KD: Memahami teknik rendering pada object 3d
 
ANIMASI 2D dan 3D KD : Menerapkan model obyek sederhana berbasis 3 d hardsurface
ANIMASI 2D dan 3D KD : Menerapkan model obyek sederhana berbasis 3 d hardsurfaceANIMASI 2D dan 3D KD : Menerapkan model obyek sederhana berbasis 3 d hardsurface
ANIMASI 2D dan 3D KD : Menerapkan model obyek sederhana berbasis 3 d hardsurface
 
Animasi 2D dan 3D KD: Menganalisis elemen gambar digital puppeter dalam anima...
Animasi 2D dan 3D KD: Menganalisis elemen gambar digital puppeter dalam anima...Animasi 2D dan 3D KD: Menganalisis elemen gambar digital puppeter dalam anima...
Animasi 2D dan 3D KD: Menganalisis elemen gambar digital puppeter dalam anima...
 
Animasi 2D dan 3D KD: Menggambarkan konsep dasar object 3 d dalam sketsa ran...
Animasi 2D dan 3D  KD: Menggambarkan konsep dasar object 3 d dalam sketsa ran...Animasi 2D dan 3D  KD: Menggambarkan konsep dasar object 3 d dalam sketsa ran...
Animasi 2D dan 3D KD: Menggambarkan konsep dasar object 3 d dalam sketsa ran...
 

Recently uploaded

contoh penulisan nomor skl pada surat kelulusan .pptx
contoh penulisan nomor skl pada surat kelulusan  .pptxcontoh penulisan nomor skl pada surat kelulusan  .pptx
contoh penulisan nomor skl pada surat kelulusan .pptxHR MUSLIM
 
1.3.a.3. Mulai dari Diri - Modul 1.3 Refleksi 1 Imajinasiku tentang Murid di ...
1.3.a.3. Mulai dari Diri - Modul 1.3 Refleksi 1 Imajinasiku tentang Murid di ...1.3.a.3. Mulai dari Diri - Modul 1.3 Refleksi 1 Imajinasiku tentang Murid di ...
1.3.a.3. Mulai dari Diri - Modul 1.3 Refleksi 1 Imajinasiku tentang Murid di ...MetalinaSimanjuntak1
 
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
 
Bab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptx
Bab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptxBab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptx
Bab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptxssuser35630b
 
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
 
Modul Projek - Batik Ecoprint - Fase B.pdf
Modul Projek  - Batik Ecoprint - Fase B.pdfModul Projek  - Batik Ecoprint - Fase B.pdf
Modul Projek - Batik Ecoprint - Fase B.pdfanitanurhidayah51
 
Modul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase CModul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase CAbdiera
 
tugas karya ilmiah 1 universitas terbuka pembelajaran
tugas karya ilmiah 1 universitas terbuka pembelajarantugas karya ilmiah 1 universitas terbuka pembelajaran
tugas karya ilmiah 1 universitas terbuka pembelajarankeicapmaniez
 
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
 
CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7IwanSumantri7
 
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
 
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SD
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SDPPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SD
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SDNurainiNuraini25
 
RENCANA + Link2 Materi Pelatihan/BimTek "PTK 007 Rev-5 Thn 2023 (PENGADAAN) &...
RENCANA + Link2 Materi Pelatihan/BimTek "PTK 007 Rev-5 Thn 2023 (PENGADAAN) &...RENCANA + Link2 Materi Pelatihan/BimTek "PTK 007 Rev-5 Thn 2023 (PENGADAAN) &...
RENCANA + Link2 Materi Pelatihan/BimTek "PTK 007 Rev-5 Thn 2023 (PENGADAAN) &...Kanaidi ken
 
Keterampilan menyimak kelas bawah tugas UT
Keterampilan menyimak kelas bawah tugas UTKeterampilan menyimak kelas bawah tugas UT
Keterampilan menyimak kelas bawah tugas UTIndraAdm
 
Diskusi PPT Sistem Pakar Sesi Ke-4 Simple Naïve Bayesian Classifier .pdf
Diskusi PPT Sistem Pakar Sesi Ke-4 Simple Naïve Bayesian Classifier .pdfDiskusi PPT Sistem Pakar Sesi Ke-4 Simple Naïve Bayesian Classifier .pdf
Diskusi PPT Sistem Pakar Sesi Ke-4 Simple Naïve Bayesian Classifier .pdfHendroGunawan8
 
ppt-modul-6-pend-seni-di sd kelompok 2 ppt
ppt-modul-6-pend-seni-di sd kelompok 2 pptppt-modul-6-pend-seni-di sd kelompok 2 ppt
ppt-modul-6-pend-seni-di sd kelompok 2 pptArkhaRega1
 
PERAN PERAWAT DALAM PEMERIKSAAN PENUNJANG.pptx
PERAN PERAWAT DALAM PEMERIKSAAN PENUNJANG.pptxPERAN PERAWAT DALAM PEMERIKSAAN PENUNJANG.pptx
PERAN PERAWAT DALAM PEMERIKSAAN PENUNJANG.pptxRizkyPratiwi19
 
aksi nyata - aksi nyata refleksi diri dalam menyikapi murid.pdf
aksi nyata - aksi nyata refleksi diri dalam menyikapi murid.pdfaksi nyata - aksi nyata refleksi diri dalam menyikapi murid.pdf
aksi nyata - aksi nyata refleksi diri dalam menyikapi murid.pdfwalidumar
 
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
 
Latsol TWK Nasionalisme untuk masuk CPNS
Latsol TWK Nasionalisme untuk masuk CPNSLatsol TWK Nasionalisme untuk masuk CPNS
Latsol TWK Nasionalisme untuk masuk CPNSdheaprs
 

Recently uploaded (20)

contoh penulisan nomor skl pada surat kelulusan .pptx
contoh penulisan nomor skl pada surat kelulusan  .pptxcontoh penulisan nomor skl pada surat kelulusan  .pptx
contoh penulisan nomor skl pada surat kelulusan .pptx
 
1.3.a.3. Mulai dari Diri - Modul 1.3 Refleksi 1 Imajinasiku tentang Murid di ...
1.3.a.3. Mulai dari Diri - Modul 1.3 Refleksi 1 Imajinasiku tentang Murid di ...1.3.a.3. Mulai dari Diri - Modul 1.3 Refleksi 1 Imajinasiku tentang Murid di ...
1.3.a.3. Mulai dari Diri - Modul 1.3 Refleksi 1 Imajinasiku tentang Murid di ...
 
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
 
Bab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptx
Bab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptxBab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptx
Bab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptx
 
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
 
Modul Projek - Batik Ecoprint - Fase B.pdf
Modul Projek  - Batik Ecoprint - Fase B.pdfModul Projek  - Batik Ecoprint - Fase B.pdf
Modul Projek - Batik Ecoprint - Fase B.pdf
 
Modul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase CModul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase C
 
tugas karya ilmiah 1 universitas terbuka pembelajaran
tugas karya ilmiah 1 universitas terbuka pembelajarantugas karya ilmiah 1 universitas terbuka pembelajaran
tugas karya ilmiah 1 universitas terbuka pembelajaran
 
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
 
CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7
 
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
 
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SD
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SDPPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SD
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SD
 
RENCANA + Link2 Materi Pelatihan/BimTek "PTK 007 Rev-5 Thn 2023 (PENGADAAN) &...
RENCANA + Link2 Materi Pelatihan/BimTek "PTK 007 Rev-5 Thn 2023 (PENGADAAN) &...RENCANA + Link2 Materi Pelatihan/BimTek "PTK 007 Rev-5 Thn 2023 (PENGADAAN) &...
RENCANA + Link2 Materi Pelatihan/BimTek "PTK 007 Rev-5 Thn 2023 (PENGADAAN) &...
 
Keterampilan menyimak kelas bawah tugas UT
Keterampilan menyimak kelas bawah tugas UTKeterampilan menyimak kelas bawah tugas UT
Keterampilan menyimak kelas bawah tugas UT
 
Diskusi PPT Sistem Pakar Sesi Ke-4 Simple Naïve Bayesian Classifier .pdf
Diskusi PPT Sistem Pakar Sesi Ke-4 Simple Naïve Bayesian Classifier .pdfDiskusi PPT Sistem Pakar Sesi Ke-4 Simple Naïve Bayesian Classifier .pdf
Diskusi PPT Sistem Pakar Sesi Ke-4 Simple Naïve Bayesian Classifier .pdf
 
ppt-modul-6-pend-seni-di sd kelompok 2 ppt
ppt-modul-6-pend-seni-di sd kelompok 2 pptppt-modul-6-pend-seni-di sd kelompok 2 ppt
ppt-modul-6-pend-seni-di sd kelompok 2 ppt
 
PERAN PERAWAT DALAM PEMERIKSAAN PENUNJANG.pptx
PERAN PERAWAT DALAM PEMERIKSAAN PENUNJANG.pptxPERAN PERAWAT DALAM PEMERIKSAAN PENUNJANG.pptx
PERAN PERAWAT DALAM PEMERIKSAAN PENUNJANG.pptx
 
aksi nyata - aksi nyata refleksi diri dalam menyikapi murid.pdf
aksi nyata - aksi nyata refleksi diri dalam menyikapi murid.pdfaksi nyata - aksi nyata refleksi diri dalam menyikapi murid.pdf
aksi nyata - aksi nyata refleksi diri dalam menyikapi murid.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
 
Latsol TWK Nasionalisme untuk masuk CPNS
Latsol TWK Nasionalisme untuk masuk CPNSLatsol TWK Nasionalisme untuk masuk CPNS
Latsol TWK Nasionalisme untuk masuk CPNS
 

Dasar pemrograman ( algorithma pemrograman )

  • 1. TP4 SMK NEGERI 1 PUNGGING February6,2014 BUKU PEGANGAN SISWA DAN GURU TEKNIK PENYIARAN DASAR PEMROGRAMAN ALGORITHMA PEMROGRAMAN DISUSUN OLEH : ZAINUL ARIFIN, S. Kom = TEKNIK BROADCASTING = PAKET KEAHLIAN TEKNIK PRODUKSI DAN PENYIARAN PROGRAM PERTELEVISIAN BIDANG KEAHLIAN TEKNIK INFORMASI DAN KOMUNIKASI DINAS PENDIDIKAN. KAB. MOJOKERTO SMK NEGERI 1 PUNGGING 2013/2014
  • 2. TP4 SMK NEGERI 1 PUNGGING February6,2014 A. PENGERTIAN ALGORITHMA PEMROGRAMAN Diagram Alur sering digunakan untuk menggambarkan sebuah algorithma. Dalam matematika dan komputasi, algorithma merupakan kumpulan perintah untuk menyelesaikan suatu masalah. Perintah-perintah ini dapat diterjemahkan secara bertahap dari awal hingga akhir. Masalah tersebut dapat berupa apa saja, dengan catatan untuk setiap masalah, ada kriteria kondisi awal yang harus dipenuhi sebelum menjalankan algorithma. Algorithma akan dapat selalu berakhir untuk semua kondisi awal yang memenuhi kriteria, dalam hal ini berbeda dengan heuristik. Algorithma sering mempunyai langkah pengulangan (iterasi) atau memerlukan keputusan (logika Boolean dan perbandingan) sampai tugasnya selesai. Desain dan analisis algorithma adalah suatu cabang khusus dalam ilmu komputer yang mempelajari karakteristik dan performa dari suatu algorithma dalam menyelesaikan masalah, terlepas dari implementasi algorithma tersebut. Dalam cabang disiplin ini algorithma dipelajari secara abstrak, terlepas dari sistem komputer atau bahasa pemrograman yang digunakan. Algorithma yang berbeda dapat diterapkan pada suatu masalah dengan kriteria yang sama. Kompleksitas dari suatu algorithma merupakan ukuran seberapa banyak komputasi yang dibutuhkan algorithma tersebut untuk menyelesaikan masalah. Secara informal, algorithma yang dapat menyelesaikan suatu permasalahan dalam waktu yang singkat memiliki
  • 3. TP4 SMK NEGERI 1 PUNGGING February6,2014 kompleksitas yang rendah, sementara algorithma yang membutuhkan waktu lama untuk menyelesaikan masalahnya mempunyai kompleksitas yang tinggi. Sejarah istilah "algorithma" berasal dari bahasa Latin, dari nama seorang ahli matematika dari Uzbekistan Al Khawārizmi (hidup sekitar abad ke-9), sebagaimana tercantum pada terjemahan karyanya dalam bahasa latin dari abad ke-12 "Algorithmi de numero Indorum". Pada awalnya kata algorithma adalah istilah yang merujuk kepada aturan-aturan aritmetis untuk menyelesaikan persoalan dengan menggunakan bilangan numerik arab (sebenarnya dari India, seperti tertulis pada judul di atas). Pada abad ke-18, istilah ini berkembang menjadi algorithma, yang mencakup semua prosedur atau urutan langkah yang jelas dan diperlukan untuk menyelesaikan suatu permasalahan. JENIS-JENIS ALGORITHMA Terdapat beragam klasifikasi algoritma, dan setiap klasifikasi mempunyai alasan tersendiri. Salah satu cara untuk melakukan klasifikasi jenis-jenis algoritma adalah dengan memperhatikan paradigma dan metode yang digunakan untuk mendesain algoritma tersebut. Beberapa paradigma yang digunakan dalam menyusun suatu algoritma akan dipaparkan dibagian ini. Masing-masing paradigma dapat digunakan dalam banyak algoritma yang berbeda.
  • 4. TP4 SMK NEGERI 1 PUNGGING February6,2014  Divide and Conquer Paradigma untuk membagi suatu permasalahan besar menjadi permasalahan-permasalahan yang lebih kecil. Pembagian masalah ini dilakukan terus menerus sampai ditemukan bagian masalah kecil yang mudah untuk dipecahkan. Singkatnya menyelesaikan keseluruhan masalah dengan membagi masalah besar dan kemudian memecahkan permasalahan-permasalahan kecil yang terbentuk.  Dynamic Programming Paradigma pemrograman dinamik akan sesuai jika digunakan pada suatu masalah yang mengandung sub-struktur yang optimal dan mengandung beberapa bagian permasalahan yang tumpang tindih . Paradigma ini sekilas terlihat mirip dengan paradigma Divide and Conquer, sama-sama mencoba untuk membagi permasalahan menjadi sub permasalahan yang lebih kecil, tapi secara intrinsik ada perbedaan dari karakter permasalahan yang dihadapi.  Metode Serakah Sebuah algoritma serakah mirip dengan sebuah Pemrograman dinamik, bedanya jawaban dari submasalah tidak perlu diketahui dalam setiap tahap dan menggunakan pilihan “serakah” apa yang dilihat terbaik pada saat itu.
  • 5. TP4 SMK NEGERI 1 PUNGGING February6,2014  Pseudo Code (Kode Semu) Pseudo Code (kode semu) merupakan metode yang cukup efisien untuk menggambarkan suatu algoritma . Pseudo Code dituliskan dengan menggunakan bahasa yang mudah dipahami (boleh menggunakan bahasa Indonesia) agar alur logika yang digambarkan dapat dimengeti oleh orang awam sekalipun. Flowchart Pseudo Code (kode semu) disusun dengan tujuan untuk menggambarkan tahap-tahap penyelesaian suatu masalah dengan kata- kata (teks). Metode ini mempunyai kelemahan, dimana penyusunan algoritma dengan kode semu sangat dipengaruhi oleh tata bahasa pembuatnya, sehingga kadang-kdang sulit dipahami oleh orang lain. Oleh karena itu kemudian dikembangkan suatu metode lain yang dapat menggambarkan suatu algoritma program secara lebih mudah dan sederhana yaitu dengan menggunakan flowchart (diagram alir).  Sistem Flowchart Sistem flowchart merupakan diagram alir yang menggambarkan suatu sistem peralatan komputer yang digunakan dalam proses pengolahan data serta hubungan antar peralatan tersebut. Sistem flow chart tidak digunakan untuk menggambarkan urutan langkah untuk memecahkan masalah, tetapi hanya untuk menggambarkan prosedur dalam sistem yang dibentuk.
  • 6. TP4 SMK NEGERI 1 PUNGGING February6,2014 B. KONSEP ALGORITHMA PEMROGRAMAN “Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis”. Kata logis merupakan kata kunci dalam algoritma. Langkah-langkah dalam algoritma harus logis dan harusdapat ditentukan bernilai salah atau benar. Dalam beberapa konteks, algoritma adalah spesifikasi urutan langkah untuk melakukan pekerjaan tertentu. Pertimbangan dalam pemilihan algoritmaadalah, pertama, algoritma haruslah benar. Artinya algoritma akan memberikan keluaran yang dikehendaki dari sejumlah masukan yang diberikan. Tidak peduli sebagus apapun algoritma, kalau memberikan keluaran yang salah, pastilah algoritma tersebut bukanlah algoritma yang baik. Konsep Algoritma
  • 7. TP4 SMK NEGERI 1 PUNGGING February6,2014 Pertimbangan kedua yang harus diperhatikan adalah kita harus mengetahui seberapa baik hasil yang dicapai oleh algoritma tersebut. Hal ini penting terutama pada algoritma untuk menyelesaikan masalah yang memerlukan aproksimasi hasil (hasil yang hanya berupa pendekatan). Algoritma yang baik harus mampu memberikan hasil yang sedekat mungkin dengan nilai yang sebenarnya. Ketiga adalah efisiensi algoritma. Efisiensi algoritma dapat ditinjau dari 2 hal yaitu efisiensi waktu dan memori. Meskipun algoritma memberikan keluaran yang benar (paling mendekati), tetapi jika kita harus menunggu berjam-jam untuk mendapatkan keluarannya, algoritma tersebut biasanya tidak akan dipakai, setiap orang menginginkan keluaran yang cepat. Begitu juga dengan memori, semakin besar memori yang terpakai maka semakin buruklah algoritma tersebut. Dalam kenyataannya, setiap orang bisa membuat algoritma yang berbeda untuk menyelesaikan suatu permasalahan, walaupun terjadi perbedaan dalam menyusun algoritma, tentunya kita mengharapkan keluaran yang sama. Jika terjadi demikian, carilah algoritma yang paling efisien dan cepat.
  • 8. TP4 SMK NEGERI 1 PUNGGING February6,2014 BEDA ALGORITHMA DENGAN PROGRAM Program adalah kumpulan pernyataan komputer, sedangkan metode dan tahapan sistematis dalam program adalah algoritma. Program ditulis dengan menggunakan bahasa pemrograman. Jadi bisa disebut bahwa program adalah suatu implementasi dari bahasa pemrograman. Beberapa pakar memberi formula bahwa : Program = Algoritma + Bahasa (Struktur Data) Bagaimanapun juga struktur data dan algoritma berhubungan sangat erat pada sebuah program. Algoritma yang baik tanpa pemilihan struktur data yang tepat akan membuat program menjadi kurang baik, demikian juga sebaliknya. Pembuatan algoritma mempunyai banyak keuntungan di antaranya :  Pembuatan atau penulisan algoritma tidak tergantung pada bahasa pemrograman manapun, artinya penulisan algoritma independen dari bahasa pemrograman dan komputer yang melaksanakannya.  Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman.  Apapun bahasa pemrogramannya, output yang akan dikeluarkan sama karena algoritmanya sama.
  • 9. TP4 SMK NEGERI 1 PUNGGING February6,2014 Beberapa hal yang perlu diperhatikan dalam membuat algoritma :  Teks algoritma berisi deskripsi langkah-langkah penyelesaian masalah. Deskripsi tersebut dapat ditulis dalam notasi apapun asalkan mudah dimengerti dan dipahami.  Tidak ada notasi yang baku dalam penulisan teks algoritma seperti notasi bahasa pemrograman. Notasi yang digunakan dalam menulis algoritma disebut notasi algoritmik.  Setiap orang dapat membuat aturan penulisan dan notasi algoritmik sendiri. Hal ini dikarenakan teks algoritma tidak sama dengan teks program. Namun, supaya notasi algoritmik mudah ditranslasikan ke dalam notasi bahasa pemrograman tertentu, maka sebaiknya notasi algoritmik tersebut berkorespondensi dengan notasi bahasa pemrograman secara umum.  Notasi algoritmik bukan notasi bahasa pemrograman, karena itu pseudocode dalam notasi algoritmik tidak dapat dijalankan oleh komputer. Agar dapat dijalankan oleh komputer, pseudocode dalam notasi algoritmik harus ditranslasikan atau diterjemahkan ke dalam notasi bahasa pemrograman yang dipilih. Perlu diingat bahwa orang yang menulis program sangat terikat dalam aturan tata bahasanya dan spesifikasi mesin yang menjalannya.  Algoritma sebenarnya digunakan untuk membantu kita dalam mengkonversikan suatu permasalahan ke dalam bahasa pemrograman.
  • 10. TP4 SMK NEGERI 1 PUNGGING February6,2014  Algoritma merupakan hasil pemikiran konseptual, supaya dapat dilaksanakan oleh komputer, algoritma harus ditranslasikan ke dalam notasi bahasa pemrograman. Ada beberapa hal yang harus diperhatikan pada translasi tersebut, yaitu : a) Pendeklarasian variable Untuk mengetahui dibutuhkannya pendeklarasian variabel dalam penggunaan bahasa pemrograman apabila tidak semua bahasa pemrograman membutuhkannya. b) Pemilihan tipe data Apabila bahasa pemrograman yang akan digunakan membutuhkan pendeklarasian variabel maka perlu hal ini dipertimbangkan pada saat pemilihan tipe data. c) Pemakaian instruksi-instruksi Beberapa instruksi mempunyai kegunaan yang sama tetapi masing- masing memiliki kelebihan dan kekurangan yang berbeda. d) Aturan sintaksis Pada saat menuliskan program kita terikat dengan aturan sintaksis dalam bahasa pemrograman yang akan digunakan. e) Tampilan hasil Pada saat membuat algoritma kita tidak memikirkan tampilan hasil yang akan disajikan. Hal-hal teknis ini diperhatikan ketika mengkonversikannya menjadi program.
  • 11. TP4 SMK NEGERI 1 PUNGGING February6,2014 f) Cara pengoperasian compiler atau interpreter. Bahasa pemrograman yang digunakan termasuk dalam kelompok compiler atau interpreter. C. STRUKTUR ALGORITHMA Pada dasarnya, sebuah algoritma merupakan deskripsi pelaksanaan suatu proses. Algoritma itu sendiri disusun oleh sederetan langkah instruksi yang logis. Tiap langkah instruksi tersebut mengerjakan suatu tindakan (aksi). Bila suatu aksi dilaksanakan, maka sejumlah operasi yang bersesuaian dengan aksi itu dikerjakan oleh pemroses. Efek dari pengerjaan suatu aksi dapat diamati dengan membandingkan keadaan pada saat aksi belum dimulai (t0), dan keadaan pada saat aksi selesai dikerjakan (t1). t0 : keadaan sebelum aksi dikerjakan aksi t1 : keadaan setelah aksi dikerjakan Sebagai contoh, tinjau kembali algoritma yang menggambarkan proses mempertukarkan larutan dari dua buah bejana A dan B. Pada setiap pelaksanaan aksi amati keadaan awal dan keadaan akhir akhirnya t0 : Bejana A berisi larutan berwarna merah, bejana B berisi larutan berwarna biru (bejana C masih kosong)
  • 12. TP4 SMK NEGERI 1 PUNGGING February6,2014 1. Tuangkan larutan dari bejana A ke dalam bejana C t1 : Bejana A kosong, bejana C berisi larutan berwarna Biru t0 : Bejana A kosong, bejana B berisi larutan berwarna Merah 2. Tuangkan larutan dari bejana B ke dalam bejana A t1 : Bejana A berisi larutan berwarna Merah, bejana B kosong t0 : Bejana B kosong, bejana C berisi larutan berwarna Biru 3. Tuangkan larutan dari bejana C ke dalam bejana B t1 : Bejana B berisi larutan berwarna Biru, bejana A sudah berisi larutan berwarna Merah (bejana C kosong)
  • 13. TP4 SMK NEGERI 1 PUNGGING February6,2014 Algoritma berisi langkah suatu masalah. Langkah-langkah tersebut dapat berupa runtunan aksi, pemilihan aksi, dan pengulangan aksi. Ketiga jenis langkah tersebut membentuk konstruksi suatu algoritma. Jadi sebuah algoritma dapat dibangun dari tiga buah struktur dasar, yaitu:  Runtunan (sequence)  Pemilihan (selection)  Pengulangan (repetition) a) RUNTUTAN (SEQUENCE) Sebuah runtunan terdiri dari satu atau lebih instruksi.Tiap instruksi dikerjakan secara berurutan sesuai dengan urutan penulisannya, yakni sebuah instruksi dilaksanakan setelah instruksi sebelumnya selesai dilaksanakan.Urutan instruksi menetukan keadaan akhir algoritma.Bila urutan diubah, maka hasil akhirnya mungkin juga bisa berubah. Perhatikan runtunan instruksi berikut: A1 A2 A3 A4 A5 Sebagai contoh, tinjau kembali algoritma mempertukarkan larutan di dalam dua buah bejana A dan B. Algoritma diatas disusun oleh runtunan
  • 14. TP4 SMK NEGERI 1 PUNGGING February6,2014 yang terdiri atas 3 buah instruksi. Tiap instruksi dikerjakan secara berurutan, maka hasil akhir adalah hasil diinginkan. Bila instruksi diubah, maka hasil akhirnya pun juga berubah sehingga pertukaran isi dua buah bejana pun tidak benar. Karena itu, penting perlu memperhatikan urutan aksi di dalam sebuah runtunan. Urutan aksi di dalam runtunan mencerminkan cara berpikir si penyusun algoritma dalam menuliskan langkah-langkah pemecahan masalah. b) PEMILIHAN (SELECTION) Adakalanya sebuah instruksi dikerjakan jika kondisi tertentu dipenuhi. Contoh dalam algoritma pencarian data terkecil dilakukan dengan membanding-bandingkan data. Mula-mula data pertama dianggap data terkecil sementara (min). Kemudian membandingkan min dengan data ke-2, 3, …..(n). Selama proses perbandingan, bila data lebih kecil dari min, maka date ke-j itu menjadi min yang baru. Langkah terakhir ditulis dalam pernyataan berikut Jika data ke-j lebih kecil dari min, maka isikan data ke-j sebagai min yang baru
  • 15. TP4 SMK NEGERI 1 PUNGGING February6,2014 Pernyataan diatas dapat ditulis dalam struktur umum if kondisi then aksi Dalam bahasa indonesia, if berati “jika” dan then artinya “maka”. Kondisi adalah persyaratan yang dapat bernilai benar atau salah. Aksi hanya dilaksanakan apabila kondisi bernilai benar.Sebaliknya, apabila kondisi bernilai benar. Sebaliknya apabila bernilai salah, maka aksi tidak dilaksanakan. Kata yang digarisbawahi, if dan then, merupakan kata kunci (keywords) untuk struktur pemilihan ini. Struktur pemilihan if-then hanya memberikan satu pilihan aksi bila kondisi (persyartan) dipenuhi (bernilai benar), dan tidak memberi pilihan aksi lain bila kondisi bernilai salah. Bentuk pemilihan yang lebih umum ialah pemilihan satu dari dua buah aksi bergantung pada nilai kondisinya. Apabila pilihan aksi yang dilakukan lebih dari dua buah, maka struktur pemilihannya menjadi lebih rumit, seperti pada contoh berikut (pemilihan bersarang) If lampu pengatur lalu lintas berwarna merah then anda harus berhenti else if lampu pengatur lalu lintas berwarna kuning then anda boleh jalan tapi dengan hati-hati else anda dipersilahkan terus berjalan
  • 16. TP4 SMK NEGERI 1 PUNGGING February6,2014 Perhatikanlah bahwa penggunaan indentasi (rongak kosong) membuat algoritma menjadi lebih mudah dibaca. Tanpa indentasi, algoritma menjadi lebih sulit dibaca, misalnya algoritma ditulis seperti dibawah ini if lampu pengatur lalu lintas berwarna merah then anda harus berhenti elseif lampu pengatur lalu lintas berwarna kuning then anda boleh jalan tapi dengan hati-hati else anda dipersilahkan terus berjalan Perancang algoritma sangat dianjurkan membuat indentasi agar algoritma yang dibuat lebih mudah dibaca. Contoh lain dari pemilihan bersarang adalah menentukan bilangan terbesar dari tiga buah bilangan: x, y, dan z. if x > y then if x > z then tulis x sebagai bilangan terbesar else tulis z sebagai bilangan terbesar else if y > z then tulis y sebagai bilangan terbesar else tulis z sebagai bilangan terbesar Kelebihan struktur pemilihan terletak pada kemampuannya yang memungkinkan pemroses mengikuti jalur aksi yang berbeda berdasarkan kondisi yang ada.Tanpa struktur pemilihan, kita tidak mungkin menulis algoritma untuk permasalahan praktis yang demikian kompleks.
  • 17. TP4 SMK NEGERI 1 PUNGGING February6,2014 c) PENGULANGAN (REPETITION) Salah satu kelebihan komputer adalah kemampuannya untuk mengerjakan pekerjaan yang sama berulang kali tanpa mengenal lelah. Sewaktu duduk di sekolah dasar, bila anda pernah dihukum oleh guru untuk menuliskan sebuah kalimat sebanyak 500 kali, misalnya dikarenakan anda nakal tidak mengerjakan PR. Misalkan kalimat yang harus ditulis 500 kali tersebut adalah: “Saya berjanji tidak akan nakal dan malas lagi” Bila pekerjaan menulis kalimat ini diserahkan kepada komputer, maka pemrogram mungkin menuliskannya sebagai berikut: Algoritma menulis 500 kalimat Deskripsi : 1. Saya berjanji tidak akan nakal dan malas lagi 2. Saya berjanji tidak akan nakal dan malas lagi 3. Saya berjanji tidak akan nakal dan malas lagi 4. Saya berjanji tidak akan nakal dan malas lagi .... 500 Tentu saja algoritma untuk menulis 500 buah kalimat seperti diatas tidak elegan, karena instruksi “Saya berjanji tidak akan nakal dan malas lagi” harus dibuat di dalam teks algoritma sebanyak 500 kali. Untuk mengatasi hal ini, maka anda dapat menggunakan struktur pengulangan
  • 18. TP4 SMK NEGERI 1 PUNGGING February6,2014 for-do sehingga algoritma menulis 500 buah kalimat dapat ditulis sebagai berikut: Algoritma menulis 500 kalimat : Menuliskan kalimat " Saya berjanji tidak akan nakal dan malas lagi " Sebanyak 500 kali. Deskripsi : for K dari 1 sampai 500 do tulis kalimat "Saya berjanji tidak akan nakal dan malas lagi " “K” adalah pencacah pengulangan yang dari 1 sampai 500. Komputer akan melaksanakan aksi tulis kalimat tersebut sebanyak 500 kali. Struktur pengulangan ini dapat ditulis secara umum sebagai berikut: for pencacah pengulangan dari 1 sampai Kdo aksi Struktur pengulangan yang kedua adalah REPEAT yang terdiri atas kata kunci repeat-until (repeat artinya “ulangi” dan until artinya “sampai” atau “hingga”) yang mempunyai bentuk umum sebagai berikut: Repeat aksi Until kondisi yang artinya adalah pengulangan aksi dilakukan hingga kondisi (persyaratan) berhenti terpenuhi.
  • 19. TP4 SMK NEGERI 1 PUNGGING February6,2014 Struktur pengulangan yang ketiga adalah WHILE dengan kata kunci while-do (while artinya “selagi” atau “selama” dan do artinya “lakukan”) yang mempunyai bentuk umum sebagai berikut: while kondisi do aksi yang artinya adalah selama kondisi (persyaratan) pengulangan masih benar, maka aksi dikerjakan. Perbedaannya dengan repeat-until, jika pada repeat-until kondisi pengulangan dievaluasi diakhir, sedangkan pada while- do kondisi pengulangan dievaluasi di awal perhitungan. Meskipun struktur repeat-until dan while-do mempunyai fungsi yang mirip sehingga pada beberapa kasus dapat saling menggantikan, namun secara umum penggunaannya bergantung pada spesifikasi masalah. D. ALGORITHMA MENGGUNAKAN BAHASA NATURAL Bahasa Natural atau yang biasa disebut Natural Language Programming (NLP) merupakan cara penyajian suatu algoritma yang paling sederhana dan paling mudah dimengerti. karena Bahasa Natural adalah bahasa yang biasa kita gunakan sehari – hari namun tetap sesuai dengan kaidah bahasa yang baku. Ada beberapa hal yang perlu diperhatikan jika kita akan menyajikan suatu algoritma sebuah program dengan bahasa Natural, antara lain Start dan End yang harus dituliskan secara explisit. Bahasa Natural, Start biasanya dituliskan sebagai ‘inisialisasi’ atau ‘Mulai’ dan merupakan langkah pertama dalam algoritma, sedangkan End
  • 20. TP4 SMK NEGERI 1 PUNGGING February6,2014 sendiri dituliskan sebagai ‘selesai’ dan dituliskan pada akhir algoritma. Namun sebenarnya tidak ada aturan baku dalam hal penamaan lain dari Start dan End itu sendiri. Salah satu contoh sederhana adalah algoritma untuk menentukan sebuah bilangan adalah ganjil atau genap. Jadi diberikan input sebuah bilangan dari user, dan program akan secara otomatis menentukan dan memberikan output berupa informasi genap atau ganjil. Contoh : 1. Inisialisasi : (START) 2. Input sebuah bilangan, masukkan ke dalam sebuah variabel, misalkan saja bil. 3. Apakah bil modulus 2 sama dengan nol?  Jika ya, maka bilangan tersebut adalah bilangan genap.  Jika tidak, maka sudah dapat dipastikan bahwa bilangan tersebut adalah bilangan ganjil. 4. Tampilkan jenis bilangan (genap, atau ganjil). 5. Apakah ingin mengulang proses?  Jika ya, kembali ke langkah 2.  Jika tidak, langsung ke langkah 5 (selesai). 6. Selesai : (END)
  • 21. TP4 SMK NEGERI 1 PUNGGING February6,2014 ISI / CONTENT Pemrograman Bahasa Alami (NLP) adalah cara ontologi dibantu pemrograman dalam hal kalimat bahasa alam, misalnya Bahasa Inggris. Sebuah dokumen terstruktur dengan Content, bagian dan sub-bagian untuk penjelasan kalimat bentuk dokumen NLP, yang sebenarnya adalah sebuah program komputer. Sebuah contoh dari pemrograman bahasa alami adalah dalam "sEnglish" yang pendek untuk "sistem bahasa Inggris". Unit terkecil dari pernyataan di NLP adalah ‘kalimat’. Setiap kalimat dinyatakan dalam bentuk konsep dari ontologi yang mendasari, atribut dalam ontologi itu dan nama benda-benda dalam huruf kapital. Dalam sebuah teks NLP setiap kalimat jelas kompilasi menjadi panggilan prosedur dalam bahasa pemrograman yang mendasari tingkat tinggi seperti MATLAB, Oktaf, Scilab, Pythondan-lain-lain. Bahasa simbolik seperti [Mathematica] mampu Diartikan atau ditafsirkan pengolahan pertanyaan oleh kalimat. Hal ini dapat memungkinkan permintaan interaktif seperti yang diterapkan. Perbedaan antara dan NLP adalah bahwa yang kedua membangun sebuah program tunggal atau perpustakaan rutinitas yang diprogram melalui kalimat bahasa alam dengan menggunakan ontologi yang mendefinisikan struktur data yang tersedia dalam bahasa pemrograman tingkat tinggi. Sebuah teks contoh dari program bahasa NLP Inggris (dalam sEnglish) adalah sebagai berikut:
  • 22. TP4 SMK NEGERI 1 PUNGGING February6,2014 Yang mendefinisikan skema kontrol umpan balik menggunakan [sliding mode kontrol] metode. Catatan ini menjelaskan NLP dalam bentuk umum, tanpa spesifik tentang bahasa pemrograman tingkat tinggi yang mendasari. E. PENGENALAN VARIABEL, TIPE DATA, KONSTANTA DAN OPERATOR a) VARIABEL Variabel adalah merupakan tempat penyimpanan data yang sifatnya sementara.Variabel dialokasikan oleh computer untuk menampung nilai data dan variable harus memiliki tipe data atau jenis data. Setiap variable harus mempunyai nama untuk pemberian nama variable terdapat beberapa syarat yaitu : Syarat Penamaan Variabel :  Panjang Karakter Maksimal 255 Karakter  Tidak dapat menggunakan Spasi
  • 23. TP4 SMK NEGERI 1 PUNGGING February6,2014  Tidak dapat dimulai dengan angka  Tidak dapat menggunakan Tanda Baca selain ( _ ) Pendeklarasian Variabel adalah suatu kegiatan untuk mengenalkan Nama Variabel dengan Tipe Data yang digunakan di Memory (Random Access Memory) atau dapat juga didefenisikan sebagai awal pemesanan tempat pada blok – blok memory. Didalam Visual Basic contohnya, sangat dianjurkan untuk mendeklarasikan suatu variable dengan cara menentukan nama dan type data yang digunakan.Pada saat mendeklarasikan variable terdapat beberapa tempat yang dapat digunakan yaitu :  General Declarations Form / Module  Didalam Procedure atau Fungsi Mendeklarasikan variabel  Memberikan nama variabel sebagai identitas pengenal  Menentukan tipe data variable Bentuk umum: Var NamaVariabel1, NamaVariabel2, : : NamaVariabelN : TipeData1; NamaVariabel1, NamaVariabel2, :
  • 24. TP4 SMK NEGERI 1 PUNGGING February6,2014 : NamaVariabelN : TipeData2; : : NamaVariabel1, NamaVariabel2, : : NamaVariabelN : TipeDataN; Contoh Deklarasi variabel : Var Angka1, Angka2 :Integer; Nama1, Nama2 :String; b) TIPE DATA Tipe data atau Jenis Data dapat diartikan sebagai media untuk mendefinisikan Variabel. Secara sederhana tipe data dapat didefinisikan dengan istilah tempat untuk menentukan pemberian nilai terhadap suatu variabel sesuai atau tidak dengan nilai yang diberikan oleh user. Dalam versi lain tipe data juga diartikan sebagai batasan terhadap fungsi tanda pengenal terhadap semua nilai yang diterima. Logika yang dapat kita berikan adalah ketika kita menempatkan tanda pengenal harga hanya mengenal angka, maka ketika kita
  • 25. TP4 SMK NEGERI 1 PUNGGING February6,2014 memberikan nilai berupa string maka secara otomatis data tersebut akan ditolak karena nilai tersebut tidak dikenali oleh tipe data yang diberikan. JENIS-JENIS TIPE DATA 1. Tipe data Integer / Ordinal Tipe data ini adalah tipe data yang berupa bilangan bulat yang akan digunakan untuk operasi matematika. Ada beberapa tipe data yang termasuk integer, yaitu antara lain:  ShortInt : memiliki nilai range -128 sampai 127 (signed 8-bit)  SmallInt : memiliki nilai range antara - 32768 sampai dengan 32767 (signed 16-bit)  LongInt : memiliki nilai range -2147483648 sampai 2147483647 (signed 32-bit )  Int64 : memiliki range -263+1 sampai 263-1 (signed 64-bit)  Byte : memiliki nilai range 0 sampai 255 (unsigned 8-bit)  Word : memiliki nilai range 0 sampai 65535 (unsigned 16-bit)  LongWord : memiliki nilain range 0 sampai 4294967295(unsigned 32-bit ) Pada pemakaian integer type di implemetasi 16 bit maka:  Integer : memiliki range antara - 32768 sampai dengan 32767 (signed 16-bit)  Cardinal : memiliki range 0 sampai 65535 (unsigned 16-bit)
  • 26. TP4 SMK NEGERI 1 PUNGGING February6,2014 Pada pemakaian integer type di implemetasi 32 bit maka:  Integer : memiliki range antara -2147483648 sampai 2147483647 (signed 32-bit)  Cardinal : memiliki range 0 sampai 4294967295 (unsigned 32-bit) Penulisan pada deklarasi variable: [variable] : [type data integer]; 2. Tipe data Boolean Tipe data ini hanya terdiri dari nilai logika True (1) dan False (0). Ada beberapa jenis dari tipe Boolean ini, yaitu:  Boolean : berukuran 1 byte (false 0, true 1)  ByteBool : berukuran Byte (false 0, true 255 - 8 bit)  Bool : berukuran Double (false 0, true -1)  WordBool : berukuran Word (false 0, true 65535 - 16 bit)  LongBool : berukuran Double (false 0, true -1) Penulisan pada deklarasi variable: [variable] : [type data boolean]; 3. Tipe data Floating Point /Real Tipe data Floating Point/Real ini meliputi bentuk bilangan desimal. Beberapa bentuk dari tipe data ini adalah :
  • 27. TP4 SMK NEGERI 1 PUNGGING February6,2014  Real : memiliki range 2.9 x 10-39 sampai 1.7 x 1038  Single : memiliki range 1.5 x 10-45 sampai 3.4 x 1038  Double : memiliki range 5.0 x 10-324 sampai 1.7 x 104392  Extended : memiliki range 3.6 x 10-4951 sampai 1.1 x 104392  Currency : memiliki range -922337203685477.5808 sampai 922337203685477.5808  Comp : memiliki range -263+1 sampai 263-1 Untuk currency, tipe data ini memiliki kepresisian tinggi yaitu 4 angka dibelakang koma (pembulatan bilangan real menjadi bilangan desimal dengan 4 angka dibelakang koma). Biasanya digunakan untuk satuan uang. Dan untuk comp, tipe data ini akan menyimpan nilai integer (bulat) dari nilai decimal yang masuk (melakukan pembulatan). Penulisan pada deklarasi variable: [variable] : [type data floating point]; 4. Tipe Data Enumerated Tipe data Enumeratedadalah tipe data yang berupa nilai urutan dari data yang telah dibuat. Penulisan pada deklarasi variable : [variable] : ( [data0],[data1],[data2] ); Masing-masing data akan diberikan nilai integer secara urut. Urutan dimulai dengan nilai urut 0.
  • 28. TP4 SMK NEGERI 1 PUNGGING February6,2014 Jika ingin melihat nilai integer dari setiap data maka dengan perintah: ord( [data1] ) 5. Tipe data Sub Range Tipe data ini memungkinkan kita membuat range sendiri. Dengan perintah: [variable] : [constant start]..[constant end]; contoh: a :5.....10; Jika kita mendeklarasikan 5 adalah a maka proses compile akan terus berjalan jika kita mendeklarasikan 15 adalah a maka proses compile tidak akan berjalan atau berhenti, sehingga terdapat error pada proses compile sehingga tidak dapat di run. 6. Tipe data String dan Character Tipe data String adalah tipe data yang merupakan rangkaian dari huruf, angka atau symbol yang tidak mengandung harga (nilai). Beberapa tipe data string adalah sebagai berikut:  ShortString : Dapat menampung 255 karakter (ANSIChar)  AnsiString : Dapat menampung ~231 karakter (ANSIChar)  WideString : Dapat menampung ~230 karakter (WideChar)  String : Dapat menampung 255 karakter (ANSIChar)
  • 29. TP4 SMK NEGERI 1 PUNGGING February6,2014 Tipe data Character adalah tipe data yang berkaitan dengan karakter ( huruf, angka, symbol). Ada beberapa tipe data dari Character yaitu:  ANSIChar : Satu karakter ANSI  WideChar : Satu karakter Unicode  Char : Sama dengan ANSIChar Jika Anda ingin memunculkan karakter dari nomor urut, Anda dapat menggunakan perintah chr([NoUrut]). Dan untuk mengetaui no urut dari sebuah karakter, Anda dapat menuliskan perintah :chr([karakter]); c) KONSTANTA Kontanta adalah tempat penyimpanan data yang sifatnya tetap. Konstanta sama seperti halnya variable yaitu sama – sama sebagai tempat penyimpanan data akan tetapi Konstanta hanya dapat memiliki satu Data dan tidak memiliki tipe data. Konstanta hanya mengenal 2 tipe data / jenis data yaitu :  Data String adalah tipe data yang digunakan untuk menyimpan barisan karakter.  Data Double adalah tipe bilangan riil termasuk bilangan pembagian atau koma.
  • 30. TP4 SMK NEGERI 1 PUNGGING February6,2014 Pada saat mendeklarasikan Konstanta terdapat beberapa tempat yang dapat digunakan yaitu :  General Declarations Form / Module  Konstanta Didalam Procedure atau Fungsi Bentuk Umum : Const NamaKonstanta1 = NilaiKonstanta1; NamaKonstanta2 = NilaiKonstanta2; : : NamaKonstantaN = NilaiKonstantaN; Contoh deklarasi konstanta: Const Jumlah = 100; {integer} Nama = 'Rini'; {string} Konstanta Bertipe Konstanta bertipe adalah suatu konstanta yang dideklarasikan dengan tipe tertentu: Bentuk Umum: Const NamaKonstanta1:Tipe1 = NilaiKonstanta1; NamaKonstanta2:Tipe2 = NilaiKonstanta2; : : NamaKonstantaN:TipeN = NilaiKonstantaN;
  • 31. TP4 SMK NEGERI 1 PUNGGING February6,2014 Contoh deklarasi konstanta: Const Jumlah : integer = 100; Nama : string = ‘Rini’; d) OPERATOR Operator adalah sebuah simbol yang berguna dalam memerintahkan suatu perintah dalam komputer untuk menjalankan persamaan matematika atau suatu logika, misalnya untuk:  Menjumlahkan dua nilai  Memberikan nilai ke suatu variabel (assignment)  Membandingkan kesamaan dua nilai. Contoh penggunaan operasi operator diatas: $x = 100; $y = 10;
  • 32. TP4 SMK NEGERI 1 PUNGGING February6,2014 Operasi Operator Contoh Sintax Penjumlahan + $x + $y Pengurangan - $x – $y Perkalian * $x * $y Pembagian / $x / $y Sisa Pembagi % $x % $y Increament ++ $x++ Decreament -- $x– F. PSEUDOCODE Pseudocode adalah bentuk penulisan algoritma yang menggunakan struktur bahasa pemrograman sederhana. Walaupun pseudocode memakai struktur bahasa pemrograman, pseudocode tidak mengikuti aturan penulisan bahasa pemrograman manapun. Mengapa begitu? Karena pseudocode dituliskan hanya untuk mempermudah seseorang memahami sebuah algoritma. Dengan begitu, pseudocode hanyalah menyerupai kode program saja, dan tidak bisa dimengerti langsung oleh komputer.Pseudocode baru bisa diolah oleh komputer jika telah mengikuti aturan penulisan sebuah bahasa pemrograman.(Bisa bahasa C, Java, Pascal, dan lain-lain.) Contoh-contoh penulisan pseudocode: 1. Menampilkan tulisan Test Start Print ‚Test‛ End
  • 33. TP4 SMK NEGERI 1 PUNGGING February6,2014 2. Menampilkan variable berisi tulisan Test Start a = ‚Test‛ Print a End 3. Menghitung hasil penjumlahan Start Read b, c d = b + c Print b, ‚ ditambah ‚, c, ‚ hasilnya ‚, d End 4. Menampilkan isi variable yang hanya lebih kecil dari 10 Start Read e If e < 10 Then Print e Else Print ‚Masukkan angka kurang dari 10!‛ End If End 5. Menampilkan isi variable yang hanya di antara 0 dan 10 Start Read f If f > 0 Then If f < 10 Then Print f Else Print ‚Masukkan angka di antara 0 dan 10!‛ End If Else Print ‚Masukkan angka di antara 0 dan 10!‛ End If End
  • 34. TP4 SMK NEGERI 1 PUNGGING February6,2014 6. Menampilkan mata pelajaran sesuai nomor yang dimasukkan Start Print ‚Masukkan nomor mata pelajaran Anda (1-3):‛ Read g Switch g Case 1 : Print ‚Matematika‛ Case 2 : Print ‚Bahasa Indonesia‛ Case 3 : Print ‚Bahasa Inggris‛ Else : Print ‚Masukkan hanya nomor 1-3‛ End Switch End 7. Menampilkan tulisan Test sebanyak 5 kali dengan fungsi For Start For h = 1 To 5 Do Print ‚Test ‛ End For End 8. Menampilkan tulisan Test sebanyak 5 kali dengan fungsi While-Do Start i = 1 While i <= 5 Do Print ‚Test ‛ i = i + 1 End While End 9. Menampilkan tulisan Test sebanyak 5 kali dengan fungsi Repeat-Until Start j = 1 Repeat Print ‚Test ‛ j = j + 1 Until j <= 5 End
  • 35. TP4 SMK NEGERI 1 PUNGGING February6,2014 G. FLOWCHART Flowchart atau diagram alir merupakan sebuah diagram dengan simbol-simbol grafis yang menyatakan aliran algoritma atau proses yang menampilkan langkah-langkah yang disimbolkan dalam bentuk kotak, beserta urutannya dengan menghubungkan masing masing langkah tersebut menggunakan tanda panah. Diagram ini bisa memberi solusi selangkah demi selangkah untuk penyelesaian masalah yang ada di dalam proses atau algoritma tersebut. Tujuan utama penggunaan flowchart adalah untuk menyederhanakan rangkaian proses atau prosedur untuk memudahkan pemahaman pengguna terhadap informasi tersebut. Oleh karena itu, design sebuah flowchart harus ringkas, jelas, dan logis. Jenis jenis Flowchart Ada beberapa jenis flowchart diantaranya: 1. Bagan alir sistem (systems flowchart). 2. Bagan alir dokumen (document flowchart). 3. Bagan alir skematik (schematic flowchart). 4. Bagan alir program (program flowchart). 5. Bagan alir proses (process flowchart).
  • 36. TP4 SMK NEGERI 1 PUNGGING February6,2014 System Flowchart System flowchart dapat didefinisikan sebagai bagan yang menunjukkan arus pekerjaan secara keseluruhan dari sistem.Bagan ini menjelaskan urut- urutan dari prosedur-prosedur yang ada di dalam sistem. Bagan alir sistem menunjukkan apa yang dikerjakan di sistem. Document Flowchart Bagan alir dokumen (document flowchart) atau disebut juga bagan alir formulir (form flowchart) atau paperwork flowchart merupakan bagan alir yang menunjukkan arus dari laporan dan formulir termasuk tembusan- tembusannya.
  • 37. TP4 SMK NEGERI 1 PUNGGING February6,2014 Schematic Flowchart Bagan alir skematik (schematic flowchart) merupakan bagan alir yang mirip dengan bagan alir sistem, yaitu untuk menggambarkan prosedur di dalam sistem.Perbedaannya adalah, bagan alir skematik selain menggunakan simbol-simbol bagan alir sistem, juga menggunakan gambar-gambar komputer dan peralatan lainnya yang digunakan.Maksud penggunaan gambar-gambar ini adalah untuk memudahkan komunikasi kepada orang yang kurang paham dengan simbol-simbol bagan alir. Penggunaan gambar- gambar ini memudahkan untuk dipahami, tetapi sulit dan lama menggambarnya.
  • 38. TP4 SMK NEGERI 1 PUNGGING February6,2014 Program Flowchart Bagan alir program (program flowchart) merupakan bagan yang menjelaskan secara rinci langkah-langkah dari proses program. Bagan alir program dibuat dari verifikasi bagan alir sistem. Bagan alir program dapat terdiri dari dua macam, yaitu bagan alir logika program (program logic flowchart) dan bagan alir program komputer terinci (detailed computer program flowchart). Bagan alir logika program digunakan untuk menggambarkan tiap-tiap langkah di dalam program komputer secara logika. Bagan alat- logika program ini dipersiapkan oleh analis sistem.Gambar berikut menunjukkan bagan alir logika program. Bagan alir program komputer terinci (detailed computer program flow-chart) digunakan untuk
  • 39. TP4 SMK NEGERI 1 PUNGGING February6,2014 menggambarkan instruksi-instruksi program komputer secara terinci. Bagan alir ini dipersiapkan oleh pemrogram. Process Flowchart Bagan alir proses (process flowchart) merupakan bagan alir yang banyak digunakan di teknik industri. Bagan alir ini juga berguna bagi analis sistem untuk menggambarkan proses dalam suatu prosedur.
  • 40. TP4 SMK NEGERI 1 PUNGGING February6,2014 SIMBOL DAN FUNGSI FLOWCHART Pedoman Membuat Flowchart Bila seorang analis dan programmer akan membuat flowchart, ada beberapa petunjuk yang harus diperhatikan, seperti:  Flowchart digambarkan dari halaman atas ke bawah dan dari kiri kekanan.  Aktivitas yang digambarkan harus didefinisikan secara hati-hati dan definisi ini harus dapat dimengerti oleh pembacanya.  Kapan aktivitas dimulai dan berakhir harus ditentukan secara jelas.
  • 41. TP4 SMK NEGERI 1 PUNGGING February6,2014  Setiap langkah dari aktivitas harus diuraikan dengan menggunakan deskripsi kata kerja  Setiap langkah dari aktivitas harus berada pada urutan yang benar.  Lingkup dan range dari aktifitas yang sedang digambarkan harusditelusuri dengan hati-hati. Percabangan-percabangan yang memotong aktivitas yang sedang digambarkan tidak perlu digambarkan pada flowchart yang sama. Simbol konektor harus digunakan dan percabangannya diletakan pada halaman yang terpisah atau hilangkan seluruhnya bila percabangannya tidak berkaitan dengan sistem.  Gunakan simbol-simbol flowchart yang standar. Contoh
  • 42. TP4 SMK NEGERI 1 PUNGGING February6,2014 Keterangan : Dari gambar flowchart di atas terlihat bahwa suatu flowchart harus terdapat proses persiapan dan proses akhir. Dan yang menjadi topik dalam pembahasan ini adalah tahap proses. Karena kegiatan ini banyak mengandung variasi sesuai dengan kompleksitas masalah yang akan dipecahkan. Walaupun tidak ada kaidah-kaidah yang baku dalam penyusunan flowchart, namun ada beberapa anjuran yaitu:  Hindari pengulangan proses yang tidak perlu dan logika yang berbelit sehingga jalannya proses menjadi singkat  Penggambaran flowchart yang simetris dengan arah yang jelas.  Sebuah flowchart diawali dari satu titik START dan diakhiri dengan END.