Konsep Dasar Pemrograman Komputer 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
Konsep Dasar Pemrograman Komputer DPK, Algoritma ? Apa yang anda ketahui tentang konsep DPK ? Bagaimana merancang algoritma dan tahapan pembuatan algoritma pemrograman terstruktur.
Konsep Dasar Pemrograman Komputer COMPUTER TO – COMPUTE + ER (Menghitung/Mengolah bilangan) (Mengolah Data) Nilai Data Nilai Data Data hasil pengolahan Data yg Diolah PUSAT PENGOLAH DATA (berbasis Arithmatika dan Logika) (Masukan/Input) (Keluaran/Output) Penyimpanan Data
TAHAP PENGEMBANGAN ALGORITMA MASALAH / IDEA PEMECAHAN SOLUSI / HASIL Software Algoritma Source Code Executable Code
REVIEW Bahasa C
Struktur Program Contoh: int main() { printf(”Selamat datang di FT-UB\n”); return (0); } 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 #include <stdio.h> int main() { printf(”Selamat datang di FT-UB\n”); return (0); }
Komentar 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
Variabel 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;
Tipe Data Pada dasarnya tipe data primitif pada bahasa pemrograman C ada 5, dan ditambah 4 tipe Modifier yaitu: Tipe Data Primitif/Bawaan Keyword Character Integer Floating point Double floating point Void char int float double void
REVIEW Operasi Output Input
Fungsi printf 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
Format Karakter Kode Format Keterangan Contoh: #include<stdio.h> 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("%c\n",65); printf("%5c%5c%5c\n",65,66,67); printf("%-5c%-5c%-5c\n",65,66,67); system("PAUSE"); return(0); }
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 umurTahun; scanf(”%d”, &umurTahun);
LATIHAN Buat Program Luas Segi Empat
LATIHAN Contoh Program Luas Segi Empat /* Program Luas_Segi_Empat v1*/ #include <stdio.h> int main() { int panjang, lebar, luas; printf("Menghitung Luas Segiempat\n\n"); printf("Panjang : "); scanf("%d",&panjang); printf("Lebar : "); scanf("%d",&lebar); luas = panjang * lebar; printf("\nLuas = %d x %d = %d\n\n", panjang, lebar, luas); return(0); }
Ekspresi 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
OPERATOR dengan Prioritas dan Urutan Pengerjaan Contoh: Ditulis dalam bhs pemrograman C: x = (x * y + y * z) / (x * y – y * z); 1 2 4 5 3 6 7 8
Operator Aritmatika 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 A = 10 % 3; ++ Increment x++; -- Decrement z--; () Menaikan Priority x=(2+3)*5
Operator Relasional Digunakan untuk membandingkan dua nilai, dan hasilnya TRUE atau FALSE Simbol Fungsi = = Sama Dengan != Tidak Sama Dengan < Lebih Kecil Dari > Lebih Besar Dari <= Lebih Kecil atau Sama Dengan >= Lebih Besar atau Sama Dengan ?: Conditional assignment
Operator Logika Digunakan untuk melakukan operasi logika Table Kebenaran operator logika: Simbol Fungsi && AND || OR ! NOT A B !A A && B A || B True False
Latihan #include <stdio.h> int main() { int x=10, y=6; x *= 5 + y; y += y * x; printf(“x = %d\ny = %d",x,y); return(0); } Apakah keluaran yang akan ditampilkan di layar monitor bila program di atas berhasil dieksekusi ?
Apa yang anda ketahui tentang konsep Percabangan? Pencabangan Percabangan? Apa yang anda ketahui tentang konsep Percabangan?
Case Pilih mana ya …… A 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 ?
Penggambaran dalam flow-chart Pernyataan if Penggambaran dalam flow-chart Statements sebelum if Eks.boolean Statement; ... true false Eks.boolean true Statement; ... false Statements setelah if
Penggambaran dalam flow-chart Pernyataan if-else Penggambaran dalam flow-chart Statements sebelum if Eks.boolean Statement_01; Statement_02; ... true false Statement_11; Statement_12; false Eks.boolean true Statement_11; Statement_12; ... Statement_01; Statement_02; ... Statements setelah if
Pernyataan if-else Bersarang
Pernyataan switch-case Struktur logika switch-case dapat digambarkan sbb.: case b case a case z case a action(s) case b action(s) case z action(s) break default action(s) true false true case a case a action(s) break false true case b case b action(s) break false true case z case z action(s) break false default action(s)
Algoritma Sarapan Pagi 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
Struktur Pengulangan for Struktur logika pengulangan for exp1 exp3 statements exp2 true false exp1 exp3 statements exp2 true false
Struktur Pengulangan for Contoh : for (x=1; x <= 10; x++) printf(“%d\n”,x); x = 1 x++ printf(“%d\n”,x) x<=10 true false
Struktur Pengulangan while Sintaks : while (eks.boolean) statements; atau : while(eks.boolean){ statement1; statement2; ….. } statements eks. boolean true false
Struktur Pengulangan while Contoh : while(product <= 1000) product = 2*product; product=2*product; product <= 1000 true false
Struktur Pengulangan do - while eks. boolean true false statements Sintaks : do statement while (eks.boolean); atau : do { statement1; statement2; ….. } while(eks.boolean) Selama eks.boolean bernilai true maka statements dieksekusi berulang-ulang. Pengetesan eks.boolean dilakukan setelah meng-eksekusi statements.
Struktur Pengulangan do - while Contoh: int i = 0; do { printf(”%d\n”, i); } while(++i <=10); ++i <= 10 true false I = 0 Cetak i
Pengulangan 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.
Statement break dan continue Digunakan untuk keluar dari loop (for, while dan do-while) Digunakan untuk keluar dari switch continue skip sisa instruksi dalam loop, dan eksekusi loop berjalan ke tahap selanjutnya
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( "%d\n", x ); x++; if (x>5) break; } return 0; Keluar dari loop
continue 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
break vs continue do { do { scanf(“%f”, &x); scanf(“%f”, &x); if(x<0) { printf”\nEror. Negatif”); continue; } /*Proses nonnegatif */ … } while(exp); do { scanf(“%f”, &x); if(x<0) { printf”\nEror. Negatif”); break; } /*Proses nonnegatif */ … } while(exp);
End of This Session...