• Tidak ada hasil yang ditemukan

Bab 1 - Pengantar dan SDA Algoritma

N/A
N/A
Protected

Academic year: 2017

Membagikan "Bab 1 - Pengantar dan SDA Algoritma"

Copied!
42
0
0

Teks penuh

(1)

TATA LAKSANA

PERKULIAHAN

Rezania A. Azdy

(2)

Peraturan Perkuliahan

 Datang tepat waktu (terlambat maksimal 30 menit).  Ijin melalui telp/sms tidak diterima.

 Ketidak-hadiran tanpa disertai keterangan tertulis

dianggap alpha.

 Tugas susulan/dititipkan tidak dilayani.

 Kehadiran minimal 80% untuk syarat mengikuti UAS.  Tidak ada ujian susulan (kecuali ada keterangan

khusus).

 Berpakaian rapi, sopan, dan wajar, serta tidak

bersandal.

(3)

Sistem Penilaian

Nilai mahasiswa merupakan kolaborasi

dari nilai tugas, UTS, dan UAS, dengan

bobot :

Tugas 40%

UTS 25%

UAS 35%

Penilaian akhir merupakan hak dosen.

Nilai di worksheet merupakan nilai akhir

(4)

ALGORITMA DAN

PEMROGRAMAN

Referensi :

Algoritma dan Pemrograman

oleh Rinaldi Munir

Dasar Pemrograman Java

oleh Abdul Kadir

Pemrograman Pascal

(5)

Sekilas Tentang Algoritma dan

Pemrograman

Mengajarkan tentang konsep dan logika

berpikir komputer, cara perancangan

dan analisis masalah, yang kemudian

dipecahkan dengan menggunakan

(6)

Tujuan Perkuliahan

Mampu memahami logika berpikir

komputer, memahami prinsip kerja

(7)

Silabus Perkuliahan

 Pengantar Algoritma

 Dasar Algoritma

 Notasi Algoritmik

 Tipe, operator, dan ekspresi

 Runtunan

 Pemilihan / percabangan

 Pengulangan

 Prosedur dan Fungsi

(8)

Pendahuluan

Komponen utama Sistem Komputer :

1. Hardware

2. Software

(9)

Pendahuluan

Contoh permasalahan :

Pengurutan data

Langkah penyelesaiannya ??

1. Cari data dengan nomor terbesar

2. Tempatkan data pada urutan terakhir

3. Ulangi langkah 1 untuk N-1 data yang lain,

(10)

Algoritma

Program komputer berisi urutan

langkah-langkah yang ditulis secara

sistematis dan ditulis dalam bahasa

pemrograman tertentu.

Urutan langkah penyelesaian masalah

(11)

Algoritma

Algoritma adalah urutan logis langkah-langkah penyelesaian

(12)

Algoritma

 Program komputer merupakan perwujudan

realisasi teknis dari algoritma, karena algoritma dikodekan ke dalam bahasa pemrograman tertentu.

(13)

Sejarah Algoritma

 Algorism  proses menghitung dengan angka

Arab

 Algorism  Abu Ja’far Muhammad ibnu Musa

al-Khuwarizmi

 Al-Khuwarizmi menulis buku Kitab al jabar

(14)

Contoh Algoritma

Permasalahan 1

Mempertukarkan isi dua buah ember.

Misal ember A berisi air berwarna merah, dan ember B berisi air berwarna biru. Ingin ditukar isi kedua ember tersebut sehingga ember A berisi air berwarna biru, dan

(15)

Contoh Algoritma

Permasalahan 2

Misalkan seorang pemuda tiba ditepi sungai. Pemuda tersebut membawa seekor kambing,

seekor serigala, dan sekeranjang sayur. Pemuda itu menemukan perahu kecil yang hanya dapat memuat satu bawaannya setiap kali menyebrang. Situasi dipersulit dengan kenyataan bahwa

serigala tidak dapat ditinggal dengan kambing, dan kambing tidak dapat ditinggal dengan

keranjang sayuran.

(16)

Contoh Algoritma

(17)

Contoh Algoritma

(18)

Contoh Algoritma

(19)

Ciri-Ciri Algoritma

1. Algoritma harus berhenti setelah

mengerjakan sejumlah langkah terbatas.

2. Setiap langkah harus didefinisikan dengan

tepat dan tidak berarti-dua (ambigu).

3. Algoritma memiliki nol atau lebih masukan

(input).

4. Algoritma memiliki nol atau lebih keluaran

(output).

(20)

Mekanisme Pelaksanaan Program

oleh Komputer

 Komputer tersusun atas empat komponen

utama, yaitu : piranti masukan, piranti keluaran, unit pemroses utama (CPU), dan memori.

Piranti

Masukan CPU

Piranti Keluaran

(21)

Belajar Pemrograman

 Belajar memprogram = belajar metodologi pemecahan

masalah, kemudian menuangkan algoritma

pemecahan masalah dalam suatu notasi tertentu.

 Belajar bahasa pemrograman = belajar memakai suatu

bahasa, aturan tata bahasanya, intruksi-intruksinya, tata cara pengoperasian compiler-nya, ...

Belajar memprogram Belajar bahasa

(22)

Notasi Algoritmik

Kalimat Deskriptif

Flowchart

(23)

Jenis Bahasa Pemrograman

Berdasarkan aplikasi kegunaannya :

1. BP bertujuan khusus (spesific purpose p.l.)

Contoh : Cobol, Fortran, assembly, Prolog.

2. BP bertujuan umum (general purpose p.l.)

(24)

Jenis Bahasa Pemrograman

 Berdasarkan “kedekatan” BP (dalam artian

lebih condong ke bahasa mesin atau ke bahasa manusia), yaitu :

1. Bahasa tingkat rendah, yaitu bahasa yang

dirancang agar setiap instruksinya langsung dikerjakan oleh komputer, tanpa harus

melalui translator.

2. Bahasa tingkat tinggi, yaitu bahasa yang

membuat program menjadi lebih mudah

(25)

Jenis Bahasa Pemrograman

 Tahapan pelaksanaan program oleh komputer : Algoritma Program dalam Bahasa Tingkat Tinggi

Program dalam Bahasa Mesin

Translasi

Kompilasi

Interpretasi oleh CPU

(26)
(27)

Pernyataan dan Aksi

Algoritma merupakan deskripsi

langkah-langkah pelaksanaan suatu proses. Setiap

langkah penyelesaian dinyatakan dengan

pernyataan (

statement

), sebuah pernyataan

menggambarkan aksi (

action

) algoritmik

(28)

Struktur Dasar Algoritma

Sebuah algoritma dapat dibangun dari

tiga buah struktur dasar, yaitu :

1. Runtunan

2. Pemilihan

(29)

Runtunan

 Sebuah runtunan terdiri dari satu

pernyataan atau lebih

 Tiap pernyataan dikerjakan secara

berurutan sesuai dengan urutan penulisannya.

 Urutan instruksi menentukan keadaan

akhir algoritma. S1

(30)

Pemilihan

 Adakalanya sebuah aksi dikerjakan jika kondisi tertentu

dipenuhi.

if kondisi then

aksi

if kondisi then

aksi 1

else

aksi 2

(31)

Pemilihan

 Apabila pilihan aksi yang dilakukan lebih dari dua buah,

maka struktur pemilihannya menjadi lebih rumit 

pemilihan bersarang / nested-if

if kondisi 1 then

if kondisi 2 then

aksi 2a

else

aksi 2b

else

(32)

Pengulangan

Salah satu kelebihan komputer adalah

kemampuannya untuk mengulang

sebuah intruksi berulang kali.

Didalam pengulangan atau looping

dapat dilakukan sejumlah kali atau

(33)

Struktur Pengulangan

Struktur pengulangan secara umum

terdiri atas dua bagian :

1. Kondisi pengulangan, yaitu ekspresi

boolean yang harus dipenuhi untuk melaksanakan pengulangan yang

dinyatakan secara eksplisit oleh user atau secara implisit oleh komputer.

2. Badan (body) pengulangan, yaitu bagian

(34)

Struktur Pengulangan

Struktur pengulangan biasanya disertai

dengan bagian :

1. Inisialisasi, yaitu aksi yang dilakukan

sebelum pengulangan dilakukan pertama kali.

2. Terminasi, yaitu aksi yang dilakukan

(35)

Struktur Pengulangan

Notasi kontruksi pengulangan :

1. For

2. While ... Do

(36)

Pengulangan FOR

aksi dilakukan sebanyak hitungan pencacah

pengulangan, yaitu sebanyak b – a + 1 kali.

(37)

Pengulangan FOR

aksi dilakukan sebanyak hitungan pencacah

pengulangan, yaitu sebanyak b – a + 1 kali.

(38)

Pengulangan repeat ..

until

• Pengulangan aksi dilakukan hingga kondisi (persyaratan) berhenti terpenuhi.

repeat aksi

(39)

Pengulangan while .. do

• Selama kondisi (persyaratan) pengulangan masih benar, maka

aksi dikerjakan.

(40)

Latihan

 Dua buah algoritma berikut menjelaskan sikap yang harus

dilakukan jika menemui lampu traffic light :

a. If traffic light menyala then

if lampu merah then berhenti

else jalan

b. If traffic light menyala then

if lampu merah then berhenti

else jalan

(41)

Tugas

1. Tulislah algoritma (dalam notasi kalimat

deskriptif) untuk memperoleh nomor

telpon berdasarkan data alamat (nama jalan dan nomornya) dari nomor

penerangan lokal PT Telkom (108).

Algoritma harus menjelaskan proses bila :

a. Nomor 108 sibuk

b. Alamat yang diberikan penelepon belum

(42)

Tugas

2. Sebuah tabel terdiri atas NIM, nama,

alamat, dan nomor telepon. Tabel tersebut sudah berisi data utama sekumpulan

mahasiswa di Perguruan Tinggi. Misalkan seorang mahasiswa pindah kos sehingga alamat dan nomor telponnya harus

Referensi

Dokumen terkait

Bahasa pemrograman adalah bahasa buatan yang digunakan untuk mengendalikan perilaku dari sebuah mesin, biasanya berupa mesin komputer, sehingga dapat digunakan

• Merupakan program komputer yang dapat menerjemahkan bahasa pemrograman tingkat tinggi ke bahasa mesin.. • Hasil terjemahan ini dapat dimengerti oleh mesin, sehingga dapat

Setiap instruksi dalam bahasa mesin menyajikan operasi dasar yang sesuai, dan menghasilkan efek netto yang sama pada setiap komputer.

 Algoritma yang ditulis dalam bahasa komputer dinamakan program  Bahasa komputer yang digunakan dalam menulis program disebut..

Program yang ditulis dengan bahasa pemrograman tingkat tinggi maupun tingkat menengah tidak dapat langsung ‘dimengerti’ oleh komputer, dan harus diterjemahkan

(2016:4) mengungkapkan bahwa “Program adalah formulasi sebuah algoritma dalam bentuk bahasa pemrograman, sehingga siap untuk dijalankan pada mesin komputer.” Secara

Gadget adalah hal yang sangat populer saat ini. Hampir setiap orang menggunakan gadget untuk berbagai keperluan. Salah satu fungsinya adalah berkomunikasi dan mencari informasi dengan cepat. Gadget membutuhkan sebuah program yang berfungsi untuk mengatur berjalannya perangkat tersebut. Menurut Yulikuspartono (2009:29) mengemukakan bahwa “ program merupakan sederetan instruksi atau statement dalam bahasa yang dimengerti oleh komputer yang bersangkutan”. Program merupakan sebuah elemen inti untuk kinerja suatu perangkat. Program inilah yang akan mengolah dan menjalankan perintah yang diberikan oleh user agar dapat di kelola oleh perangkat/device. Program juga dibuat oleh manusia, dan orang yang membuat program ini disebut dengan Programmer. Seorang programmer membuat program dengan menggunakan bahasa pemrograman. Bahasa pemrograman inilah yang disusun dengan berdasarkan logika atau algoritma menusia yang di terjemahkan ke algoritma manusia yang di terjemahkan ke perangkat. Bahasa pemrograman ini dibuat untuk memudahkan manusia dalam membuat suatu aplikasi atau program. Bahasa pemrograman bisa di klasifikasikan dari beberapa sudut pandang. Salah satu pengklasifikasian bahasa pemrograman adalah pendekatan dari notasi bahasa pemrograman tersebut, apakah lebih dekat ke bahasa mesin atau ke bahasa manusia. Dengan cara ini, bahasa pemrograman dapat di kelompokan menjadi dua yakni bahasa tingkat rendah (low level languages) dan bahasa tingkat tinggi (high level language). Bahasa tingkat tinggi adalah bahasa yang mudah dipahami oleh manusia, C++ merupakan salah satu contoh dari bahasa tingkat tinggi. Contoh lain dari bahasa tingkat tinggi ini seperti Pascal, Perl, Java, dan lain-lain sebagainya. Sedangkan bahasa tingkat rendah adalah bahasa mesin atau bahasa assembly. Secara sederhana sebuah komputer hanya dapat mengeksekusi program yang ditulis dalam bentuk bahasa mesin. Oleh karena itu, jika suatu program ditulis dalam bahasa tingkat tinggi maka program tersebut harus diproses terlebih dahulu sebelum bisa dijalankan dengan komputer. Hal ini merupakan salah satu kekurangan bagi bahasa tingkat tinggi dimana diperlukan waktu untuk memproses suatu program sebelum program tersebut di jalankan. Sebagai bahasa yang beraras tinggi, yang menggunakan perintah-perintah yang mudah dimengerti oleh manusia, C++ mempunyai keunggulan yakni bersifat universal. Sebagai bahasa yang universal, C++ bisa dijumpai di berbagai platform (Linux, Unix, Windows, Mac, dan lain-lain). Artinya, jika kita menguasai C++ di platform PC, sangat mudah untuk berpindah di Linux ataupun system operasi yang lain.