Jumat, 15 Januari 2016

Makalah dengan Judul "Borland C++"

BAB II
PEMBAHASAN
PERTEMUAN 1
A.        PENGENALAN PROGRAM C++
1.       Sejarah Perkembangan Bahasa C++
Berbicara tentang C++ (baca: si ples ples) biasanya tidak lepas dari C, sebagai bahasanya pendahulunya. C adalah bahasa pemograman yang dapat dikatakan berada antara bahasa beraras rendah (bahasa yang berorientasi kepada mesin) dan bahasa beraras tinggi (bahasa yang berorientasi kepada manusia). Seperti diketahui, bahasa beraras tinggi mempunyai kompatibilitas yang tinggi antar platrom. Karena itu, amatlah mudah untuk membuat program pada berbagai jenis mesin. Berbeda halnya kalau menggunakan bahasa beraras rendah, sebab setiap perintanya bergantung sekali kepada jenis mesin.
C++ diciptakan satu dekade setelah C. Bahasa ini dicipatakan oleh Bjarne Stoustrup, Laboratorium Bell, AT&T, pada tahun 1983. Bahasa ini bersifat kompitibel dengan bahasa pendahulunya, C. Pada  mulanya C++ disebut “a better C”. Nama C++ sendiri diberikan oleh Rick Mascitti pada musim panas 1983. Adapun tanda C++ berasal dari nama operator penaikan pada bahasa C++.
2.       Pengenalan IDE (Integrated Development Environment) C++
IDE (Integrated Development Environment), merupakan lembar terpadu untuk pengembangan program. IDE dari Borlan C++ dapat digunakan untuk:
a.       Menulis naskah program
b.      Mengkompilasi file (Compile)
c.       Melakukan pengujian program (Debugging)
d.      Mengaitkan objek dan library ke program (Linking)
e.      Menjalankan program (Running)
IDE pada Borlan C++, terbagi menjadi empat bagian, yaitu:
a.       Menu Utama (Menu Bar)
Menu utama terdiri dari: File, Edit, Search, Run, Compile, Debug, Project, Options, Windows, dan Help.
b.      Baris Peralatan (Tool bar)
Disini tempat tool-tool untuk menunjang dalam pembuatan program. Too bar ini dibuat untuk mempercepat pengaksesan tool dibandingkan harus melalui menu bar.
c.       Jendela Editor
Tempat untuk pengetikan program dan membuat program. Jika pertama kali anda membuat program, nama file jendela editor adalah NONAME00.CPP
d.      Jendela Message
Tempat untuk menampilkan pesan-pesan pada proses.
e.      Baris Status
Baris dimana menampilkan keterangan-keterangan pada saat anda menampilkan menubar dan submenu.
3.       Contoh Program dan Pengenalan Struktur Program C++
a.       Contoh Program C++

#include <iostream.h>
#include <conio.h>
#include <stdio.h>
main()
{

cout<<"Selamat datang diprogram C++"<<endl;
getch();

}


b.      Struktur Program C++
Dalam pembuatan progam C++ hal yang paling penting adalah struktur. Struktur merupakan bentuk susunan dari suatu program yang dibuat. Struktur-struktur dalam program C++ antara lain:
1.       Pengarahan Praprosesor #include
Dalam contoh program diatas yang dijelaskan dalam point a diawali dengan
#include <iostream.h>
Dalam hal ini, #include adalah suatu pengarah praprosesor yang berfungsi untuk memberikan instruksi kepada complier C++ agar menyertakan file bernama  <iostream.h>.File  <iostream.h> adalah header file yang disediakan oleh perangkat pemrograman C++. Header file bersisi deklarasi seperti fungsi dan variabel.
2.       Fungsi Main()
Program C++ memang tidak akan lepas dari fungsi. Sebab, fungsi adalah salah satu dasar penyusunan blok di C++. Program C++ paling tidak mengandung sebuah fungsi, yaitu fungsi main(). Fungsi tersebut menjadi awal dan akhir eksekusi program C++.main()adalah nama judul fungsi. Adapun yang dimulai dengan tanda { hingga } disebut tubuh fungsi.
3.       Pernyataan
Baris dalam contoh program diatas
cout<<”Selamat datang diprogram C++”<<endl;
merupakan contoh pernyataan. Pada contoh di atas pernyataan tersebut digunakan untuk menampilkan tulisan yang terletak pada sepasang tanda petik ganda ke layar. Dalam hal ini, tulisan yang terletak pada sepasang tanda petik ganda disebut literal string.
Umumnya, pernyataan berupa instruksi untuk menyuruh computer melakukan sesuatu. Menampilkan tulisa ke layar, menghitung suatu operasi aritmatika, membaca data dari keyboard adalah suatu tugas diemban oleh pernyataan. Setiap pernyataan pada umumnya diakhiri dengan tanda titik koma ( ; ) jika tidak memberika tanda titik koma maka akan menyebabkan compiler memberikan pesan kesalahan saat kompilasi dilakukan.
4.       Komentar
Komentar merupakan bagian yang penting dalam program. Kehadirannya sangat membantu pemrogram ataupun orang lain dalam memahami program karena berupa penjelasan-penjelasan mengenai program atau bagian-bagian dari program. Contoh komentar:
//Program komentar
//Contoh komentar dalam program
#include <iostream.h>
main()
{
cout<<”Selamat datang diprogram C++”<<endl;
}
PERTEMUAN 2
PENGENALAN VARIABEL,TIPE DATA DAN PERINTAH MASUKAN DAN KELUARAN
A.      ELEMEN DASAR C++
1.       Himpunan Karakter
Himpunan karakter di C++ terdiri atas huruf, digit, simbol, dan bahkan karakter kontrol (seperti spasi dan *). Secara lebih lengkap, lihatlah daftar berikut:
C++ mempunyai cara untuk menyatakan karakter-karakter yang tidak mempunyai kode tombol (seperti karakter kontrol).

2.       Pengenal (Identifier)
Pengenal adalah suatu nama yang biasa dipakai dalam pemrograman untuk menyatakan:
·         Variabel;
·         Konstanta bernama;
·         Tipe data;
·         Fungsi;
·         Label;
·         Objek;
·         Hal-hal lain yang dideklarasikan atau didefinisikan oleh pemrogram.
3.       Tipe Data
Tipe data dasar (primitif) di C++ meliputi:
·         Char;
·         Int;
·         Short;
·         Long;
·         Float;
·         Double;
·         Long double;
·         Bool;
Ukuran memori yang diperlukan untuk tipe data masing-masing terkadang berbeda-beda antara satu kompiler dengan kompiler lain. Namun, secara umum ukuran memori yang diperlukan tipe masing-masing diperlihatkan dalam tabel di bawah ini:




Tipe
Ukuran Memori
Keterangan
short (atau short int)
2 byte
Menyatakan bilangan bulat antara -32768 dan +32767
int
4 byte
Menyatakan bilangan bulat antara -2147483648 dan +2147483647 kalau diimplementasikan dengan 4 byte
Long (atau long int)
4 byte
Menyatakan bilangan bulat antara -2,147,435,648 s.d 2,147,435,647
long long (atau long long int)
8 byte
Menyatakan bilangan bulat antara -9232372036854775808  s.d +9232372036854775807 dengan jumlah digit 19
Float
4 byte
Menyatakan bilangan real dengan ketelitian rendah (7 digit). Variabel dengan data ini dapat menampung bilangan antara 10-308 sampai dengan 10308
double
8 byte
Menyatakan bilangan real dengan ketelitian rendah (16 digit). Variabel dengan data ini dapat menampung bilangan antara 10-38 sampai dengan 1038
Long double
12 byte
Menyatakan bilangan real dengan ketelitian rendah (19 digit). Variabel dengan data ini dapat menampung bilangan antara 10-4932 sampai dengan 104932. Dibeberapa kompiler C++, long double adalah sinonim double.
Bool
1 byte
Menyatakan Boolean, dengan kemungkinan nilai berupa true atau false.
Char
1 byte
Menyimpan sebuah karakter. Karakter dapat berupa huruf seperti A dan B, digit seperti ) dan (, atau simbol seperti * dan &. Tipe seperti ini bermanfaat misalnya untuk menuimpan skor ujian (berupa A, B, C, D, atau E)
4.       Varibael dan Konstanta
a.       Variable
        Variabel adalah symbol dari suatu besaran yang merepresentasikan suatu lokasi di dalam memori komputer. Informasi yang tersimpan di dalam lokasi tersebut disebut nilai variable. Untuk memperoleh nilai dari suatu variable digunakan pernyataan penugasan ( assignment statement ), yang mempunyai sintaks sebagai berikut
variable = ekspresi ;
Yang akan diolah terlebih dahulu adalah ekspresi, baru hasilnya dimasukkan kedalam variable
Tanda “=” adalah operator penugasan.

Contoh :
#include <conio.h>
#include <iostream.h>
main()
{
  int n;
  n=66;  // sama juga jika ditulis int n=66;
  cout<<n<<endl;   // n sebagai variabel
  cout<<’n’<<endl;   // end sebagai karakter
  getch();
}
Deklarasi dari suatu variable adalah sebuah pernyataan yang memberikan informasi tentang variable kepada compiler C++. Menurut [Kristanto:2009] pengertian deklarasi adalah memesan memori dan menentukan jenis data yang dapat disimpan didalamnya.
Bentuk Umum:
Tipe_data [spasi]nama_variable
Pada pendeklarasian variabel, daftar variabel dapat berupa sebuah variabel atau beberapa variabel yang dipisahkan dengan tanda koma.
Contoh:
int jumlah;
float harga_per_satuan, total_harga;

Pemberian nama ke variable
Untuk memberikan nilai ke suatu variabel yang telah dideklarasikan, bentuk pernyataan yang digunakan adalah sebagai beriut:
nama_variabel = nilai;
Contoh berikut merupakan nilai 50 ke variabel jumlah dan 15,7 ke variabel
harga_per_satuan.
harga_total= jumlah *  harga_per_satuan;
Total_harga= jumlah * harga_per_satuan;

b.      Konstanta
1.       Konstanta Oktal, digit yang digunakan 0-7
2.       Konstanta Heksadesimal, digit yang digunakan 0-9, A-F
3.       Konstanta Bernama
a.       Menggunakan keyword const
Contoh : const float PI = 3.14152965;
Berbeda dengan variable, konstanta bernama tidak dapat diubah jika telah diinisialisasi.
b.      Menggunakan #define
Contoh : #define PI 3.14152965
Keuntungan menggunakan #define apabila dibandingkan dengan   const adalah kecepatan kompilasi, karena sebelum kompilasi dilaksanakan, kompiler pertama kali mencari symbol #define ( oleh sebab itu mengapa # dikatakan prepocessor directive ) dan mengganti semua PI dengan nilai 3.14152965.

1.    Input dan Output
a.       Perintah Input
Perintah ini digunakan untuk memasukan berbagai jenis data kedalam program lewat keyboard dan dapat digunakan fungsipustaka scanf, getch maupun getche dan cin.

1.       Fungsi Pustaka Scanf
Bentuk Umum:
scanf(“string kontrol”, daftar argumen);

String kontrol dapat berupa:
a. Penentu format
b. Karakter spasi putih
c. Karakter bukan spasi putih

Contoh:
/*---------------------------------------------------------------*/
/*Program: Scanf.cpp */
/*---------------------------------------------------------------*/
#include <stdio.h>
#include <conio.h>
main()
{
int nilai, uts;
printf(“Masukan sebuah nilai:” ); scanf(“%d”,&nilai);
printf(“Masukan nilai uts: “); scanf(“%d”,&uts);
getch();
}

2.       Fungsi Pustaka Getch
Digunakan untuk membaca sebuah karakter tanpa diakhiri enter. Pada getch ini, karakter yang dimasukan tidak ditampilkan dilayar.
Contoh:
# include <stdio.h>
# include <conio.h>
main( )
{
char kar;
clrscr( );
printf("Masukan Sebuah Karakter Bebas = ");
kar = getch( );
printf("\nTadi Anda Memasukan karakter %c", kar);
getch( );
}
3.       Fungsi Pustaka Getche
Digunakan untuk membaca sebuah karakter tanpa diakhiri enter. Pada getche ini, karakter yang dimasukan akan ditampilkan dilayar.
Contoh:
# include <stdio.h>
# include <conio.h>
main( )
{
char kar;
clrscr( );
printf("Masukan Sebuah Karakter Bebas = ");
kar = getche( );
printf("\nTadi Anda Memasukan karakter %c", kar);
getch ( );
}

4.       Fungsi Pustaka Cin
Fungsi pustaka cin ini berpasangan fungsi pustaka cout. Dimanafungsinya adalah untuk memasukan nilai variabel ke dalam programmelalui keyboard.
Contoh:
# include <stdio.h>
# include <conio.h>
# include <iostream.h>
main( )
{
int data1,data2, total;
clrscr( );
cout<<"Masukan Data 1 : ";
cin>>data1;
cout<<"Masukan Data2 : ";
cin>>data2;
total=data1+data2;
cout<<"Masukan Total Nilai : "<<total<<endl;
getch( );
}
b.      Perintah Output
1.       Fungsi Pustaka Printf
Digunakan untuk menampilkan hasil yang terformatdengan menggunakan format spesification. Tabelnyaadalah sebagai berikut:
Tipe Data Penentu Format Untuk Printf( )
Integer
%d
Floating Point

Bentuk Desimal
%f
Bentuk Berpangkat
%e
Bentuk Desimal dan Pangkat
%g
Double Precision
%lf
Character
%c
String
%s
Unsigned Integer
%u
Long Integer     
%ld
Long Unsigned Integer
%lu
Unsigned Hexadecimal Integer
%x
Unsigned Octal Integer
%o
                               



Contoh:
#include <stdio.h>
#include <conio.h>
#include<iostream.h>
main( )
{
char *nama =”dita”;
int nilai = 100;
clrscr( );
printf(“hai %s, Kamu mendapatkan Nilai %i” , nama, nilai);
}

2.       Fungsi Pustaka Puts
Fungsi ini hanya digunakan untuk menampilkan nilaistring dan sudah mengandung line feed/ Pindah barisotomatis.
Contoh:

/*---------------------------------------------------------*/
/*Nama Program: puts.cpp */
/*---------------------------------------------------------*/
# include <stdio.h>
# include <conio.h>
main( )
{
puts(“RIANI”);
getch( );
}

3.       Fungsi Pustaka Putchar
Fungsi ini untuk manampilkan hasil dapat digunakanfungsi pustaka putchar. Fungsi pustaka ini hanyadigunakan untuk menampilkan nilai karakter dan tidakmengandung line feed.
Contoh:
# include <stdio.h>
# include <conio.h>
main( )
{
putchar(‘c’);
putchar(‘e’);
putchar(‘n’);
putchar(‘g’);
putchar(‘k’);
putchar(‘a’);
putchar(‘r’);
putchar(‘e’);
putchar(‘n’);
putchar(‘g’);
getch( );
}
4.       Fungsi Pustaka Cout
Untuk menampilkan hasil dapat digunakan fungsi pustaka cout. Fungsipustaka ini bentuknya agak sedikit berbeda dengan bentuk pustaka outputlainnya.
Perbedaannya terletak pada:
·         Praprosesor
Kalau fungsi pustaka prinf, putchar maupun puts preprocesornya menggunakan #incude <stdio.h>, sedangkan fungsi pustaka cout preprocesornya menggunakan #include <iostream.h>
·         Ganti Baris
Kalau fungsi pustaka prinf ganti baris menggunakan \n, sedangkan fungsi pustaka cout ganti baris menggunakan perintah endl













PERTEMUAN 3
Operator Bahasa C++, Manipulasi String an Konversi String
Operator
Operator merupakan simbol atau kata yang dapat digunakan dalam program untuk melakukan suatu operasi atau manipulasi, seperti menjumlahkan dua buah nilai, memberikan nilai kesuatu variabel, membandingkan dua buah nilai dan lain sebagainya.
Tanda operator dalam bahasa C++ dapat dikelompokan sebagai berikut:
1. Operator pengerjaan (assignment operators)
2. Operator aritmetika (arithmatic operators)
3. Operator peningkatan dan penurunan (increament and decrement
operators)
4. Operator bitwise (bitwise operators)
5. Operator hubungan (relational operators)
6. Operator logika (logical operators)
7. Operator alamat (address operators)
8. Operator koma (comma operators)
9. Operator gabungan
Operator Aritmerika
Operator untuk operasi aritmatika yang tergolong sebagai operator binary adalah:
Operator
Keterangan
Contoh
*
Perkalian
4*5
/
Pembagian
8/2
%
Sisa Pembagian (mod)
5%2
+
Penjumlahan
7+2
-
Pengurangan
6-2

Operator yang tergolong sebagai operator Unary, adalah :
Operator
Keterangan
Contoh
+
Tanda Plus
-4
-
Tanda Minus
+6

Contoh :
#include "stdio.h"
#include "conio.h"
#include "iostream.h"
main()
{
char nama[15],kelas[8],nim[8];
float nilai_1,nilai_2,nilai_3,nilai_4,nilai_5,nilai_6,nilai_7,jumlah,rata2;

cout<<"Masukkan Nama Mahasiswa                                      :";cin>>nama;
cout<<"Masukkan Nim Mahasiswa                                          :";cin>>nim;
cout<<"Masukkan Kelas                                                                               :";cin>>kelas;
cout<<"Masukkan Nilai ke-1                                                       :";cin>>nilai_1;
cout<<"Masukkan Nilai ke-2                                                       :";cin>>nilai_2;
cout<<"Masukkan Nilai ke-3                                                       :";cin>>nilai_3;
cout<<"Masukkan Nilai ke-4                                                       :";cin>>nilai_4;
cout<<"Masukkan Nilai ke-5                                                       :";cin>>nilai_5;
cout<<"Masukkan Nilai ke-6                                                       :";cin>>nilai_6;
cout<<"Masukkan Nilai ke-7                                                       :";cin>>nilai_7;

clrscr();

cout<<"Nama Mahasiswa                                            :"<<nama<<endl;
jumlah=nilai_1+nilai_2+nilai_3+nilai_4+nilai_5+nilai_6+nilai_7;
cout<<"Jumlah Nilai Mahasiswa                                                :"<<jumlah<<endl;
rata2=jumlah/7;
cout<<"Nilai Rata-rata Mahasiswa                            :"<<rata2<<endl;

getch();
}



Bentuk penulisan ekspresi aritmatika dikaitkan dengan pernyataan pemberi nilai.
Bentuk Umum :

• Variabel, dikenal dengan sebutan LValue (Left Value)
• Ekspresi Aritmatika dikenal dengan sebutan RValue
(Right Value)
• Tanda “ = “, dikenal dengan sebagai Operator Pemberi Nilai (Assignment Operator).

Operator Penambah & Pengurang
Operator Keterangan
Tabel Operator Penambah & Pengurang
Operator
Keterangan
++
Penambah
--
Pengurang

A = A + 1
atau AA--
Keterangan :
1. Penambahan: menambahkan 1 ke nilai variable, prefix (++A) atau postfix (A ++)
2. Pengurangan: mengurangkan 1 ke nilai variabel, prefix (--A) atau postfix (A --)

Contoh Penggunaan Notasi
Didepan Variabel:
/* Penggunaan Notasi Didepan Variabel*/
#include <stdio.h>
#include <conio.h>
main( )
{
int x = 11, y = 6;
clrscr( );
printf("Nilai x = %d", x);
printf("\nNilai ++x = %d", ++x);
printf("\nNilai y = %d", y);
printf("\nNilai --y = %d", --y);
getch( );
}

Contoh Penggunaan Notasi
Dibelakang Variabel:

/* Penggunaan Notasi Dibelakang
Variabel*/
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
main( )
{
int x = 11, y = 6;
clrscr( );
printf("Nilai x = %d", x);
printf("\nNilai ++x = %d", x++);
printf("\nNilai x = %d", y);
printf("\nNilai y= %d", y);
printf("\nNilai --y = %d", y--);
printf("\nNilai y = %d", y);
getch( );
}

Operator Relasi

Operator Relasi digunakan untuk membandingkan dua buah nilai. Hasil perbandingan operator ini menghasilkan nilai numerik 1 (True) atau 0 (False).

Operator Keterangan
= =          Sama Dengan ( bukan pemberi nilai )
!=            Tidak Sama dengan
>             Lebih Dari
<             Kurang Dari
>=           Lebih Dari sama dengan
<=           Kurang Dari sama dengan

Operator Logika
Digunakan untuk mengekspresikan satu atau lebih data atau ekspresi logika (boolean), menghasilkan data logika (boolean) baru.
Operator
Keterangan
&&
                                Operator Logika AND

| |
                                Operator Logika OR

!
                                Operator Logika NOT


Operator logika AND digunakan untuk menghubungkan dua atau lebih ekspresi relasi, akan dianggap BENAR, bila semua
ekspresi relasi yang dihubungkan bernilai BENAR.

Operator logika OR digunakan untuk menghubungkan dua atau lebih ekspresi relasi, akan dianggap BENAR, bila salah satu ekspresi relasi yang dihubungkan bernilai BENAR dan bila semua ekspresi relasi yang dihubungkan bernilai SALAH, maka akan bernilai SALAH.

Operator Logika Not

Operator logika NOT akan memberikan nilai kebalikkan dari ekspresi yang disebutkan. Jika nilai yang disebutkan bernilai BENAR maka akan menghasilkan nilai SALAH, begitu pula sebaliknya.


A
B
Not A
Not B
T
F
F
T
F
T
T
F
T
F
F
T


Operator Logika X or
Operator logika Xor akan menghasilkan nilai True jika ekspresi di sebelah kiri Xor berbeda dengan ekspresi di sebelah kanannya. Jadi, operator logika Xor dapat diartikan "jika beda" akan bernilai True

A
B
A Xor B
T
T
F
F
F
F
T
F
T

Keterangan :
T : TRUE
F : FALSE

Definisi String
String merupakan bentuk data yang biasa dipakai dalam pemrograman guna menampung dan memanipulasi data teks.

Contoh program string:
/*program string*/
#include <stdio.h>
#include <conio.h>
main()
{
char nama[20];
printf(“Masukan Nama Anda:”);gets(nama);
printf(“Nama Anda Adalah: %s \n”,nama);
getch();
}

Fungsi Manipulasi String
a.       Fungsi Strcpy()
fungsi ini dipakai untuk menyalin string asal ke variabel string tujuan, variabel tujuan harus memiliki ukuran yang dapat menampung seluruh karakter string asal.
Rounded Rectangle: Bentuk Umum:
strcpy(tujuan,asal);
 




Contoh:
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <iostream.h>
main( )
{
char huruf[20];
char pindah[20];
clrscr( );
cout<<"Masukkan kata yang di inginkan = ";
gets(huruf);
/* Proses */
strcpy(pindah, huruf);
cout<<"Pemindahannya = "<<pindah;
getch( );
}

b.      Fungsi Strlen()
Fungsi ini dipakai untuk menghitung jumlah karakter argumennya.

Bentuk Umum:
strlen(str);
Contoh:
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <iostream.h>
main( )
{
char huruf[20];
char pindah[20];
clrscr( );
cout<<"Masukkan Kata Yang Diinginkan = ";
gets(huruf);
cout<<"Panjang Kata Yang Diinputkan = ";
cout<<strlen(huruf);
getch( );
}

c.       Fungsi Strcmp()
fungsi ini dipakai untuk membandingkan string str1 dengan string str2. Hasil dari fungsi ini bertipe int berupa nilai negatif (str1 kurang dari str2),
nol(str1=str2), positif(str1 lebih dari str2).

Bentuk Umum:
Rounded Rectangle: var_int = strcmp(str1, str2); 





Contoh:
#include <string.h>
#include <iostream.h>
#include <conio.h>
main( )
{
char a1[ ] = "BSI";
char a2[ ] = "Bsi";
char b1[ ] = "BSI";
clrscr();
cout<<"Hasil Perbandingan "<<a1<<" dan "<<a2<<"-->";
cout<<strcmp(a1,a2)<<endl;
cout<<"Hasil Perbandingan "<<a2<<" dan "<<b1<<"-->";
cout<<strcmp(a2,b1)<<endl;
cout<<"Hasil Perbandingan "<<a1<<" dan "<<b1<<"-->";
cout<<strcmp(a1,b1)<<endl;
getch();
}
                         

PERTEMUAN 4
SELEKSI KONDISI
A.      Perintah If
perintah if berguna untuk memilih satu dari 2 atau lebih alternatif jawaban yang tersedia. Jika perintah if tersebut terdiri dari 2 atau lebih pernyataan.

Bentuk Umum:
Rounded Rectangle: if (kondisi)
{ pernyataan }
 






B.      Perintah If ... else
Bentuk Umum:
Rounded Rectangle: if(kondisi)
pernyataan1
else
pernyataan2
 







C.      Perintah If... else majemuk
Bentuk Umum:
Rounded Rectangle: if (kondisi)
{
perintah-1;
...
}
else if
{
perintah-2;
...
}
.. Sampai kondisi ke –n
else
{ perintah default ; }
 


















D.      Perintah If dalam If
Perintah if dalam if sering disebut nested-if. Perintah ini mempunyai bentuk umum sebagai berikut:
Bentuk Umum :
Rounded Rectangle: If(kondisi1)
{
if(kondisi2)
{
pernyataan1;
}
else
{
pernyataan2;
}
} 
Else
{
if(kondisi2)
{
pernyataan1;
}
else
{
pernyataan2;
}
}
 































Contoh Perintah IF/IF else/If Majemuk/IF dalam IF

#include <stdio.h>
#include <conio.h>
#include <iostream.h>


main()
{
char nama[20],lagi;
int jenis_kelamin, tinggi;
atas :
clrscr();
cout<<"Contoh program IF/IF Else/IF Majemuk/IF dalam IF"<<endl<<endl;
cout<<"Masukkan data anda dengan benar"<<endl<<endl;

cout<<"Nama             : "; gets(nama);
cout<<"Jenis Kelamin"<<endl;
cout<<"1. Laki-Laki"<<endl;
cout<<"2. Perempuan"<<endl;
cout<<"Masukkan pilihan[1/2] : "; cin>>jenis_kelamin;
cout<<"Tinggi Badan(dalam cm)     : "; cin>>tinggi;

if(jenis_kelamin==1)
{
    if(tinggi>=165)
       {cout<<"\n-----Anda Lulus-----"<<endl;}
   else
       cout<<"Maaf, tinggi badan anda belum memenuhi syarat"<<endl;
}
else if(jenis_kelamin==2)
{
    if(tinggi>=160)
       {cout<<"\n-----Anda Lulus-----"<<endl;}
   else
       cout<<"Maaf, tinggi badan anda belum memenuhi syarat"<<endl;
}
cout<<"Ingin Input Lagi[y/t]:";cin>>lagi;
if(lagi=='y'||lagi=='Y')
goto atas;
else
goto keluar;

getch();
keluar :
}







PERTEMUAN 5
Penyeleksian Kondisi Lanjutan
Perintah Switch...Case
Perintah ini merupakan pernyataan yang dirancang untuk menangani pengambilan keputusan yang melibatkan sejumlah pilihan alternatif yang diantaranya untuk menggantikan pernyataan if bertingkat.

Bentuk Umum:




















Contoh Perintah Switch Case

#include <stdio.h>
#include <conio.h>
#include <iostream.h>
main()
{
char kode,namabar[20],namapem[20],ingin;
int jumbel,harga,total;
atas:
clrscr();
cout<<"**********************************************"<<endl;
cout<<"================TB. CAHYO MAKMUR==============="<<endl;
cout<<"**********************************************"<<endl;
cout<<"KODE   NAMA BARANG          HARGA"<<endl;
cout<<"----------------------------------------------"<<endl;
cout<<"A      SEMEN GRESIK         RP.60000"<<endl;
cout<<"B      SEMEN TIGA RODA      RP.55000"<<endl;
cout<<"C      SEMEN HOLCIM         RP.70000"<<endl;
cout<<"D      SEMEN JAWA           RP.75000"<<endl;
cout<<"----------------------------------------------"<<endl;
cout<<"Input Nama Pembeli                       :";gets(namapem);
cout<<"Input Kode Barang [A/B/C}         :";cin>>kode;
cout<<"Input Jumlah Beli                             :";cin>>jumbel;
switch(kode)
{
                case 'a':
                case 'A':
   strcpy(namabar,"SEMEN GRESIK");
   harga=60000;
   break;
   case 'b':
   case 'B':
   strcpy(namabar,"SEMEN TIGA RODA");
   harga=55000;
   break;
   case 'c':
   case 'C':
   strcpy(namabar,"SEMEN HOLCIM");
   harga=70000;
   break;
   case 'd':
   case 'D':
   strcpy(namabar,"SEMEN JAWA");
   harga=75000;
   break;
   default:
   cout<<"*******Salah Masukan Kode*******"<<endl;
}
clrscr();
cout<<"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"<<endl;
cout<<"                STRUK PENJUALAN               "<<endl;
cout<<"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"<<endl;
cout<<"Nama Pembeli                  :"<<namapem<<endl;
cout<<"Nama Barang                     :"<<namabar<<endl;
cout<<"Harga Barang                                     :"<<harga<<endl;
cout<<"Jumlah Beli                         :"<<jumbel<<endl;
total=jumbel*harga;
cout<<"Total                                      :"<<total<<endl;
cout<<"=============================================="<<endl;
cout<<"                    Ingin Input Lagi [Y/T] :";cin>>ingin;
if(ingin=='Y'||ingin=='y')
                {goto atas;}

getch();
}





PERTEMUAN 6
Perulangan
Perintah For
Proses looping yang menggunakan perhitungan (counter) yang sudah pasti (misalnya variabel k=1,2,...,n; j=m, m-1,...,5; dan sebagainya) dapat dibuat menggunakan pernyataan for.
Bentuk Umum:
Rounded Rectangle: for ( inisialisasi; syarat perulangan; pengubah nilai pencacah )
{
pernyataan / perintah;
pernyataan / perintah;
pernyataan / perintah;
}

 




Kegunaan dari masing-masing argumen for diatas adalah :
• Inisialisasi; merupakan bagian untuk memberikan nilai awal untuk variabel-variabel tertentu.
• Syarat Perulangan; memegang kontrol terhadap perulangan, karena bagian ini yang akan menentukan suatu perulangan diteruskan atau dihentikan.
• Pengubah Nilai Pencacah; mengatur kenaikan atau
penurunan nilai pencacah.

Contoh Perintah For:

#include<stdio.h>
#include<conio.h>
#include<iostream.h>
main( )
{
int x;
clrscr( );
for(x = 3; x <= 9; ++x)
cout<<x;
getch( );
}




Perintah Nested-For
Pernyataaan Nested for adalah suatu perulangan for didalam perulangan for yang lainnya.
 Bentuk umum pernyataan Nested for sebagai berikut :















Contoh Perintah Nested-For
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
main()
{
int a,b,c;
 for(a=15;a>=2;a-=3)
  {
  c=0;
  for(b=15;b>=a;b-=3)
   {
   if(b==a)
   cout<<b;
   else
   cout<<b<<"+";
   c=c+b;
   }
  cout<<"="<<c<<endl;
  }
  getch();
 }




Perintah Goto
Pernyataan goto merupakan instruksi untuk mengarahkan eksekusi program ke-pernyataan yang diawali dengan suatu label. Label merupakan suatu pengenal (identifier) yang diikuti dengan tanda titik dua ( : ). Bentuk pemakaian goto sebagai berikut:
Contoh Perintah Goto:

#include<iostream.h>
#include<stdio.h>
#include<conio.h>
main()
{
int a,b;
char lagi;
atas:
clrscr();
cout<<"Masukkan Bilangan = ";cin>>a;
b=a*a;
cout<<"Nilai Hasil :"<<b<<endl;
printf("\n\nIngin Hitung Lagi [Y/T]:");
lagi = getche() ;
if (lagi == 'Y' || lagi == 'y')
goto atas;
getch( );
}

Perintah While
Pernyataan perulangan while merupakan instruksi perulangan yang mirip dengan perulangan for. Bentuk perulangan while dikendalikan oleh syarat tertentu, yaitu perulangan akan terus dilaksanakan selama syarat tersebut terpenuhi.
Bentuk umum perulangan while, sebagai berikut:

Rounded Rectangle: Perintah While
while ( syarat )
{
Pernyataan / perintah ;
Pernyataan / perintah ;
}
 










Contoh Perintah While:
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
main()
{
char kode;
int harga,t;
while(1)
{
cout<<"Masukkan Kode[1/2/3]:";cin>>kode;
if(kode=='1'){
 harga=7000;
 }
 else if(kode=='2'){
                harga=8000;
 }
 else if(kode=='3'){
                harga=9000;
 }
 else{
                harga=10000;
 }

 t=t+harga;
 cout<< "total    :"<<t<<endl;
 if(t>50000)
 break;
}
getch();
}


Perintah Do ... While
Pernyataan perulangan do - while merupakan bentuk perulangan yang melaksanakan perulangan terlebih dahulu dan pengujian perulangan dilakukan dibelakang.
Bentuk umum perulangan do - while, sebagai berikut :
Rounded Rectangle: do
{
Pernyataan / perintah ;
Pernyataan / perintah ;
}
while ( syarat );
 









Contoh Perintah Do...While:
#include <iostream.h>
#include <conio.h>
main(){
int n,i=1;
float nilai,rata,jml=0;
cout<<"Input banyak nilai = ";cin>>n;
do
{cout<<"Input Nilai "<<i<<" = " ;cin>>nilai;
jml=jml+nilai;
rata=jml/n;
i++;}
while(i<=n);
cout<<"\nTotal nilai = "<<jml;
cout<<"\nRata nilai = "<<rata;
getch();}


PERTEMUAN 9
ARRAY
Variabel Larik atau lebih dikenal dengan ARRAY adalah Tipe terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe sama.
Suatu Array mempunyai jumlah komponen yang banyaknya tetap. Banyaknya komponen dalam suatu larik ditunjukan oleh suatu indeks untuk membedakan variabel yang satu dengan variabel yang lainnya
Variabel array dalam Borland C++, dapat digolongkan menjadi dua buah dimensi:
• Array Berdimensi Satu.
• Array Berdimensi Dua

Array Dimensi 1
Bentuk Umum :
Rounded Rectangle: Tipe_Data Nama_Variabel[ukuran]
 





Keterangan :
§  Type Data : Untuk menyatakan type data yang digunakan.
§  Ukuran : Untuk menyatakan jumlah maksimum elemen array.
Contoh Pendeklarasian Array
Float Nil_uts [5];
Keterangan :
Float : Tipe data elemen array
Nil_uts : Nama Variabel Array
[5] : Jumlah Elemen Array
Inisialisasi/pemberian nilai awal array dimensi 1

Rounded Rectangle: Tipe_data nama_array[jml_elemen]={nilai array};
 




Dan pengaksesan pemanggilan datanya bisa menggunakan/memanggil sub indeksnya

Contoh Perintah Array Dimensi 1 :
/* ---------------------------------- */
/* Inisialisasi Array Dimensi 1 */
/* ---------------------------------- */
#include <conio.h>
#include <iostream.h>
main( )
{
char bulan[12][10] =
{"Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"};
clrscr( );
cout<<"Nama-nama hari:"<<endl;
cout<<bulan[0]<<endl<<bulan[1]<<endl<<bulan[2]<<endl<<bulan[3]
<<endl<<bulan[4]<<bulan[5]<<endl<<bulan[6]<<endl<<bulan[7]<<endl<<bulan[8]
<<endl<<bulan[9]<<endl<<bulan[10]<<endl<<bulan[11]<<endl;
getch();
}


Array Dimensi 2
Bentuk Umum
Array dimensi dua tersusun dalam bentuk baris dan kolom, dimana indeks pertama menunjukan baris dan indeks kedua menunjukan kolom. Array dimensi dua dapat digunakan seperti pendatan penjualan, pendataan nilai dan lain sebagainya.

Bentuk Umum
Rounded Rectangle: Tipe_Data Nama_Variabel[index-1][indek-2]
 



Keterangan:
§  Type Data            : Untuk menyatakan type data yang digunakan.
§  Index-1                                : Untuk menyatakan jumlah baris
§  Index-2                                : Untuk menyatakan jumlah kolom
Contoh penulisan array dimensi 2 :
Int data_beli[2][2];
Keterangan :
Int                          : Tipe data elemen array
Data_jual             : Nama Array
[2]                          :Jumlah Baris
[2]                          : Jumlah Kolom
Contoh :
#include <conio.h>
#include <iostream.h>
int main()
{
    int nilai[5];
    int i;
        cout << "Masukkan nilai ujian mahasiswa [5 mahasiswa] :\n";
  
    for (i = 0; i < 5; i++)
    {
        cout << "Mahasiswa " << (i+1) << " : ";
        cin >> nilai[i]; // Memasukkan nilai ke dalam elemen array
    }
        cout << "\nNilai mahasiswa yang telah Anda masukkan adalah : ";
    for (i = 0; i < 5; i++)

    {
        cout << "\nMahasiswa " << (i+1) << " : " << nilai[i];
    }
        cout << "\n\nTerima kasih.";
    getch();
return 0;
}


PERTEMUAN 10
POINTER & MACRO
POINTER
Merupakan sebuah variabel yang berisi alamat dari variabel lain. Suatu pointer dimaksudkan untuk menunjukan ke suatu alamat memori sehingga alamat dari suatu variabel dapat diketahui dengan mudah.

Operator Pointer
Terdapat dua macam operator pointer yang disediakan
oleh Borland C++:
1. Operator dereference ( & )
2. Operator reference ( * )

Operator dereference ( & )
• Operator ini biasa disebut dengan “address of” atau operator alamat. Dengan menggunakan operator dereference(&) ini, suatu variabel akan menghasilkan alamat lokasi memori.

Operator reference ( * )
• Operator ini biasa disebut dengan “value pointed by”. menghasilkan nilai yang berada pada suatu alamat memori.

Penggunaan Pointer
• Dapat digunakan untuk mendeklarasikan variabel bertipe data string tanpa harus dideklarasikan batasan karakternya.
• Dapat digunakan dalam penggunaan FUNGSI yaitu saat pemanggilan secara nilai dan refernsi

MACRO
Preprocessor Directives
Preprocessor directive merupakan suatu perintah yang termasuk kedalam program, tetapi bukanlah instruksi dari program itu sendiri, tetapi untuk preprocessor
– #define
– #include
– #if #endif
– #if #else #endif
– #elif
– #undef
– #ifdef #ifndef

Pembuatan File Header
• File Header adalah suatu file dengan akhiran .h
• File ini sebenarnya berisikan deklarasi fungsi dan definisi konstanta. Selain file-file header standar yang disediakan oleh C++, kita dapat juga membuat file header sendiri, dengan cara yang sama seperti membuat file editor. Yang harus diperhatikan pada saat menyimpan file header yang telah dibuat harus digunakan akhiran .h

Contoh :
// -----------------------------------------------------
// Contoh untuk menampilkan alamat suatu variabel
// -----------------------------------------------------

#include <iostream.h>
#include <conio>
#include <stdio>


int main()
{
    int alif = 5;
    float ba = 7.5;
    double ta = 17.777;

    cout << "Isi variabel:" << endl;
    cout << "alif = " << alif << endl;
    cout << "ba   = " << ba << endl;
    cout << "ta   = " << ta << endl;

    cout << endl;
    cout << "Alamat variabel:" << endl;
    cout << "alif = " << &alif << endl;
    cout << "ba   = " << &ba << endl;
    cout << "ta   = " << &ta << endl;
getch();
    return 0;

}

PERTEMUAN 11
FUNGSI
FUNGSI
Fungsi (Function) merupakan blok dari kode yang dirancang untuk melaksanakan tugas khusus.

Kegunaan dari fungsi ini adalah untuk:

• Mengurangi pengulangan penulisan program yang berulangan atau sama.
• Program menjadi lebih terstruktur, sehingga mudah dipahami dan dapat lebih dikembangkan

Pemanggilan Fungsi dapat berulang-ulang dengan cara
memanggil nama fungsinya.

Struktur Fungsi
Sebuah fungsi sederhana mempunyai bentuk penulisan sebagai berikut :
Rounded Rectangle: Nama_fungsi(argumen)
{
...pernyataan/perintah;
...pernyataan/perintah;
...pernyataan/perintah;
}
 










Keterangan :
§  Nama fungsi, boleh dituliskan secara bebas ketentuan, tidak menggunakan spasi dan nama-nama fungsi yang mempunyai arti sendiri.
§  Argumen diletakan diantara tanda kurung () yang terletak dibelakang nama fungsi. Argumen boleh  diisi dengan suatu data atau dibiarkan kosong.
§  Pernyataan/perintah, diletakkan diantara tanda kurung {  }.


• Fungsi dapat dibedakan menjadi 2.

* Fungsi sederhana(tanpa parameter)
* Fungsi Berparameter


Contoh Fungsi Sederhana/Garis :

/*pembuatan fungsi garis()*/
#include<conio.h>
#include<stdio.h>
#include<iostream.h>

garis()
{
printf(“\n=======================\n”);
}

/*program utama*/
main()
{
clrscr();
garis();//memanggil fungsi garis
cout<<”AMIK BSI – Cengkareng”<<endl;
garis();//memanggil fungsi garis
getche();
}



Prototype Fungsi
Prototype Fungsi adalah mejelaskan kepada kompiler tentang tipe data fungsi, jumlah parameter, tipe data dari masing-masing parameter.

                Prototype fungsi dituliskan di atas blok program utama dan diakhiri dengan tanda qualifier titik koma( ; ), sedangkan blok program fungsi yang mengandung perintah-perintah atau pernyataan-pernyataan dari program fungsi yang mengandungg perintah-perintah atau pernyataan-pernyataan dari program berada di bawah blok program utama yang memiliki keuntungan sebagai berikut :
§  Kompiler akan melakukan konversi antara tipe parameter dalam definisi dan parameter  fungsi.
§  Jika jumlah parameter yang diguanakan dalam definisi fungsi dan pada saat pemanggilan fungsi berbeda atau tidak sama, maka akan menunjukkan kesalahan.

Parameter Fungsi
adalah suatu pendefinisian nilai-nilai dari objek-objek yang dideklarasikan pada bagian argumen di fungsi. Nilai-nilai pada objek-objek tersebut didapat dari variabel-variabel yang barada pada program utama

§  Parameter formal adalah variabel yang terdapat pada daftar parameter yang berada di dalam definisi fungsi.
§  Parameter Aktual adalah variabel yang digunakan pada pemanggilan suatu fungsi.

Bentuk penulisan Parameter Formal dan Parameter Aktual.

Rounded Rectangle: Float jumlah(int x, int y)
{
  ... 
}
	Parameter formal 
Rounded Rectangle: Main()
{
  ...
  Jumlah(a,b);
  ...
}

	Parameter aktual

                                                                                   

 












Yang Perlu diperhatikan dalam pembuatan Fungsi berparameter :
1. Jumlah Parameter aktual dan parameter formal harus sama
2. Tipe data yang digunakan oleh parameter harus sama
3. Tipe pemanggilan fungsi


Pemanggilan Fungsi Berparameter

1. Pemanggilan Secara Nilai
2. Pemanggilan Secara Reference
3. Pemanggilan Return

Pemanggilan Secara Nilai(by Value)
pemanggilan fungsi dengan nilai akan menyebabkan nilai parameter aktual tidak akan berubah, walaupun nilai parameter formalnya berubah.

Pemanggilan Secara Reference
pemanggilan fungsi dengan nilai akan menyebabkan nilai parameter aktual berubah, dengan cara merubah nilai parameter formalnya. Untuk pemanggilan by reference memerlukan sebuah pointer ( * ) didepan nama parameter formalnya, dan ( & ) untuk nama parameter aktualnya.

Pemanggilan Secara Return
Dilakukan untuk melakukan pengiriman suatu nilai atau nilai dari suatu fungsi kepada fungsi yang lain yang memanggilnya. Buatlah rancangan perhitungan luas segitiga dengan tampilan seperti berikut :


Contoh Pemanggilan Fungsi :
// ----------------------------------------------------
// Contoh pembuatan dan pemanggilan fungsi
// ----------------------------------------------------

#include <iostream>
#include <iomanip>
#include <conio>

void garis();   // Prototipe fungsi garis()

int main()
{
    garis();

    cout << setiosflags(ios::left); // Atur rata kiri
    cout << setw(26) << "J U D U L  B U K U"
         << "PENGARANG" << endl;

    garis();  // Panggil kembali fungsi garis()

    cout << setw(26) << "Mastering Borland C++"
         << "Tom Swan" << endl;

    cout << setw(26) << "Pemrograman C++"
         << "Abdul Kadir" << endl;

    cout << setw(26) << "Pemrograman MATLAB"
         << "Feriza A. Irawan" << endl;

    garis();  // Panggil kembali fungsi garis()

    getch();
}

void garis()
{
    for (int i = 0; i < 49; i++)
        cout << '-';

    cout << endl;
}


PERTEMUAN 12
STRUCTURE
Struktur digunakan untuk mengelompokan sejumlah data yang mempunyai tipe data yang berbeda. Variabel-variabel yang membentuk sebuah struktur dinamakan elemen struktur.
Penggunaan Struktur menggunakan bentuk umum :
Rounded Rectangle: nama_structurenya.nama_variabelnya
 



Rounded Rectangle: Struct nama_tipe_struktur
{
Elemen_struktur;
...
...
};
Struct
{
Elemen_struktur;
...
...
}nama_tipe_struktur;
Bentuk Umum Struktur










// -----------------------------------------------------
// Contoh pembuatan dan pengaksesan struktur
// -----------------------------------------------------

#include <iostream.h>
#include <conio>
#include <stdio>

int main()
{
    struct data_tanggal
    {
        int tahun;
        int bulan;
        int tanggal;
    };

    data_tanggal tanggal_lahir; // deklarasi variabel struktur

    // Pengaksesan anggota struktur
    tanggal_lahir.tanggal = 1;
    tanggal_lahir.bulan = 9;
    tanggal_lahir.tahun = 1964;

    cout << tanggal_lahir.tanggal << '/'
         << tanggal_lahir.bulan << '/'
         << tanggal_lahir.tahun << endl;

    getch();
}


Menggabungkan Struktur dengan  Array dan Function
Rounded Rectangle: Struct
{
	Elemen_struktur;
	..............;
}nama_tipe_struktur[jml_index];
 





Keterangan:
Jml_index array dideklarasikan bisa di mana struktur atau di elemen struktur. Perbedaannya adalah jika di letakkan di nama struktur maka ketika digunakan yang punya pelaku perulangan adalah nama struktur. Sedangkan jika diletakkan di elemen struktur maka ketika digunakan yang punya pelaku perulangan adalah strukturnya.
Contoh Struct dengan Array
#include <stdio.h>
#include <conio.h>
#include <iostream.h>

main()
{
                int i;
struct
{
char nama[10];
char namabar[13];
int totbay;

}data[5];

clrscr();
                for(i=1;i<=2;i++)
{
cout<<"masukkan Nama Penyewa            =";cin>>data[i].nama;
cout<<"masukkan Nama Barang                                 =";cin>>data[i].namabar;
cout<<"masukkan Total Bayar Sewa          =";cin>>data[i].totbay;
}
cout<<endl;
cout<<"Data Penyewa Playstation:"<<endl;
                for(i=1;i<=2;i++)
{
cout<<"Data Ke- ="<<i<<endl;
cout<<"Nama Penyewa                                ="<<data[i].nama<<endl;
cout<<"Nama Barang                     ="<<data[i].namabar<<endl;
cout<<"Total Bayar                         ="<<data[i].totbay<<endl;
   }
getch();
}






PERTEMUAN 13
OBJECT ORIENTED PROGRAM (OOP)
OOP adalah pemrograman yang menitikberatkan kepada objek-objek untuk menyelesaikan tugas atau proses dari program tersebut. Sedangkan penitik beratkan ini dimaksudkan adanya interaksi pengiriman nilai, pesan atau pernyataan antar objek. Kemudian objek yang merespon hasil dari interaksi tersebut akan membentuk suatu tindakan atau aksi.

Class
Class adalah gambaran atau abstraksi karakter dan sifat dari suatu objek. Class juga dapat mendefinisikan ciri dan perilaku objek tersebut.

Object
Object(objek)adalah suatu data atau entitas yang berwujud maupun tidak berwujud, memiliki sifat (karakteristik) tertentu sesuai dengan kondisi atau status dari penggunaannya. Data atau entitas di dalam pemrograman dapat disebut dengan blok fungsi.
Contoh buku adalah suatu objek yang memiliki atribute(karakter) jenis, warna, panjang dll.

Methode
Metoda merupakan tata cara objek tersebut diperlakukan, atau penggunaan atau manfaat dari objek tersebut.
Buuku juga memiliki methode (perilaku) seperti dipotong, digunakan dll.

                                                                                       
                                                                                                                                                                               














Pada sebuah kelas, item-item di dalamnya bisa bersifat private atau public. Secara default,semua item di dalam kelas bersifat private. Jadi tanpa menuliskan kata kunci private, semua item di dalam kelas sudah private.

A.      Public pada class
Public (public) menyatakan bahwa deklarasi variabel atau item-item yang ada di dalam kelas dapat diakses dari luar kelas.


Contoh Public pada class

#include <iostream.h>
#include <conio.h>
#include <stdio.h>
class buku
{
public:
char judul[35];
char pengarang[25];
int jumlah;
};
main()
{
clrscr();
buku novel;
strcpy(novel.judul,"Meriam Benteng Navarone");
strcpy(novel.pengarang,"Alistair Maclean");
novel.jumlah=12;
cout<<novel.judul<<endl;
cout<<novel.pengarang<<endl;
cout<<novel.jumlah<<endl;
getch();
}



B.      Private pada class
Private digunakan pada kelas untuk memproteksi anggota-anggota tertentunya agar tidak dapat diakses dari luar kelas secara langsung.

Contoh Private Class :
#include<stdio.h>
#include<conio.h>
#include<iostream.h>

class barang
{
private:
char kobar;
char nabar[25];
int jumlah;
public:
penjelasan(char vini,char *vidi,int vici)
{
kobar=vini;
strcpy(nabar,vidi);
jumlah=vici;
}
info()
{
cout<<"Data Barang"<<endl;
cout<<"Kode Barang : "<<kobar<<endl;
cout<<"Nama Barang : "<<nabar<<endl;
cout<<"Jumlah Barang : "<<jumlah<<endl;
}
};
main()
{
clrscr();
barang databarang;
char A,B[25];
int C;
cout<<"DATA BARANG "<<endl;
cout<<"Kode Barang : ";cin>>A;
cout<<"Nama Barang : ";gets(B);
cout<<"Jumlah Barang : ";cin>>C;
cout<<endl<<endl;
clrscr();
databarang.penjelasan(A,B,C);
databarang.info();
getch();
}


Konstruktor
Konstruktor (constructor) merupakan suatu fungsi dari anggota suatu kelas yang memiliki nama yang sama dengan nama kelas fungsi itu berada.Konstruktor ini digunakan untuk mengalokasikan ruang untuk suatu objek dan untuk memberikan nilai awal.


Destruktor
Destruktor merupakan fungsi anggota yang dijalankan secara otomatis manakala suatu objek akan terbebas dari memori karena lingkup keberadaanya telah menyelesaikan tugasnya.
                Destruktor harus mempunyai nama yang sama dengan kelas dan diawali karakter
Tilde(~) atau karakter tak terhingga.
                Destruktor diguanakan secara khusus manakala suatu objek menggunakan memori dinamis selama keberadaannya dan kemudian melepaskan memori itu setelah tidak menggunakan lagi.



Contoh Fungsi Konstruktor dan Destruktor :

#include<conio.h>
#include<stdio.h>
#include<iostream.h>
#include<string.h>
class handphone
{
private:
char *merk;
int tp;
long hrg;
public:
handphone(char *nama ,int tipe,long harga);//konstruktor
~handphone();//destruktor
void keterangan();
};
void main()
{
clrscr();
handphone apple("i phone ",6,13000000);
handphone htc("htc ",6,7000000);
apple.keterangan();
htc.keterangan();
getch();
}
handphone::handphone(char *nama,int tipe,long harga)
{
merk=new char[25];//merubah data karakter menjadi string
strcpy(merk,nama);
tp=tipe;
hrg=harga;
}
handphone::~handphone()
{
delete[]merk;//menghapus memori karakter pada merk
}
void handphone::keterangan()
{
cout<<"\ntipe dan harga handphone:"<<endl;
cout<<"merk="<<merk<<endl;
cout<<"tipe="<<tp<<endl;
cout<<"harga handphone="<<hrg<<endl;
}




Karakteristik OOP
                Di dalam penggunaan konsep pemrograman yang berbasis objek atau yang disebut objek oriented pemrograman (OOP), haruslah memiliki karekteristik.adapun karakteristik tersebut adalah memiliki sifat turunan atau pewarisan (Inheritance), satu nama memiliki banyak sifat atau perilaku (Polymorphism),pembungusan sifat dari objek yang berbeda (Encapsulation).Berikut akan dijelaskan karakteristik OOP tersebut.

Pembungkusan (Encapsulation)
Pembungkusan (Encapsulation) adalah proses penggabungan data -data dan fungsi -fungsi yang berkaitan dalam suatu objek.

Pewarisan sifat (Inheritance)
Dalam OOP, kita dapat menciptakan objek baru (objek turunan/derived class) yang dalam objek baru tersebut terdapat sifat objek induknya ( objek induknya (ancestor / base class ).
Hal ini dikenal dengan pewarisan sifat. Dengan fitur tersebut kita dapat membuat objek baru yang memiliki kemampuan lebih dibanding induknya.

Polimorfisme
Polimorfisme adalah proses kebanyakrupaan. Misalnya kita mempunyai 5 buah mobil (dalam program dianggap sebagai 5 objek). Kita memerintakan untuk bergerak dengan kecepatan maksimal, maka tiap mobil akan berjalan dengan kecepatan yang mungkin berbeda sesuai dengan karakteristiknya.







1 komentar: