Pengenalan Bahasa Pemrograman C++
Bahasa Pemrograman C++ adalah bahasa Pemrograman Komputer Tingkat Tinggi (High Level Language), tapi C++ juga dimungkinkan untuk menulis Bahasa Pemrograman Tinggkat Rendah (Low Level Language) di dalam pengkodean.
karena C++ merupakan perluasan dari Bahasa Pemrograman C yang tergolong dalam Bahasa Pemrograman Tingat Menengah (Middle Level Language), yang berarti Bahasa Pemrograman C++ memiliki semua fitur dan kelebihan yang bahasa pemrograman C miliki, termasuk kelebihan Bahasa C yaitu kita dimungkinkan untuk menggunakan Bahasa Pemrograman Assembly di dalam pengkodingan C, dan juga menyediakan fasilitas untuk memanipulasi memori tingkat rendah.
C++ adalah bahasa pemrograman komputer yang di buat oleh Bjarne Stroustrup, yang merupakan perkembangan dari bahasa C dikembangkan di Bell Labs (Dennis Ritchie) pada awal tahun 1970-an, bahasa itu diturunkan dari bahasa sebelumnya, yaitu Bahasa B. Pada awalnya, bahasa tersebut dirancang sebagai bahasa pemrograman yang dijalankan pada sistem Unix. Pada perkembangannya, versi ANSI (American National Standards Institute).
Pada bahasa pemrograman C menjadi versi dominan, meskipun versi tersebut sekarang jarang dipakai dalam pengembangan sistem dan jaringan maupun untuk sistem embedded. Bjarne Stroustrup pada Bell Labs pertama kali mengembangkan C++ pada awal 1980-an. Untuk mendukung fitur-fitur pada C++, dibangun efisiensi dan sistem support untuk pemrograman tingkat rendah (low level coding).
Pada C++ ditambahkan konsep-konsep baru seperti class dengan sifat-sifatnya seperti inheritance dan overloading. Salah satu perbedaan yang paling mendasar dengan bahasa C adalah dukungan terhadap konsep pemrograman berorientasi objek (object-oriented programming).
Standardisasi C++
Year
|
C++ Standard
|
Informal name
|
2011
|
ISO/IEC 14882:2011
|
|
2007
|
ISO/IEC TR 19768:2007
|
|
2003
|
ISO/IEC 14882:2003
|
C++03
|
1998
|
ISO/IEC 14882:1998
|
C++98
|
Pada tahun 1998, C++ Standar Komite (ISO/IEC JTC1/SC22/WG21 Working Group) mengeluarkan Standar Internasional ISO/IEC 14882:1998 yang digunakan selama beberapa tahun. Pada tahun 2003 dirilis versi yang telah dikoreksi, ISO/IEC 14882:2003. Pada tahun 2005, Laporan Teknis yang disebut "Laporan Teknis Perpustakaan 1" (sering dikenal sebagai TR1) dirilis. Revisi terbaru dari standar C++ adalah C+11 (sebelumnya dikenal C++0x) telah disetujui oleh ISO/IEC pada tanggal 12 Agustus 2011 dan telah diterbitkan sebagai 14882:11.
Fitur-fitur C ++
Merupakan salah satu bahasa pemrograman yang paling banyak digunakan di dunia dan hampir semua program di dunia dibuat dengan menggunakan C/C++.
Portable. Karena memiliki banyak kompiler yang berjalan di berbagai platform dan secara eksklusif menggunakan Standar Library C++ yang akan berjalan pada banyak platform dengan tidak adanya perubahan fungsi-fungsi pada Library C++.
Mendukung Manifest dan Inferred Typing. Fitur tersebut sudah ada semenjak kelahiran C++ pertama hingga C++ Modern saat ini, C ++ memungkinkan fleksibilitas dan juga menyediakan kesederhanaan dalam menulis program.
C++ Menawarkan banyak pilihan paradigma. Beberapa adalah paradigm yang sangat terkenal dalam C++ adalah menawarkan dukungan luar biasa untuk Pemrograman Prosedural, Generik, Berorientasi Objek (OOP) dan masih banyak paradigm yang memberikan kemudahan untuk programmer C++.
Memiliki dukungan Library yang luar biasa. C++ memiliki Standar Library C++ yang memiliki banyak sekali fungsi dan tidak hanya itu, banyak juga programmer lain yang mengembangkan C++ dan membuat Library tambahan yang sangat berguna.
Bahasa yang dikompilasi. C ++ mengkompilasi langsung ke bahasa mesin, yang menjadikanya menjadi salah satu bahasa pemrograman tercepat di dunia.
Sekali lagi menawarkan Fleksibilitas dalam mendukung kedua statis dan dinamis type checking. C++ memungkinkan tipe conversions untuk diperiksa disaat mengkompilasi program atau saat jalanya program (run-time).
C++ merupakan bahasa turunan dari bahasa pemrograman C, dan C++ dapat menggunakan dan mempunyai semua fasilitas yang ada dalam bahasa pemrograman C tanpa perubahan sedikitpun dalam fungsi-fungsi C. dan juga C++ dapat melakukan pemrograman Assembly langsung di dalam program yang merupakan fitur turunan dari C.
Dan masih banyak lagi, kalian akan menyadarinya jika sudah merasakan dan menjadi programmer C++.
Contoh Program C++
Program c++ selisih waktu dan konversi bilangan
struktur percabangan IF dalam c++
Fungsi Rekursif
Fungsi Overloading
Program Booking Kamar Hotel
Program Fungsi Dengan Nilai Balik
Program Kalkulator Sederhana C++
Program Gaji Karyawan
Kata yang dipesan
Kelompok pertama
C++ mempunyai 32 buah kata yang dipesan (reserved words). Kata kunci kelompok pertama merupakan turunan dari bahasa C, di antaranya:
auto
|
const
|
double
|
int
|
short
|
struct
|
unsigned
|
|
break
|
continue
|
else
|
for
|
long
|
signed
|
switch
|
void
|
case
|
default
|
enum
|
goto
|
register
|
sizeof
|
typedef
|
volatile
|
char
|
do
|
extern
|
if
|
return
|
static
|
union
|
while
|
Kelompok kedua
Kata yang dipesan kelompok kedua berjumlah 30. Kata-kata ini adalah baru dan hanya ada di bahasa C++.
asm
|
dynamic_cast
|
namespace
|
reinterpret_cast
|
try
|
bool
|
explicit
|
new
|
static_cast
|
typeid
|
catch
|
false
|
operator
|
template
|
typename
|
class
|
friend
|
private
|
this
|
using
|
const_cast
|
inline
|
public
|
throw
|
virtual
|
delete
|
mutable
|
protected
|
true
|
wchar_t
|
Kata-kata yang dipesan tersebut di atas tidak boleh dipakai sebagai nama variable, class, enum, macro, dan struct.
# include <stdio.h>
int maksimum (int,int);
void tulis (int);
main()
int nilai 1,nilai 2,nilai maks;
printf (*\n ketikkan dua bilangan bulat:);
scanf("%d%d",& nilai 1,nilai 2);
nilai maks=maksimum (nilai 1,nilai 2);
tulis(nilai maks);
returns 0;
int maksimum(int x1,int x2)
if (x1>x2)
return x1;
else
return x2;
void tulis(int x)
printf("\n hasilnya adalah:%d",x);
Tipe data dasar
Untuk menyimpan suatu variabel diperlukan tempat khusus di dalam memori komputer. Besar dan tipe dari variabel-variabel di dalam standar program C++ dispesifikasikan sebagai berikut.
Nama
|
Keterangan
|
Ukuran
|
Jangkauan
|
char
|
Abjad/karakter atau untuk bilangan
bulat kecil
|
1 byte
|
signed: -128 to 127
unsigned: 0 to 255
|
short int (short)
|
Bilangan bulat dengan jangkauan pendek
|
2 byte
|
signed: -32768 to 32767
unsigned: 0 to 65535
|
int
|
Bilangan bulat
|
4 byte
|
signed: -2147483648 to 2147483647
unsigned: 0 to 4294967295
|
long int (long)
|
Integer dengan jangkauan panjang
|
4 byte
|
signed: -2147483648 to 2147483647
unsigned: 0 to 4294967295
|
bool
|
Boolean, dapat bernilai benar atau
salah (true or false)
|
i byte
|
true or false
|
float
|
Angka dengan titik mengambang (bilangan
cacah)
|
4 byte
|
3.4e +/- 38 (7 digit)
|
double
|
Bilangan cacah dengan ketelitian ganda
|
8 byte
|
1.7e +/- 308 (15 digits)
|
long double
|
Bilangan cacah dengan ketelitian ganda
panjang
|
8 byte
|
1.7e +/- 308 (15 digits)
|
wchar_t
|
Karakter lebar, biasa dipakai untuk
Unicode karakter
|
2 byte
|
1 karakter lebar
|
Beberapa contoh operator dalam C++
Pada dasarnya, ada tiga jenis operator dalam pemrograman C++:
Operator Unary - operator yang dikenakan untuk satu buah nilai (operand).
Operator Binary - operator yang dikenakan untuk dua buah nilai (operand).
Operator Ternary - operator yang dikenakan untuk tiga buah nilai (operand)
Dengan catatan jika kita hanya melihat dari jumlah operand.
Berikut ini adalah contohnya:
- c //Binary
a + b //Unary
(a ? b : c) //Ternary
Namun yang akan kita bahas kali ini bukan itu, kita akan mempelajari macam-macam operator yang ada dalam pemrograman C++ berserta fungsi dan contoh programnya.
Berikut adalah daftar operator yang dapat anda jadikan acuan pembuatan program.
#1 Assignment Operators
Yang pertama kita akan mengenal Assignment Operator.
Sesuai namanya, operator ini berfungsi untuk memberikan nilai kepada variabel. Kita akan menggunakan = ( tanda sama dengan ) untuk memberi nilai.
Berikut cara penggunaanya:
nama = "Soden";
umur = 21;
Berikut contoh program sederha penggunaan assignment operator pada C++:
#include <iostream>
using namespace std;
int main ()
{
int a, b; // a:?, b:?
a = 10; // a:10, b:?
b = 4; // a:10, b:4
a = b; // a:4, b:4
b = 7; // a:4, b:7
cout << "a:";
cout << a;
cout << " b:";
cout << b;
}
Lalu outputnya adalah:
a:4 b:7
Mengapa hal itu bisa terjadi demikian?
Jika kita perhatkan, kita mendeklarasikan variabel a dan b. Lalu kita memberikan nilai 10 untuk a dan 4 untuk b pada awalnya. Lalu kita memberikan nilai b terhadap variabel a.
Perhatikan bagaimana sebuah variabel tidak terpengaruh oleh modifikasi akhir dari b, meskipun kita menyatakan a = b sebelumnya, anda pasti paham maksud saya.
Karena sebuah operasi akan selalu berlangsung dari kanan ke kiri.
Dan variabel hanya akan menyimpan data atau nilai terakhir yang diberikan.
#2 Arithmetic Operators
Yang kedua adalah operator aritmetika.
Operator ini digunakan untuk melakukan sebuah opearasi penghitungan atau aritmatika dalam bahasa pemrograman. Tugasnya untuk memecahkan masalah matematika.
Operator aritmatika yang sering digunakan dalam C++ adalah:
+ untuk penjumlahan
- untuk pengurangan
* untuk perkalian
/ untuk pembagian
% untuk sisa bagi (modulo)
Berikut adalah contoh penggunaanya:
x = 11 % 3;
Dan tentunya hasil opeasi diatas dapat ditebak, ya hasilnya adalah 2, karena disini kita mencari sisa bagi dimana hasil bagi 11 dan 3 = 3, sedangkan sisa baginya adalah 2.
#3 Compound Assignment
Operator ini memodifikasi nilai variabel saat ini dengan melakukan operasi di atasnya.
Operator
|
Keterangan
|
Contoh Penggunaanya
|
+=
|
Penjumlahan
|
z += x sama dengan, z = z + x
|
-=
|
Pengurangan
|
z -= x sama dengan, z = z - x
|
*=
|
Perkalian
|
z = x sama dengan, z = z x
|
/=
|
Pembagian
|
z /= x sama dengan, z = z / x
|
>>=
|
Right shift AND
|
z >>= 2 sama dengan, z = z
>> 2
|
<<=
|
Left shift AND
|
z <<= 2 sama dengan, z = z
<< 2
|
&=
|
Bitwise AND
|
z &= 2 sama dengan, z = z & 2
|
^=
|
Bitwise exclusive OR
|
z ^= 2 sama dengan, z = z ^ 2
|
Berikut contoh program c++ menggunakan Compound Assignment.
#include <iostream>
using namespace std;
int main ()
{
int a, b=3;
a = b;
a += 2; // sama dengan a = a + 2
cout << a;
}
Intinya: "menggunakan dua operand dan memberikan hasilnya ke operand kiri".
#4 Increment and Decrement Operators
Kedua operator ini sangatlah penting:
Operator Increment (++) dan operator decrement (--) digunakan untuk meningkatkan atau mengurangi satu nilai yang tersimpan dalam sebuah variabel.
Maksudnya seperti ini:
x = x + 1 ;
y = y - 1 ;
Jika sebelumnya anda menulis kode seperti datas..
..maka akan sama hasilnya dengan kode berikut:
++ x ;
-- y ;
//atau
x ++ ;
y -- ;
TIPS: Operator Increment adalah operator yang digunakan untuk menaikan nilai variabel sebesar 1, sedangkan decrement digunakan untuk menurunkan nilai sebesar 1.
Berikut contoh program Increment dalam C++:
#include <iostream>
using namespace std;
int main ()
{
int a, b;
a = 3;
b = ++a;
cout << "a:" << a;
cout << " b:" << b;
}
Jika anda paham konsepnya anda pasti tahu hasil akhir dari variabel a akan bernilai 4, dan b bernilai 4 karena nilai dari b adalah nilai a yang telah ditingkatkan.
Kemudian nantinya anda akan mendengar istilah:
Pre Increment (++c)
dan Post Increment (c++).
Yang membedakannya adalah:
Jika Pre-increment akan menenambahkan nilai 1 sebelum operasi lain dijalankan, maka Post-increment akan menambahkan 1 nilai sesudah proses lain dijalankan.
Silahkan coba kode program berikut ini:
#include <iostream>
using namespace std;
int main(){
// Mendeklarasikan Variabel j
int j;
// Mengisi nilai kedalam Variabel j
// dengan nilai 10
j = 10;
// Melakukan Pre-Increment
cout<<"Nilai j awal : "<<j<<endl;
cout<<"Nilai ++j : "<<++j<<endl;
cout<<"Nilai Kj : "<<j<<endl;
// Mengubah nilai yang terdapat dalam variabel j
// dengan nilai 20
j = 20;
// Melakukan Post-Increment
cout<<"\nNilai j awal : "<<j<<endl;
cout<<"Nilai j++ : "<<j++<<endl;
cout<<"Nilai j : "<<j<<endl;
return 0;
}
Anda akan sering menemukannya operator tersebut dalam program looping.
#5 Relational and Comparison Operators
Operator selanjutnya adalah operator relasi - operator ini akan banyak kita gunakan dalam suatu statement bersyarat yang selalu menghasilkan nilai true atau false.
Nantinya kita akan sering menggunakan operator ini untuk menentukan kondisi.
Operator Keterangan
== Sama dengan
!= Tidak sama dengan
> Lebih dari
< Kurang dari
>= Lebih dari atau sama dengan
<= Kurang dari atau sama dengan
Operator ini digunakan untuk menguji hubungan antara nilai dan atau variabel.
Berikut contoh penggunaanya dalam program:
#include <iostream>
using namespace std;
void main() {
bool nilai;
nilai = 3 > 2 ; // hasil ungkapan : benar
cout << "Nilai = " << nilai;
nilai = 2 > 3 ; // hasil ungkapan : salah
cout << "Nilai = " << nilai;
}
Dan berikut adalah hasil akhirnya:
Nilai = 1
Nilai = 0
#6 Logical Operators
Operator Logika adalah operator yang digunakan untuk membandingkan dua nilai variabel atau lebih. Hasil dari operasi ini adalah nilai boolean true atau false.
Operator
|
Keterangan
|
&&
|
AND - Jika semua operand bernilai
benar (TRUE) maka kondisi bernilai benar.
|
||
|
OR - Jika salah satu operand
bernilai benar (TRUE) maka kondisi bernilai benar.
|
!
|
NOT - Digunakan untuk membalik
kondisi. Jika kondisi benar (TRUE) maka akan berubah menjadi salah (FALSE),
begitu pula sebaliknya.
|
Berikut adalah contoh penggunaanya:
( (5 == 5) && (3 > 6) ) // Hasil = false, karena ( true && false )
( (5 == 5) || (3 > 6) ) // Hasil = true, karena ( true || false )
#7 Conditional Ternary Operator
Pada dasarnya, operator kondisi merupakan penyederhanaan dari bentuk if..else yang setiap blok dari if dan else hanya terdiri dari satu statement/perintah.
Struktur penulisan operator kondisi:
(ekspresi) ? (jika benar) : (jika salah);
Berikut contoh dalam program c++:
#include <iostream>
using namespace std;
int main ()
{
int a,b,c;
a=2;
b=7;
c = (a>b) ? a : b;
cout << c;
}
#8 Comma Operator
Operator koma (,) memiliki beberapa fungsi, yaitu:
Untuk memisahkan deretan deklarasi variabel
Untuk memisahkan argumen fungsi
menyatukan dua ekspresi menjadi sebuah pernyataan, dan
memungkinkan pemberian lebih dari satu ekspresi pada inisialisasi nilai awal.
Berikut contoh program dengan operator koma:
#include <iostream>
using namespace std;
int main ()
{
int a,b;
a = (b=3, b+2);
cout << a;
}
Agak rumit namun penjelasanya seperti ini: Pertama variabel b akan diberi nilai 3, kemudian nilai b (3) akan dijumlahkan dengan 2 sehingga variabel a bernilai 5.
#9 Bitwise Operators
Operator bitwise adalah operator yang digunakan untuk memanipulasi bit-bit nilai data yang ada di memori. Operator ini hanya dapat digunakan untuk tipe data:
char
int
long int
Untuk operator bitwise dalam bentuk bit, dilakukan dalam bit per bit (binary).
& AND Bitwise AND
| OR Bitwise inclusive OR
^ NOT Unary complement (bit inversion)
<< SHL Shift bits left
>> SHR Shift bits right
Tabel kebenanaran:
p
|
q
|
p & q
|
p | q
|
p ^ q
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
0
|
1
|
1
|
1
|
1
|
1
|
1
|
0
|
1
|
0
|
0
|
1
|
1
|
Jika kita asumsikan memiliki nilai A = 63 dan B = 13, mari kita ubah menjadi biner:
A = 0011 1100
B = 0000 1101
Sehingga akan menjadi:
A&B = 0000 1100
A|B = 0011 1101
A^B = 0011 0001
~A = 1100 0011
#10 Operator Lainnya
Berikut adalah operator lainnya yang didukung oleh bahasa C++:
Operator
|
Keterangan
|
sizeof
|
Untuk mengembalikan nilai dari ukuran
variabel. Contoh sizeof(a), dimana ‘a’ adalah integer maka akan
mengembalikan nilai 4
|
. (dot) and -> (arrow)
|
Operator member yang digunakan untuk
mereferensikan member class, structures, dll.
|
Cast
|
Untuk mengkonversi suatu data ke tipe
data lain. Contohnya int(2.2000) akan menjadi 2
|
*
|
Digunakan sebagai operator pointer
|
Dan berikut adalah daftar operator berdasarkan kategorinya:
Category
|
Operator
|
Associativity
|
Postfix
|
() [] -> . ++ - -
|
Left to right
|
Unary
|
+ - ! ~ ++ - - (type)* & sizeof
|
Right to left
|
Multiplicative
|
* / %
|
Left to right
|
Additive
|
+ -
|
Left to right
|
Shift
|
<< >>
|
Left to right
|
Relational
|
< <= > >=
|
Left to right
|
Equality
|
== !=
|
Left to right
|
Bitwise AND
|
&
|
Left to right
|
Bitwise XOR
|
^
|
Left to right
|
Bitwise OR
|
|
|
Left to right
|
Logical AND
|
&&
|
Left to right
|
Logical OR
|
||
|
Left to right
|
Conditional
|
?:
|
Right to left
|
Assignment
|
= += -= *= /= %=>>= <<=
&= ^= |=
|
Right to left
|
Comma
|
,
|
Left to right
|
Kompilator C++
Acorn C/C++
Borland C++
C++/CX
C++Builder
Cfront
Clang
CodeWarrior
Comeau C/C++
ConceptGCC
Digital Mars
GNU Compiler Collection
HP aC++
IBM XL C++
Intel C++ Compiler
MinGW
Norcroft C compiler
Open64
Oracle Solaris Studio
PathScale
The Portland Group
ROSE (compiler framework)
Shed Skin
Softune
TenDRA Compiler
THINK C
Turbo C++
Visual C++
IBM VisualAge
Watcom C/C++ compiler
Zortech
CodeBlocks
DevC++
Keluarga bahasa pemrograman C++
Algorithmic skeleton
C++/CLI
C++/CX
Charm++
Embedded C++
Felix (programming language)
Intel Array Building Blocks
Intel Parallel Studio
Managed Extensions for C++
R++
Sieve C++ Parallel Programming System
Threading Building Blocks
ΜC++
untuk mempelajari bahasa pemrograman c dan juga bahasa pemrograman c++ ini caranya cukup mudah kalian hanya harus menghafal prosedur, fungsi, dan elemen elemen pendukung lain.
dalam proses belajar c++ pemula kalian juga harus mempelajari bahasa inggris dahulu karena bahsa pemrograman mempunyai dasar bahasa inggris, mau itu bahsa pemrograman c/c++ atau bahsa pemrograman lain pasti menggunakan dasar bahsa inggris.
Posting Komentar untuk "Pengenalan Bahasa Pemrograman C++"
Dilarang Berkomentar Menggunakan Kata-Kata Kasar, Link Aktif, Pornografi, Perjudian dan Sejenisnya!!!