REVIEW KONSEP DASAR PEMROGRAMAN KOMPUTER Issa Arwani S

  • Slides: 40
Download presentation
REVIEW KONSEP DASAR PEMROGRAMAN KOMPUTER Issa Arwani, S. kom, M. sc. Issa. arwani@ub. ac.

REVIEW KONSEP DASAR PEMROGRAMAN KOMPUTER Issa Arwani, S. kom, M. sc. Issa. arwani@ub. ac. id http: //www. power. lecture. ub. ac. id PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS BRAWIJAYA MALANG ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 1

KONSEP DASAR PEMROGRAMAN KOMPUTER l l Apa yang anda ketahui tentang konsep DPK ?

KONSEP DASAR PEMROGRAMAN KOMPUTER l l Apa yang anda ketahui tentang konsep DPK ? DPK, Algoritma ? Bagaimana merancang algoritma dan tahapan pembuatan algoritma pemrograman terstruktur. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 2

KONSEP DASAR PEMROGRAMAN KOMPUTER COMPUTER TO – COMPUTE + ER (Menghitung/Mengolah bilangan) ai l

KONSEP DASAR PEMROGRAMAN KOMPUTER COMPUTER TO – COMPUTE + ER (Menghitung/Mengolah bilangan) ai l i N Data yg Diolah (Masukan/Input) ta a D (Mengolah Data) Nil ai D ata PUSAT PENGOLAH DATA (berbasis Arithmatika dan Logika) Data hasil pengolahan (Keluaran/Output) Penyimpanan Data ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 3

TAHAP PENGEMBANGAN ALGORITMA MASALAH / IDEA Algoritma ©Ian Sommerville 2004 PEMECAHAN Source Code SOLUSI

TAHAP PENGEMBANGAN ALGORITMA MASALAH / IDEA Algoritma ©Ian Sommerville 2004 PEMECAHAN Source Code SOLUSI / HASIL Software Executable Code Software Engineering, 7 th edition. Chapter 1 Slide 4

REVIEW BAHASA C ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide

REVIEW BAHASA C ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 5

STRUKTUR PROGRAM l Contoh: int main() { printf(”Selamat datang di FT-UBn”); return (0); }

STRUKTUR PROGRAM l Contoh: int main() { printf(”Selamat datang di FT-UBn”); return (0); } #include <stdio. h> int main() { printf(”Selamat datang di FT-UBn”); return (0); } ©Ian Sommerville 2004 Jika di kompilasi dengan Dev. C++ program ini akan error, dgn Error Message: ‘printf’ undeclared. #include adalah sebuah directive/arahan untuk memberitahu compiler bahwa function prototype untuk fungsi printf ada pada header file stdio. h Software Engineering, 7 th edition. Chapter 1 Slide 6

KOMENTAR l l l Menggunakan pasangan /* dan */ Digunakan agar program lebih mudah

KOMENTAR l l l Menggunakan pasangan /* dan */ Digunakan agar program lebih mudah dibaca dan dimengerti Diabaikan oleh compiler Untuk komentar 1 (satu) baris cukup menggunakan tanda // diawal baris Contoh program C sederhana: /*-----------------Program Pertama -----------------*/ #include<stdio. h> void main() { printf(“Helloworld n”); return (0); } //Program mencetak tulisan Helloworld ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 7

VARIABEL l l l Variabel : Identifier yang memiliki alamat memori tertentu (di RAM)

VARIABEL l l l Variabel : Identifier yang memiliki alamat memori tertentu (di RAM) untuk menyimpan nilai data. Setiap variabel memiliki nama/identifier, alamat (L-Value), tipe, size(rentang nilai) dan data (R-Value). Nilai data atau isi variabel dapat diubah-ubah pada saat Run time Format deklarasi variabel: <tipe> <nama [, . . . ]>; <tipe> <nama = nilai_awal [, . . . ]>; Contoh: int a, b, c, jumlah; float gaji, bonus; int jml_mhs = 20; ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 8

TIPE DATA l Pada dasarnya tipe data primitif pada bahasa pemrograman C ada 5,

TIPE DATA l Pada dasarnya tipe data primitif pada bahasa pemrograman C ada 5, dan ditambah 4 tipe Modifier yaitu: Tipe Data Primitif/Bawaan Keyword 1. 2. 3. 4. 5. Character Integer Floating point Double floating point Void ©Ian Sommerville 2004 char int float double void Software Engineering, 7 th edition. Chapter 1 Slide 9

REVIEW Operasi Output Input ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1

REVIEW Operasi Output Input ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 10

FUNGSI PRINTF l Spesifikai format sbb: %[flags][width][. precision] type Spes. Format Keterangan flags Menentukan

FUNGSI PRINTF l Spesifikai format sbb: %[flags][width][. precision] type Spes. Format Keterangan flags Menentukan rata kanan, kiri atau bertanda: • None : rata-kanan • : rata-kiri width Menentukan jumlah kolom yang disediakan precision menentukan jumlah angka di belakang titik desimal (untuk bilangan pecahan) type Menentukan tipe variabel/nilai-data yang akan ditampilkan ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 11

FORMAT KARAKTER Kode Format Keterangan “%c” Menampilkan sebuah karakter tunggal terformat “%nc” Menampilkan sebuah

FORMAT KARAKTER Kode Format Keterangan “%c” Menampilkan sebuah karakter tunggal terformat “%nc” Menampilkan sebuah karakter lebar n kolom rata kanan “%-nc” Menampilkan sebuah karakter lebar n kolom rata kiri Contoh: #include<stdio. h> #include<iostream. h> int main(){ printf("%cn", 65); printf("%5 c%5 c%5 cn", 65, 66, 67); printf("%-5 c%-5 cn", 65, 66, 67); system("PAUSE"); return(0); } ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 12

FUNGSI SCANF() Header file dari scanf terletak di stdio. h Format: int scanf( const

FUNGSI SCANF() Header file dari scanf terletak di stdio. h Format: int scanf( const char *format [, argument]. . . ); Semua tipe argument pada scanf adalah pointer (alamat dari variabel yang akan diisi data). Untuk memperoleh alamat dari variabel digunakan operator &. Fungsi scanf didefinisikan di header file stdio. h Contoh : int umur. Tahun; scanf(”%d”, &umur. Tahun); ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 13

LATIHAN l Buat Program Luas Segi Empat ©Ian Sommerville 2004 Software Engineering, 7 th

LATIHAN l Buat Program Luas Segi Empat ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 14

LATIHAN l Contoh Program Luas Segi Empat /* Program Luas_Segi_Empat v 1*/ #include <stdio.

LATIHAN l Contoh Program Luas Segi Empat /* Program Luas_Segi_Empat v 1*/ #include <stdio. h> int main() { int panjang, lebar, luas; printf("Menghitung Luas Segiempatnn"); printf("Panjang : "); scanf("%d", &panjang); printf("Lebar : "); scanf("%d", &lebar); luas = panjang * lebar; printf("n. Luas = %d x %d = %dnn", panjang, lebar, luas); return(0); ©Ian}Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 15

Ekspresi l l Komponen utama ekspresi adalah operand dan operator. Operand dapat berupa variabel,

Ekspresi l l Komponen utama ekspresi adalah operand dan operator. Operand dapat berupa variabel, konstanta, nilai data konstan maupun fungsi. Setiap operand harus memiliki nilai data. Operator adalah simbol yang mengolah nilai pada operand dan menghasilkan satu nilai baru. Dalam pemrograman komputer penulisan perhitungan arithmatika/logika TIDAK BOLEH BERTINGKAT. Contoh: Untuk itu setiap operator memiliki presedensi (hirarki) dan assosiativitas. Untuk itu ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 16

OPERATOR dengan Prioritas dan Urutan Pengerjaan l Contoh: l Ditulis dalam bhs pemrograman C:

OPERATOR dengan Prioritas dan Urutan Pengerjaan l Contoh: l Ditulis dalam bhs pemrograman C: x = (x * y + y * z) / (x * y – y * z); 1 4 2 5 6 3 7 8 ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 17

Operator Aritmatika l Digunakan untuk melakukan operasi matematika Simbol Fungsi Contoh + Penambahan x

Operator Aritmatika l Digunakan untuk melakukan operasi matematika Simbol Fungsi Contoh + Penambahan x = y + 6; - Pengurangan y = x – 5; * Perkalian y = y * 3; / Pembagian z = x/y; % Modulo ++ Increment x++; -- Decrement z--; () Menaikan Priority ©Ian Sommerville 2004 A = 10 % 3; x=(2+3)*5 Software Engineering, 7 th edition. Chapter 1 Slide 18 18

Operator Relasional Digunakan untuk membandingkan dua nilai, dan hasilnya TRUE atau FALSE Simbol ©Ian

Operator Relasional Digunakan untuk membandingkan dua nilai, dan hasilnya TRUE atau FALSE Simbol ©Ian Sommerville 2004 Fungsi == Sama Dengan != Tidak Sama Dengan < Lebih Kecil Dari > Lebih Besar Dari <= Lebih Kecil atau Sama Dengan >= Lebih Besar atau Sama Dengan ? : Conditional assignment Software Engineering, 7 th edition. Chapter 1 Slide 19 19

Operator Logika Digunakan untuk melakukan operasi logika Simbol Fungsi && AND || OR !

Operator Logika Digunakan untuk melakukan operasi logika Simbol Fungsi && AND || OR ! NOT Table Kebenaran operator logika: A B !A A && B A || B True False True True False False True False ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 20 20

Latihan #include <stdio. h> int main() { int x=10, y=6; x *= 5 +

Latihan #include <stdio. h> int main() { int x=10, y=6; x *= 5 + y; y += y * x; printf(“x = %dny = %d", x, y); return(0); } Apakah keluaran yang akan ditampilkan di layar monitor bila program di atas berhasil dieksekusi ? ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 21 21

PENCABANGAN l Apa yang anda ketahui tentang konsep Percabangan? ©Ian Sommerville 2004 Software Engineering,

PENCABANGAN l Apa yang anda ketahui tentang konsep Percabangan? ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Percabangan ? Slide 22

Case A l Pilih mana ya …… B Ada 2 wanita, A dan B.

Case A l Pilih mana ya …… B Ada 2 wanita, A dan B. B itu kurang cantik tapi baik dan pintar, sedangkan A itu cantik dan baik tapi kurang pintar. Pilih A atau B ? ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 23

PERNYATAAN IF l Penggambaran dalam flow-chart Statements sebelum if Eks. boolean false true Statement;

PERNYATAAN IF l Penggambaran dalam flow-chart Statements sebelum if Eks. boolean false true Statement; . . . Statements setelah if ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 24

PERNYATAAN IF-ELSE l Penggambaran dalam flow-chart Statements sebelum if false Eks. boolean Statement_11; Statement_12;

PERNYATAAN IF-ELSE l Penggambaran dalam flow-chart Statements sebelum if false Eks. boolean Statement_11; Statement_12; . . . true Statement_01; Statement_02; . . . Statements setelah if ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 25

PERNYATAAN IF-ELSE BERSARANG ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide

PERNYATAAN IF-ELSE BERSARANG ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 26

PERNYATAAN SWITCH-CASE l Struktur logika switch-case dapat digambarkan sbb. : case a false case

PERNYATAAN SWITCH-CASE l Struktur logika switch-case dapat digambarkan sbb. : case a false case b false true case z false default action(s) ©Ian Sommerville 2004 case a action(s) break case b action(s) break case z action(s) break Software Engineering, 7 th edition. Chapter 1 Slide 27

CONTOH ALGORITMA Algoritma Sarapan Pagi Mulai Ambil piring Masukkan nasi dan lauk dalam piring

CONTOH ALGORITMA Algoritma Sarapan Pagi Mulai Ambil piring Masukkan nasi dan lauk dalam piring Ambil sendok dan garpu Ulangi Angkat sendok dan garpu Ambil nasi dan lauk Suapkan ke dalam mulut Taruh sendok dan garpu Kunyah Sampai (nasi dan lauk habis) ATAU kekenyangan Bereskan piring, sendok dan garpu Selesai ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 28 28

Struktur Pengulangan for l Struktur logika pengulangan for exp 1 exp 3 statements exp

Struktur Pengulangan for l Struktur logika pengulangan for exp 1 exp 3 statements exp 2 true false ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 29 29

Struktur Pengulangan for l Contoh : ü for (x=1; x <= 10; x++) printf(“%dn”,

Struktur Pengulangan for l Contoh : ü for (x=1; x <= 10; x++) printf(“%dn”, x); x=1 x++ printf(“%dn”, x) x<=1 0 false ©Ian Sommerville 2004 true Software Engineering, 7 th edition. Chapter 1 Slide 30 30

Struktur Pengulangan while l Sintaks : while (eks. boolean) statements; atau : while(eks. boolean){

Struktur Pengulangan while l Sintaks : while (eks. boolean) statements; atau : while(eks. boolean){ statement 1; statement 2; …. . } ©Ian Sommerville 2004 statements eks. boolean false Software Engineering, 7 th edition. Chapter 1 true Slide 31 31

Struktur Pengulangan while l Contoh : ü while(product <= 1000) product = 2*product; product=2*product;

Struktur Pengulangan while l Contoh : ü while(product <= 1000) product = 2*product; product=2*product; product <= 1000 tru e false ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 32 32

Struktur Pengulangan do - while l Sintaks : do statement while (eks. boolean); atau

Struktur Pengulangan do - while l Sintaks : do statement while (eks. boolean); atau : statements do { statement 1; statement 2; …. . } while(eks. boolean) l l eks. boolean false true Selama eks. boolean bernilai true maka statements dieksekusi berulang-ulang. Pengetesan eks. boolean dilakukan setelah meng-eksekusi statements. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 33 33

Struktur Pengulangan do - while l Contoh: int i = 0; do { printf(”%dn”,

Struktur Pengulangan do - while l Contoh: int i = 0; do { printf(”%dn”, i); } while(++i <=10); I=0 Cetak i ++i <= 10 true false ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 34 34

Pengulangan l l Pada pengulangan while, statement atau blok statement mungkin tidak akan pernah

Pengulangan l l Pada pengulangan while, statement atau blok statement mungkin tidak akan pernah dilaksanakan, bila nilai ekspresi boolen bernilai false, karena operasi pengulangan diawali dengan mengeksekusi ekspresi boolean terlebih dahulu. Pada pengulangan do-while statement atau blok statement pasti dikerjakan paling sedikit satu kali, karena ekspresi boolean baru diuji pada akhir blok pengulangan. ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 35 35

Statement break dan continue l break • • l Digunakan untuk keluar dari loop

Statement break dan continue l break • • l Digunakan untuk keluar dari loop (for, while dan dowhile) Digunakan untuk keluar dari switch continue • skip sisa instruksi dalam loop, dan eksekusi loop berjalan ke tahap selanjutnya ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 36 36

Break Ø Contoh penggunaan statement break pada loop yang menyebabkan program keluar dari loop

Break Ø Contoh penggunaan statement break pada loop yang menyebabkan program keluar dari loop tersebut #include<stdio. h> int main() { int x = 1; while (x<=10) { printf( "%dn", x ); x++; if (x>5) break; Keluar dari } loop return 0; } ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 37 37

continue l Contoh: #include <stdio. h> int main() { int x; for(x=1; x<=10; x++)

continue l Contoh: #include <stdio. h> int main() { int x; for(x=1; x<=10; x++) { if (x == 5) continue; printf("%d ", x); } return 0; } Output : 1 2 3 4 6 7 8 9 10 ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 38 38

break vs continue do { scanf(“%f”, &x); if(x<0) { printf”n. Eror. Negatif”); break; }

break vs continue do { scanf(“%f”, &x); if(x<0) { printf”n. Eror. Negatif”); break; } /*Proses nonnegatif */ … } while(exp); ©Ian Sommerville 2004 do { scanf(“%f”, &x); if(x<0) { printf”n. Eror. Negatif”); continue; } /*Proses nonnegatif */ … } while(exp); Software Engineering, 7 th edition. Chapter 1 Slide 39 39

End of This Session. . . ©Ian Sommerville 2004 Software Engineering, 7 th edition.

End of This Session. . . ©Ian Sommerville 2004 Software Engineering, 7 th edition. Chapter 1 Slide 40