Hardware → monitor, keyboard, motherboard, memory, processor, harddisk, add. peripheral etc

  1 Ir. Roedi Goernida, MT.

  

([email protected])

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 Pemrograman

  IS1313 - 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 data

  Operasi 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