Anda di halaman 1dari 14

LOGIKA & ALGORITMA

PENGERTIAN

1. Siapkan gelas cadangan X

CONTOH :
 Ada 2 buah gelas. Satu berisi X 2. Tuangkan gelas yang berisi teh ke gelas
cadangan.

teh dan satunya lagi berisi


kopi. 3. Tuangkan gelas yang berisi kopi ke
X teh

 Bagaimana caranya menukar gelas yang awalnya dipakai teh.

isi masing-masing gelas ?


4. Tuangkan isi gelas cadangan ke gelas
kopi teh yang awalnya berisi kopi.

kopi X
teh kopi

1
LOGIKA & ALGORITMA
CIRI-CIRI ALGORITMA

Tidak semua urutan langkah penyelesaian masalah yang logis dapat disebut sebagai algoritma.
Menurut Donald E. Knuth, algoritma memiliki 5 (lima) ciri penting, meliputi :

Effectiveness (efektivitas), algoritma


harus sangkil (efektif), langkah-
langkah algoritma dikerjakan dalam 5 Finiteness (keterbatasan), algoritma harus
waktu yang wajar. 1 berakhir setelah mengerjakan sejumlah
langkah proses.
Output (keluaran), algoritma 4
mempunyai nol atau lebih hasil Definiteness (kepastian), setiap langkah
keluaran (output). 2 harus didefinisikan secara tepat dan tidak
3 berarti ganda.
Input (masukan), algoritma
memiliki nol atau lebih data
masukan (input).

2
LOGIKA & ALGORITMA
SIFAT ALGORITMA

Tidak menggunakan Notasi - notasinya dapat


simbol atau sintaks dari digunakan untuk seluruh
suatu bahasa bahasa manapun
pemrograman tertentu.

Tidak tergantung pada Algoritma dapat digunakan


suatu bahasa untuk merepresentasikan
pemrograman tertentu. suatu urutan kejadian secara
logis dan dapat diterapkan di
semua kejadian sehari-hari
3
LOGIKA & ALGORITMA STRUKTUR DASAR
ALGORITMA

RUNTUNAN 2 PEMILIHAN 3 PENGULANGAN


1
(SEQUENCE) (SELECTION) (REPETITION)

Sebuah runtunan terdiri dari satu atau Kadangkala terdapat suatu kejadian Salah satu kelebihan komputer
lebih instruksi. yang baru akan dikerjakan jika suatu adalah kemampuannya untuk
kondisi tertentu telah terpenuhi. mengerjakan pekerjaan yang sama
Tiap instruksi dikerjakan secara berulang kali tanpa mengenal lelah.
berurutan sesuai dengan urutan Pemilihan yaitu instruksi yang
penulisannya, yakni sebuah instruksi dikerjakan dengan kondisi tertentu. Pengulangan merupakan kegiatan
dilaksanakan setelah instruksi mengerjakan sebuah atau sejumlah
sebelumnya selesai dikerjakan. Kondisi adalah persyaratan yang aksi yang sama sebanyak jumlah
dapat bernilai benar atau salah. Satu yang ditentukan atau sesuai dengan
Urutan dari instruksi menentukan atau beberapa instruksi hanya kondisi yang diinginkan.
hasil akhir dari suatu algoritma. dilaksanakan apabila kondisi bernilai
benar, sebaliknya apabila salah maka
Bila urutan penulisan berubah maka instruksi tidak akan dilaksanakan.
mungkin juga hasil akhirnya berubah.
4
LOGIKA & ALGORITMA ALGORITMA &
PROGRAM

ALGORITMA PROGRAM
Urutan langkah-langkah terbatas yang Kumpulan instruksi berupa pernyataan
disusun secara sistematis dan yang ditulis dengan menggunakan
Menggunakan bahasa yang logis dengan bahasa pemrograman yang melibatkan
tujuan menyelesaikan suatu masalah pemilihan struktur data.
tertentu.

 Bahasa pemrograman 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.
 Algoritma dibuat untuk membantu kita dalam mengkonversikan suatu
permasalahan ke dalam bahasa pemrograman.Algoritma merupakan hasil
pemikiran konseptual, supaya dapat dilaksanakan oleh komputer.
5
 Algoritma harus diterjemahkan ke dalam notasi bahasa pemrograman.
LOGIKA & ALGORITMA

BELAJAR MEMBUAT PROGRAM BELAJAR BAHASA PEMROGRAMAN


 Belajar tentang strategi atau cara  Belajar mengenai tata cara atau tata
menyelesaikan suatu masalah, yang aturan penulisan pernyataan atau
diungkapkan dalam bentuk statement (syntax) untuk membuat
algoritma yang mudah dibaca dan program dalam bahasa tertentu saja,
dipahami yang selanjutnya  Meliputi cara mendeklarasikan
dituangkan dalam bahasa variabel, cara melakukan
pemrograman. perulangan, percabangan dan lain-
 Bersifat pemahaman persoalan, lain.
analisis dan sintesis.  Coding program (titik berat)
 Desain program (titik berat).

6
LOGIKA & ALGORITMA BAHASA
PEMROGRAMAN

BERDASARKAN BERDASARKAN KERUMITAN


TERAPANNYA PENULISAN

 Bahasa pemrograman bertujuan khusus.  Bahasa tingkat tinggi. bahasa pemrograman


bahasa pemrograman yang digunakan untuk yang dalam penggunaannya lebih mudah
penerapan bisnis, administrasi, mesin, karena lebih berorientasi ke bahasa manusia
kecerdan buatan, dll. (inggris).
Misalnya : COBOL, Fortran, Assembler, Misalnya : COBOL, Fortran, Java, PHP, VB,
Prolog, dll ASP, Pascal, C, dll

 Bahasa pemrograman bertujuan umum,  Bahasa tingkat rendah, bahasa pemrograman


bahasa pemrograman yang dapat digunakan yang dalam penggunaannya lebih rumit
untuk berbagai aplikasi. karena banyak menggunakan notasi-notasi
Misalnya : Pascal, C, Java, PHP, VB, yang berhubungan dengan mesin
ASP, dll. Misalnya : Assembler

7
LOGIKA & ALGORITMA NOTASI PENULISAN
ALGORITMA

KALIMAT 2 PSEUDOCODE 3 FLOWCHART


1
DESKRIPTIF

Dilakukan dengan cara menuliskan Pseudocode adalah cara penulisan Flowchart adalah cara penulisan
instruksi-instuksi yang harus algoritma yang menyerupai bahasa algoritma dengan menggunakan
dilaksanakan dalam bentuk untaian pemrograman tingkat tinggi. notasi grafis.
kalimat deskriptif dengan
menggunakan bahasa yang jelas. Pseudocode berisi deskripsi dari Flowchart merupakan gambar atau
algoritma pemrograman komputer bagan yang memperlihatkan urutan
Dasar dari notasi bahasa deskriptif yang menggunakan struktur atau langkah-langkah dari suatu
adalah Bahasa Inggris, namun dapat sederhana dari beberapa bahasa program dan hubungan antar proses
dimodifikasi dengan bahasa sehari- pemrograman. tidak ada sintaks beserta pernyataannya.
hari termasuk Bahasa Indonesia. standar yang resmi.
Sebagai alat komunikasi antar
Kata kerja adalah jenis kata yang Disarankan untuk menggunakan programmer yang bekerja dalam
biasa digunakan dalam penulisan keyword yang umum digunakan suatu proyek,
bahasa deskriptif, contohnya tulis, seperti : if, then, else, while, do,
baca, hitung, tampilkan, ulangi, repeat, for, dan lainnya
bandingkan, dan lain-lain.
8
LOGIKA & ALGORITMA
KALIMAT DESKRIPTIF

 Merupakan bagian yang terdiri atas nama algoritma dan penjelasan


(spesifikasi) tentang algoritma tersebut.
 Dibagian ini juga digunakan untuk menentukan apakah teks
algoritma yang dibuat tersebut adalah program, prosedur, atau
fungsi.
 Nama algoritma sebaiknya singkat namun cukup menggambarkan Bagian Judul (header)
apa yang dilakukan oleh algoritma tersebut.
 Di bawah nama algoritma disertai dengan penjelasan singkat Bagian Deklarasi
(intisari) tentang apa yang dilakukan oleh algoritma.
 Penjelasan dibawah nama algoritma sering dinamakan juga Bagian Deskripsi
spesifikasi algoritma yang dituliskan dalam kurung kurawal ({}).
 Algoritma harus ditulis sesuai dengan spesifikasi yang didefinisikan.
Algoritma Luas_Lingkaran  Judul Algoritma
{ Menghitung luas lingkaran untuk ukuran jari-jari tertentu. Algoritma menerima
masukan jari-jari lingkaran, menghitung luasnya, lalu cetak luasnya ke piranti
keluaran }  Judul Spesifikasi

9
LOGIKA & ALGORITMA
KALIMAT DESKRIPTIF

 Deklarasi atau kamus adalah bagian untuk mendefinisikan semua


nama yang dipakai di dalam algoritma.
 Nama tersebut dapat berupa nama variabel, nama konstanta, nama Bagian Judul (header)
tipe, nama prosedur atau nama fungsi.
 Semua nama tersebut baru dapat digunakan di dalam algoritma jika Bagian Deklarasi
telah didefinisikan terlebih dahulu didalam bagian deklarasi.
 Penulisan sekumpulan nama dalam bagian deklarasi sebaiknya
dikelompokkan menurut jenisnya.
Bagian Deskripsi
 Pendefinisian nama konstanta sekaligus memberikan nilai
konstanta. Pendefinisian nama fungsi atau prosedur sekaligus
dengan pendefinisian spesifikasi dan parameternya.

10
LOGIKA & ALGORITMA
KALIMAT DESKRIPTIF

Deklarasi :
{ Nama Type variabel yang bukan tipe data dasar } Deklarasi :
type waktu:<hh:mm:ss: integer> {Type waktu terdiri dari 3 data jari_jari = real {tipe data bilangan pecahan}
masukan yaitu “hh” sebagai jam, “mm” sebagai menit, dan “ss” sebagai luas = real {tipe data bilangan pecahan}
detik} PHI = 3.14

{ Nama konstanta, harus menyebutkan tipe data dan nilai }


constant PHI: real = 3.141592653589793
constant E: real = 2.718281828459045

{ Nama variabel yang menggunakan tipe data dasar }


nama : String {suatu nilai yang merupakan kumpulan karakter}
ketemu : boolean {suatu nilai logika (true atau false)}
beratBadan : real {suatu nilai bilangan pecahan}
jumlahAnak : integer {suatu nilai bilangan bulat}

{ Nama fungsi, mendefinisikan domain, nama, jumlah, tipe dan jumlah


parameter, serta tipe data keluaran }
function tambah(x:int, y:int): int
{proses: menambahkan dua nilai data dan hasil penambahan sebagai
11
nilai keluaran fungsi}
LOGIKA & ALGORITMA
KALIMAT DESKRIPTIF

 Deskripsi adalah bagian inti dari struktur algoritma.


 Bagian ini berisi uraian langkah-langkah penyelesaian masalah.
 Langkah-langkah ini dituliskan dengan notasi yang lazim dalam
penulisan algoritma.
 Setiap langkah algoritma dibaca dari langkah paling atas hingga Bagian Judul (header)
langkah paling bawah.
 Urutan penulisan menentukan urutan pelaksanaan perintah. Bagian Deklarasi

Deskripsi : Bagian Deskripsi


1. Baca jari_jari
2. Hitung luas = jari_jari * jari_jari * PHI
3. Tampilkan luas ke layar
4. Selesai

12
LOGIKA & ALGORITMA
KALIMAT DESKRIPTIF

Algoritma Luas_Lingkaran
{Menghitung luas lingkaran untuk ukuran jari-jari tertentu.
Algoritma menerima masukan jari-jari lingkaran, menghitung
luasnya, lalu cetak luasnya ke piranti keluaran}

Deklarasi :
jari_jari = real {tipe data bilangan pecahan}
luas = real {tipe data bilangan pecahan}
PHI = 3.14

Deskripsi:
1. Baca jari_jari
2. Hitung luas = PHI*jari_jari * jari_jari
3. Tampilkan luas ke layar
4. Selesai

13
SOAL
1. Jelaskan dengan Bahasa kalian apa itu logika dan algoritma!
2. Sebut dan jelaskan ciri-ciri algoritma!
3. Sebutkan sifat-sifat algoritma!
4. Jelaskan perbedaan mendasar dari Algoritma dan Pemrograman!
5. Buatkan algoritma kalimat deskriptif permasalahan ini :
a. Membuat Kopi.
b. Luas lingkaran.
c. Perkalian dua bilangan.

14

Anda mungkin juga menyukai