Overview - · PDF fileyang akan diimplementasikan dalam bahasa C/C++. Terkait dengan Mata...

8
1 Pendahuluan Pertemuan : I Oleh : Danang Junaedi Jurusan Teknik Informatika – Universitas Widyatama Jurusan Teknik Informatika 1-2 Universitas Widyatama Jurusan Teknik Informatika 1-2 Universitas Widyatama Pemrograman II (Terstruktur II) Pemrograman II (Terstruktur II) Deskripsi Tujuan Instruksional Kaitan Materi Urutan Bahasan Penilaian Grade Referensi Overview Jurusan Teknik Informatika 1-3 Universitas Widyatama Jurusan Teknik Informatika 1-3 Universitas Widyatama Pemrograman II (Terstruktur II) Pemrograman II (Terstruktur II) Deskripsi Mata kuliah ini mempelajari : Review Singkat Bahasa C/C++(Operasi Input/Output, Selection, Looping, Fungsi/Prosedur dan Dasar Pengolahan File Sequential) Implementasi Pengolahan File Sequential (Konsolidasi, Merging, Spliting dan Updating) menggunakan bahasa C/ C++ Implementasi Rekursif menggunakan bahasa C/ C++ Pengenalan implementasi strategi Algoritma (Brute Force, Greedy, Devide & Conquer, Backtracking, Branch & Bound, Dynamic Programming) menggunakan bahasa C/ C++ Implementasi Dasar Pengelolaan List berkait (Tambah Data, Cari Data, Tampil Data, Hapus Data) menggunakan bahasa C/ C++ Pendahuluan

Transcript of Overview - · PDF fileyang akan diimplementasikan dalam bahasa C/C++. Terkait dengan Mata...

Page 1: Overview -   · PDF fileyang akan diimplementasikan dalam bahasa C/C++. Terkait dengan Mata ... cara penulisannya dalam program ... “bapak”, “Keren

1

Pendahuluan

Pertemuan : I

Oleh : Danang Junaedi

Jurusan Teknik Informatika – Universitas Widyatama

Jurusan Teknik Informatika 1-2 Universitas WidyatamaJurusan Teknik Informatika 1-2 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Deskripsi

Tujuan Instruksional

Kaitan Materi

Urutan Bahasan

Penilaian

Grade

Referensi

Overview

Jurusan Teknik Informatika 1-3 Universitas WidyatamaJurusan Teknik Informatika 1-3 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

DeskripsiMata kuliah ini mempelajari :

� Review Singkat Bahasa C/C++(Operasi Input/Output, Selection, Looping, Fungsi/Prosedur dan Dasar Pengolahan File Sequential)

� Implementasi Pengolahan File Sequential (Konsolidasi, Merging, Spliting dan Updating) menggunakan bahasa C/ C++

� Implementasi Rekursif menggunakan bahasa C/ C++

� Pengenalan implementasi strategi Algoritma (Brute Force, Greedy, Devide & Conquer, Backtracking, Branch & Bound, Dynamic Programming) menggunakan bahasa C/ C++

� Implementasi Dasar Pengelolaan List berkait (Tambah Data, CariData, Tampil Data, Hapus Data) menggunakan bahasa C/ C++

Pendahuluan

Page 2: Overview -   · PDF fileyang akan diimplementasikan dalam bahasa C/C++. Terkait dengan Mata ... cara penulisannya dalam program ... “bapak”, “Keren

2

Jurusan Teknik Informatika 1-4 Universitas WidyatamaJurusan Teknik Informatika 1-4 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Tujuan Instruksional

� tingkat pemahaman : tentang konsep-konsep dan teknik penyelesaian masalah pemrograman dasar (lanjutan), dan

� tingkat aplikasi : tentang membuat penyelesaian masalah pemrograman, mengeksekusi program tanpa tergantung pada bahasa pemrograman apapun (minimal dapat menggunakan pengetahuannya dalam mengimplementasikan berbagai masalah dengan menggunakan bahasa pemrograman C/C++).

Kaitan Materi

� Terkait dengan Mata Kuliah Algoritma II, dalam hal materi-materiyang akan diimplementasikan dalam bahasa C/C++.

� Terkait dengan Mata Kuliah Pemrograman I, dalam hal prinsip dasarpemrograman Terstuktur.

Pendahuluan

Jurusan Teknik Informatika 1-5 Universitas WidyatamaJurusan Teknik Informatika 1-5 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Pendahuluan

Urutan Bahasan

Pendahuluan (Susunan Materi, Aturan Perkuliahan, AturanPenilaian, grade nilai, referensi);Review Bahasa C/C++

1

UTS8

Rekursif;Presentasi (optional);Review Materi(optional)6 - 7

Pengolahan File Sequential : Konsolidasi (Dengan Separator), Merging, Splitting, dan Updating pada File Sequential; Presentasi(optional)

3-5

Review Bahasa C/C++;Pengolahan File Sequential : Konsolidasi(Tanpa Separator)

2

MateriPertemuan

Jurusan Teknik Informatika 1-6 Universitas WidyatamaJurusan Teknik Informatika 1-6 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Pendahuluan

Urutan Bahasan

UAS16

List Berkait;Presentasi (optional);Review Materi (optional)13-15

Strategi Algoritma (Brute Force, Greedy, Devide & Conquer, Backtracking, Branch & Bound, Dynamic Programming); Presentasi (optional)

10-12

MateriPertemuan

Page 3: Overview -   · PDF fileyang akan diimplementasikan dalam bahasa C/C++. Terkait dengan Mata ... cara penulisannya dalam program ... “bapak”, “Keren

3

Jurusan Teknik Informatika 1-7 Universitas WidyatamaJurusan Teknik Informatika 1-7 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Pendahuluan

Penilaian

5% (>80%)Kehadiran

22.5%UTS

10%Tugas

12.5%Presentasi/Tutorial

20%Praktikum

25%UAS

105%Jumlah

10%Quiz

Grade

50 - 60D

≥ 85A

75 - 85B

60 - 75C

< 50E

Range NilaiGrade

Jurusan Teknik Informatika 1-8 Universitas WidyatamaJurusan Teknik Informatika 1-8 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Pendahuluan

Referensi

7.

6.

5.

4.

3.

2.

1. Deitel, H.M. and Deitel, P.J., “C How to Program, 4nd Edition”, Prentice Hall, 2004

Internet dan referensi-referensi lain yang terkait

Hevi Rilgivia;Guntari Sekarwangi, “ Diktat Kuliah Algoritma & Pemrograman I dan

II”, Teknik Informatika – Universitas Widyatama, Bandung, 2004

Indra Yatini B.; Erliansyah Nasution, “Algoritma & Struktur Data dengan C++, Graha

Ilmu,Yogyakarta, 2005

Guntari Sekarwangi;Ocke Kurniandi, “ Diktat Kuliah Pemrograman I (Terstuktur)”, Teknik Informatika – Universitas Widyatama, Bandung, 2004

Danang Junaedi, “Diktat, Handout & Modul Pemrograman Terstruktur I danPemrograman Terstruktur II”, Teknik Informatika - Universitas Widyatama, 2007

Deitel, H.M. and Deitel, P.J., “C++ How to Program, 4nd Edition”, Prentice Hall, 2004

Review Bahasa C/C++

Pertemuan : 1

Disusun oleh : Danang Junaedi

Jurusan Teknik Informatika – Universitas Widyatama

Page 4: Overview -   · PDF fileyang akan diimplementasikan dalam bahasa C/C++. Terkait dengan Mata ... cara penulisannya dalam program ... “bapak”, “Keren

4

Jurusan Teknik Informatika 1-10 Universitas WidyatamaJurusan Teknik Informatika 1-10 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Tujuan Instruksional

Tipe Data & Operator

Variabel & Konstanta

Input & Output

Selection

Looping

Fungsi & Prosedur

Kelebihan dan Kekurangan C++

Overview

Jurusan Teknik Informatika 1-11 Universitas WidyatamaJurusan Teknik Informatika 1-11 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Mahasiswa mampu menjelaskan perbedaan pengertian, danpenggunaan dan perbedaan variabel dan konstanta, serta cara penulisannya dalam program mengunakan Turbo C dan turbo/Borland C++

Mahasiswa mampu menjelaskan perbedaan penggunaan tipe data serta operatornya, input dan output, serta cara penulisannya dalam Turbo C dan Turbo/Borland C++

Mahasiswa mampu menjelaskan perbedaan penggunaantipe data serta operatornya, input & output, Fungsi & Prosedur dalam Turbo C dan Turbo/Borland C++

Tujuan Instruksional

Jurusan Teknik Informatika 1-12 Universitas WidyatamaJurusan Teknik Informatika 1-12 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Struktur Bahasa C++

Fungsi lain()

{ Deklarasi variabel lokal/statis;

statemen-statemen;

}

Tipe data/void main()

{ Deklarasi variabel lokal/statis;

statemen-statemen;

}

Deklarasi variabel global;

Fungsi lain()

#include<header file>

Fungsi lain

Isi fungsi lain

Fungsi/program utama

Isi fungsi/program Utama

Pendeklarasian variabel

Prototipe fungsi

Preprocessor directive

Page 5: Overview -   · PDF fileyang akan diimplementasikan dalam bahasa C/C++. Terkait dengan Mata ... cara penulisannya dalam program ... “bapak”, “Keren

5

Jurusan Teknik Informatika 1-13 Universitas WidyatamaJurusan Teknik Informatika 1-13 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Tipe Data (1)

Tipe Data Dasar

Platform Win32-2147483648 s.d.

21474836484 byte

Tipe logika (C++ diatas versi 4.5)

-True/false1 bytebool

Tek bertipe--0void

Bilangan real%lf-1.7x10-308 s.d. 1.7x10308 8 bytedouble

Bilangan real%f-3.4x10-38 s.d. 3.4x1038 4 bytefloat

Bilangan bulat%d atau

%e

-32768 s.d. 327672 byte

int

Karakter ASCI

string

%c

%s

-128 s.d. 1271 bytechar

KeteranganFormatRentangUkuranTipe

Jurusan Teknik Informatika 1-14 Universitas WidyatamaJurusan Teknik Informatika 1-14 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Tipe Data (2)

Tipe Data Modifikasi

Bilangan real%Lf-3.4x10-4932 s.d. 3.4x104932

10 bytelong double

Bilangan bulat-2147483648 s.d. 2147483687

4 bytesigned long/signed long int

Bilangan bulat-32768 s.d. 32767

2 bytesigned int/signed short int

Bilangan bulat-128 s.d. 1271 bytesigned char

Bilangan bulat%hd-128 s.d. 1271 byteshort int

Bilangan bulat%ld-2147483648 s.d. 2147483648

4 bytelong int

KeteranganFormatRentangUkuranTipe

Jurusan Teknik Informatika 1-15 Universitas WidyatamaJurusan Teknik Informatika 1-15 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Tipe Data (3)

Tipe Data Modifikasi

Bilangan bulat0 s.d. 429467295

4 byteunsigned long/unsigned long int

Bilangan bulat%u0 s.d. 655352 byteunsigned int/unsigned short int

Bilangan bulat0 s.d. 2551 byteunsigned char

KeteranganFormatRentangUkuranTipe

Page 6: Overview -   · PDF fileyang akan diimplementasikan dalam bahasa C/C++. Terkait dengan Mata ... cara penulisannya dalam program ... “bapak”, “Keren

6

Jurusan Teknik Informatika 1-16 Universitas WidyatamaJurusan Teknik Informatika 1-16 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Tipe Data (4)

Tipe Data Bentukan� Struktur/Record

ex :

struct Tanggal atau struct {int Hari; int Bulan;

{ int Hari; int Bulan; int Tahun;}; int Tahun;}Tanggal;

� union

ex : union Tanggal

{ int i; int j;};

� Struktur Bit-fieldex : struct Info_bit

{ unsigned bit0:1; unsigned bit1:1;};

� enumex : enum Hari {Senin,Selasa,Rabu,Kamis,Jum’at,Sabtu,Minggu};

� typedefex : typedef unsigned char Byte;

Jurusan Teknik Informatika 1-17 Universitas WidyatamaJurusan Teknik Informatika 1-17 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Tipe Data (5)

Array

� 1 dimensi

ex : int ArrayA[10]; char Nama[25];

� 2 dimensi

ex : int ArrayB[10][10];

� n dimensi

ex : int ArrayC[10][10]…[10];

File (dibahas lebih lanjut pada pertemuan ke-3 : Pengolahan file)

List/Pointer (dibahas lebih lanjut pada pertemuan ke-13 : List Berkait)

Jurusan Teknik Informatika 1-18 Universitas WidyatamaJurusan Teknik Informatika 1-18 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Operator

Sifat Operator� Unary (Melibatkan sebuah operand, ex : -1)

� Binary (Melibatkan dua buah operand, ex: 1+2)

� Ternary (Melibatkan tiga buah atau lebih operand, ex (a>b)?a:b)

Jenis Operator� Operator Assigment (=)

� Operator Aritmatika (*, /, %, +, -)

� Operator Biner/Bitwise (<<, >>, &, |, ^, ~)

� Operator Logika (&&, ||)

� Operator Perbandingan/Relasi (==, !=, >, >=, <, <=)

� Operator Unary (-, ++, --, ~, !, &, *, sizeof)

� Operator Assigment Kombinasi/Majemuk (+=, -=, *=, /=, %=, <<=, >>=, &=, |=, ^=)

Page 7: Overview -   · PDF fileyang akan diimplementasikan dalam bahasa C/C++. Terkait dengan Mata ... cara penulisannya dalam program ... “bapak”, “Keren

7

Jurusan Teknik Informatika 1-19 Universitas WidyatamaJurusan Teknik Informatika 1-19 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Input dan Output

Input

� getch(), getche(), getchar(), scanf (bisa digunakan pada C danC++)

� cin (hanya bisa digunakan pada C++)

Output

� putchar(), puts(), clrscr(), gotoxy(), printf (bisa digunakan pada C dan C++)

� cout (hanya bisa digunakan pada C++)

Jurusan Teknik Informatika 1-20 Universitas WidyatamaJurusan Teknik Informatika 1-20 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Variabel & Konstanta

Variabel

Lingkup Variabel :

� Variabel Lokal/Otomatis

� Variabel Global/Eksternal

� Variabel Statis

Konstanta

� Konstanta Numerik Integer (ex : 43, 123, -123, dll)

� Konstanta Numerik Pecahan (ex : -123.0,0.75, 12.34e29, 12.34e-29,dll)

� Konstanta Karakter (ex : ‘a’, ‘b’, dll)

� Konstanta String (ex : “bapak”, “Keren”)

� Karakter Escape (\a, \b, \f, \n, \r, \t, \v, \0, \’, \”, \\)

Jurusan Teknik Informatika 1-21 Universitas WidyatamaJurusan Teknik Informatika 1-21 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Selection

if� if tunggal

ex : if (a=b) {printf(“a=b”);}� if-else

ex : if (a=b) {printf(“a=b”);} else {printf(“a≠b”);}� if-else-if

ex : if (a=b) {printf(“a=b”);} else if (a<b) {printf(“a<b”);} else {printf(“a>b”);}

Switchex : switch(angka)

{ case 1 : cout<<“Angka Atu”;break;case 2 : cout<<“Angka Ua”; break;case 3 : cout<<“Angka Iga”; break;case 4 : cout<<“Angka Empat”; break;default : cout<<“Angka ga au”; break;}

Page 8: Overview -   · PDF fileyang akan diimplementasikan dalam bahasa C/C++. Terkait dengan Mata ... cara penulisannya dalam program ... “bapak”, “Keren

8

Jurusan Teknik Informatika 1-22 Universitas WidyatamaJurusan Teknik Informatika 1-22 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Looping

For

ex : for(i=1;I<=10;i++) {cout<<“angka : “<<I<<endl;}

While

ex :I=1;

while(i<=10){cout<<“angka : “<<I<<endl;i++;}

do-while

ex :I=1;

do{cout<<“angka : “<<I<<endl;i++;}while(i<=10)

Jurusan Teknik Informatika 1-23 Universitas WidyatamaJurusan Teknik Informatika 1-23 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Fungsi dan Prosedur

FungsiTipe_fungsi nama_Fungsi(argumen1, argumen2,....) definisi Fungsi{

xxxx tubuh Fungsi}ex : double Absolut(double X)

{ if (X,0) X=-X;return(X);}

Prosedurvoid nama_Prosedur(argumen1, argumen2,....) definisi Prosedur{

xxxx tubuh Prosedur}ex : void Tampil(char Nama[15], int Kali)

{ int I;for(I=0;I<Kali;I++) printf(Nama);}

Jurusan Teknik Informatika 1-24 Universitas WidyatamaJurusan Teknik Informatika 1-24 Universitas Widyatama

Pemrograman II (Terstruktur II)Pemrograman II (Terstruktur II)

Kelebihan dan Kekurangan C++

Kelebihan� Banyak fasilitas untuk memanipulasi operator dan fungsi

� Struktur penulisan bahasa yang terstruktur.

� Bahasa tingkat tinggi yang mempunyai kemampuan seperti bahasatingkat rendah (seperti dapat memanipulasi data dalam bentuk bit).

� Dibandingkan dengan bahasa tingkat tinggi lainya bahasa C++ mempunyai kecepatan eksekusi yang cepat.

� Mendukung bahasa pemrograman berorientasi obyek

� Kode yang ditulis menggunakan C++ bersifat reusable

Kekurangan� Karena bahasa ini sangat fleksibel maka bagi pemula bahasa C++ akan

sangat membingungkan. Untuk itu disarankan para pemula tidak terburu-buru dalam mempelajari bahasa C++ ini.

� Bahasa C++ masih tergantung pada operating-sistemnya. Hal ini yang kemudian memicu terciptanya bahasa JAVA, bahasa multiplatform.