PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan...

33
PERTEMUAN 2 ALGORITMA & PEMROGRAMAN

Transcript of PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan...

Page 1: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

PERTEMUAN 2

ALGORITMA & PEMROGRAMAN

Page 2: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

POKOK BAHASAN

1. Pendahuluan2. Tahapan Pembangunan Program3. Pengenalan Algoritma4. Cara Menyajikan Algoritma5. Data Program6. Elemen-Elemen Program

Page 3: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

PENDAHULUAN� Perancangan program merupakan pengembangan

solusi terhadap identifikasi masalah dan menghasilkanserangkaian instruksi yang membangun sebuah programkomputer untuk menghasilkan output.

� Sebuah program harus dirancang secara sistematis danbenar sebelumnya memulai coding. Perancanganprogram dihasilkan dalam pembangunan algoritma.

Page 4: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

PERANAN ALGORITMA DALAM PROGRAM

ALGORITMA

BAHASA

PEMROGRAMAN

KOMPUTER

Kompilasi

Interpretasi oleh CPU untukMenjalankan operasi pada mesinkomputer sesuai dengan intruksi bahasapemrograman.

Program komputer adalahperwujudan atau implementasi darialgoritma yang di tulis dalambahasa pemrograman.

Translasi

Page 5: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

APAKAH ALGORITMA ?

� Algoritma berisi langkah-langkah yangdibutuhkan untuk menyelesaikan sebuah tugas.

� Sebuah algoritma harus:– Memiliki masukkan (input)– Menghasilkan keluaran (output)– Terdefinisi jelas (definiteness)– Memiliki kondisi akhir (finiteness)– Memberi solusi yang diharapkan

(effectiveness)– Berlaku untuk setiap himpunan input sesuai

dengan masalah yang diberikan (generality)

Page 6: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

CONTOH ALGORITMA

Program Hitung_Kembali{menghitung uang kembali apabila input datatersebut diberikan}Deklarasilong sisa, uang_bayar, total_bayarDeskripsiBaca total_bayarHitung sisa = uang_bayar - total_bayarCetak sisaEND

Page 7: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

CONTOH ALGORITMA YANG TIDAK BAIK

Program Cetak_Berulang{Mencetak kata sebanyak i }Deklarasiinteger iDeskripsii = 0While (i <= 5)

cetak ”Bina Sarana Informatika”END

Page 8: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

CARA UNTUK MENYAJIKAN ALGORITMA

1. Pseudocode2. Flowchart

Page 9: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

1. PSEUDOCODE� Pseudocode merupakan salah satu cara untuk

menuliskan algoritma� Karakteristik Pseudocode:

– Statement / Perintah di tulis dalam bahasa Inggris /Indonesia sederhana.

– Setiap perintah di tulis dalam baris terpisah– Keyword digunakan untuk menjelaskan control

structure tertentu.– Setiap set/bagian instruksi memiliki awal dan akhir– Pengelompokkan statement bisa membentuk satu

modul yang mempunyai nama.

Page 10: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

STRUKTUR PSEUDOCODE� Algoritma terdiri dari tiga bagian yaitu :

� Judul (Header) : mendefinisikan nama denganmenentukan apakah teks tersebut adalah program,prosedur, fungsi.

� Deklarasi : mendefinisikan nama variabel, namakonstanta, nama prosedur, nama fungsi yang akandigunakan dalam algoritma.

� Deskripsi : mendefinisikan langkah-langkahpenyelesaian masalah mulai dari input, proses danouput.

� Pada setiap bagian tersebut apabila akan dituliskankomentar mengenai setiap bagian tersebut dituliskandiantara tanda kurung kurawal� Contoh : { Komentar }

Page 11: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

CONTOH PSEUDOCODEProgram Luas_Lingkaran{menghitung luas sebuah lingkaran apabila jari-jari lingkaran tersebut diberikan}Deklarasi

inisialisasi konstanta phi = 3.14inisialisasi r, luas_lingkaran

DeskripsiBaca data rluas_lingkaran = phi * r * rcetak luas_lingkaran

Page 12: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

2. FLOWCHART� Flowchart adalah suatu alat yang menunjukkan

langkah-langkah yang harus dilaksanakandalam menyelesaikan suatu permasalahanuntuk komputasi dengan cara mengekspresikanke dalam serangkaian simbol-simbol grafis.

Page 13: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

CONTOH FLOWCHART

Page 14: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

SIMBOL-SIMBOL FLOWCHART PROGRAM

Simbol Keterangan

TERMINALDigunakan untuk menggunakan awal dan akhir dari suatukegiatan.

DECISIONDigunakan untuk menggambarkan proses pengujian suatukondisi yang ada.

PREPARATIONDigunakan untuk menggambarkan persiapan harga awal,dari proses yang akan dilakukan.

FLOW LINEDigunakan untuk menggambarkan hubungan proses darisatu proses ke proses lainnya.

Page 15: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

SIMBOL-SIMBOL FLOWCHART PROGRAM

Simbol Keterangan

INPUT/OUTPUTDigunakan untuk menggambarkan proses memasukan datayang berupa pembacaan data dan sekaligus proseskeluaran yang berupa pencetakan data.

SUBROUTINEDigunakan untuk menggambarkan proses pemanggilan subprogram dari main program (recursivitas).

CONNECTORDigunakan untuk menghubungkan alur proses ke dalam

satu halaman atau halaman yang sama.

OFF-PAGE CONNECTORDigunakan untuk menghubungkan alur proses dalamhalaman yang berbeda atau ke halaman berikutnya.

Page 16: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

DATA PROGRAM

• Program ditulis untuk memproses data,dibutuhkan pemahaman yang baik terhadapsifat dan struktur dari data yang sedangdiproses.

• Data dalam program mungkin dapat berupavariabel tunggal (seperti : integer, karakter),atau kelompok (seperti : array, file)

Page 17: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

Variabel & Konstanta� Variabel adalah nama yang diberikan kepada

kumpulan sel memori untuk menyimpan itemdata tertentu yang nilainya dapat berubah padaprogram dieksekusi.Contoh : namamhs, tgl_lahir, alamat1, dll.

� Konstanta adalah item data dengan nama dannilai yang tetap sama selama program dieksekusi.Contoh : define phi 3.14 atau phi = 3.14.

Page 18: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

ELEMEN-ELEMEN PROGRAM

A. Aturan leksikalB. Tipe DataC. ExpressionD. StatementE. Function & Procedure

Page 19: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

1. Token� Token (Kata) yaitu elemen terkecil pada bahasa

pemrograman yang memiliki arti penting bagicompiler.

� Yang termasuk token antara lain: identifier,keywords(reserved words), operator, dansebagainya.

� Token yang satu dengan yang lain dipisahkandengan satu atau lebih spasi, tabulasi, baris baru,atau komentar.

Page 20: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

2. Komentar� Digunakan untuk memberikan suatu keterangan

yang akan menjelaskan isi dari program secarasingkat.

� Komentar hanya sebuah tulisan pada programdan tidak akan diproses oleh komputer.

� Bertindak sebagai dokumentasi.� Notasi komentar pada setiap bahasa

pemrograman berbeda-beda.� Contoh :

− {komentar pada pascal}− //komentar pada c++− ‘komentar pada visual basic

Page 21: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

3. IDENTIFIER� Identifier adalah token yang merepresentasikan

nama sesuatu seperti : variabel/konstanta,field/atribut, prosedur/fungsi, dan lain-lain.

� Aturan pemberian nama identifier:a.Karakter pertama harus berupa huruf.b.Karakter kedua dan selanjutnya dapat berupa

huruf/angka/underscore.c. Tidak boleh menggunakan karakter simbol (@

# $ % & *, dll) kecuali underscore.d.Tidak boleh menggunakan kata kunci

(keywords/ reserved words).

Page 22: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

3. IDENTIFIER (lanjutan)e. Huruf besar/kecil dianggap berbeda (khusus

C++)f. Tidak boleh ada spasi.g.Nama identifier sebaiknya disesuaikan

dengan kebutuhan atau sesuai objek yangakan diberi nama.

� Contoh penamaan identifier yang benar : idcust,tgl_lahir, telp1, dll.

� Contoh penamaan identifier yang tidak benar :@kdbrg, double, nama-depan, 3erat_badan, dll.

Page 23: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

4. Keywords/Reserved Words� Keywords atau reserved words merupakan

kata-kata yang telah ada/didefinisikan olehbahasa pemrograman yang bersangkutan.

� Kata-kata tersebut telah memiliki definisi yangsudah tetap dan tidak dapat diubah.

� Karena telah memiliki definisi tertentu, makakatakata ini tidak dapat digunakan sebagaiidentifier.

� Contoh Keyword : break, switch, continue,repeat, until, function dll

Page 24: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

5. OPERATOR� Merupakan simbol-simbol khusus yang

digunakan untuk mengoperasikan suatu nilaidata (operand).

� Operator yang digunakan dalam pemrograman:− Arithmetic operator− Assignment operator− Logical operator− Relational operator− Pointer operator− Bitwise operator

Page 25: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

B. TIPE DATA� Tipe data digunakan untuk menentukan jenis nilai yang

dapat ditampung oleh suatu variabel.� Pada suatu bahasa pemrograman umumnya telah

menyediakan tipe-tipe data yang sederhana (simple)maupun yang terstruktur dan apabila kita membutuhkantipe data yang belum tersedia, kita dapat mendefinisikansendiri tipe data baru, yang disebut enumerated type.

Page 26: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

B. TIPE DATA (lanjutan)� Tipe data terstruktur yaitu tipe data yang dapat

menampung lebih dari satu nilai, sbb:1. Array adalah tipe data berindeks yang terdiri

dari satu atau lebih elemen/komponen yangmemiliki tipe data yang sama.

2. Record adalah tipe data yang digunakanuntuk merepresentasikan kumpulan (set)elemen/komponen yang memiliki satu jenisatau lebih tipe data. Tiap element disebut jugafield atau property atau attribute

Page 27: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

C. Expression� Expression (ekspresi) yaitu suatu pernyataan yang

menghasilkan suatu nilai.� Expression tersusun dari operator dan operand yang

digunakan untuk menghitung atau memberi suatu nilaisuatu variable atau identifier.

� Expression yang paling sederhana yaitu nama variable.Expression yang lebih kompleks akan melibatkanoperator-operator, maupun pemanggilan function atauprocedure.

Page 28: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

D. Statement� Statement merupakan bagian program yang berisi

perintah yang akan dieksekusi / dijalankan. Karenaitu, statement-statement ini menentukan bagaimanajalannya program dan bagaimana suatu nilaivariable dimanipulasi/berubah.

� Statement dapat dikelompokan menjadi antara lain:1. Simple Statement2. Compound Statement

Page 29: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

1. Simple StatementYang digolongkan ke dalam simple statement (statementsederhana) yaitu statement yang tidak berisi statementlainnya, sebagai berikut :� Assignment Statement yaitu statement yang digunakan

untuk memberikan nilai ke suatu variable, contohnya :� a := 10;� b := a * 2;� c := c * b;

� Statement untuk pemanggilan function atau procedureyaitu statement yang memanggil function atau procedureyang telah didefinisikan pada program. Contoh :� Calculate (a,b);� Cetak (a,b);

Page 30: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

1. Simple Statement (lanjutan)� Jump Statement yaitu statement yang digunakan untuk

melompati statement-statement lain. Contoh :� Melompat ke statement tertentu goto� Keluar dari iterative statement break

Page 31: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

2. Compound Statement� Compound statement (kumpulan statement) adalah

sekumpulan statement yang terdiri dari statement-statementlain, termasuk juga selection statement dan interaction.

� Selection statement digunakan untuk melakukan pemilihansekumpulan statement (compound statement). Contoh :a. If ……Thenb. Perintah Case

� Iteration statement digunakan untuk melakukan perulangansekumpulan statement (compound statement). Contoh :a. Do Whileb. Repeat …….Untilc. For…… EndFor

Page 32: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

E. Function dan Procedure• Procedure dan Function disebut juga

subroutine, merupakan blok statement yangdapat dipanggil dari lokasi yang berbeda di dalamprogram.

• Yang membedakan antara function danprocedure yaitu: suatu function jikadijalankan/dipanggil akan mengembalikan suatunilai.

• Ketika procedure atau function dipanggil, kitadapat melewatkan suatu nilai ke dalam functionatau procedure tersebut.

• Nilai yang dilewatkan disebut juga argument atauparameter .

Page 33: PERTEMUAN 2 ALGORITMA & PEMROGRAMAN · 2. FLOWCHART Flowchart adalah suatu alat yang menunjukkan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk

TUGAS 1Buatlah pseudocode & flowchart untukmenghasilkan 1 liter air dengan menggunakantabung dengan ukuran 3 liter dan 5 liter.Catatan Tugas :� Tugas dibuat pada kertas folio bergaris dengan

menggunakan bolpoint.� Tugas dikumpulkan pada saat pertemuan 3.

Bagi mahasiswa yang tidak mengumpulkantugas maka tidak mendapat nilai tugas 1 (tidakada sistem susulan).