Pemrograman Terstruktur Erik Perdana Ibrahm, S.KOM, M.M 2013/ 2014 Terus apapula program or pemrograman itu? Sedangkan Terstruktur sendiri apa? Jadi Teknik Pemrograman Terstruktur adalah? Ngapain juga kita harus belajar yang satu ini? Lagian banyak mahasiswa Informatika yang kadang suka dibuat BeTe ma programming malahan lebih parah lagi banyak yang ”kepaksa” harus rajin mengulang, so kenapa kita harus ikutan terlibat ribet juga? 7/22/2017 Mari kita coba liat asal-usulnya. Sudah kenal dengan yang namanya komputer?? Banyak hal yang bisa dilakuin dengan bantuan komputer, apa aja?? Nha si komputer ini sebenernya adalah suatu mesin, dan yang namanya mesin tidak bisa kerja / melakukan sesuatu kalau tidak diberi perintah atau instruksi. Ga percaya? Coba temen-temen naek lift trus treakin tuh lift ”Hoi Lift ke lantai 5..?” dijamin tuh lift tidak akan naek, kenapa? Ya iyealah lha wong liftnya lagi di lantai 6, kan harusnya bilang turun bukan naek…??? Sebenernya semua mesin / alat-alat elektronik bakalan mengerjakan sesuatu setelah kita beri instruksi atau perintah, caranya gimana? 7/22/2017 Cari aja tombol-tombol yang ada di tuh mesin, terus pencetin satu-satu liat apa yang terjadi…???? Komputer… Definisi Komputer Komputer merupakan suatu perangkat elektronika yang dapat menerima dan mengolah data menjadi informasi, menjalankan program yang tersimpan dalam memori, serta dapat bekerja secara otomatis dengan aturan tertentu. Sistem Komputer Sebuah sistem komputer tersusun atas tiga elemen, yaitu 1. Hardware (Perangkat Keras), merupakan rangkaian elektronika 2. Software (Perangkat Lunak), merupakan program yang dijalankan pada komputer 3. Brainware (SDM) 7/22/2017 Hardware Perangkat Keras (Hardware) Adalah perangkat keras untuk mendukung beroperasinya komputer. Perangkat keras komputer secara garis besar terdiri atas tiga komponen utama, yaitu: 1. Processor, merupakan bagian dari perangkat keras komputer yang melakukan pemrosesan aritmatika dan logika serta pengendalian operasi komputer secara keseluruhan. Prosesor terdiri atas dua bagian utama, yaitu ALU (Arithmetic Logic Unit) dan Control Unit. 2. Memory, dipergunakan untuk menyimpan data dan instruksi dari program yang sedang dijalankan. Biasa juga disebut sebagai RAM 3. Input-Output Device, merupakan bagian yang berfungsi sebagai penghubung antara komputer dengan lingkungan di luarnya. 7/22/2017 Software Adalah perangkat lunak atau lebih dikenal sebagai programprogram yang digunakan untuk menjalankan komputer. Bisa berupa operating system maupun program-program aplikasi. Perangkat lunak dapat diklasifikasikan sebagai berikut Sistem Operasi, merupakan perangkat lunak yang mengoperasikan komputer serta menyediakan antarmuka dengan perangkat lunak lain atau dengan pengguna. Contoh sistem operasi : MS DOS, MS Windows (dengan berbagai generasi), Macintosh, OS/2, UNIX (dengan berbagai versi), LINUX (dengan berbagai distribusi), NetWare, dll Program Utilitas, merupakan program khusus yang berfungsi sebagai perangkat pemeliharaan komputer, seperti anti virus, partisi hardisk, manajemen hardisk, dll. Contoh produk program utilitas : Norton Utilities, PartitionMagic, McAfee, dll 7/22/2017 Software Bahasa Pemprograman, merupakan perangkat lunak untuk pembuatan atau pengembangan perangkat lunak lain. Bahasa pemprograman dapat diklasifikasikan menjadi tingkat rendah, tingkat sedang, dan tingkat tinggi. Pergeseran dari tingkat rendah ke tinggi menunjukkan kedekatan dengan ‘bahasa manusia’. Bahasa tingkat rendah (atau biasa disebut bahasa assembly) merupakan bahasa dengan pemetaan satu persatu terhadap instruksi komputer. Contoh bahasa tingkat tinggi : Pascal, BASIC, Prolog, Java,Delphi dll. Contoh bahasa tingkat menengah : bahasa C. Bahasa tingkat rendah : Assembler, binerisasi 7/22/2017 INTRODUCTION PROGRAM TERSTRUKTUR PADA MASA AWAL: PEMROGRAMAN (1950 – 1960), KEMAMPUAN KOMPUTER MASIH SANGAT TERBATAS, BAIK KECEPATAN ATAU KAPASITAS, DAN HARGA RELATIF MAHAL PEMROGRAM MEMBUAT PROGRAM YANG MEMBUTUHKAN MEMORI DAN WAKTU EKSEKUSI SESINGKATNYA. PROGRAMMER HARUS MENGHASILKAN SEBUAH TEKNIK DAN ALGORITMA YANG DAPAT MENGHEMAT PENGGUNAAN MEMORI MAUPUN WAKTU EKSEKUSI SEPENDEK MUNGKIN. 80% DARI TUGAS PEMROGRAMAN ADALAH MEMELIHARA PROGRAM, TERMASUK MEMODIFIKASI PROGRAM YANG ADA AGAR SESUAI DENGAN YANG DIBUTUHKAN. JIKA LOGIKA DARI PROGRAM SANGAT SUKAR UNTUK DIMENGERTI, MAKA MEMELIHARA PROGRAM TERMASUK BAGIAN YANG SANGAT SUKAR UNTUK DILAKSANAKAN. JIKA PROGRAM ASLI TIDAK DAPAT DIGUNAKAN, SESEORANG HARUS BENAR-BENAR MENGUASAI LOGIKA PROGRAM TERSEBUT SEBELUM PERUBAHAN DAPAT DILAKUKAN. Istilah Pemrograman Terstruktur (Structured Programming) mengacu dari suatu kumpulan tehnik yang dikemukan oleh Edsger Dijkstra. Dengan tehnik ini akan meningkatkan produktifitas programmer, dengan mengurangi waktu yang dibutuhkan dalam penulisan (write), pengujian (test), penelusuran kesalahan (debug) dan pemeliharan(maintain) suatu program. Pemrograman Secara Modular Dalam pemrograman secara modular, suatu program akan dipilah kedalam sejumlah modul, dimana setiap modul menjalankan fungsinya sendiri. Tentunya fungsi yang dijalankan oleh setiap modul sangat terbatas sesuai dengan ruang lingkup yang akan dikerjakan. Dengan adanya sejumlah modul program ini tentu saja kesalahan yang timbul dapat dikurangi. Setiap program tentu akan memiliki program utamanya, yang kemudian akan memanggil sejumlah modul-modul yang ada. Materi BAB I KONSEP PEMROGRAMAN BAB II DASAR-DASAR PEMROGRAMAN BAB III PENGAMBILAN KEPUTUSAN BAB IV PENGULANGAN PROSES BAB V FUNGSI BAB VI ARRAY BAB VII STRING BAB VIII POINTER 7/22/2017 Sistematika Materi • Konsep pemrograman secara umum : • • • • Perkembangan pemrograman komputer Sejarah bahasa pemrograman Jenis bahasa pemrograman Perbandingan bahasa pemrograman • Ide Pemrograman terstruktur : Defenisi, Tujuan, Kriteria • Metoda dasar pemrograman terstruktur GOTOLess : Sekuensial, Selection, Looping • Perbandingan bahasa pemrograman (Berdasarkan kriteria pemrograman terstruktur) • Metoda desain pemrograman terstruktur Modular, TopDown,… • OOP, Pemrograman berorientasi objek (Lebih terstuktur dari ide pemrograman terstruktur ?) • Struktur pemrograman visual Konsep Pemrograman • Mem-program komputer, secara teknis bertujuan : Memasukkan / menyusun sejumlah instruksi dan data ke memory, yang selanjutnya akan diambil satu persatu oleh CPU / Processor untuk dilaksanakan. Perkembangan (cara) mem-program komputer : 1. Pemrograman dengan mengatur / menyambung titik jumper di rangkaian komputer 2. Pemrograman dengan langsung menulis kode biner ke memory, direpresentasikan melalui kode hexa, kode biner disebut juga bahasa mesin komputer 3. Pemrograman dengan bahasa assembler : Perintahperintahnya berkaitan langsung dengan struktur internal hardware 4. Pemrograman dengan bahasa tingkat tinggi/menengah : Perintah-perintahnya mirip dengan bahasa manusia/ english Ilustrasi Pemrograman Komputer Instruksi A Programmer Data D Instruksi D Instruksi B Tool Instruksi C Data A Sejumlah Instruksi dan data CPU 0001 0002 0100 0101 0102 0103 ………. ………. ………. 00011100 00000101 00111101 00010010 00101101 ………. ………. ………. Susunan instruksi dan data dalam memory Hexa Assembly 3C 05 3D 12 2D Mov A,05 Mov B,12 Add A,B High/Medium Level A = 05 + 12 Generasi dan Jenis Bahasa Pemrograman Jenis bahasa pemrograman Generasi bahasa pemrograman: berdasarkan bentuknya : • Generasi I : machine language • Pemrograman prosedural : Pascal, C, • Generasi II : assembly language : • Pemrograman fungsional : Lisp Asssembler • Generasi III : high-level programming • Pemrograman deklaratif : Prolog • Pemrograman berorientasi objek : language: C, PASCAL, dsb. Java • Generasi IV : 4 GL (fourth-generation • Pemrograman prosedural sekaligus language): Prolog, SQL, Visual tool, berorientasi objek : C++ dsb Jenis bahasa pemrograman berdasarkan metodanya : • Pemrograman tidak terstruktur : Basica, Fortran, … • Pemrograman terstruktur : Pascal, C/C++, … • Pemrograman berorientasi objek : C++, Java, … • Pemrograman visual : VB, Delphi, … 7/22/2017 Jenis bahasa pemrograman berdasarkan tujuan (hasil) : • Pemrograman stand-alone • Pemrograman client/server • Pemrograman web : HTML, Script • Pemrograman jaringan Jenis bahasa pemrograman berdasarkan cara penterjemahan : • Interpreter : Basica, Foxpro, Matlab,… • Compiler : Turbo Basic, Pascal, C/C++, … Perbandingan Bahasa Pemrograman (Umum) Berdasarkan tujuan tertentu : Jenis Program Bahasa Terbaik Bahasa Terburuk Data terstruktur ADA, C /C++, PASCAL Assembler, BASIC Proyek cepat BASIC PASCAL, ADA, Assembler Eksekusi cepat Assembler, C BASIC, Intrepreter Language Kalkulasi matematika FORTRAN PASCAL Menggunakan memori dinamis PASCAL, C BASIC Lingkungan bermemori terbatas BASIC, Assembler, C FORTRAN Program real-time ADA, Assembler, C BASIC, FORTRAN Manipulasi string BASIC, PASCAL C Program mudah dikelola PASCAL, ADA C, FORTRAN Proses Pembuatan Aplikasi 7/22/2017 Contoh Proses Pembuatan Aplikasi (1) : Permasalahan 1 : Dari gambaran tersebut dapat ditentukan Si Upik selalu membeli buah apel untuk bahwa program membutuhkan 2 input dan dibagikan ke beberapa orang anak yatim Ia 1 output. kesulitan untuk membagi secara adil berapa buah apel setiap anak mendapatkan Misal kedua input yang dibutuhkan jika ia beli N buah. Karena sering ia disebut A dan N dan output disebut C. lakukan, ia membutuhkan aplikasi untuk Maka secara matematis hubungan input menghitung kebutuhan tersebut. dan output dapat dimodelkan dengan : Proses pemecahan : Permasalahan di atas dapat disederhanakan dengan menggambarkan bagaimana dialog di layar komputer yang diharapkan terjadi terhadap aplikasi yang dibutuhkan tersebut : Contoh dialog yang diharapkan : Aplikasi pembagian buah apel Ketik jumlah buah apel yang dibeli : … {ENTER} Ketik jumlah anak yang akan diberi : … {ENTER} Solusi : Setiap anak mendapatkan : … buah apel C=A/N Contoh data : Jika A = 25 dan N = 5, maka secara manual dapat dihitung : C = 25 / 5 C=5 Urutan perhitungan tersebut (algoritma) jika dilakukan komputer adalah : -Memasukkan nilai ke A -Memasukkan nilai ke N -Menghitung C = A / N -Mencetak hasil C Konsep Pemrograman Sarana komunikasi antara manusia dan komputer disebut bahasa komputer Bahasa Pemrograman Komputer adalah tata cara penulisan program (kata, ekspresi, pernyataan) berupa langkah untuk menyelesaikan masalah Faktor yang perlu diperhatikan adalah sintaksis, semantik dan logika Bahasa pemrograman: tingkat tinggi, menengah dan rendah 7/22/2017 Simbol-simbol untuk menggambarkan Flow Chart Digunakan untuk menunjukkan awal dan akhir program Digunakan untuk memberikan nilai awal (inisial) pada suatu variabel atau counter Digunakan untuk proses, pengolahan arithmatik, dan pemindahan data Digunakan untuk mewakili operasi perbandingan logika yang dibutuhkan pada Selection dan Looping Digunakan untuk menyatakan operasi memasukkan data/input dan menampilkan data/output Digunakan untuk proses yang detailnya dijelaskan terpisah, misalkan untuk menyatakan prosedur, atau sub program Digunakan untuk hubungan arus proses yang terputus masih di halaman yang sama Digunakan untuk hubungan arus proses yang terputus di halaman yang berbeda Digunakan untuk menghubungan antar simbol/elemen yang lain dan sekaligus menyatakan arah aliran Contoh Flow Chart : Permasalahan 1 : Permasalahan 2 : Start Masukkan nilai koefisien A ke var A Masukkan nilai koefisien B ke var B Masukkan nilai koefisien C ke var C Start A=0 Masukkan data jumlah apel ke var A Masukkan data jumlah anak ke var N D = b2 – 4AC D>0 C =A/ N Hitung penyelesaian real Dengan akar berbeda Tampilkan : Setiap anak mendapat C apel D=0 Hitung penyelesaian real Dengan akar sama end Hitung penyelesaian Bilangan imajiner Menanyakan apakah ingin menghitung lagi ? LG LG=Ya end Ide Pemrograman terstruktur Pemrograman yaitu aktivitas membuat, menyusun sejumlah perintah yang dikenal komputer (program). Terstruktur dapat berarti terpola, sistematis atau bentuk yang mengikuti aturan tertentu. Pemrograman Terstruktur berarti :…………………...……??? Orang pertama yang mencetuskan ide pemrograman terstruktur adalah Profesor Edsger W. Dijkstra dari University of Eindhoven, Nederland. Ide utamanya adalah bahwa statemen GOTO sebaiknya tidak digunakan di dalam pemrograman terstruktur, sebab bisa membuat program menjadi ruwet. Ide ini ditanggapi oleh HD Milis, yang beranggapan bahwa pemrograman terstruktur semestinya tidak hanya dihubungkan dengan tanpa penggunaan GOTO, tetapi yang lebih utama adalah struktur program itulah yang menentukan apakah suatu pemrograman terstruktur atau tidak Ide pemrograman terstruktur muncul karena jumlah baris program semakin lama semakin besar, tentu saja hal ini terjadi karena diinginkan aplikasi yang lengkap dan lebih berkualitas Dengan ide pemrograman terstruktur diharapkan dapat membantu manajemen source code (kode program) sehingga program mudah untuk dikelola bagi kepentingan selanjutnya Tujuan utama pemrograman terstruktur adalah : agar program-program besar menjadi lebih mudah ditelusuri alur logikanya, mudah untuk dimodifikasi (dikembangkan) dan mudah pula untuk ditemukan bagian yang salah ketika program sedang diuji. Kriteria pemrograman terstruktur : - Struktur programnya; - Fasilitas penulisan kode program; - Statemen untuk kebutuhan Selection dan Looping; - Fasilitas menyatakan berbagai type data (struktur data); - Fasilitas pemberian komentar; - Fasilitas instruksi yang tersedia (operasi arithmatik/matematik, string, ); - Fasilitas modular (baik internal maupun eksternal); - Fasilitas debugging, Filosofis Terstruktur a b c d - Mana yang susunannya terstruktur (teratur, …) - Mana yang lebih mudah anda hafalkan - Jika akan ditambah satu batang lagi, dimana harus diletakkan agar posisinya dapat dinilai benar - Jika susunannya dirombak, mana yang lebih mudah untuk disusun kembali Prinsip utamanya adalah, program tidak boleh melompat ke atas, kecuali untuk keperluan pengulangan Metoda dasar pemrograman terstruktur Ide awal penerapan pemrograman terstruktur yaitu dengan menghindari penggunaan GOTO untuk melompat ke bagian program tertentu Kegunaan GOTO untuk melompat ke baris program tertentu, secara umum dapat dibagi ke dalam 2 kelompok : 1.Melompat ke bagian bawah program dari posisi program saat ini 2.Melompat ke bagian atas program dari posisi program saat ini Dengan pemrograman terstruktur; Jika ada kebutuhan melompat ke bagian bawah, dapat digantikan dengan perintah Selection (If, Case, Select, Switch,…) Jika ada kebutuhan melompat ke bagian atas, dapat digantikan dengan perintah Looping (for, While, repeat-until,…) Untuk itu dalam pemrograman terstruktur hanya dikenal 3 struktur : 1. Sekuensial, yaitu program yang tidak memiliki lompatan. Baris program dijalankan secara normal (lurus) satu per-satu dari atas ke bawah 2. Selection, yaitu program yang memiliki pilihan apakah harus menjalankan baris program sesuai dengan urutannya atau melompati sejumlah baris program tersebut 3. Looping, yaitu program yang juga mengandung pilihan apakah akan mengulangi program yang sudah pernah dijalankan sebelumnya atau tidak Beberapa bentuk logika terstruktur dengan flow chart 1. Struktur urut sederhana (Simple sequence) 3. Struktur 2 pilihan dengan IF-THEN-ELSE 2. Struktur 1 pilihan dengan IF-THEN 4a. Struktur banyak pilihan dengan IF-THEN-ELSEIF 4b. Struktur banyak pilihan dengan CASE 5. Struktur perulangan FOR 6. Struktur perulangan WHILE For 7. Struktur perulangan UNTIL Statemen kontrol terstruktur : menyembunyikan goto IF-THEN Proses1 If {kondisi=false } then goto lompat Proses1a Lompat: Proses2 Proses 1 Kondisi false Proses 2 true Proses 1a Proses1 If {kondisi } then Proses1a End if Proses2 Analisa : Jika kondisi=true, urutan pelaksanaan : Jika kondisi=false, urutan pelaksanaan : Proses1 Proses1a Proses2 Proses1 Proses2 IF-THEN-ELSE Analisa : Jika kondisi=false, Jika kondisi=true, urutan pelaksanaan : urutan pelaksanaan : Proses1 Proses1b Proses2 Proses 1 Kondisi false Proses 1a Proses 2 true Proses 1b Proses1 Proses1a Proses2 Proses1 If {kondisi=true } then Proses1b else proses1a end if Proses2 Proses1 If {kondisi=true } then goto lompat1 else goto lompat2 Lompat1: Proses1b goto lompat3 Lompat2: Proses1a Lompat3: Proses2 IF-THEN-ELSE-IF Proses 1 true Kondisi1 fals e Proses 2a Kondisi2 Proses 2b Kondisi3 Proses 2c Proses 2d Proses 3 Proses1 If {kondisi1=true } then goto lompat1 If {kondisi2=true } then goto lompat2 If {kondisi3=true } then goto lompat3 Goto lompat4 Lompat1: Proses2a goto habis Lompat2: Proses2b Proses1 goto habis If {kondisi1=true } then Lompat3: Proses2a Proses2c else goto habis if {kondisi2=true } then Lompat4: Proses2b proses2d else Habis: if {kondisi3=true } then proses3 Proses2c else Proses2d end if Proses3 Looping : FOR FOR I=1 to 5 Proses1 Proses2 Proses3 For I=1 to 5 Proses 1 Proses 2 Next I Proses 3 I=1 Ulang : Proses1 Proses2 I=I+1 If I<=5 then goto Ulang Proses3 Looping : WHILE While {kondisi} Proses1 Proses2 Proses3 While {kondisi=true} Proses 1 Proses 2 Wend Proses 3 Ulang : If {kondisi=true} then Proses1 Proses2 goto Ulang Proses3 Looping : UNTIL Proses1 Proses1 do Proses 1 Proses 2 Loop Until {kondisi=true} Proses 3 Until {kondisi} Proses3 Ulang : Proses1 Proses2 If {kondisi=true} then goto Ulang Proses3 Contoh flow chart dengan kontrol lengkap : start C=2 C=C=1 C>12 end Contoh flow chart dengan beberapa lompatan tidak terstruktur : start Lompatan tidak terstruktur : a. Melompat ke bagian yang belum tentu dilewati b. Melompat keluar dari daerah induknya end Struktur Data dan Pemrograman terstruktur •Bahasa pemrograman dengan kemampuan meng-ekspresi-kan semua kebutuhan struktur data akan lebih mendukung pencapaian tujuan dari pemrograman terstruktur •Bahasa pemrograman yang tidak memiliki fasilitas untuk mengungkapkan struktur data tertentu cendrung mengarahkan kode program ke bentuk yang kurang teratur •Kemampuan struktur data suatu bahasa pemrograman ditentukan oleh kemampuan fasilitas type data yang dimilikinya •Type data secara umum terdiri dari : - Type data dasar standar : Integer, real, string, charakter, dan logic - Type data dasar tidak standar : sub range, enumerate - Type data majemuk : set, array, record, file - Type data dinamis : pointer Metoda Desain Pemrograman Terstruktur Untuk membantu dan menjamin dihasilkannya program yang terstruktur, dapat digunakan beberapa metoda/alat berikut : Metode Perancangan Top-down Metada Perancangan Modular Implementasi internal : Procedure/Subprogram, Function Implementasi eksternal : file Unit/Header/Modul Diagram Nassi-Schneiderman Tabel Decision Contoh Top-down : Sistem Informasi Akademis Mahasiswa Perkuliahan Dosen Entry data Entry data Entry data Hapus data Hapus data Hapus data Laporan data Laporan data Laporan data Metode Modular : Implementasi Top-down Bagian Utama …….. Call A …….. A ……. Call A1 ……. Call A2 …….. B Call B …….. ……. ……. A1 ……. ……. A2 ……. ……. C Call C …….. ……. ……. Dapat diterapkan secara : - Internal : sub program, procedure, function - Eksternal : file unit, header, modul Konsep Pemecahan masalah Menganalisa dan memahami permasalahan dan membuat algoritma (pola berfikir terstruktur berisi tahap-tahap penyelesaian masalah) Membuat kode dari algoritma dalam pernyataan sesuai dengan bahasa pemrograman Testing (menjalankan program) dan debugging (menemukan kesalahan) Melakukan dokumentasi terhadap setiap langkah 7/22/2017 Ciri Pemrograman Terstruktur Mempunyai teknik pemecahan masalah yang benar Memiliki algoritma pemecahan masalah yang sederhana dan efisien Teknik penulisan program memiliki struktur logika yang benar dan mudah dipahami Membutuhkan biaya testing yang rendah Memiliki dokumentasi yang baik 7/22/2017 Langkah-langkah Pembuatan Program Mendefinisikan masalah Mencari solusi untuk masalah Memilih teknik pemecahan masalah dan algoritma Menulis program Melakukan testing dan debugging Melakukan dokumentasi Melakukan pemeliharaan 7/22/2017 Definisi Algoritma Pola pikir yang terstruktur yang berisi tahap-tahap penyelesaian masalah untuk diimplementasikan dalam pemrograman Biasanya dalam program terdapat tiga struktur program: – Struktur Urut – Struktur Keputusan – Struktur Perulangan 7/22/2017 Struktur Penulisan Program C main() { statemen-statemen; //fungsi utama } fungsi_fungsi_lain() { statemen-statemen; // fungsi-fungsi lain } 7/22/2017 Pengenalan Fungsi Dasar #include<stdio.h> main() { printf(“HALLO C”); } stdio.h, header standard input output karena ada printf main(), program utama {}, awal program dan akhir program printf(“HALLO C”); mencetak tulisan Hallo C di monitor 7/22/2017 Penentu Format 7/22/2017 %d : untuk menampilkan bilangan bulat (int) %f : untuk menampilkan bilangan pecahan (float) %c : untuk menampilkan sebuah karakter (char) %s : untuk menampilkan sebuah string (char [ ]) #include <stdio.h> main( ) { printf(“No : %d\n”, 10); printf(“Nama : %s\n”, “Ali”); printf(“Nilai : %f\n”,80.5); printf(“Huruf : %c\n”,‘A’); } Komentar Untuk keperluan dokumentasi dengan maksud agar program mudah dipahami /* Tanda ini adalah komentar */ #include <stdio.h> main() { printf(“Coba\n”); /* Ini adl program pertama */ } 7/22/2017 Praprosesor #include #include merupakan satu jenis pengarah praprosesor yang dipakai untuk membaca file yang dinamakan file judul (header file), yaitu file yang berisi deklarasi fungsi dan definisi konstanta Contoh: – #include <stdio.h> – #include <conio.h> – #include <math.h> 7/22/2017 Proses Kompilasi dan Linking Program C Source Header Compile Objek Lain Obyek Link Exe 7/22/2017 Library