Hardware → monitor, keyboard, motherboard, memory, processor, harddisk, add. peripheral etc
1 Ir. Roedi Goernida, MT.
PENGANTAR
ALGORITMA PEMROGRAMAN
(IS1313)
Program Studi Sistem Informasi – Fakultas Rekayasa Industri
Institut Teknologi Telkom
Bandung
2011
- Unit
- Functional
- Flow graph
- Performance
- Security
- Integration
- Instalasi - Pelatihan - Perbaikan >Scooping - Identifikasi - Blue print- Spe>Reinstalasi - Backup data
- Perbaikan
2 Sistem Komputer terdiri dari:.
Brainware user Hardware monitor, keyboard, motherboard, memory, processor, harddisk, add. peripheral etc Software O/S, programming language, database, application program etc
Product Life Cycle: Analysis Design Development Testing Implementation Maintenance EOL
Struktur Sistem Komputer
(1/3) Pengertian Algoritma Algoritma.
Urutan atau rentetan langkah-langkah logis tertentu untuk menyelesaikan atau memecahkan suatu masalah yang disusun secara sistematis & logis.
Mengoperasikan perangkat komputer,
menjalankan motor/mobil, membuat kue dll Algoritma merupakan cetak-biru dari suatu program & sebaiknya disusun sebelum program dibuat.Kriteria suatu algoritma: Memiliki masukan & keluaran Efektifitas & efisien Terstruktur 3 Hand-out: Algoritma Pemrograman
IS1313 - 01 Hal. 2 / 25 (2/3) Pengertian Algoritma
Sifat suatu algoritma: Tidak menggunakan simbol-simbol (sintax) dari suatu bahasa pemrograman.
Tidak tergantung pada suatu bahasa pemrograman. Notasi dapat dipergunakan pada seluruh bahasa pemrograman.
Contoh :
Algoritma menghitung luas persegi panjang: Masukan panjang (P) Masukan lebar (L) Luas P x L Tulis Luas 4
5 Pengertian Algoritma
Algoritma Pseudo-code
IF A > 10 THEN PRINT A Dari dua bilangan A dan B, cari bilangan yang terbesar
5.Tampilkan bilangan kedua 5. print b Nilai A ditambah dengan 5 A A + 5 Cetak nilai A bila lebih besar dari 10
4. Tampilkan bilangan pertama 4. print a
3. If a > b then kerjakan langkah 4
3. Jika bilangan pertama > bilangan kedua maka kerjakan langkah 4, jika tidak, kerjakan langkah 5.
2. Input b
2. Masukkan bilangan kedua
1. Input a
1. Masukkan bilangan pertama
Contoh: mencari bilangan terbesar dari dua bilangan yang diinputkan.
(3/3) Jenis proses algoritma.
Kode atau tanda yang menyerupai (pseudo) program atau
merupakan penjelasan cara menyelesaikan suatu masalah.
6 Pseudo-code
IS1313 - 01 Hal. 4 / 25
Hand-out: Algoritma Pemrograman
● Algoritma harus efektif sederhana
● Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas Finiteness / ada batas.
Setiap langkah harus didefinisikan dengan tepat & tidak berarti-dua (Ambiguitas) Definiteness / kepastian.
● Algoritma memiliki nol atau lebih masukan. ● Algoritma memiliki nol atau lebih keluaran. ●
Ciri algoritma.
Sequence process. Selection process. Iteration process. Concurrent process.
IF A > B THEN PRINT A ELSE PRINT B
Aturan penulisan Algoritma Judul Algoritma.
Bagian yang terdiri atas nama algoritma dan penjelasan (spesifikasi) tentang algoritma tersebut. Nama sebaiknya singkat dan menggambarkan apa yang dilakukan oleh algoritma tersebut
Deklarasi.
Bagian untuk mendefinisikan semua nama yang digunakan di dalam program. Nama tersebut dapat berupa nama tetapan, peubah, tipe, prosedur dan fungsi.
Deskripsi.
Merupakan kumpulan instruksi yang berisi uraian langkah- langkah penyelesaian masalah yang ditulis dengan menggunakan suatu notasi. 7 Hand-out: Algoritma Pemrograman
IS1313 - 01 Hal. 6 / 25 (1/3)
Contoh penulisan Algoritma + Pseudo-code
1. Kelulusan Mahasiswa
Algoritma Kelulusan_mhs {diberikan nama dan nilai mahasiswa, jika nilai tersebut lebih besar atau sama dengan 56, maka mahasiswa tersebut dinyatakan lulus, jika tidak maka dinyatakan tidak lulus} DEKLARASI: Nama : string Nilai : integer Keterangan : string DESKRIPSI: read (nama, nilai) if nilai >= 56 then keterangan = ‘lulus’ else keterangan = ‘tidak lulus’ write (nama, keterangan) endif 8
Contoh penulisan Algoritma + Pseudo-code (2/3)
2. Luas & keliling lingkaran
Algoritma Luas_Kell_Lingkaran {judul algoritma} {menghitung luas dan keliling lingkaran untuk ukuran jari-jari tertentu. Algoritma menerima input jari-jari lingkaran, menghitung luas dan kelilingnya serta mencetak luas lingkaran ke
piranti keluaran –- spesifikasi algoritma}
DEKLARASI: Const phi = 3.14 {nilai} R : real {jari-jari lingkaran} Luas : real {luas lingkaran}
Keliling : real {keliling lingkaran}
DESKRIPSI: read(R) luas phi*R*R keliling 2*phi*R write(luas, keliling) 9 Hand-out: Algoritma PemrogramanIS1313 - 01 Hal. 8 / 25 (3/3)
Contoh penulisan Algoritma + Pseudo-code
3. Komisi Salesman
Algoritma Komisi_Salesmen {baca nama dan hasil penjualan salesman, kemudian hitung besarnya komisi sebesar 15% dari hasil penjualan dan tampilkan nama dan komisinya ke layar} DEKLARASI:
Nama : string NilaiPenjualan : real Komisi : real DESKRIPSI: read(Nama, NilaiPenjualan) Komisi 0.15 * NilaiPenjualan write(Nama, Komisi) 10
(1/3)
Pengertian Pemrograman
Program komputer.Sekumpulan instruksi (statement) yang dimengerti oleh komputer.
Bagian Program Suatu program pada dasarnya terdiri dari 3 bagian:
Masukan : bisa ada, bisa tidak Proses Keluaran : min. satu ouput.
11 Hand-out: Algoritma Pemrograman
IS1313 - 01 Hal. 10 / 25 (2/3)
Pengertian Pemrograman
Pemrograman.
Suatu kumpulan instruksi-instruksi atau source code
yang dibuat oleh seorang programmer.Pemrograman Prosedural/Terstruktur --> Pascal, C Pemrograman Fungsional fungsi matematika. Pemrograman Modular,
- ++ Pemrograman Object-oriented C , Java Pemrograman Functional-oriented SQL, HTML Pemrograman Declaratif
12
(3/3)
Pengertian Pemrograman
Bahasa pemrograman.Alat atau tools yang dipergunakan untuk membuat suatu program. Contoh: Basic, Pascal, Cobol, C, C++, PHP, Java etc
Langkah dalam pemrograman, Pendefinisian permasalahan.
Menemukan solusi Memilih algoritma Menulis program Menguji program Dokumentasi Pemeliharaan program 13 Hand-out: Algoritma Pemrograman
IS1313 - 01 Hal. 12 / 25 (1/3)
Bahasa Pemrograman & Translator
Bahasa tingkat rendah (low level language).Bahasa mesin Berisi kode-kode mesin yang hanya dapat diinterpretasikan langsung oleh mesin komputer berupa kode numerik 0 dan 1.
Bahasa tingkat tinggi (high level language).
Merupakan Bahasa Pemrograman Generasi ke-3. Bahasa manusia Banyak ragam Java, Pascal, C, C++, Cobol dll.
Memberi banyak fasilitas kemudahan dalam programming variabel, tipe data, konstanta, loop, struktur kontrol, prosedur, dll. 14
- - Target code
- - Object code
- - Object program
16 Bahasa Pemrograman & Translator
Result Input data
Object code Exe
Source code Compiler Linker
Source code Input data Interpreter Result
Input – source code - Basic, PHP, ASP dll
(3/3) Interpreter Compiler
IS1313 - 01 Hal. 14 / 25
Translator Hand-out: Algoritma Pemrograman
(2/3) Source code
Compiler menterjemahkan setelah seluruh instruksi ditulis. Contoh: Java, Pascal, Cobol
Bahasa Pemrograman & Translator
Contoh: Basic ●
Translator: ● Interpreter menterjemahkan baris per baris instruksi.
akan diterjemahkan ke dalam bahasa mesin biner digit dengan menggunakan penterjemah.
15 Program yang ditulis dalam bahasa pemrograman
- Program dari user Pascal, C, C++, Cobol Output - Tidak ada object code
- Translasi dilakukan inte
- Bahasa Assembly - Exe >- INTERPRETER
- - COMPILER
Libraries Preprocessor
Flowchart (1/3) Definisi:
● Merupakan bagan yang menggunakan simbol-simbol tertentu dalam menunjukkan alir di dalam suatu
program atau prosedur sistem secara logika.
● Bagan yang mempunyai alir yang menggambarkan langkah-langkah penyelesaian suatu masalah yang juga merupakan cara penyajian dari suatu algoritma.
Macam-macam flowchart ●
System flowchart ●
Document / Paperwork / Form flowchart ●
Schematic flowchart ●
Program flowchart ●
Process flowchart 17 Hand-out: Algoritma Pemrograman
IS1313 - 01 Hal. 16 / 25 Flowchart (2/3) System flowchart.
Bagan alir yang menggambarkan arus / alur pekerjaan secara keseluruhan dari suatu sistem dengan menjelaskan urut-urutan dari prosedur yang terdapat di dalam sistem tersebut.
Deskripsi dilakukan secara grafik dari urutan prosedur- prosedur yang terkombinasi yang membentuk suatu sistem Document / Paperwork / Form flowchart.
Digunakan untuk menelusuri alur form dan laporan sistem dari satu bagian ke bagian lain baik bagaimana alur form dan laporan diproses, dicatat dan disimpan. 18
19 Schematic flowchart.
Menggambarkan suatu sistem atau prosedur dengan menggunakan gambar-gambar komputer, peripheral, form-form atau peralatan lain yang digunakan dalam menggunakan suatu sistem selain simbol-simbol flowchart standar.
Program flowchart.
Flowchart yang dihasil dari System Flowchart yang akan memberikan keterangan yang lebih rinci pada setiap langkah program atau prosedur yang sesungguhnya dilaksanakan dalam urutan yang tepat saat terjadi.
Process flowchart.
Teknik penggambaran rekayasa industrial yang memecah dan menganalisis langkah-langkah dalam suatu prosedur atau sistem
Flowchart (3/3) Hand-out: Algoritma Pemrograman
IS1313 - 01 Hal. 18 / 25
20 Pembuatan Flowcart
● Merupakan gambaran hasil analisa suatu permasalahan
● Tidak ada kaidah yang baku
● Bervariasi antara satu pemrogram dengan pemrogram lainnya
●
Terdiri dari bagian utama: input proses output
● Hindari pengulangan proses yang tidak perlu dan logika yang berbelit, sehingga jalannya proses menjadi singkat.
● Jalannya proses digambarkan dari atas ke bawah dan diberikan tanda panah untuk memperjelas.
● Sebuah flowchart diawali dari satu titik START / MULAI dan diakhiri dengan END / SELESAI.
Simbol-simbol Flowcart Proses Proses Dokumen Keputusan Data Altenatif Input/Output
Persiapan Operasi Masukan Disk storage Sub-program/
nilai awal manual manual Sub-proses
Konektor Terminator I/O Display Aliran Manual Disket dataOperasi Perpindahan / Inspeksi Penundaan Penyimpanan / transportasi File 21 Hand-out: Algoritma Pemrograman
IS1313 - 01 Hal. 20 / 25 Contoh Flowcart (1/3) Mulai
Mulai 1
1 Total= 0
Beri nilai I = 0 awal TOTAL Hitung Rata = Total / N Rata-rata Read N
Baca data Print Tampilkan hasil Total, Rata
Total & Rata-rata Read X
Hitung Selesai TOTAL
Selesai Total + X Total= Data sudah habis?
Tidak Ya I + 1 I =
1 1 I = N Y T 22
23 Contoh Flowcart (2/3)
Hand-out: Algoritma Pemrograman
IS1313 - 01 Hal. 22 / 25
24 Contoh Flowcart (3/3)
Mulai Flowcart vs Java
int Total = 0; Total= 0 int I = 0; I = 0 Scanner s =
1
new Scanner(System.in); int N; Read N System.out.println (“Nilai N = “; Rata =
Rata = Total / N N = s.nextInt(); Total / N int X; Read X
System.out.println System.out.println Print (“Total = “ + Total; (“Nilai X = “; Total, Rata
System.out.println X = s.nextInt(); Total=
(“Rata = “ + Rata; Total + X Total:=Total+ X Selesai 1 I = N Y T I = I + 1 I = I + 1
25 Hand-out: Algoritma Pemrograman
IS1313 - 01 Hal. 24 / 25 Contoh-contoh
Kelulusan Mahasiswa Luas lingkaran:
Mulai Mulai
Baca Nama, Nilai
Input R
Ya
Keterangan = Nilai >= 56
Phi=3.14 “Lulus”
Tidak
Keterangan = L 3.14*R*R
“Tidak Lulus Tulis
Tulis L Nama, Keterangan
Selesai Selesai 26
27 Selesai