Anda di halaman 1dari 50

PERTEMUAN XI (SEBELAS)

ALGORITMA DAN LOGIKA DASAR


PEMROGRAMAN

TOPAN SETIAWAN, M.Kom


Pengertian
 Algoritma adalah urutan langkah-langkah logis untuk
memecahkan sebuah masalah.

 Logis artinya sesuai dengan logika manusia. Logika sendiri


adalah ilmu yang memberikan prinsip-prinsip yang harus
diikuti agar dapat berfikir valid menurut aturan yang berlaku.

 Pelajaran logika menimbulkan kesadaran untuk menggunakan


prinsip-prinsip untuk berfikir secara sistematis.
Hal-hal Penting Tentang Algoritma
 Algoritma merupakan deskripsi urutan
pelaksanaan suatu proses.
 Algoritma tersusun oleh sederetan langkah
instruksi yang logis.
 Tiap langkah instruksi akan mengerjakan suatu
tindakan (Aksi).
 Bila Aksi dilaksanakan, maka sejumlah operasi
yang bersesuaian akan dikerjakan oleh CPU.
Domain algoritma
Domain Algoritma
 Masalah: motivasi untuk membuat algoritma.
 Algoritma: prosedur untuk menyelesaikan
masalah. Seringkali satu masalah dapat
diselesaikan dengan lebih dari satu cara (banyak
kemungkinan).
Domain Algoritma
 Program: representasi formal dari suatu algoritma
dengan menggunakan bahasa pemrograman
yang bisa dimengerti oleh komputer.
 Proses: aktivitas menjalankan langkah-langkah
dalam algoritma.
Yang Harus Dipenuhi Dalam Membuat Algoritma
 Input: data yang harus diberikan pada komputer
 Output: informasi yang akan diperoleh dari
komputer
 Logika: Merencanakan proses program. Terdiri
dari sejumlah instruksi yang mengubah input
menjadi output yang diinginkan.
Contoh Algoritma 1
 Ada 2 buah gelas. Satu berisi teh dan satunya lagi
berisi kopi. Bagaimana caranya menukar isi
masing-masing gelas?

teh kopi
Contoh Algoritma 1 (Lanjutan)
 Algoritma:
1. Siapkan gelas cadangan X
X
2. Tuangkan gelas yang
berisi teh ke gelas X teh
cadangan
3. Tuangkan gelas yang
berisi kopi ke gelas yang
awalnya dipakai teh kopi
teh
4. Tuangkan isi gelas
cadangan ke gelas yang
awalnya berisi kopi
kopi X
Contoh Algoritma 2
 Alogirtma Login ke Facebook
1. User: Masukkan user name
2. User: Masukkan Password
 Sistem: Cek apakah username terdaftar?
 Sistem: Jika tidak terdaftar, maka sistem akan mengeluarkan
peringatan adanya kesalahan. Jika terdaftar maka, selanjutnya
sistem akan mengecek apakah username dan password cocok
(sesuai dengan database)?
 Sistem: Jika Username dan password cocok maka user
diperbolehkan masuk ke Facebook ybs. Jika tidak cocok maka
sistem akan mengeluarkan peringatan adanya kesalahan.
3. User : Dapat mengakses halaman facebook ybs
Definisi Program
 Program adalah kumpulan instruksi atau perintah yang disusun
sedemikian rupa sehingga mempunyai urutan nalar yang tepat untuk
menyelesaikan suatu persoalan.

 Adalah kumpulan instruksi-instruksi tersendiri yang biasanya disebut


source code yang dibuat oleh programmer (pembuat program)

 Instruksi (statement) yang dimaksud adalah syntax (cara penulisan)


sesuai dengan bahasa pemrograman yang digunakan yang
mempunyai komponen-komponen : Input, Output, Proses,
Percabangan dan Perulangan.
Bahasa Pemrograman
 Adalah aplikasi untuk membuat program
Contoh: C, C++, C#, Pascal, Basic, Perl, PHP,
ASP, JHP, Java, dll.

 Perbedaan: cara memberikan instruksi (sintaks).


 Persamaan: bertujuan menghasilkan output yang
sama.
Pembagian Target Program
 Pemrograman Desktop
 Pemrograman Web
 Pemrograman Mobile
Variabel
 Variabel adalah tempat dimana kita dapat mengisi
atau mengosongkan nilainya dan memanggil kembali
apabila dibutuhkan. Setiap variabel akan mempunyai
nama (identifier) dan nilai. Perhatikan contoh berikut.
username = “dosen123”
nama = “Topan Setiawan”
harga = 2500
hargatotal = 34000
Penamaan Variabel
 Penamaan variabel dalam bahasa pemrograman ada yang case
sensitif dan ada yang tidak case sensitif.
 Variabel 'nama' dengan 'Nama' dianggap sama dalam bahasa
Pascal, sementara pada C dianggap berbeda.
Konstanta
 Konstanta adalah variabel yang nilai datanya bersifat tetap dan tidak bisa
diubah.
 Konstanta adalah juga variabel bedanya adalah pada nilai yang disimpannya.
 Jika nilai datanya sepanjang program berjalan tidak berubah-ubah, maka
sebuah varibel lebih baik diperlakukan sebagai konstanta.
 Pada sebuah kode program, biasanya nilai data dari konstanta diberikan
langsung di bagian deklarasi konstanta.
 Sebagai contoh, jika kita membuat program perhitungan matematik yang
menggunakan nilai pi (3.14159) yang mungkin akan muncul dibanyak tempat
pada kode program, kita dapat membuat pi sebagai konstanta. Penggunaan
konstanta pi akan lebih memudahkan penulisan kode program dibanding
harus mengetikkan nilai 3.14159 berulang-ulang.
Tipe Data
 Tipe data adalah jenis data yang dapat diolah oleh komputer untuk
memenuhi kebutuhan dalam pemrograman komputer.
 Setiap variabel atau konstanta yang ada dalam kode program,
sebaiknya kita tentukan dengan pasti tipe datanya.

 Ketepatan pemilihan tipe data pada variabel atau konstanta akan


sangat menentukan pemakaian sumberdaya komputer (terutama
memori komputer).
 Salah satu tugas penting seorang programmer adalah memilih tipe
data yang sesuai untuk menghasilkan program yang efisien dan
berkinerja tinggi.
Macam-macam Tipe Data
Numeric
 Tipe data numeric digunakan pada variabel atau konstanta
untuk menyimpan nilai dalam bentuk bilangan atau angka.
 Semua bahasa pemrograman menyediakan tipe data numeric,
hanya berbeda dalam jenis numeric yang diakomodasi.
 Jenis yang termasuk dalam tipe data numeric antara lain
integer (bilangan bulat), real (bilangan pecahan).
 Tipe data pada bahasa pemrograman juga bisa berbeda,
contoh tipe data numeric bilangan bulat pada pascal adalah
'Integer' sementara pada C adalah 'Int' pada C.
Contoh Penggunaan Tipe Data Numeric
Character
 Character merupakan tipe data yang paling
banyak digunakan.
 Tipe data character kadang disebut sebagai char
atau string.
 Tipe data string hanya dapat digunakan
menyimpan teks atau apapun sepanjang berada
dalam tanda petik dua (“…”) atau petik tunggal
(‘…’).
Contoh Penggunaan Tipe Data Character
Boolean
 Tipe data Boolean digunakan untuk menyimpan
nilai True/False (Benar/Salah).
 Pada sebagian besar bahasa pemrograman nilai
selain 0 menunjukkan True dan 0 melambangkan
False.
 Tipe data ini banyak digunakan untuk pengambilan
keputusan pada struktur percabangan dengan IF
… THEN atau IF … THEN … ELSE.
Array
 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.
 Setiap lokasi data array diberi nomor indeks yang
berfungsi sebagai alamat dari data tersebut.
Record
 Record adalah termasuk tipe data komposit. Record dikenal dalam
bahasa Pascal/Delphi sedangkan dalam bahasa C++ dikenal Struct.
Berbeda dengan array, tipe data record mampu menampung
banyak data dengan tipe data berbeda-beda (heterogen).
 Sebagai ilustrasi array mampu menampung banyak data namun
dengan satu tipe data yang sama, misalnya integer saja.
 Sedangkan dalam record, kita bisa menggunakan untuk
menampung banyak data dengan tipe data yang berbeda, satu
bagian integer, satu bagian lagi character, dan bagian lainnya
Boolean.
Deklarasi Tipe Data Record Pada Delphi
Image
 Image atau gambar atau citra merupakan tipe
data grafik. Misalnya: grafik perkembangan jumlah
siswa SMK, foto keluarga kita, video perjalanan
dan lain-lain.
 Pada bahasa-bahasa pemrograman modern
terutama yang berbasis visual tipe data ini telah
didukung dengan sangat baik.
Date Time
 Nilai data untuk tanggal (Date) dan waktu (Time) secara internal disimpan
dalam format yang spesifik.
 Variabel atau konstanta yang dideklarasikan dengan tipe data Date dapat
digunakan untuk menyimpan baik tanggal maupun jam.
 Tipe data ini masuk dalam kelompok tipe data composite karena
merupakan bentukan dari beberapa tipe data.
 Berikut ini contoh tipe data dalam Visual Basic.
Dim WaktuLahir As Date
WaktuLahir = “01/01/1997”
WaktuLahir = “13:03:05 AM”
WaktuLahir = “02/23/1998 13:13:40 AM”
WaktuLahir = #02/23/1998 13:13:40 AM#
Tipe Data Lain
 Subrange
 Enum
 Object
 Variant
Flowchart
 Flowchart atau bagan alir adalah skema/bagan (chart) yang
menunjukkan aliran (flow) di dalam suatu program secara logika.
 Flowchart merupakan alat yang banyak digunakan untuk
menggambarkan algoritma dalam bentuk notasi-notasi tertentu.
 Simbol-simbol yang digunakan dalam flowchart.
Flowchart (Lanjutan)
Program Dengan Flowchart
Struktur Algoritma Berurutan
Flowchart Algoritma Berurutan
Struktur Algoritma Percabangan
 Sebuah program tidak selamanya akan berjalan dengan mengikuti struktur
berurutan, kadang-kadang kita perlu merubah urutan pelaksanaan program
dan menghendaki agar pelaksanaan program meloncat ke baris tertentu.
 Peristiwa ini kadang disebut sebagai percabangan/pemilihan atau
keputusan.
Contoh Algoritma Percabangan 1
 Sebuah aturan untuk menonton sebuah film
tertentu adalah sebagai berikut, jika usia penonton
lebih dari 17 tahun maka penonton diperbolehkan
dan apabila kurang dari 17 tahun maka penonton
tidak diperbolehkan nonton.
Jawaban Algoritma Percabangan 1
Contoh Algoritma Percabangan 2
 Dalam suatu perhitungan nilai P = X + Y. Jika P
positif, maka Q = X * Y, sedangkan jika negative
maka nilai Q = X/Y. Buatlah flowchart untuk
mencari nilai P dan Q
Jawaban Algoritma Percabangan 2
Contoh Algoritma Percabangan Bersarang
 Sebuah usaha fotokopi mempunyai aturan sebagai
berikut :
 Jika yang fotokopi statusnya adalah langganan,
maka berapa lembar pun dia fotokopi, harga
perlembarnya Rp. 75,-
 Jika yang fotokopi bukan langganan, maka jika dia
fotokopi kurang dari 100 lembar harga perlembarnya
Rp. 100,-. Sedangkan jika lebih atau sama dengan
100 lembar maka harga perlembarnya Rp. 85,-.
Jawaban Algoritma Percabangan Bersarang
Struktur Algoritma Perulangan
 Dalam banyak kasus seringkali kita dihadapkan pada sejumlah pekerjaan
yang harus diulang berkali.
 Salah satu contoh yang mudah kita jumpai adalah balapan mobil seperti
tampak pada gambar ini Mobil-mobil peserta harus mengelilingi lintasan
sirkuit berkali-kali sesuai yang ditetapkan dalam aturan lomba. Siapa yang
mencapai garis akhir paling cepat, dialah yang menang.
Struktur Perulangan
 Kondisi perulangan, yaitu syarat yang harus
dipenuhi untuk melaksanakan perulangan. Syarat
ini biasanya dinyatakan dalam ekspresi Boolean
yang harus diuji apakah bernilai benar (true) atau
salah (false)
 Badan perulangan (loop body), yaitu satu atau
lebih instruksi yang akan diulang.
Perulangan Dengan For
 Perulangan dengan menggunakan For, merupakan salah
teknik Perulangan yang paling tua dalam bahasa
pemrograman.
 Hampir semua bahasa pemrograman menyediakan metode ini,
meskipun sintaksnya mungkin berbeda.
 Pada struktur For kita harus tahu terlebih dahulu seberapa
banyak badan loop akan diulang.
 Struktur ini menggunakan sebuah variable yang biasa disebut
sebagai loop’s counter, yang nilainya akan naik atau turun
selama proses Perulangan.
Struktur Algoritma Perulangan For
Contoh Algoritma Perulangan For
Perulangan Dengan While
 Struktur While akan mengulang pernyataan pada
badan loop sepanjang kodisi pada While bernilai
benar.
 Dalam artian kita tidak perlu tahu pasti berapa kali
diulang.
 Yang penting sepanjang kondisi pada While
dipenuhi maka pernyataan pada badan loop akan
diulang.
Struktur Algoritma Perulangan While
Contoh Algoritma Perulangan While
TERIMA KASIH
TOPAN SETIAWAN, M.Kom

Anda mungkin juga menyukai