Anda di halaman 1dari 21

DASAR-DASAR PEMOGRAMAN

MIKHAEL RAY ARITONANG

FAKULTAS TEKNIK DAN ILMU KOMPUTER

PRODI INFORMATIKA
KATA PENGANTAR
 
Puji dan syukur kehadirat Tuhan YME karena berkat dari-Nya saya dapat
menyelesaikan makalah tentang “DASAR-DASAR PEMROGRAMAN “.
Saya sangat bersyukur karena telah mampu menyelesaikan makalah
yang menjadi tugas dari mata kuliah Dasar-dasar Pemrograman. Kritik
maupun saran terhadap makalah ini akan saya terima agar kedepannya
bisa menjadi lebih baik lagi. Demikian yang dapat saya sampaikan,
semoga makalah ini bermanfaat bagi semua pihak.

(Arief Fatchul Huda.2013)
DAFTAR ISI
KATA
PENGANTAR……………………………………………………………………i
DAFTAR
ISI…………………………………………………………………………………ii
BAB I PENDAHULUAN
……………………………………………………………………………………. 1
1. Latar Belakang
…………………………………………………………………………………..1
2. Rumusan Masalah
…………………………………………………………………………………..2
3. Tujuan Pembelajaran
…………………………………………………………………………………..2
BAB II PEMBAHASAN
……………………………………………………………………………………..3
1. Algoritma
…………………………………………………………………………………..3
2. Data, Variabel dan Operasi
Matematika……………………………………………………………………...5
3. Struktur dasar
Algoritma……………………………………………………………………….8
4. Dimensi Array dan
Struktur………………………………………………………………………...11
5. Prosedur………………………………………………………………………..12
6. Proses
Searching………………………………………………………………………13
7. Proses Pengurutan (sorting)
………………………………………………………………………..16
BAB III PENUTUP
…………………………………………………………………………………....18
1. Kesimpulan
…………………………………………………………………………………18
2. Penutup
…………………………………………………………………………………18

(Arief Fatchul Huda.2013)
DAFTAR PUSTAKA
 
BAB I
PEMBAHASAN
 
1. Latar Belakang
Pesatnya teknologi, terutama teknologi komputer sudah tak bisa
dipungkiri lagi, bagi yang mengikuti perkembangannya, ia tidak akan
dipandang sebelah mata. Sebaliknya, bagi yang tidak mengikuti
perkembangannya, bersiaplah untuk mundur secara suka rela dari
panggung kompetisi. Ibarat wabah, teknologi komputer sudah menyusupi
hampir semua bidang kehidupan manusia. Dari pemerintah pusat sampai
tingkat pemerintah desa, perusahaan-perusahaan, supermarket,
minimarket, perguruan tinggi, SLTA, SLTP, bahkan SD hampir semuanya
mengenal komputer.  Saat ini, yang mempunyai lingkungan yang semakin luas
dan banyak diminati, juga dapat digunakan untuk menghasilkan uang adalah
dunia pemrograman komputer. Dalam dunia pemrograman komputer, dikenal
algoritma dan banyak bahasa pemrograman, seperti C, C++, Octave, Pascal,
Basic, Java, dan lain-lain. Agar suatu perintah dapat dilaksanakan oleh
komputer, algoritma harus ditulis dalam notasi bahasa pemrograman sehingga
dinamakan program. Banyak cabang ilmu komputer yang diacu dalam
terminologi algoritma. Namun, jangan beranggapan algoritma selalu identik
dengan ilmu komputer saja. Dalam kehidupan sehari-haripun banyak terdapat
proses yang dinyatakan dalam suatu algoritma. Cara-cara membuat kue atau
masakan yang dinyatakan dalam suatu resep juga dapat disebut sebagai
algoritma. Pada setiap resep selalu ada urutan langkah-langkah membuat
masakan. Bila langkah-langkahnya tidak logis, tidak dapat dihasilkan masakan
yang diinginkan. Dari uraian tersebut dapat dilihat besarnya peranan algoritma.
Oleh karena itu, dalam makalah ini kami akan membahas mengenai “Dasar-
Dasar Pemrograman”.

1. Rumusan Masalah
2. Apa yang dimaksud dengan Algoritma ?
3. Apa yang dimaksud dengan Data, Variabel dan Operasi Matematika?
4. Bagaimana Struktur dasar Algoritma ?
5. Apa Saja Dimensi Array dan Struktur?
6. Apa Saja Prosedur ?
7. Bagaimana Proses Searching?
8. Bagaimana Proses Pengurutan (sorting)?

1. Tujuan Penulisan
2. Untuk Mengetahui Pengertian Algoritma
3. Untuk Mengetahui Data, Variabel dan Operasi Matematika
4. Untuk Mengetahui Struktur dasar Algoritma
5. Untuk Mengetahui Dimensi Array dan Struktur
6. Untuk Mengetahui Prosedur
7. Untuk Mengetahui Proses Searching
8. Untuk Mengetahui Proses Pengurutan (sorting)

(Arief Fatchul Huda.2013)
BAB II
PEMBAHASAN
 
1. Algoritma
     Ahli sejarah matematika menemukan asal kata tersebut yang
berasal dari nama penulis buku arab yang terkenal yaitu Abu Jafar
Muhammad Ibnu Musa Al-Khuwarizmi. Al-Khuwarizmi dibaca orang barat
menjadi Algorism. Al-Khuwarizmi menulis buku yang berjudul Kitab Al
Jabar Wal-Muqabala yang artinya Buku pemugaran dan pengurangan
(The book of restoration and reduction). Dari judul buku itu kita juga
memperoleh akar kata Aljabar (Algebra). Perubahan kata dari algorism
menjadi algorithm muncul karena kata algorism sering dikelirukan dengan
arithmetic, sehingga akhiran sm berubah menjadi thm. Karena
perhitungan dengan angka Arab sudah menjadi hal yang biasa, maka
lambat laun kata algorithm berangsur-angsur dipakai sebagai metode
perhitungan (komputasi) secara umum, sehingga kehilangan makna kata
aslinya. Dalam bahasa Indonesia, kata algorithm diserap menjadi
algoritma. Dan menurut Rinaldi Munir :2002. Algoritma adalah urutan
langkah-langkah logis penyelesaian masalah yang disusun secara
sistematis.
Ciri-ciri Algoritma Menurut Donald E. Knuth, algoritma mempunyai lima
ciri:

1. Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas.


2. Setiap langkah harus didefinisikan secara tepat dan tidak berarti dua.
3. Algoritma memiliki nol atau lebih masukan (input).
4. Algoritma mempunyai nol atau lebih keluaran (output).
5. Algoritma harus sangkil (efektif)

  Algoritma yang akan digunakan yaitu algoritma dalam bentuk


program. Program adalah kumpulan pernyataan komputer, sedangkan
metode dan tahapan sistematis dalam program adalah algoritma. Program
ditulis dengan menggunakanbahasa pemrograman. Jadi bisa disebut
bahwa program adalah suatu implementasi dari bahasa pemrograman.
Program = Algoritma + Bahasa (Struktur Data)

Untuk menterjemahkan bahasa pemrograman yang kita tulis maka


diperlukan Compiler dan interpreter. Compiler adalah suatu program yang
menterjemahkan bahasa program (Source code) ke dalam bahasa obyek
(object code) secara keseluruhan program. Interpreter menganalisis dan
mengeksekusi setiap baris dari program secara keseluruhan.

(Arief Fatchul Huda.2013)
Compiler Interpreter

Bila terjadi kesalahan kompilasi maka source


program harus diperbaiki dan dikompilasi Bila terjadi kesalahan interprestasi dapat
ulang Diperbaiki

Dihasilkan Executable program Tidak dihasilkan Executable program

Dihasilkan Object program Tidak dihasilkan obyek program

Keamanan dari program lebih terjamin Keamanan dari program kurang terjamin

Menterjemahkan secara keseluruhan Menterjemahkan Instruksi per instruksi

Proses pekerjaan program lebih cepat Proses pekerjaan program lebih lambat

Source program tidak dipergunakan hanya bila


untuk perbaikan saja Source program terus dipergunakan

Perbedaan Compiler dan interpreter.

Ada tiga cara penulisan algoritma, yaitu :

1. Bahasa Natural (Id Indonesia, En English, dan bahasa lainnya)


Contoh : Buatlah sebuah algoritma untuk memilih bilangan terbesar dari 3
buah bilangan (misalnya 10 4 2)

1. Ambil bilangan pertama dan set Maks sama dengan bilangan pertama.
2. Ambil bilangan kedua dan bandingkan dengan Maks
3. Apabila bilangan kedua lebih besar dari Maks, set Maks sama dengan bilangan
kedua
4. Ambil bilangan ketiga dan bandingkan dengan Maks
5. Apabila bilangan ketiga lebih besar dari Maks, set Maks sama dengan bilangan
ketiga
6. Variabel Maks berisi bilangan terbesar, tampilkan hasilnya.
7. Pseudo-Code, notasi yang menyerupai bahasa pemrograman tingkat tingg.
Sudah dekat dengan bahasa kepemrograman, namun sulit dimengerti oleh orang
yang belum mengerti algoritma.

(Arief Fatchul Huda.2013)
Contoh :

Menghitung Luas segitiga


Input=(Alas)

Input=(Tinggi)

Luas_segitiga       (Alas*Tinggi)

Output(Luas)Segitiga

3. Flowchart (Diagram Alir), notasi yang menyerupai bahasa pemrograman


tingkat .
Contoh : Algoritma Bilangan_Maksimum dalam flow char

1. Data, Variabel dan Operasi Matematika


     Computer dapat membantu menyelesaikan pekerjaan kita apabila
bahan baku yang digunakan adalah data. Maka beberapa bahasa
program membagi data dalam beberapa jenis yang biasa disebut tipe
data.
Tipe data adalah jenis data yang dapat diolah oleh komputer untuk
memenuhi kebutuhan dalam pemrograman komputer. Tipe data dibagi
menjadi dua yaitu:

1. Tipe data dasar yaitu Tipe data yang mampu menyimpan satu nilai tiap satu
variabel. Tipe data primitive merupakan tipe data dasar yang sering dipakai
oleh program. Contoh tipe data primitive  adalah tipe numerik (integer dan
real), tipe data karakter/char, tipe data boolean.
2. Integer Merupakan tipe data berupa bilangan bulat, terbagi atas beberapa
kategori seperti table sebagai berikut

(Arief Fatchul Huda.2013)
Tipe Ukuran
Data Tempat Rentang Nilai

Byte 1 byte 0 s/d +255

Shortint 1 byte -28 s/d +127

Integer 2 bytes -32768 s/d 32767

Word 2 bytes 0 s/d 65535

2147483648 s/d
Longint 4 bytes 2147483647
 

1. Real adalah bilangan yang berisi titik desimal atau jenis bilangan pecahan.
Tipe Ukuran
Data Tempat Rentang Nilai

2.9 x 10-39 s/d 1.7


Real 6 bytes x1038

1.5 x 1045 s/d 3.4 x


single 4 bytes 1038

5.0 x 10-324 s/d 1.7 x


Double 8 bytes 10308

3.4 x 10-4932 s/d 1.1 x


extended 10 bytes 104932

comp 8 bytes -9.2x 1018 s/d 9.2x 1018


 

 (Arief Fatchul Huda.2013)
255. Karakter (char). Karakter merupakan tipe data yang hanya mampu
menyimpan 1 digit karakter.  Ukuran untuk tipe data karakter adalah 1 byte (1
byte = 8 bit). Adapun macam karakter yang ada sejumlah 256 macam karakter
yaitu dari kode karakter (ASCII), 0 sampai dengan 255. Untuk penulisan
karakter menggunakan tanda petik tunggal (‘ )  di depan dan belakang karakter
yang ditulis. Contoh : ‘a’, ‘A’,’&’ dll. Nilai-nilai yang termasuk karakter adalah
:
 Karakter huruf : ‘a’..’z’,’A’..’Z’
 Karakter angka : ‘0’..’9’
 Karakter tanda baca : titik, koma, titik koma, titik dua dan sebagainya
 Karakter khusus : $, %, #, @ dan sebagainya.
1. Boolean merupakan tipe data logika, yang berisi dua kemungkinan nilai: TRUE
(benar) atau FALSE (salah). Tipe data boolean memakai memori paling kecil.
2. Tipe data bentukan adalah tipe data yang dibentuk dari tipe data dasar dengan
maksud mempermudah pekerjaan programmer..
3. Array atau sering disebut sebagai larik, adalah tipe data yang sudah terstruktur
dengan baik, meskipun masih sederhana. Array mampu menyimpan sejumlah
data dengan tipe yang sama (homogen) dalam sebuah variabel. Sebagai
ilustrasi, array mampu menampung banyak data namun dengan satu tipe data
yang sama, misalnya integer saja. Setiap lokasi data array diberi nomor indeks
yang berfungsi sebagai alamat dari data tersebut.
4. String  merupakan suatu data yang menyimpan array (larik), sebagai contoh
‘ABCDEF’ merupakan sebuah konstanta string yang berisikan 6 byte karakter.
Ukuran Tempat untuk tipe data ini adalah 2 s/d 256 byte, dengan jumlah
elemen 1 s/d 255.
5. Record atau struct Seperti halnya Array, Record atau Struct juga termasuk tipe
data komposit. Berbeda dengan array, tipe data record mampu menampung
banyak data dengan tipe data berbeda-beda (heterogen). Misalnya, satu bagian
integer, satu bagian lagi character, dan bagian lainnya Boolean. Biasanya record
digunakan untuk menampung data suatu obyek.
Variabel adalah tempat dimana kita dapat mengisi atau mengosongkan
nilainya dan memanggil kembali apabila dibutuhkan. Setiap variabel akan
mempunyai nama (identifier) dan nilai.

Contoh Nama variabel dan nilai.

username = “joni”

Nama = “Udin”

Pada sebagian besar bahasa pemrograman, variabel harus dideklarasikan


lebih dulu untuk mempermudah compiler bekerja. Apabila variabel tidak
dideklarasikan maka setiap kali compiler bertemu dengan variabel baru
Pemberian nama variabel harus mengikuti aturan yang ditetapkan oleh
bahasa pemrograman yang kita gunakan.. Aturan-aturan tersebut yaitu :

(Arief Fatchul Huda.2013)
1. Nama variabel harus diawali dengan huruf.
2. Tidak boleh menggunakan spasi pada satu nama variabel. Spasi bisa diganti
dengan karakter underscore (_).
3. Nama variabel tidak boleh mengandung karakter-karakter khusus,seperti : .,+, -,
*, /, <, >, &, (, ) dan lain-lain.
4. Nama variabel tidak boleh menggunakan kata-kata kunci d bahasa
pemrograman
Operator Jenis Operasi Tipe Operand Tipe Hasil Contoh

a+b
+ Penjumlahan Integer, real Integer, real à 4 + 8 = 12

x–2
– Pengurangan Integer, real Integer, real à 4 – 8 = -4

* Perkalian Integer, real Integer, real a * bà 4 * 8 = 32

a/b
/ Pembagian untuk bilangan riil Integer, real à8/4=2

untuk bilangan Integer


Div Pembagian bulat Integer 13 div 3 = 4

Mod Sisa bagi integer integer 13 mod 3 = 1


Operator

1. Struktur dasar Algoritma


     Algoritma merupakan langkah-langkah penyelesaian masalah.
Langkah-langkah tersebut dapat berupa RUNTUNAN AKSI,
PEMILIHAN/PERCABANGAN AKSI, dan PENGULANGAN AKSI. Ketiga
jenis langkah tersebut membentuk konstruksi suatu algoritma. Semua
program yang ada di dunia ini pasti mengandung salah satu dari ketiga
struktur ini. Jadi, sebuah algoritma dapat dibangun dari tiga buah struktur
dasar, yaitu:
1. Runtunan (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 menentukan keadaan akhir algoritma. Bila
urutannya diubah, maka hasil akhir mungkin juga berubah.

(Arief Fatchul Huda.2013)

1. Pemilihan/Percabangan (selection).
Adakalanya sebuah instruksi dikerjakan jika kondisi tertentu dipenuhi.
Kondisi adalah persyaratan yang dapat bernilai benar atau salah. Dalam
pemilihan dikenal beberapa struktur pemilihan, yaitu:
#If–then
Aksi hanya akan dilaksanakan apabila kondisi bernilai benar. Sebaliknya,
apabila kondisi bernilai salah, maka aksi tidak akan dilaksanakan.
Struktur Umum:
If kondisi then
Aksi
Struktur pemilihan if-then hanya memberikan satu pilihan aksi bila kondisi
(persyaratan) dipenuhi (bernilai benar), dan tidak memberikan pilihan aksi
lain bila kondisi bernilai salah.
#If-then-else
Struktur pemilihan ini memberikan dua buah aksi yang akan dikerjakan
tergantung pada nilai kondisinya.
Struktur umumnya:
If kondisi then
            aksi 1
Else
            aksi 2
            Else artinya ”kalau tidak”. Bila kondisi benar, aksi 1 yang akan
dikerjakan, tetapi kalau tidak, aksi 2 yang akan dikerjakan.
#If-then-else if
Apabila pilihan aksi yang dilakukan lebih dari dua buah, maka struktur
pilihannya menjadi lebih rumit, biasanya untuk pemilihan seperti ini
disebut pemilihan bersarang.
Kelebihan struktur pemilihan terletak pada kemampuannya yang
memungkinakan pemroses mengikuti jalur aksi yang berbeda berdasarkan
kondisi yang ada.
1. Pengulangan (repetition/looping).
Pengulangan / looping adalah pelaksanaan suatu instruksi berulang kali.
Di dalam algoritma, pengulangan dapat dilakukan sejumlah kali, atau
sampai kondisi berhenti pengulangan tercapai. Pengulangan digunakan
untuk menjalankan satu atau beberapa pernyataan sebanyak beberapa
kali. Dengan kata lain, pengulangan memungkinkan pengerjaan beberapa
kali perintah tetapi penulisan perintah tersebut hanya satu kali.Struktur
pengulangan yang umum digunakan antara lain:

Struktur Pengulangan
Bentuk Umum:<inisialisasi>
awal pengulangan
badan pengulangan
akhir pengulangan
<terminasi>

(Arief Fatchul Huda.2013)
 <inisialisasi>: aksi yang dilakukan sebelum pengulangan dilakukan untuk
pertama kalinya.
 Badan pengulangan: bagian algoritma yang diulang
 <terminasi>: aksi yang dilakukan setelah pengulangan selesai dilaksanakan
 <inisialisasi> dan <terminasi> tidak selalu ada, namun pada berbagi kasus
inisialisasi umumnya diperlukan awal dan akhir pengulangan dinyatakan
sebagai kata kunci yang bergantung pada struktur pengulangan yang digunakan.
#Pernyataan for
Pernyataan pengulangan for digunakan jika kita sudah tahu berapa kali
kita akan mengulang satu atau beberapa pernyataan. Macam struktur
pengulangan
pengulangan tanpa kondisi (unconditional looping) jumlah pengulangan
sudah diketahui sebelum eksekusi
Struktur FOR

 Struktur pengulangan FOR digunakan untuk mengulang statemen atau satu


blokstatemen berulang kali.
 Jumlah pengulangan diketahui atau dapat ditentukan sebelum eksekusi.
 Untuk mencacah sudah jumlah pengulangan diperlukan sebuah peubah
(variable) pencacah (counter). Peubah ini nilainya selalu bertambah satu setiap
kali pengulangan dilakukan.
 Jika cacah pengulangan sudah mencapai jumlah yang dispesifikasikan, maka
proses pengulangan berhenti.
Bentuk umum pernyataan for adalah sbb:
For pencacah := nilai_awal to nilai_akhir do
            Aksi
Aksi akan dilakukan sebanyak hitungan pencacah pengulangan, yaitu dari
nilai_awal sampai nilai_akhir.

#Pernyataan repeat-until
Pernyataan repeat-until akan melakukan pengulangan aksi hingga kondisi
(persyaratan) berhenti terpenuhi.
Bentuk umum pernyataan repeat-until adalah sbb:
Repeat
Aksi
Until kondisi
Tidak seperti pada struktur for yang jumlah pengulangannya diketahui
sebelum pengulangan dilaksanakan, maka untuk struktur repeat-until
digunakan jika jumlah pengulangan tidak dapat diketahui di awal. Namun
yang pasti, pengulangan aksi akan terus dilakukan sampai kondisi
berhenti dipenuhi.

(Arief Fatchul Huda.2013)
#Pernyataan while-do
Sama seperti pada pernyataan repeat-until, pada pernyataan while-do ini
digunakan untuk pengulangan yang belum diketahui pasti jumlah
pengulangannya. Berakhirnya pengulangan ini ditentukan oleh suatu
kondisi. Bila kondisi sudah tidak terpenuhi, maka pengulangan akan
berakhir. Dengan kata lain, selama kondisi masih terpenuhi, pengulangan
akan terus dilakukan.Bentuk umum pernyataan while-do sebagai berikut:
While kondisi do
                        Aksi
Pada pernyataan repeat-until dan while-do, pada dasarnya hampir sama
yaitu digunakan jika jumlah pengulangan belum dapat ditentukan. Tetapi
terdapat perbedaan yaitu pada pengecekan kondisi. Jika pada
pernyataan while-do, kondisi dicek pada awal blok pengulangan, pada
pernyataan repeat-until, kondisi dicek pada akhirblokpengulangan.
Perbedaan yang lain, bila pernyataan while-do mengulang pernyataan
selama kondisi masih terpenuhi, pernyataan repeat-until mengulang
pernyataan selama kondisi belum terpenuhi.
1. Dimensi Array dan Struktur
merupakan bentuk penyimpanan data yang dapat menyimpan
sekumpulan data yang mempunyai tipe sama dalam sebuah nama.
Sekalipun nama -nya sama, akan tetapi data 1 dengan data yang lain
mempunyai memori penyimpanan yang berbeda. Memori penyimpanan ini
ditandai dengan indeks. Banyaknya memori penyimpanan dalam
octavetidak terbatas dan tidak perlu dipesan terlebih dahulu seperti halnya
dalam bahasa pemrograman yang lain.

terdiri dari beberapa dimensi dari mulai 1, 2, 3, dst. Akan tetapi yang
banyak digunakan hanya array 1 dan 2 dimensi. Gambar berikut
mengilustrasikan sebuah 1 dimensi dengan nama yang mempunyai 6
memori penyimpanan.

data(1) data(2) data(3) data(4) data(5) data(6)

5 4 3 1 6 2
Ilustrasi 1 Dimensi

2 dimensi merupakan gabungan dari 1 dimensi. 2 dimensi memiiki 2


indeks, yaitu indeks baris dan kolom. Tempat penyimpanan 2 dimensi
dapat diilustrasikan dalam gambar berikut:

(Arief Fatchul Huda.2013)
data(1,1) data(1,2) data(1,3)

data(2,1) data(2,2) data(2,3)

data(3,1) data(3,2) data(3,3)


Ilustrasi 2 Dimensi

Array dua dimensi merupakan data matriks dengan tipe data yang sama
untuk seluruh elemen. Oleh karena itu, operasi yang berlaku merupakan
operasi standar pada matriks.
Struktur/record. Jika array hanya dapat menyimpan data dengan tipe yang
sama, maka record/struktur dapat menyimpan lebih dari satu data dengan
tipe data yang berbeda. Contoh data mahasiswa adalah NIM, Nama,
TempatLahir, TglLahir, dll. Untuk menyimpan data mahasiswa satu
jurusan, maka dibuat data struktur Mhs dengan elemen dan tipe data.

Elemen Tipe data Cara Akses

NIM String Mhs.NIM

Nama String Mhs.Nama

Jkel Char Mhs.Jkel

IPK Float/real Mhs.IPK


 
1. Prosedur
Fungsi merupakan kumpulan pernyataan/perintah yang dikemas dalam
satu nama dan nama tersebut dapat dipanggil beberapa kali di beberapa
tempat dalam program. Fungsi merupakan bagian program yang berfungsi
mengerjakan suatu tugas tertentu. Fungsi merupakan konsep dasar dari
paradigma pemrograman terstruktur yang membagi-bagi tugas program
ke dalam bagian-bagian kecil (fungsi). Manfaat adanya fungsi:

1. Memudahkan dalam mengembangkan program.


2. Menghemat ukuran program.
Fungsi dalam Matlab dibuat menggunakan function dan diakhiri dengan
end. Ada 4 cara mendefinisikan fungsi yang dapat dipilih:

(Arief Fatchul Huda.2013)

1. Fungsi yang mempunyai parameter dan nilai balik


function nilai_balik = nama_fungsi(parameter)
      kumpulan_perintah;
end

2. Fungsi yang mempunyai parameter tapi tidak mempunyai nilai balik

function nama_fungsi(parameter)
      kumpulan_perintah;
end

3. Fungsi yang tidak mempunyai parameter dan nilai balik

function nama_fungsi()
      kumpulan_perintah;
end

4. Fungsi yang tidak mempunyai parameter tapi mempunyai nilai balik

function nilai_balik = nama_fungsi()


      kumpulan_perintah;
end

 
 

 (Arief Fatchul Huda.2013)

Aturan penamaan fungsi sama dengan aturan penamaan variabel.


Pemanggilan fungsi dapat dilakukan di beberapa tempat sesuai dengan
kebutuhan. Pemanggilan fungsi dilakukan dengan menuliskan
nama_fungsi dan parameter-nya (jika ada).

Parameter

Parameter merupakan variabel yang hanya dikenali dalam fungsi diamana


dia berada. Parameter berfungsi untuk memudahkan pertukaran
informasi/data antara fungsi dengan program yang memanggilnya.
Penggunaan parameter bersifat opsional, boleh ada boleh tidak sesuai
dengan kebutuhan. Jumlah parameter tidak terbatas disesuaikan dengan
kebutuhan. Penulisan parameter lebih dari satu dipisahkan dengan tanda
koma. Terdapat dua jenis parameter:

1. Parameter formal merupakan variabel yang menjadi parameter dalam definisi


fungsi dan berfungsi menerima nilai dari parameter aktual.
2. Parameter aktual merupakan variabel yang menjadi parameter dalam
pemanggilan fungsi dan berfungsi mengirim nilai ke parameter formal.
Parameter formal dan aktual saling berpasangan dan jumlahnya harus
sama.

Nilai Balik

Nilai balik merupakan nilai yang dikembalikan oleh fungsi pada saat
pemanggilan fungsi. Kelebihan Matlab dibandingkan bahasa
pemrograman lain adalah Matlab dapat mengembalikan nilai lebih dari 1
variabel. Nilai yang dihasilkan oleh fungsi.

1. Proses Pengurutan (sorting)


     Sorting adalah pengurutan data. Data diurutkan dari yang terkecil
sampai yang paling besar atau sebaliknya. Tujuannya supaya data
tersebut jadi tersusun rapi, terurut dan teratur. Algoritma untuk melakukan
sorting sperti itu ada bermacam-macam diantaranya yaitu BubbleSort,
SelectionSort, InsertionSort, ExchangeSort dan QuickSort.
1. BubbleSort
          BubbleSort adalah pengurutan data yang dilakukan dengan
membandingkan antara data[n] dengan data[n+1] atau antara data[n]
dengan data[n-1] kemudian jika data lebih kecil/besar dilakukan
pertukaran. Pada setiap iterasi dapat terjadi beberapa kali pertukaran atau
tidak sama sekali. Jumlah iterasi ditentukan oleh banyaknya data
atau‘N’.Iterasi=N-1.”
Langkah-langkah bubble sort yaitu :

(Arief Fatchul Huda.2013)

1. Bandingkan nilai pada data ke-1 dengan data ke-2


2. Jika nilai data ke-1 lebih besar dari data ke-2 maka tukar posisinya
3. Kemudian data yang lebih besar tersebut dibandingkan lagi dengan data ke-3

4. Jika data ke-3 lebih kecil dari data ke-2 maka tukar posisinya, dan begitu
seterusnya sampai data yang ada jadi terurut.
Contoh secara manual :

Iterasi Urutan data

0 87 74 71 54 88 60

1 74 71 54 87 60 88

2 71 54 74 60 87 88

3 54 71 60 74 87 88

4 54    0 71 74 87 88
Intinya bubble sort itu salah satu metode yang simpel untuk sorting, tetapi
jika jumlah data yang disorting besar akan memakan waktu yang lama.

2. SelectionSort
SelectionSort adalah merupakan sebuah algoritma pengurutan yang
secara berulang mencari data yang belum terurut dan mencari paling
sedikit satu untuk dimasukkan ke dalam lokasi akhir.

Prinsip kerja dari Teknik Section sort ini adalah:

1. Pengecekan dimulai dari data 1 sampai dengan data ke n


2. Tentukan bilangan dengan Index terkecil dari data bilangn tersebut
3. Tukar bilangan dengan index terkecil tersebut dengan bilangan pertama (I=1)
dari data bilangan tersebut
4. Lakukan langkah 2 dan3 untuk bilangan berikutnya (I=I+1)sampai di dapatkan
data yang optimal
5. InsertionSort
InsertionSort dilakukan dengan cara menyisipkan sebuah angka ke posisi
yang diinginkan. Angka yang disisipkan sesuai dengan urutan iterasinya.
Jumlah iterasi ditentukan oleh banyaknya data atau ‘N’. Iterasi=N”.Sekilas
algoritma ini tidak jauh berbeda dengan Bubble Sort, namun
sesungguhnya berbeda.

(Arief Fatchul Huda.2013)

Langkah-langkahnya :

1. Bandingkan data kedua dengan data pertama, jika data kedua lebih kecil maka
tukar posisinya, jika tidak biarkan aja.
2. Data ketiga dibandingin dengan data ke-1 dan ke-2,jika data ke-3 lebih kecil
tukar lagi posisinya.
3. Data ke-4 dibandingin dengan data ke-3, ke-2, dan ke-1, jika data ke-4 lebih
kecil dari ketiganya maka letakkan data ke-4 ke posisi paling depan, gitu dech
seterusnya.
Contoh (secara manual aja) :

Misalkan data : 10 5 7 9 2 1 8 6

Iterasi Data

0 10 5 7 9 2 1 8 6

1 5 10 7 9 2 1 8 6

2 5 7 10 9 2 1 8 6

3 5 7 9 10 2 1 8 6

4 2 5 7 9 10 1 8 6

5 1 2 5 7 9 10 8 6

6 1 2 5 7 8 9 10 6

7 1 2 5 6 7 8 9 10
Pada iterasi 7, data sudah terurut.
(Arief Fatchul Huda.2013)

4. QuickSort
QuickSort merupakan divide and conquer algorithm. Algoritma ini
mengambil salah satu elemen secara acak (biasanya dari tengah) lalu
menyimpan semua elemen yang lebih kecil di sebelah kirinya dan semua
elemen yang lebih besar di sebelah kanannya. Hal ini dilakukan secara
rekursif terhadap elemen di sebelah kiri dan kanannya sampai semua
elemen sudah terurut. Algoritma ini termasuk algoritma yang cukup baik
dan cepat. Hal penting dalam algoritma ini adalah pemilihan nilai tengah
(pivot) yang baik sehingga tidak memperlambat proses sorting secara
keseluruhan.

Ide dari algoritma ini adalah sebagai berikut:

1. Pilih satu elemen secara acak


2. Pindahkan semua elemen yang lebih kecil ke sebelah elemen tersebut dan
semua elemen yang lebih besar ke sebelah kanannya. Elemen yang nilainya
sama bisa disimpan di salah satunya. Ini disebut operasi partisi
3. Lakukan sort secara rekursif terhadap sublist sebelah kiri dan kanannya.
4. ExchangeSort
ExchangeSort hampir sama dengan Bubble Sort. Tapi ada bedanya, yaitu
bagaimana membandingkan antar elemen-elemennya. Exchange sort
membandingkan suatu elemen dengan elemen-elemen lainnya dalam
array tersebut, dan melakukan pertukaran elemen jika diperlukan. Jadi
ada elemen yang selalu menjadi elemen pusat (pivot). Sedangkan Bubble
sort akan membandingkan elemen pertama/terakhir dengan elemen
sebelumnya/sesudahnya, kemudian elemen sebelum/sesudahnya itu akan
menjadi pusat (pivot) untuk dibandingkan dengan elemen
sebelumnya/sesudahnya lagi.

1. Searching
Searching adalah pencarian suatu data dalam sekumpulan data . Kali ini
kita akan bahas tentang 2 jenis searching yaitu Sequential
Search dan Binary Search.
1. Sequential Search merupakan proses pencarian data dengan metode pencarian
langsung. Ini dilakukan dengan cara mencocokkan data yang akan dicari
dengan semua data yang ada dalam kelompok data. Proses pencocokan data
dilakukan secara berurutan. Satu demi satu dimulai dari data ke1 hingga data
pada urutan terakhir.
Secara manual contoh :
(Arief Fatchul Huda.2013)

Data : 20 25 35 79 80 90

Data yang dicari 35

Iterasi Data keterangan

0 20 25 35 79 80 90 Data awal

1 20 25 35 79 80 90 Belum cocok

2 20 25 35 79 80 90 Belum cocok

3 20 25 35 79 80 90 Data ditemukan


Ket : angka yang ditebalkan maksudnya angka yang diseleleksi.Yang
diatas pengertian secara manual. Secara teoritis sequential search :
pencarian ini hanya melakukan pengulangan dari 1 sampai dengan jumlah
data. Pada setiap pengulangan, dibandingkan data ke-i dengan yang
dicari. Apabila sama, berarti data telah ditemukan. Sebaliknya apabila
sampai akhir pengulangan tidak ada data yang sama, berarti data tidak
ada. Pada kasus yang paling buruk, untuk N elemen data harus
dilakukanpencariansebanyakNkalipula.
Algoritma pencarian berurutan dapat dituliskan sebagai berikut :

1. i←0
2. ketemu←false
3. Selama (tidak ketemu) dan (i <= N) kerjakan baris 4 4 Jika (Data[i] = x) maka
ketemu ← true, jika tidak i ← i + 1 5 Jika (ketemu) maka i adalah indeks dari
data yang dicari, jika tidak data tidak ditemukan Di bawah ini merupakan
fungsi untuk mencari data menggunakan pencarian sekuensial.
4. Binary Search
Binary Search adalah sebuah teknik untuk menemukan nilai tertentu
dalam sebuah larik (array) linear, dengan menghilangkan setengah data
pada setiap langkah, dipakai secara luas tetapi tidak secara ekslusif
dalam ilmu komputer. Sebuah pencarian biner mencari nilai tengah
(median), melakukan sebuah pembandingan untuk menentukan apakah
nilai yang dicari ada sebelum atau sesudahnya, kemudian mencari
setengah sisanya dengan cara yang sama. Sebuah pencarian biner
adalah salah satu contoh dari algoritma divide and conquer .
Penerapan terbanyak dari binary search adalah untuk mencari sebuah
nilai tertentu dalam sebuah list terurut. Jika dibayangkan, pencarian biner
dapat dilihat sebagai sebuah permainan tebak-tebakan, kita menebak
sebuah bilangan, atau nomor tempat, dari daftar (list) nilai.

 (Arief Fatchul Huda.2013)

BAB III
PENUTUP
 
1. Kesimpulan
Imperative program beranalogi dibawah bahasa pemograman yang
memacu atau berorientasi pada objek objek system informasi yang
mengarah pada system informasi. Pembuatan program program komputer
dengan penguasaan data yang ada pada bahasa pemograman untuk
dikuasai agar menjadi seorang programmer handal.

1. Penutup
Demi kianlah makalah yang kami buat ini, semoga bermanfaat dan
menambah pengetahuan para pembaca. Kami mohon maaf apabila ada
kesalahan ejaan dalam penulisan kata dan kalimat yang kurang jelas,
dimengerti, dan lugas.Karena kami hanyalah manusia biasa yang tak luput
dari kesalahan Dan kami juga sangat mengharapkan saran dan kritik dari
para pembaca demi kesempurnaan makalah ini. Sekian penutup dari kami
semoga dapat diterima di hati dan kami ucapkan terima kasih yang
sebesar-besarnya.

Anda mungkin juga menyukai