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++
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.
![]() |
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( );
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:
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:

B.
Perintah If ... else
Bentuk
Umum:

C. Perintah If... else majemuk
Bentuk
Umum:
![]() |
D. Perintah If dalam If
Perintah
if dalam if sering disebut nested-if. Perintah ini mempunyai bentuk umum
sebagai berikut:
Bentuk
Umum :
![]() |
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:
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<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:
![]() |
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 :
![]() |
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 :
![]() |
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
![]() |
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
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 :

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.

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 :

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
![]() |
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.
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.





![Rounded Rectangle: Tipe_Data Nama_Variabel[ukuran]](file:///C:/Users/Lenovo/AppData/Local/Temp/msohtmlclip1/01/clip_image070.gif)
![Rounded Rectangle: Tipe_data nama_array[jml_elemen]={nilai array};](file:///C:/Users/Lenovo/AppData/Local/Temp/msohtmlclip1/01/clip_image071.gif)
![Rounded Rectangle: Struct
{
Elemen_struktur;
..............;
}nama_tipe_struktur[jml_index];](file:///C:/Users/Lenovo/AppData/Local/Temp/msohtmlclip1/01/clip_image094.gif)