Algoritma Pemrograman dan Pengantar Pemrograman Bahasa C ALGORITMA
![Algoritma Pemrograman dan Pengantar Pemrograman Bahasa C ALGORITMA DAN STRUKTUR DATA Algoritma Pemrograman dan Pengantar Pemrograman Bahasa C ALGORITMA DAN STRUKTUR DATA](https://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-1.jpg)
Algoritma Pemrograman dan Pengantar Pemrograman Bahasa C ALGORITMA DAN STRUKTUR DATA
![Algoritma Pemrograman Algoritma adalah kumpulan perintah untuk menyelesaikan suatu masalah. Perintah-perintah ini dapat diterjemahkan Algoritma Pemrograman Algoritma adalah kumpulan perintah untuk menyelesaikan suatu masalah. Perintah-perintah ini dapat diterjemahkan](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-2.jpg)
Algoritma Pemrograman Algoritma adalah kumpulan perintah untuk menyelesaikan suatu masalah. Perintah-perintah ini dapat diterjemahkan secara bertahap dari awal hingga akhir. (wikipedia) Contoh penjumlahan 2 angka : 1. 2. 3. 4. Masukkan angka 1 Masukkan angka 2 Hitung penjumlahan angka 1 dan angka 2 Tampilkan hasil penjumlahan
![Kriteria Algoritma Input: algoritma dapat memiliki nol atau lebih inputan dari luar. Output: algoritma Kriteria Algoritma Input: algoritma dapat memiliki nol atau lebih inputan dari luar. Output: algoritma](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-3.jpg)
Kriteria Algoritma Input: algoritma dapat memiliki nol atau lebih inputan dari luar. Output: algoritma harus memiliki minimal satu buah output keluaran. Definiteness (pasti): algoritma memiliki instruksi-instruksi yang jelas. Finiteness (ada batas): algoritma harus memiliki titik berhenti (stopping role). Effectiveness (tepat dan efisien): algoritma sebisa mungkin harus dapat dilaksanakan dan efektif. Contoh instruksi yang tidak efektif adalah: A = A + 0 atau A = A * 1
![Sifat Algoritma Sifat-sifat Algoritma pada umumnya: Tidak menggunakan simbol atau sintaks dari suatu bahasa Sifat Algoritma Sifat-sifat Algoritma pada umumnya: Tidak menggunakan simbol atau sintaks dari suatu bahasa](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-4.jpg)
Sifat Algoritma Sifat-sifat Algoritma pada umumnya: Tidak menggunakan simbol atau sintaks dari suatu bahasa pemrograman Tidak tergantung pada suatu bahasa pemrograman Notasi-notasinya dapat digunakan untuk seluruh bahasa manapun
![Flowchart Definisi : Bentuk gambar/diagram yang mempunyai aliran satu atau dua arah secara sekuensial Flowchart Definisi : Bentuk gambar/diagram yang mempunyai aliran satu atau dua arah secara sekuensial](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-5.jpg)
Flowchart Definisi : Bentuk gambar/diagram yang mempunyai aliran satu atau dua arah secara sekuensial Kegunaan : Mempermudah programmer dalam menentukan alur logika program Untuk mempresentasikan program kepada orang lain Maka, flowchart harus dapat merepresentasikan komponen -komponen dalam bahasa pemrograman
![Lambang-Lambang Flowchart LAMBANG KETERANGAN Terminator (Mulai / Selesai) Aliran Data Input / Output Process Lambang-Lambang Flowchart LAMBANG KETERANGAN Terminator (Mulai / Selesai) Aliran Data Input / Output Process](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-6.jpg)
Lambang-Lambang Flowchart LAMBANG KETERANGAN Terminator (Mulai / Selesai) Aliran Data Input / Output Process / Proses
![LAMBANG KETERANGAN Decision / Percabangan Preparation / Memberi Nilai Awal Variabel Predefined Process/ Sub-Program LAMBANG KETERANGAN Decision / Percabangan Preparation / Memberi Nilai Awal Variabel Predefined Process/ Sub-Program](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-7.jpg)
LAMBANG KETERANGAN Decision / Percabangan Preparation / Memberi Nilai Awal Variabel Predefined Process/ Sub-Program
![LAMBANG KETERANGAN Connector pada halaman yang sama Connector pada halaman lain Stored Data / LAMBANG KETERANGAN Connector pada halaman yang sama Connector pada halaman lain Stored Data /](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-8.jpg)
LAMBANG KETERANGAN Connector pada halaman yang sama Connector pada halaman lain Stored Data / Simpan Data Display / Tampilkan
![Contoh Flowchart Menghitung Penjumlahan 2 bilangan. Algoritma : Masukkan bilangan pertama (a) Masukkan bilangan Contoh Flowchart Menghitung Penjumlahan 2 bilangan. Algoritma : Masukkan bilangan pertama (a) Masukkan bilangan](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-9.jpg)
Contoh Flowchart Menghitung Penjumlahan 2 bilangan. Algoritma : Masukkan bilangan pertama (a) Masukkan bilangan kedua (b) Hasil = a + b Cetak Hasil Mulai Masukkan a Masukkan b Hasil = a + b Cetak Hasil Selesai
![Contoh Sederhana Program dengan C Header Fungsi Utama Keterangan: #include<stdio. h> : memanggil library Contoh Sederhana Program dengan C Header Fungsi Utama Keterangan: #include<stdio. h> : memanggil library](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-10.jpg)
Contoh Sederhana Program dengan C Header Fungsi Utama Keterangan: #include<stdio. h> : memanggil library stdio. h void : fungsi tidak mengembalikan nilai printf : perintah untuk mencetak ke layar
![Tipe Data Tipe Data](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-11.jpg)
Tipe Data
![](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-12.jpg)
![Deklarasi Variabel Nama variabel tidak boleh menggunakan spasi. Diawali dengan huruf atau garis bawah Deklarasi Variabel Nama variabel tidak boleh menggunakan spasi. Diawali dengan huruf atau garis bawah](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-13.jpg)
Deklarasi Variabel Nama variabel tidak boleh menggunakan spasi. Diawali dengan huruf atau garis bawah dan selanjutnya diikuti oleh huruf atau garis bawah atau angka. Panjang variabel max 32 karakter. Tidak boleh menggunakan keyword. Format penulisan variabel tipe_data<spasi>nama_variabel contoh : int a; char b; char nama [10];
![… Pada C kita bisa menuliskan variabel saat kita membutuhkan, berbeda dengan Pascal yang … Pada C kita bisa menuliskan variabel saat kita membutuhkan, berbeda dengan Pascal yang](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-14.jpg)
… Pada C kita bisa menuliskan variabel saat kita membutuhkan, berbeda dengan Pascal yang harus mendefinisikan semua variabel sebelumnya. Pacal uses crt; var b : integer = 10; c : integer = 2; begin writeln(b); writeln(c); readln(); end. C #include <stdio. h> main() { int a = 10; printf("%d", a); char huruf = 'a'; printf("%c", huruf); }
![Konstanta Identifier yang memiliki nilai tetap. Pada bahasa C, deklarasi konstanta membutuhkan alokasi memory. Konstanta Identifier yang memiliki nilai tetap. Pada bahasa C, deklarasi konstanta membutuhkan alokasi memory.](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-15.jpg)
Konstanta Identifier yang memiliki nilai tetap. Pada bahasa C, deklarasi konstanta membutuhkan alokasi memory. Untuk mendeklarasikan konstanta, bisa dilakukan dengan preprosesor #define atau dengan keyword const Contoh: const float phi = 3. 14; #define phi 3. 14;
![Operator adalah simbol yang digunakan untuk mengolah nilai pada operand dan menghasilkan suatu nilai Operator adalah simbol yang digunakan untuk mengolah nilai pada operand dan menghasilkan suatu nilai](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-16.jpg)
Operator adalah simbol yang digunakan untuk mengolah nilai pada operand dan menghasilkan suatu nilai baru. Operator dapat dibedakan menjadi 2 berdasarkan jumlah operand-nya, yaitu Unary Operator dan Binary Operator. Berdasarkan jenis operasinya, operator dalam bahasa C dapat dibedakan menjadi: Operator Aritmatika Operator Logika Operator Relasi Operator Bitwise
![](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-17.jpg)
![](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-18.jpg)
![Combined Operator Ekspresi berbentuk : <Variabel> = <Variabel> <0 perator> <Exp> ; a = Combined Operator Ekspresi berbentuk : <Variabel> = <Variabel> <0 perator> <Exp> ; a =](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-19.jpg)
Combined Operator Ekspresi berbentuk : <Variabel> = <Variabel> <0 perator> <Exp> ; a = a + 12; dapat diganti : <Variabel> <0 perator> = <Exp>; a += 12;
![](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-20.jpg)
![](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-21.jpg)
![](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-22.jpg)
![Statement Input Adalah statement atau fungsi yang digunakan untuk membaca masukan data dari keyboard. Statement Input Adalah statement atau fungsi yang digunakan untuk membaca masukan data dari keyboard.](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-23.jpg)
Statement Input Adalah statement atau fungsi yang digunakan untuk membaca masukan data dari keyboard. Fungsi-fungsi yang bisa digunakan adalah: getchar() untuk membaca data yang bertipe karakter, pergantian baris secara otomatis getche() untuk membaca data yang bertipe karakter, tanpa pergantian baris secara otomatis gets() memasukkan data bertipe karakter dan tidak dapat digunakan untuk memasukkan data numerik scanf() untuk menginput data berupa data numerik, karakter dan string secara terformat
![… Kode penentu format : %c : Membaca sebuah karakter %s : Membaca sebuah … Kode penentu format : %c : Membaca sebuah karakter %s : Membaca sebuah](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-24.jpg)
… Kode penentu format : %c : Membaca sebuah karakter %s : Membaca sebuah string %i, %d : Membaca sebuah bilangan bulat (integer) %f, %e : Membaca sebuah bilangan pecahan (real) %o : membaca sebuah bilangan octal %x : Membaca sebuah bilangan heksadesimal %u : Membaca sebuah bilangan tak bertanda
![](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-25.jpg)
![Statement Output Statement ini digunakan untuk mencetak informasi ke layar. Beberapa fungsi yang bisa Statement Output Statement ini digunakan untuk mencetak informasi ke layar. Beberapa fungsi yang bisa](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-26.jpg)
Statement Output Statement ini digunakan untuk mencetak informasi ke layar. Beberapa fungsi yang bisa digunakan: puts() putchar() printf() header: stdio. h -> menampilkan string dan otomotis di akhiri pindah baris -> menampilkan sebuah karakter -> menampilkan semua jenis data (numeric dan karakter)
![](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-27.jpg)
![… Karakter Khusus a : untuk bunyi bell (alert) b : mundur satu spasi … Karakter Khusus a : untuk bunyi bell (alert) b : mundur satu spasi](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-28.jpg)
… Karakter Khusus a : untuk bunyi bell (alert) b : mundur satu spasi (backspace) f : ganti halaman (form feed) n : ganti baris baru (new line) r : ke kolom pertama, baris yang sama (carriage return) v : tabulasi vertical : nilai kosong (null) ’ : karakter petik tunggal ” : karakter petik ganda \ : karakter garis miring
![… Mengatur tampilan bilangan pecahan (float). Bentuk umum : printf(“%m. nf”, argument); m n … Mengatur tampilan bilangan pecahan (float). Bentuk umum : printf(“%m. nf”, argument); m n](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-29.jpg)
… Mengatur tampilan bilangan pecahan (float). Bentuk umum : printf(“%m. nf”, argument); m n argument : menyatakan panjang range. : menyatakan jumlah digit di belakang koma. : nilai atau variable yang akan ditampilkan. Contoh : printf(“%5. 2 f”, nilai);
![Percabangan Struktur 1 kondisi if (kondisi) { statement 1; statement 2; … } if Percabangan Struktur 1 kondisi if (kondisi) { statement 1; statement 2; … } if](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-30.jpg)
Percabangan Struktur 1 kondisi if (kondisi) { statement 1; statement 2; … } if (kondisi) statement; -> jika hanya menjalankan 1 statement
![](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-31.jpg)
![… Struktur 2 kondisi if (kondisi) { statement_jika_dipenuhi; } else { statement_jika_tidak_dipenuhi; } … Struktur 2 kondisi if (kondisi) { statement_jika_dipenuhi; } else { statement_jika_tidak_dipenuhi; }](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-32.jpg)
… Struktur 2 kondisi if (kondisi) { statement_jika_dipenuhi; } else { statement_jika_tidak_dipenuhi; }
![… Struktur 3 kondisi atau lebih if (kondisi 1) { statement_jika_kondisi 1_dipenuhi; } else … Struktur 3 kondisi atau lebih if (kondisi 1) { statement_jika_kondisi 1_dipenuhi; } else](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-33.jpg)
… Struktur 3 kondisi atau lebih if (kondisi 1) { statement_jika_kondisi 1_dipenuhi; } else if (kondisi 2) { statement_jika_kondisi 2_dipenuhi; } else if (kondisi 3) { statement_jika_kondisi 3_dipenuhi; } … else { statement_jika_semua_kondisi_tidak_dipenuhi; }
![… Kata Kunci switch (ekspresi) { case nilai 1 : statement_statement; break; case nilai … Kata Kunci switch (ekspresi) { case nilai 1 : statement_statement; break; case nilai](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-34.jpg)
… Kata Kunci switch (ekspresi) { case nilai 1 : statement_statement; break; case nilai 2 : statement_statement; break; … case nilai. N : statement_statement; break; default : statement; }
![](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-35.jpg)
![Perulangan for (variabel = nilai_awal; kondisi; variabel++/variabel--) { statement_yang_diulang; } Perulangan for (variabel = nilai_awal; kondisi; variabel++/variabel--) { statement_yang_diulang; }](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-36.jpg)
Perulangan for (variabel = nilai_awal; kondisi; variabel++/variabel--) { statement_yang_diulang; }
![… while (kondisi) { statement_yang_diulang; } do. . while do { statement_yang_diulang; } while … while (kondisi) { statement_yang_diulang; } do. . while do { statement_yang_diulang; } while](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-37.jpg)
… while (kondisi) { statement_yang_diulang; } do. . while do { statement_yang_diulang; } while (kondisi);
![](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-38.jpg)
![THE END THE END](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-39.jpg)
THE END
![Quiz Buatlah flowchart untuk membuat ***** * * * ***** Quiz Buatlah flowchart untuk membuat ***** * * * *****](http://slidetodoc.com/presentation_image_h2/da88a4985c20ed9b693af5c8f3f92271/image-40.jpg)
Quiz Buatlah flowchart untuk membuat ***** * * * *****
- Slides: 40