algoritma?!?

38
Algorit ma?!? Flowcha rt ?!?# DASAR PEMROGRAMAN

Upload: twyla

Post on 23-Feb-2016

102 views

Category:

Documents


0 download

DESCRIPTION

Algoritma?!?. Flowchart ?!?#. DASAR PEMROGRAMAN. Setelah pertemuan ini, mahasiswa:. CLUE. PROGRAM PEMROGRAMAN BAHASA PEMROGRAMAN PROGRAMMER ALGORITMA FLOWCHART. Pemrograman why should I care?. Karena manusia hidup dengan masalah yang melingkupinya. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Algoritma?!?

Algoritma?!?

Flowch

art

?!?#

DASAR PEMROGRAMAN

Page 2: Algoritma?!?

Setelah pertemuan ini, mahasiswa:

Mampu menjelaskan tentang pemrogramanMemahami definisi dan kegunaan bahasa pemrograman

Mengerti tentang algoritma.Membuat algoritma dari suatu permasalahan.Mengerti tentang flowchart.

Membuat flowchart dari suatu permasalahan.

Page 3: Algoritma?!?

CLUE...

PROGRAM PEMROGRAMAN BAHASA PEMROGRAMAN PROGRAMMER ALGORITMA FLOWCHART

Page 4: Algoritma?!?

Pemrograman why should I care? Karena manusia hidup

dengan masalah yang melingkupinya.

Misalnya masalah kebutuhan komunikasi yang tidak dibatasi ruang dan waktu.

Terciptalah teknologi telepon,sms, email, facebook, web blog, dst..

Sms, email, facebook lahir dari kegiatan pemrograman.

Pemrograman sudah menjadi kegiatan yang penting di era teknologi informasi

Page 5: Algoritma?!?

Pemrograman

Program Komputer

Yang membuat komputer layak disebut hebat dan berdaya

guna bagi individu

Dapat menyelesaikan proses-proses

yang selama ini dikerjakan

secara manual.

Page 6: Algoritma?!?

Contoh masalah Diberikan setumpuk

kartu pasien di sebuah tempat praktek dokter yang tersusun secara acak. Setiap kartu mempunyai nomor registrasi pasien. Bagaimana mengurutkan kartu tersebut dari registrasi kecil ke besar?

Diberikan daftar nama pejabat baru beserta jumlah kekayaannya. Tentukan pejabat mana yang paling ‘gemerincing’ kekayaanya?

Page 7: Algoritma?!?

ALGORITMAUntuk masalah dengan kartu yang sedikit kita dapat menemukan solusinya secara cepat.

Bagaimana jika data

kartu yang diurutkan berjumlah ribuan??

Page 8: Algoritma?!?

Butuh prosedur yang berisi langkah-langkah pengurutan sehingga prosedur tersebut dapat dijalankan oleh sebuah pemroses (komputer, robot, manusia,mesin, etc).

ALGORITMA

Langkah-langkah untuk menyelesaikan masalah = Algoritma

Kita fokuskan pemroses algoritma pada komputer

Page 9: Algoritma?!?

DEFINISI ALGORITMA

Page 10: Algoritma?!?

Sejarah Algoritma•Asal kata Algoritma (algorism – algorithm) berasal dari nama Abu Ja’far Muhammad ibn Musa Al-Khuwarizmi Ilmuan Persia yang menulis kitab “al jabar w’al-muqabala” (rules of restoration and reduction – aturan pemugaran dan pengurangan) Tahun 825 M• Berasal dari Iran• Algoritma masuk Indonesia tahun 1980-an

Page 11: Algoritma?!?

Algoritma dlm bentuk tulisan

Resep masakan Panduan registrasi Panduan pembukaan tabungan Panduan instalasi software Panduan pemasangan suatu

perangkat

Semuanya menggunakan bahasa manusia

Page 12: Algoritma?!?

Contoh algoritma dalam sehari-hari

Page 13: Algoritma?!?
Page 14: Algoritma?!?

PROGRAM DAN PEMROGRAMAN

Algoritma baru efektif jikaDijalankan oleh pemroses dalamHal ini difokuskan pada komputer

Komputer membaca setiap instruksi di dalamAlgoritma lalu mengerjakannya.

So, algoritma harus ditulis dalam bahasa khusus yangdimengerti komputer

Page 15: Algoritma?!?

Bahasa yang dimengerti komputer

IF2031-Algoritma dan Struktur Data/Hamonangan Situmorang 15

ST 1,[801]ST 0,[802]

TOP: BEQ [802],10,BOT

INCR [802]MUL [801],2,

[803]ST [803],

[801]JMP TOP

BOT: LD A,[801]CALL PRINT

00000000001001011101001100000000000000000010010011010100000000000000000010001010010010011111000000000000010001000101010000000000000000000100100010100111101000110000000011100101101010110000001000000000001010010000000000000000000000001101010100000000000000000000000011010100101010000000000000000000100100010100010000000000

x=1;

i=0;

while (i!=10) {

i++;

x=x*2;

}

printf("%d",x);

Bahasa C Bahasa Assembly Bahasa Mesin

Page 16: Algoritma?!?

Program

“Algoritma yang ditulis dalam bahasa komputer”

Program komputer : kumpulan perintah yang diberikan pada komputer agar dapat mengerjakan perintah yang dikehendaki oleh programmer.

Page 17: Algoritma?!?

Bahasa Pemrograman

• “Bahasa komputer yang digunakan dalam menulis program”

• Macam Bahasa Pemrograman :C, C++, Java, PHP, Visual basic, dll

Perbedaan: cara memberikan instruksi (sintaks)

Persamaan: bertujuan menghasilkan output yang sama Orang yang membuat program disebut pemrogram

Page 18: Algoritma?!?

Pemrograman

“Kegiatan merancang dan menulis program”

Di dalam pemrograman ada aktivitas menulis kode program ( coding)

Page 19: Algoritma?!?

Belajar Memprogram VS Belajar Bahasa Pemrograman

BELAJAR MEMPROGRAM Mempelajari

metodologi pemecahan masalah, kemudian menuliskan algoritma pemecahan masalah dalam bahasa tertentu

BELAJAR BAHASA PEMROGRAMAN Belajar memakai

suatu bahasa pemrograman, aturan tata bahasanya, instruksi-instruksinya, compilernya

Di dalam pemrograman, kita lebih menekankan pada pemecahan masalah. Sedangkan menulis kode program adalah aktivitas terakhir

Karena belajar memprogram yang baik bukanlah belajar membuat programYang penting hasilnya benar.

Page 20: Algoritma?!?

Paradigma Pemrograman• Pemrograman Terstruktur– Persoalan diselesaikan dengan

menentukan langkah per langkah• Pemrograman Berorientasi Objek– Penyelesaian persoalan dilakukan

dengan membagi menjadi objek-objek• Pemrograman Deklaratif/Fungsional– Persoalan diselesaikan dengan

mengekspresikan logika persoalan20

Page 21: Algoritma?!?

Tahapan pembuatan program

Mengerti permasalahan yang akan diselesaikan.

– Input layout– Proses-proses– Output layout

Menganalisa penyelesaian masalah.Membuat algoritma dan flowchart.Menulis program.Melakukan testing program selesai.Membuat dokumentasi

Page 22: Algoritma?!?

Contoh Pembuatan Algoritma Soal:

Menghitung luas lingkaran dengan masukanberupa R petunjuk: Luas Lingkaran dapat dihitungdengan rumus L =πR2

Jawab:1. Tentukan kostanta phi = 3.142. Masukkan R3. Hitung Luas Lingkaran4. cetak Luas Lingkaran

Page 23: Algoritma?!?

Soal: Menukar dua buah bilangan X = 10 dan Y = 2, ditukar

menjadi X = 2 dan Y = 10, Bagaimana caranya? Jawab 1:

1. X = X + Y2. Y = X – Y3. X = X – Y

Jawab 2:1. tampung = X2. X = Y3. Y = tampung

Contoh Pembuatan Algoritma

Page 24: Algoritma?!?

Latihan

Buatlah algoritma untuk mencari nilai rata-rata dari 3 bilangan?

Jawab: 1. Mulai 2. Masukkan nilai a, b, c 3. Hitung rata-rata = (a+b+c)/3 4. Tampilkan nilai rata-rata 5. Selesai

Page 25: Algoritma?!?

Latihan

Buatlah algoritma untuk mencari nilai terbesar dari 2 bilangan?

Jawab: 1. Mulai 2. Input a,b 3. Cek apakah a > b 4. Jika langkah 3 benar tampilkan bilangan

terbesar a 5. Kalau salah tampilkan bilangan terbesar b Selesai

Page 26: Algoritma?!?

Latihan

Buatlah algoritma untuk menampilkan 10 bilangan positif pertama?

Jawab: 1. Mulai 2. Tentukan i =1, n = 10 3.Selama i<= n lakukan langkah 4 kalau

tidak lakukan langkah 6 4.Tampilkan nilai i 5. i = i+1 6. Selesai

Page 27: Algoritma?!?

FlowchartAdalah suatu bentuk penggambaran algoritma berupa diagram alir yang menggunakan simbol khusus untuk menggambarkan alur kerja dari sebuah program.

Tujuan : untuk memudahkan programmer dalam memahami alur program yang akan dibuat.

Page 28: Algoritma?!?

Fungsi Flowchart

Sebelum pembuatan program

Mempermudah programmer dalam menentukan alur logika program

Sesudah pembuatan program

Menjelaskan alur program kepada orang lain

Page 29: Algoritma?!?

Pedoman pembuatan Flowchart Sebaiknya digambar dari atas ke bawah dan dimulai

dari bagian kiri suatu halaman Kegiatan dlm Flowchart harus ditunjukkan dengan

jelas Harus ditunjukkan kegiatan mulai dan selesai Masing2 kegiatan dalam Flowchart sebaiknya

menggunakan suku kata yang mewakili pekerjaan Masing2 kegiatan dalam Flowchart harus dalam

urutan yang tepat Kegiatan yang terpotong dan akan disambungkan ke

tempat lain harus ditunjukkan dengan simbol penghubung

Gunakan simbol-sinmol alir yang standar

Page 30: Algoritma?!?

SIMBOL NAMA FUNGSI

TERMINATOR Permulaan/akhir program

GARIS ALIR(FLOW LINE) Arah aliran program

PREPARATION Proses inisialisasi/pemberian harga awal

PROSES Proses perhitungan/proses pengolahan data

INPUT/OUTPUT DATA Proses input/output data, parameter, informasi

PREDEFINED PROCESS (SUB PROGRAM)

Permulaan sub program/proses menjalankan sub program

DECISIONPerbandingan pernyataan, penyeleksian

data yang memberikan pilihan untuk langkah selanjutnya

ON PAGE CONNECTOR Penghubung bagian-bagian flowchart yang berada pada satu halaman

OFF PAGE CONNECTOR Penghubung bagian-bagian flowchart yang berada pada halaman berbeda

Page 31: Algoritma?!?

KONSTRUKSI DASAR ALGORITMA Sebuah algoritma dibangun dengan tiga

buah konstruksi : a. Struktur Runtunan (sequence)b. Struktur Pemilihan (selection)c. Struktur Pengulangan (repetition)

Page 32: Algoritma?!?
Page 33: Algoritma?!?

Selection

Page 34: Algoritma?!?
Page 35: Algoritma?!?
Page 36: Algoritma?!?

Contoh : Algoritma untuk menentukan apakah

suatu bilangan merupakan bilangan genap atau bilangan ganjil.

Bentuk flowchart-nya sbb :

Y

T

Start

Input Bilangan

Bulat

Hitung sisa bagi antara

bilangan dengan 2

A

A

ApakahSisa = 0

Cetak Genap

Cetak Ganjil

End

Page 37: Algoritma?!?

Latihan

Buatlah Flowchart untuk masing-masing latihan tadi..

Page 38: Algoritma?!?

Next Topic

Pengenalan Bahasa C Plus Praktikum