• Tidak ada hasil yang ditemukan

Materi Pemrograman Dasar 1.1 Algoritma Pemrograman.pptx

N/A
N/A
Protected

Academic year: 2021

Membagikan "Materi Pemrograman Dasar 1.1 Algoritma Pemrograman.pptx"

Copied!
64
0
0

Teks penuh

(1)

K.1 Pemrograman Dasar

K.1 Pemrograman Dasar

Alg

(2)
(3)

Program

Program

  Program komputer

  Program komputer

(juga disebut sebagai

(juga disebut sebagai

software atau hanya program) adalah

software atau hanya program) adalah

serangk

serangk

aian instruksi

aian instruksi

berurutan yang

berurutan yang

ditulis untuk

ditulis untuk

melakuk

melakuk

an se

an se

rangk

rangk

aian tugas

aian tugas

untuk

(4)

Komputer tak memiliki kemampuan untuk

Komputer tak memiliki kemampuan untuk

menyelesaikan masalahnya sendiri

menyelesaikan masalahnya sendiri

Komputer hany

Komputer hany

alah berupa

alah berupa

alat yang

alat yang

digunakan untuk melakukan

digunakan untuk melakukan

perhitungan-perhitungan dan se

perhitungan dan se

rangk

rangk

aian tugas yang

aian tugas yang

dibebankan kepadanya

dibebankan kepadanya

Pembuat program disebut sebagai

Pembuat program disebut sebagai

programmer

(5)

Jika diibaratkan program seperti jadwal

kegiatan selama hari ini. Misal hari ini saya

harus mandi, makan, ke kampus, rapat A,

rapat B, makan, tidur, belajar, belanja, dsb

Kegiatan seperti di atas kita sebut sebagai

instruksi apa yang harus kita lakukan saat itu.

Dan daftar instruksi yang ditulis menjadi satu

(6)

Nah secara umum, program memberikan

kemampuan komputer untuk melakukan

fungsi khusus

Komputer akan mengeksekusi atau

menjalankan instruksi yang ada dalam

program di dalam central processor

(7)

Program dibuat dengan menggunakan

bahasa pemrograman sebagai alat untuk

mengungkapkan ide sang programmer

agar dapat dijalankan oleh komputer

Setelah ditulis dalam bahasa

pemprograman, tidak serta merta apa

yang kita tulis tersebut dapat dilaksanakan

oleh komputer

(8)

Komputer hanya mengerti bilangan biner

dan instruksi-instruksi menggunakan

bahasa mesin

Untuk membuat komputer mengerti

maksud dan tujuan kita, diperlukanlah

sebuah

kompiler

yang dapat

menerjemahkan bahasa pemprograman ke

bahasa mesin

(9)

Namun ada juga komputer program yang

Namun ada juga komputer program yang

tidak berupa kode bahasa mesin, namun

tidak berupa kode bahasa mesin, namun

berupa kode-kode khusus dan terkadang

berupa kode-kode khusus dan terkadang

 juga berupa k

 juga berupa k

ode-k

ode-k

ode bahasa

ode bahasa

pemprograman

pemprograman

Progr

Progr

am model

am model

ini memerlukan bantuan

ini memerlukan bantuan

interpr

interpr

eter untuk menerjemahkan

eter untuk menerjemahkan

bahasa

bahasa

tersebut ke bahasa mesin sehingga

tersebut ke bahasa mesin sehingga

dimengerti o

(10)

Source code ditulis oleh seorang

Source code ditulis oleh seorang

programmer dan ditulis dengan salah satu

programmer dan ditulis dengan salah satu

bahasa pemprograman (ya, inilah

bahasa pemprograman (ya, inilah

yang

yang

tadi saya bilang sebagai pengungkapan ide

tadi saya bilang sebagai pengungkapan ide

sang programmer)

(11)

Menggunakan dua paradigma utama

Menggunakan dua paradigma utama

yakni:

yakni:

a.

a.

P

P

em

em

pr

pr

og

og

r

r

am

am

an i

an i

mp

mp

er

er

a

a

ti

ti

f

f

b.

b.

P

P

em

em

pr

pr

og

og

r

r

am

am

an

an

de

de

kl

kl

ar

ar

a

a

ti

ti

Program komputer dapat dikategorikan

Program komputer dapat dikategorikan

menjadi beberapa jenis yakni :

menjadi beberapa jenis yakni :

a

a

.

.

S

S

y

y

s

s

t

t

e

e

m

m

s

s

o

o

f

f

t

t

w

w

a

a

r

r

e

e

b

(12)

Program komputer dapat dikategorikan

menjadi beberapa jenis yakni :

a. Input

Bagian ini merupakan proses

untuk memasukkan data ke komputer

melalui device yang ada misalnya

(13)

b. Program melakukan proses

membaca

data yang akan diolah dari device

tersebut.

c. Output

Bagian ini merupakan proses

untuk menampilkan data yang telah

diolah, melaporkan hasil pegolahan

data melalui device seperti monitor,

printer dll. Program melakukan proses

mencetak data ke device tersebut.

(14)

d. Proses Pengolahan Data

Bagian ini

merupakan proses mengolah data yang

diinputkan dengan nenerapkan

metode-metode, teknik-teknik,

algoritma-algoritma yang ada. Proses ini

menghasilkan data output yang akan

dioutputkan kepada pengguna program.

e. Penyimpanan Data

Bagian ini

merupakan proses menyimpan data

dalam memori atau device penyimpanan

data seperti disket, harddisk, CD dll.

(15)

Algoritma

Definisi Algoritma

 –

Adalah urutan langkah-langkah yang sistematis

untuk menyelesaikan sebuah masalah.

 –

Adalah urutan logis pengambilan keputusan

untuk pemecahan masalah.

Urutan langkah-langkah logis pada penyelesaian

masalah yang disusun secara sistematis

(16)

Sejarah Algoritma

a. Berasal dari nama penulis buku arab

yaitu Abu

Ja’far

Muhammad Ibnu

Musa Al-Khawarizmi

b. Oleh orang barat, Al-Khawarizmi

dibaca menjadi Algorism

(17)

c. Algorism mempunyai arti proses

menghitung dengan angka arab

d. Al-Khawarizmi menulis buku yang

berjudul Kitab Al Jabar Wal Muqabala

(Buku pemugaran dan pengurangan)

(18)

e. Dari algorism menjadi algorithm muncul

karena algorism sering dikelirukan

dengan arithmetic.

f.

Lambat laun algorithm berangsur-angsur

dipakai sebagai metode perhitungan

(komputasi) secara umum.

g. Dalam bahasa Indonesia, algorithm

menjadi algoritma

(19)

•No Proses

Contoh-contoh Algoritma

Algoritma Contoh Langkah dalam

Algoritma

1 Membuat telur mata sapi Resep - Masukkan minyak ke dalam wajan, panaskan

- Masukkan telur ke dalam wajan

- Tunggu sampai matang

2 Merakit komputer Panduan Sambungkan kabel sata dari harddisk ke motherboard 3 Kegiatan sehari-hari Jadwal Pukul 06.00 : mandi pagi

(20)

Kasus 1

Ada dua buah ember

Ember A berisi air berwarna

merah

Ember B berisi air berwarna biru

Bagaimana algoritma untuk

menukarkan air berwarna merah

dari ember A ke

ember B dan air berwarna biru

dari ember B ke ember A ?

(21)

Kasus 1

1. Tambahkan 1 ember (ember C)

2. Tuangkan air berwarna merah dari ember A

ke ember C

3. Tuangkan air berwarna biru dari ember B ke

ember A

4. Tuangkan air berwarna merah dari ember C

ke ember B

+

1. Ada 3 buah ember

2. Ember A kosong, ember C berisi air

berwarna merah

3. Ember A berisi air berwarna biru, ember B

kosong

4. Ember B berisi air berwarna biru, ember C

kosong

Hasil Langkah-langkah

(22)

Kasus 2

Bagaimana algoritma untuk

menghitung luas segitiga?

(23)

Kasus 2

1.

Hitung alas segitiga

2.

Hitung tinggi segitiga

3.

Kalikan alas dan tinggi dan

0.5

(24)

Tugas Diskusi

Bagaimana algoritma untuk menyelesaikan

masalah ini?

Petani membawa serigala, kambing, dan sayur ingin menyeberang.

1 sampan hanya dapat untuk mengangkut 1 petani dan 1 bawaan. Akan tetapi..

Jika serigala hanya bersama kambing, serigala akan memakan kambing

Jika kambing hanya bersama sayuran, kambing akan memakan sayuran

(25)

Struktur Algoritma

Inti dari algoritma adalah menemukan solusi dari

suatu permasalahan.

Untuk menyelesaikan masalah, algoritma

membutuhkan spesifikasi

input (masukan) sesuai yang diperlukan,

memprosesnya melalui serangkaian langkah-langkah

dan

(26)

Masalah Algoritma Solusi

(27)

Secara umum struktur Algoritma terdiri dari 3

bagian, yaitu :

 –

Nama/judul Algoritma

 –

Bagian Deklarasi

(28)

Berikut ini gambaran struktur sebuah Algoritma

 –

Algoritma NAMA_ALGORITMA

{ Penjelasan mengenai algoritma, yang berisi uraian

singkat mengenai apa yang dilakukan oleh

(29)

 –

DEKLARASI

{ Semua bahan dan alat yang dibutuhkan selama

algoritma dijalankankan, atau dalam algoritma

meliputi variabel yang dipakai, nama tipe,

konstanta, nama prosedur dan nama fungsi

didefinisikan di sini }

(30)

 –

DESKRIPSI :

{ Semua langkah, proses, atau statement algoritma

dituliskan di sini, biasanya langkah-langkah

diberikan pe-nomoran untuk memudahkan

penelusuran dan organisasi) }

(31)
(32)

Langkah-langkah Mendownload Video dari Youtube

1. Buka situs Youtube

2. Buka video pada situs Youtube

3. Salin alamat video yang dibuka

4. Buka Situs www.keepvid.com

5. Tempel alamat yang telah disalin pada isian yang

disediakan oleh situs keepvid.com, kemudian klik

tombol Download

6. Jika sudah muncul pilihan download, klik kanan

pilihan format video yang diinginkan, apakah MP4

atau FLV kemudian pilih

 Save Link As

(33)

1. Siapkan kolam dari terpal dengan ukuran 2m x 1m x

0.6m

2. Isi kolam dengan air yang kaya dengan alga dan

plankton sebagai makanan bibit lele

3. Siapkan bibit ikan lele dengan aturan 200 ikan lele

tiap 2m

2

panjang kali lebar

4. Beri bibit lele makan dua kali sehari dengan pelet

khusus lele

5. Setiap seminggu atau dua minggu sekali ganti

sebagian

(34)

Perhatikan algoritma sederhana berikut :

Jika seseorang ingin mengirim surat kepada

kenalannya di tempat lain, langkah yang harus

dilakukan adalah:

1. Menyiapkan Peralatan Tulis

2. Menulis surat

3. Surat dimasukkan ke dalam amplop tertutup

4. Amplop ditempeli perangko secukupnya.

5. Pergi ke Kantor Pos terdekat untuk

mengirimkannya

(35)

Algoritma menghitung luas persegi panjang:

1. Masukkan panjang (P)

2. Masukkan lebar (L)

(36)

Pembuatan algoritma mempunyai banyak

keuntungan di antaranya:

a) Pembuatan atau penulisan algoritma tidak

tergantung pada bahasa pemrograman manapun,

artinya penulisan algoritma independen dari bahasa

pemrograman dan komputer yang melaksanakannya.

b) Notasi algoritma dapat diterjemahkan ke dalam

berbagai bahasa pemrograman.

c) Apapun bahasa pemrogramannya, output yang

(37)

Beberapa hal yang perlu diperhatikan dalam

membuat algoritma:

a) Teks algoritma berisi deskripsi langkah-langkah

penyelesaian masalah.Deskripsi tersebut dapat

ditulis dalam notasi apapun asalkan mudah

dimengerti dan dipahami.

b) Tidak ada notasi yang baku dalam penulisan teks

algoritma seperti notasi bahasa pemrograman.

Notasi yang digunakan dalam menulis algoritma

disebut notasi algoritmik.

(38)

c) 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.

(39)

d) 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.

Pseudocode

adalah kode yang mirip dengan instruksi kode

(40)

e) Algoritma sebenarnya digunakan untuk membantu

kita dalam mengkonversikan suatu permasalahan ke

dalam bahasa pemrograman.

f) Algoritma merupakan hasil pemikiran konseptual,

supaya dapat dilaksanakan oleh komputer, algoritma

harus ditranslasikan ke dalam notasi bahasa

(41)

Perhatikan algoritma sederhana berikut :

Algoritma menghitung luas segitiga

1. Start

2. Baca data alas dan tinggi.

3. Luas adalah alas kali tinggi kali 0.5

4. Tampilkan Luas

(42)

Penjelasan :

Algoritma di atas adalah algoritma yang sangat

sederhana, hanya ada lima langkah. Pada algoritma

ini tidak dijumpai perulangan ataupun pemilihan.

Semua langkah dilakukan hanya satu kali.

Sekilas algoritma di atas benar, namun apabila

dicermati maka algoritma ini mengandung kesalahan

yang mendasar, yaitu tidak ada pembatasan pada

(43)

Hasil  perbaikan algoritma perhitungan luas

segitiga

1. Start

2. Baca data alas dan tinggi.

3. Periksa data alas dan tinggi, jika nilai data alas dan

tinggi lebih besar dari nol maka lanjutkan ke langkah

ke 4 jika tidak maka stop

4. Luas adalah alas kali tinggi kali 0.5

5. Tampilkan Luas

(44)

Dari penjelasan di atas dapat diambil

kesimpulan pokok tentang algoritma.

Pertama, algoritma harus benar.

Kedua algoritma harus berhenti, dan

Setelah berhenti, algoritma memberikan hasil yang

(45)

Contoh : Algoritma Berangkat Sekolah

Mulai

 –

Bangun dari tempat tidur

 –

Mandi Pagi

 –

Sarapan Pagi

 –

Pergi Ke Sekolah

 –

Cari Ruang Kelas

 –

Masuk kelas untuk Belajar

Selesai

(46)

Beda Algoritma dan 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.

(47)

Program = Algoritma + Bahasa

a. Program adalah kumpulan pernyataan

yang dapat dieksekusi oleh komputer.

b. Algoritma adalah metode dan tahapan

(48)

Penerjemah Bahasa Pemrograman

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 berbeda dengan Compiler, interpreter

menganalisis dan mengeksekusi setiap baris dari 

 program secara keseluruhan. Keuntungan dari interpreter

adalah dalam eksekusi yang bisa dilakukan dengan

segera. Tanpa melalui tahap kompilasi, untuk alas an ini 

interpreter digunakan pada saat pembuatan program

berskala besar.

(49)

Perbedaan Compiler dan interpreter.

Compiler Interpreter

Menterjemahkan secara keseluruhan Menterjemahkan Instruksi per instruksi Bila terjadi kesalahan kompilasi maka

source program harus diperbaiki dan dikompilasi ulang

Bila terjadi kesalahan interprestasi dapat Diperbaiki

Dihasilkan Object program Tidak dihasilkan obyek program

Dihasilkan Executable program Tidak dihasilkan Executable program Proses pekerjaan program lebih cepat Proses pekerjaan program lebih lambat Source program tidak dipergunakan hanya

bila untuk perbaikan saja

Source program terus dipergunakan

(50)

Jenis-Jenis Bahasa Pemrograman

Bahasa Pemrograman Tingkat rendah (Bahasa mesin,

Biner)

Bahasa Pemrograman Tingkat tinggi

Contoh-contoh Bahasa Pemrograman yang ada :

 –

Prosedural : Algol, Pascal, Fortran, Basic, Cobol, C

2.

 –

Fungsional : LOGO, APL, LISP 3. Deklaratif : Prolog

Object oriented murni: Smalltalk, Eifel, Java, PHP

(51)

Cara penulisan algortima

Ada tiga cara penulisan algoritma, yaitu :

1. Structured English (SE)

SE merupakan alat yang cukup baik untuk

menggambarkan suatu algoritma. Dasar dari SE adalah

Bahasa Inggris, namun kita dapat memodifikasi dengan

Bahasa Indonesia sehingga kita boleh menyebutnya

sebagai Structured Indonesian (SI).

”SE

atau SI lebih tepat untuk menggambarkan suatu

algoritma yang akan dikomunikasikan kepada pemakai 

 perangkat lunak 

” 

(52)

  2. Pseudocode

Pseudocode adalah kode yang mirip dengan instruksi

kode program sebenarnya. Pseudocode didasarkan

pada bahasa pemrograman yang sesungguhnya

seperti BASIC, FORTRAN atau PASCAL. Pseudocode

yang berbasis bahasa PASCAL merupakan

pseudocode yang sering digunakan

.

“Pseudo

berarti imitasi atau tiruan atau menyerupai,

(53)

Contoh Pseudocode :

1. Start

2. READ alas, tinggi

3. Luas = 0.5 * alas * tinggi

4. PRINT Luas

(54)

Pada Contoh diatas tampak bahwa algoritma sudah

sangat mirip dengan bahasa BASIC.

Pernyataan seperti READ dan PRINT merupakan

keyword yang ada pada bahasa BASIC yang

masing-masing menggantikan kata

baca

data”

dan

tampilkan

”.

Dengan menggunakan pseudocode seperti di atas

maka proses penterjemahan dari algoritma ke kode

program menjadi lebih mudah.

(55)

3. 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.

Flowchart merupakan gambar atau bagan yang

memperlihatkan urutan dan hubungan antar proses

beserta pernyataannya. Gambaran ini dinyatakan dengan

simbol.

(56)

Dengan demikian setiap simbol menggambarkan

proses tertentu. Sedangkan antara proses

digambarkan dengan garis penghubung.

Dengan menggunakan flowchart akan memudahkan

kita untuk melakukan pengecekan bagianbagian yang

terlupakan dalam analisis masalah.

Di samping itu flowchart juga berguna sebagai

fasilitas untuk berkomunikasi antara pemrogram

yang bekerja dalam tim suatu proyek.

(57)

Walaupun tidak ada kaidah-kaidah yang baku dalam

penyusunan flowchart, namun ada beberapa

anjuran:

1) Hindari pengulangan proses yang tidak perlu dan

logika yang berbelit sehingga jalannya proses

menjadi singkat.

2) Jalannya proses digambarkan dari atas ke bawah

dan diberikan tanda panah untuk memperjelas.

3) Sebuah flowchart diawali dari satu titik START dan

(58)

Berikut merupakan beberapa contoh simbol

flowchart yang disepakati oleh dunia

(59)
(60)
(61)

Penjelasan lebih lanjut :

Simbol-simbol bagan alir program (Flowchart)

Notasi Membuat algoritma sederhana

untuk menyelesaikan permasalahan

menggunakan bahasa natural, flowchart

dan pseudocode

Notasi ini disebut Data yang digunakan

untuk mewakili data input atau output

atau menyatakan operasi pemasukan data

dan pencetakan

(62)

Notasi ini disebut Process yang digunakan

untuk mewakili suatu proses.

Notasi ini disebut Decision yang

digunakan untuk suatu pemilihan,

penyeleksian kondisi di dalam suatu

program

(63)

Notasi ini disebut Preparation yang

digunakan untuk memberi nilai awal, nilai

akhir, penambahan/pengurangan bagi

suatu variabel counter.

Notasi ini disebut Predefined Process

yang digunakan untuk menunjukkan suatu

operasi yang rinciannya ditunjukkan

ditempat lain (prosedur, sub-prosedur,

fungsi)

(64)

Notasi ini disebut Connector yang

digunakan untuk menunjukkan

sambungan dari flowchart yang terputus

di halaman yang sama atau halaman

berikutnya.

Notasi ini disebut Arrow yang digunakan

untuk menunjukkan arus data atau aliran

data dari proses satu ke proses lainnya.

Referensi

Dokumen terkait

Program Studi : Pendidikan Teknik Informatika dan Komputer Menyatakan bahwa skripsi saya yang berjudul “ UPAYA PENINGKATAN PEMAHAMAN KONSEP DASAR ALGORITMA PEMROGRAMAN

dan karunia-Nya penulis dapat menyelesaikan skripsi yang berjudul “ Pengembangan Video Pembelajaran Menggunakan Sparkol Videoscribe pada Mata Pelajaran Pemrograman

Dalam sebuah Bahasa pemrograman jika dalam suatu ekspresi aritmatika memiliki lebih dari satu operator yang berbeda maka ketika mengerjakan komputer akan dimulai dari tingkatan

Dengan memanfaatkan E-Learning berbasis website maka pengetahuan, pemahaman, serta kemampuan logika terhadap algoritma dan bahasa pemrograman tidak mudah terlupakan oleh