Sabtu, 07 Oktober 2017

Apa itu FLOWCHART???

"FLOWCHART"

Flowchart adalah penyajian yang sistematis tentang proses dan logika dari kegiatan penanganan informasi atau penggambaran secara grafik dari langkah-langkah dan urut-urutan prosedur dari suatu program. Flowchart menolong analis dan programmer untuk memecahkan masalah kedalam segmen-segmen yang lebih kecil dan menolong dalam menganalisis alternatif-alternatif lain dalam pengoperasian. System flowchart adalah urutan proses dalam system dengan menunjukkan alat media input, output serta jenis media penyimpanan dalam proses pengolahan data. Program flowchart adalah suatu bagan dengan simbol-simbol tertentu yang menggambarkan urutan proses secara mendetail dan hubungan antara suatu proses (instruksi) dengan proses lainnya dalam suatu program

 PEDOMAN-PEDOMAN DALAM MEMBUAT FLOWCHART 

Jika seorang analis dan programmer akan membuat flowchart, ada beberapa petunjuk yang harus diperhatikan, seperti : 
1. Flowchart digambarkan dari halaman atas ke bawah dan dari kiri ke kanan. 
2. Aktivitas yang digambarkan harus didefinisikan secara hati-hati dan definisi ini harus dapat dimengerti oleh pembacanya. 
3. Kapan aktivitas dimulai dan berakhir harus ditentukan secara jelas. 
4. Setiap langkah dari aktivitas harus diuraikan dengan menggunakan deskripsi kata kerja, misalkan Melakukan penggandaan diri. 
5. Setiap langkah dari aktivitas harus berada pada urutan yang benar. 
6. Lingkup dan range dari aktifitas yang sedang digambarkan harus ditelusuri dengan hati-hati.  Percabangan-percabangan yang memotong aktivitas yang sedang digambarkan tidak perlu digambarkan pada flowchart yang sama. Simbol konektor harus digunakan dan percabangannya diletakan pada halaman yang terpisah atau hilangkan seluruhnya bila percabangannya tidak berkaitan dengan sistem. 
7. Gunakan simbol-simbol flowchart yang standar.

Simbol-Simbol Flowchart :


Contoh: 

Buatlah algoritma untuk menghitung sisa bagi antara bilangan dengan 2, apakah sisa ataukah tidak sisa,jika sisa maka maka cetak genap jika tidak sisa maka cetak ganjil.


Nah setelah mengerti apa itu flowchart? Bagaimana menuliskan suatu algoritma ke dalam flowchart, selanjutnya yah teruskan ke bagian coding (penulisan code programnya) compile/jalanka Happy programming!!!💓💓💓


Referensi: Algoritma dan Flowchart Flowchart ,Dian Palupi Rini Analisis dan Perancangan Sistem

Jumat, 06 Oktober 2017

PERULANGAN DI CODE BLOCKS

   Dalam bahasa C++ tersedia suatu fasilitas yang digunakan untuk melakukan proses yang berulangulang sebanyak keinginan kita. Misalnya saja, bila kita ingin menginput dan mencetak bilangan dari 1 sampai 100 bahkan 1000, tentunya kita akan merasa kesulitan. Namun dengan struktur perulangan proses, kita tidak perlu menuliskan perintah sampai 100 atau 1000 kali, cukup dengan beberapa perintah saja. Struktur perulangan dalam bahasa C mempunyai bentuk yang bermacam-macam.

Sebuah / kelompok instruksi diulang untuk jumlah pengulangan tertentu. Baik yang terdifinisikan sebelumnya ataupun tidak.
Struktur pengulangan terdiri atas dua bagian :

(1) Kondisi pengulangan yaitu ekspresi boolean yang harus dipenuhi untuk melaksanakan                          pengulangan;
(2) Isi atau badan pengulangan yaitu satu atau lebih pernyataan (aksi)
      yang akan diulang.

Perintah atau notasi dalam struktur pengulangan adalah :

1) Pernyataan while
2) Pernyataan do..while
3) Pernyataan for
4) Pernyataan continue dan break
5) Pernyataan go to

(1) Struktur Perulangan “ WHILE”

Perulangan WHILE banyak digunakan pada program yang
terstruktur. Perulangan ini banyak digunakan bila jumlah perulangannya
belum diketahui. Proses perulangan akan terus berlanjut selama
kondisinya bernilai benar (≠0) dan akan berhenti bila kondisinya bernilai
salah (=0).

Bentuk Umumnya :


Pengujian ungkapan pada while dilakukan sebelum bagian pernyataan,
Oleh karena itu ada kemungkinan bagian pernyataan pada while tidak
dijalankan sama sekali, yaitu kalau kondisi yang pertama kali bernilai salah.
Perhtikan gambar flowchart berikut :

Catatan :

Jika menggunakan while pastikan bahawa pada suatu saat ungkapan pada while bernilai salah. Jika tidak demikian pernyataan yang mengikutinya akan dijalankan selamanya.
Berikut contoh program perulangan dengan while untuk menampilkan “ C++” sebanyak 10 kali.

kondisi pernyataan
salah
benar

//Program menampilkan “ C++ “ sebanyak 10 kali dengan while
# include <iostream.h>
# include <conio.h>
void main( )
{
int i ; // sebagai variabel pencacah untuk menyatakan
jumlah tulisan sebanyak 10 kali.
clrscr ( );
i = 0 // mula-mulai I diisi dengan 0
while ( i < 10)
{
cout << “ c++ “ << endl;
i ++; // menaikkan pencacah sebesar 1
}
}

(2) Struktur do-while

Pada dasarnya struktur perulangan do....while sama saja dengan struktur while, hanya saja pada proses perulangan dengan while, seleksi berada di while yang letaknya di atas sementara pada perulangan do....while, seleksi while berada di bawah batas perulangan. Jadi dengan menggunakan struktur do…while sekurang-kurangnya akan terjadi satu kali perulangan.
Pada struktur do-while kondisi pengecekan ditempatkan di bagian akhir. Hal ini menyebabkan struktur pengulangan ini minimal akan melakukan satu kali proses walaupun kondisi yang didefinisikan tidak terpenuhi (bernilai salah). Bentuk umum dari struktur do-while


Catatan :

 Bagian pernyataan1 hingga N dijalankan secara berulang sampai dengan ungkapan bernilai salah        (=0).
 Berbeda dengan while, pengujian ungkapan dilakukan di bagian belakang (setelah bagian                    pernyataan).
 Dengan demikian bagian pernyataan pada pengujian do – while minimal akan dijalankan satu kali.

Perhatikan bentuk flowchart do .. while berikut ini:

Berikut program modifikasi prgram sebelumnya untuk menampilkan
tulisan C++ 10 kali dengan do – while.

//Program menampilkan “ C++ “ sebanyak 10 kali dengan do –
while *
# include <iostream.h>
# include <conio.h>
void main( )
{
int i ; // sebagai variabel pencacah untuk menyatakan
jumlah tulisan sebanyak 10 kali.
clrscr ( );
i = 0 // mula-mulai I diisi dengan 0
kondisi
pernyataan
salah
benar
Gambar 22. Diagram flowchart perulanagn dengan Do - While
57
do
{
cout << “ c++ “ << endl;
i ++; // menaikkan pencacah sebesar 1
} while ( i < 10);
}

(3) Struktur Perulangan “FOR”

Struktur perulangan for biasa digunakan untuk mengulang suatu
proses yang telah diketahui jumlah perulangannya. Dari segi penulisannya,
struktur perulangan for tampaknya lebih efisien karena susunannya lebih
simpel dan sederhana.
Pernyataan for digunakan untuk melakukan looping. Pada umumnya
looping yang dilakukan oleh for telah diketahui batas awal, syarat looping
dan perubahannya. Selama kondisi terpenuhi, maka pernyataan akan terus
dieksekusi.

Bentuk umum perulangan for adalah sebagai berikut :


Keterangan :

 Ungkapan1 merupakan pernyataan inisialisasi
 Ungkapan 2 sebagai kondisi yang menentukan pengulangan thd pernyataan
 Ungkapan 3 sebagai pengatur variabel yang digunakan di ungkapan1

Contoh program FOR untuk menampilkan bilangan genap

//Program FOR untuk menentukan bilangan genap, yang
//ditampilakn dari besar ke kecil menuji nol

# include <iostream.h>
# include <conio.h>
void main( )
{
int n;
clrscr ( );
for ( ungkapan1; ungkapan2; ungkapan3)
Pernyataan;
cout <<" menampilkan deret bilangan genap "<<endl;
cout <<" kurang atau sama dengan n"<<endl;
cin >> n;
// jika bilangan ganjil, maka kurangi sebesar 1
if (n % 2)
n- - ;
// tampilkan deret bilangan genap dari besar
//ke kecil menuju nol
for ( ; n>= 0; n-=2)
cout << n << ' ' ;
}

Pernyataan for dapat berada di dalam pernyataan for lainnya yang biasa disebut nested for.

Contoh program For di dalam for sbb :

//Program untuk menampilkan bentu segituga karakter ‘*’
//dengan menggunakan for di dalam for

# include <iostream.h>
# include <conio.h>
void main( )
{
int tinggi, //menyatakan tinggi puncak
baris, //pencacah untuk baris
kolom; //pencacah untuk kolom
clrscr ( );
cout << “Tinggi segi tiga : “;
cin >> tinggi;
cout <<endl;
for (baris = 1; baris <= tinggi; baris++)
{
for (kolom = 1; kolom <= baris ; kolom++)
cout <<’*’;
cout << endl;
}
}

(4) Pernyataan Break (dalam Perulangan)

Di samping break digunakan untuk pernyataan switch, juga bisa
digunakan pada For, while dan do-while. Intinya sama yakni untuk keluar
dari pernyataan-pernyataan itu.



(a) While – break (b) For - Break

Efek dari break dari while dapat dicontohkan program sbb :
//Contoh program efek break pada while

# include <iostream.h>
# include <conio.h>
void main( )
{
Int bil = 1;
clrscr ();
while (bil <= 10)
{
if (bil > 5)
break;
cout << bil<< endl;
bil++;
}
}
For ( ; ; )
{
If (…)
Break;
} akhir for
cout<<”Selesai””<<endl;
While (…..)
{
If (…)
Break;
} akhir while
cout<<”Selesai””<<endl;

Berikut contoh program efek break pada for

# include <iostream.h>
# include <conio.h>
void main( )
{
char karakter;
clrscr ();
cout <<” anda bisa ngetik apasaja”<<endl;
cout <<” sampai tombol esc anda tekan”<<endl;
for ( ; ; )
{
karakter = getche(); //baca tombol
if (karakter == 27) //escape
break;
}
}

(5) Pernyataan continue

Kegunaannya kebalikannya dari break. Dipakai untuk mengarahkan eksekusi ke putaran atau iterasi berikutnya pada pernyataan perulangan. Efek dari perintah continue:

1) Pada for:
Ungkapan ke tiga pada for (ungkapan terkanan yg terletak di dalam () pada for) akan dijalankan dan kemudian ungkapan ke dua diuji lagi.
2) Pada while dan do- while :
Pengujian terhadap ungkapan pada while dilakukan kembali.


Contoh untuk menunjukkan efek continue pada pernyataan for:

//Program continue pada for
# include <iostream.h>
# include <conio.h>
void main( )
{
int bil;
clrscr ();
for (bil = 0; bil < 10; bil++)
{
cout << bil << ' ';
continue;
cout <<" perhatikan apakah saya muncul ? " << endl;
}
}

Dalam hal ini cout <<” perhatikan apakah saya muncul ? “ << endl;
tidak pernah muncul. Yang muncul adalah bilangan : 0 1 2 3 4 5 6 7 8 9
Berikut contoh penggunaan continue pada while. Dalam hal ini jika nilai yang dimasukkan melebihi 100, pernyataan continue akan mengarah ke while (1) kondisi.

// * Program pemakaian continue pada while
// nilai kalau lebih dari 100 akan ditolak
// program untuk menghitung nilai rerata dari masukkan
data
# include <iostream.h>
# include <conio.h>
void main( )
{
int pencacah;
float nilai, total;
clrscr();
cout << " **Menghitung nilai rerata **"<<endl;
cout <<" Akhiri dengan memasukkan nilai negatif" <<endl;
62
pencacah = 0;
total = 0;
while (1) // ungkapan selalu benar
{
cout << " nilai ke - "<< pencacah+1 <<" = ";
cin >> nilai;
if (nilai > 100)
{
cout <<" nilai di atas diabaikan " << endl;
continue ;
}
if (nilai < 0)
break;
pencacah++;
total += nilai;
}
cout << " jumlah nilai = " <<pencacah << endl;
cout << " nilai rerata = " << total/pencacah << endl;
}

(6) Pernyataan goto

Pernyataan goto, diperlukan untuk melakukan suatu lompatan
ke suatu pernyataan berlabel yang ditandai dengan tanda “ : “.
Bentuk umumnya adalah :


Pada contoh diatas, pada saat goto ditemukan maka program akan melompat pernyataan berlabel bawah dan melakukan pernyataan 3.

Contoh :
// Program penggunaan goto
#include <iostream.h>
#include <conio.h>
void man ( )
{
clrscr ( );
cout << “Tes go to “ << endln;
goto selesai;
cout << “Hai Aku kok Tidak disapa” <<endln;
selesai:
cout << “ Akulah Selesai …”<< endln;
}

SUMBER : Keg. Pembelajaran 5 : Perulangan dalam C++

PENGENALAN C++

PENGENALAN C++
Bab 1

1.1 SEJARAH C++

Bahasa C++ diciptakan oleh Bjarne Stroustrup di AT&T Bell
Laboratories awal tahun 1980-an berdasarkan C ANSI (American National
Standard Institute). Pertama kali, prototype C++ muncul sebagai C yang
dipercanggih dengan fasilitas kelas. Bahasa tersebut disebut C dengan kelas
( C wih class). Selama tahun 1983-1984, C dengan kelas disempurnakan
dengan menambahkan fasilitas pembebanlebihan operator dan fungsi yang
kemudian melahirkan apa yang disebut C++. Symbol ++ merupakan operator
C untuk operasi penaikan, muncul untuk menunjukkan bahwa bahasa baru ini
merupakan versi yang lebih canggih dari C.
Borland International merilis compiler Borland C++ dan Turbo C++.
Kedua compiler ini sama-sama dapat digunakan untuk mengkompilasi kode
C++. Bedanya, Borland C++ selain dapat digunakan dibawah lingkungan
DOS, juga dapat digunakan untuk pemrograman Windows.
Selain Borland International, beberapa perusahaan lain juga merilis
compiler C++, seperti Topspeed C++ dan Zortech C++.

Contoh Program C :

# include <stdio.h>
Main ( )
{
Char pesan [ ] = “Hai, C programmers !” ;
Printf (pesan) ;
Return 0 ;
}
Contoh Program C++ :
# include <iostream.h>
Main ( )
{
Char pesan [ ] = “Hai, C programmers !” ;
Cout << pesan ;
Return 0 ;
}

1.2 TENTANG C++

C++ diciptakan untuk mendukung pemrograman berorientasi pada
objek (Object Oriented Pragramming/OOP) yang tidak dimiliki C. sementara C
merupakan bahasa pemrograman terbaik dilingkungannya, bahasa ini tidak
T. Pemrograman Terstruktur 2 ( 1 ) Page 2 of 6
memiliki kemampuan OOP. Reputasi C tidak diragukan lagi dalam
menghasilkan program .EXE berukuran kecil, eksekusi yang cepat,
antarmuka (interfacing) yang sederhana dengan bahasa lain dan fleksibilitas
pemrograman. Apa yang membuat C tampak sukar dipelajari mungkin karena
tiadanya pemeriksaan tipe. Sebagai contoh, dapat mencampur bilangan bulat
dengan string untuk menghasilkan karakter. Namun, justru dsitu letak
fleksibilitas C, dapat mengolah data C sebebas mengolah data dalam bahasa
assembly.

1.3 BORLAND C++

Dibandingkan compiler C++ yang lain, Borland C++ memiliki
keunggulan terutama dalam hal kecepatan dan efisiensi kompilasi. Disamping
itu, Borland C++ mendukung beberapa system operasi yaitu DOS, Windows
16bit (Window 3.0) dan windows 32 bit (Windows NT). Meskipun demikian
compiler Borland C++ juga memiliki kelemahan bila dibandingkan compiler
C++ yang lain, misalnya : pemrograman dengan Borland C++ terutama yang
menyangkut tampilan jauh lebih sulit daripada pemrograman dengan
Microsoft Visual C++.

1.4 STRUKTUR BAHASA C++

Program C maupun C++ selalu tersusun dari 4 (empat) bagian utama, yaitu :
1. Bagian komentar yang ditandai dengan symbol // dan pasangan /* … */
2. Bagian pengarah compiler yang ditandai dengan symbol #
3. Bagian deklarasi
4. Bagian definisi

1.4.1 BAGIAN KOMENTAR

Program yang baik pada umumnya diberi komentar yang akan membantu
orang lain maupun pembuat program itu untuk memahami program yang
dibuat. Dalam C atau C++ setiap tulisan yang diapit oleh symbol /* … */ atau
setiap baris yang dimulai dengan symbol // dianggap komentar. C++ tidak
mengizinkan komentar bersarang ( nested comment), namun Borland C++
lebih fleksibel dalam hal ini.

Contoh C++ menggunakan komentar:

/* FIRST.CPP */
/* Program C++ pertamaku */
// Praproses
# include <iostream.h>
Void main ( )
{
Char pesan [ ] = “Hello, C++ programmers!” ;
T. Pemrograman Terstruktur 2 ( 1 ) Page 3 of 6
Cout << pesan ;
Return 0 ;
}
Pada Borland C++ dapat menggunakan komentar bersarang asalkan opsi cek
Nested comments pada menu Options/Compiler/Source dipilih.

1.4.2 BAGIAN PENGARAH KOMPILER

Contoh program C++ :

# include <iostream.h>
Void main ( )
{
Char pesan [ ] = “Hello, C++ programmers!” ;
Cout << pesan ;
Return 0 ;
}
Merupakan statement praprosesor, disebut juga pengarah compiler karena
berfungsi mengatur proses kompilasi.
IOSTREAM.H merupakan file program yang mengandung deklarasi kelaskelas
yang diperlukan oleh objek cout. File-file dengan ekstensi .H yang berisi
deklarasi fungsi-fungsi standar C ini, disebut secara umum sebagai file
header.

Beberapa pengarah compiler adalah :

1. # define
2. # include
3. # if, # else, # elif, # endif
4. # ifdef, # ifndef

1.4.2.1 PENGARAH KOMPILER # DEFINE

Untuk mendefinisikan suatu pengenal / konstanta yang nantinya akan
digantikan oleh praprosesor saat program dikompilasi.

Contoh Program :

# define SIZE 30
Int array [SIZE] ;
For (register int i = 0 ; i < SIZE ; i++)
{
Cout << array [ i ] ;
}

1.4.2.2 PENGARAH KOMPILER # INCLUDE

Berfungsi membaca file program tertentu dan mengikutsertakan file tersebut
dalam proses kompilasi. Nama file yang dimaksud harus diapit symbol ‘ < ‘
dan ‘ > ‘ atau tanda kutip dua ( “ … “ ).

1.4.2.3 PENGARAH KOMPILER # IF, # ELSE, # ELIF, # ENDIF

Digunakan untuk memilih bagian program yang akan dikompilasi. Kompilasi
cari ini disebut kompilasi bersyarat dan program yang baik biasanya
memanfaatkan teknik ini.

1.4.2.4 PENGARAH KOMPILER # IFDEF, # IFNDEF

Digunakan juga dalam kompilasi bersyarat. # Ifdef dapat dibaca : ‘jika
didefinisikan’ dan # ifndef dapat dibaca : ‘jika tidak didefinisikan’.
Pengarah compiler ini sering digunakan untuk menandai bahwa suatu file
sudah diikutsertakan dalam kompilasi

1.4.3 BAGIAN DEKLARASI DAN DEFINISI

Semua program C pada dasarnya tersusun dari rangkaian
pemanggilan fungsi yang bekerja atas sekelompok data. Selain pemanggilan
fungsi, program C mengandung komponen lain yang disebut statement.
Statement C ada dua, yaitu : statement yang tidak dapat dieksekusi / non
executable ( bila dikompilasi tidak menghasilkan kode objek dan biasanya
digunakan untuk mengatur alur program), dan statement yang dapat
dieksekusi / executable (bila dikompilasi akan menghasilkan kode objek).
Setiap pemanggilan fungsi maupun statement executable dalam C harus
diakhiri dengan tanda titik koma ( ; ).

Contoh program C++:

# include <iostream.h>
Void main ( )
{
Char pesan [ ] = “Hello, C++ programmers!” ;
Cout << pesan ;
Return 0 ;
}

Dalam contoh program C++ diatas, Return merupakan contoh
statement executable yang menginstruksikan agar suatu fungsi
mengembalikan nilai balik tertentu. Contoh statement non executable adalah :
If, else, dan while.
Main ( ) merupakan contoh fungsi, sedangkan pesan adalah contoh
data. Baik data maupun fungsi harus dideklarasikan. Data perlu
dideklarasikan agar compiler tahu berapa byte memori yang harus disediakan
untuk data yang bersangkutan, sedangkan fungsi perlu dideklarasikan agar
compiler dapat memeriksa ketepatan pemanggilan fungsi yang bersangkutan.
Deklarasi fungsi sering disebut pula prototype fungsi.

1.5 INPUT DAN OUTPUT

Di ANSI C, operasi input dan output dilakukan dengan menggunakan
fungsi-fungsi yang ada di header file stdio.h. contohnya untuk input dan
output ke layer monitor digunakan perintah seperti printf, scanf, putch, dsb.
Untuk input dan output ke file digunakan perintah seperti fread, fwrite, fputc,
dsb.
C++ mempunyai teknik input dan output yang baru, yaitu :
menggunakan stream. Header file untuk input dan output stream adalah
iostream.h dan beberapa file lain, seperti strstrea.h, fstream.h, dan
constrea.h.
Stream adalah suatu logika device (peralatan logika) yang
menghasilkan dan menerima informasi atau suatu wadah yang digunakan
untuk menampung keluaran dan menampung aliran data. Stream adalah
nama umum untuk menampung aliran data (contoh : file, keyboard, mouse),
maupun untuk keluaran (contoh : layer, printer).
Dalam C++ input berarti membaca dari stream dan output berarti
menulis ke stream.

Bentuk Umum Output operator :

Cout << ekspresi ;

Bentuk umum Input operator :

Cin >> variable ;

Dalam C++, menggunakan escape sequences untuk
merepresentasikan suatu karakter yang tidak terdapat dalam tradisional
symbol. Beberapa diantaranya :

\ n : linefeed / baris baru
\ b : back space
\ “ : petik ganda

Contoh program versi ANSI C :

# include <stdio.h>
Void main ( )
{
Int x ;
Printf ( “Masukkan sebuah bilangan : \n” ) ;
Scanf ( “ %d ”, &x ) ;
Printf ( “Bilangan yang dimasukkan adalah %d\n “, x ) ;
}

Contoh program versi C++ :

# include <iostream.h>
Void main ( )
{
Int x ;
Cout << “Masukkan sebuah bilangan : ” << endl ;
Cin >> x ;
cout << “Bilangan yang dimasukkan adalah “ << x << endl ;
}

Contoh Program untuk input dan output :

# include <iostream.h>
Main ( )
{
Int a ;
Cout << “masukkan suatu bilangan :” ;
Cin >> a ;
Cout << “nilai tersebut ditambah 1 = ‘ << a+1 ;
Return 0 ;
}

SUMBER : T. Pemrograman Terstruktur 2

KONDISI / PEMILIHAN


KONDISI / PEMILIHAN

Penyeleksian kondisi digunakan untuk mengarahkan perjalanan suatu proses.
Penyeleksian kondisi dapat diibaratkan sebagai katup atau kran yang mengatur jalannya air. Bila
katup terbuka maka air akan mengalir dan sebaliknya bila katup tertutup air tidak akan mengalir
atau akan mengalir melalui tempat lain. Fungsi penyeleksian kondisi penting artinya dalam
penyusunan bahasa C, terutama untuk program yang kompleks.

1. Struktur Kondisi “If….”

Struktur if dibentuk dari pernyataan if dan sering digunakan untuk menyeleksi suatu kondisi
tunggal. Bila proses yang diseleksi terpenuhi atau bernilai benar, maka pernyataan yang ada di
dalam blok if akan diproses dan dikerjakan. Bentuk umum struktur kondisi if adalah :
if(kondisi)

{
pernyataan;
}

Kondisi / Pemilihan di Turbo C++ 2009
Suyanto


Contoh Program 1 :

/* Program struktur kondisi if untuk memeriksa suatu kondisi */
#include <stdio.h>
#include <conio.h>
void main()
{ float nilai;
printf(“Masukan nilai yang didapat : “);scanf(“%f”, &nilai);
if(nilai > 65)
{
printf(“\n ANDA LULUS !!!!\n”);
}
getch();
}

Bila program tersebut dijalankan dan kita memasukan nilai 80, maka perintah mencetak
perkataan LULUS !!!! akan dilaksanakan, namun sebaliknya bila kita memasukan sebuah nilai
yang kurang dari 65 maka program akan berhenti dan tidak dihasilkan apa-apa.
Kondisi / Pemilihan di Turbo C++ 2009
Suyanto


Contoh Program 2 :

/* Program contoh penerapan struktur kondisi if */
#include<stdio.h>
#include<conio.h>
void main()
{ clrscr();
int a,b,c,max;
printf("Entry bil 1 : ");fflush(stdin);scanf("%i",&a);
printf("Entry bil 2 : ");fflush(stdin);scanf("%i",&b);
printf("Entry bil 3 : ");fflush(stdin);scanf("%i",&c);
if((a>b)&&(a>c))
max=a;
if((b>a)&&(b>c))
max=b;
if((c>a)&&(c>b))
max=c;
printf("Bil terbesar : %i\n",max);
if(max>0)
printf("Bil tsb adalah bil positif\n");
if(max<0)
printf("Bil tsb adalah bil negatif\n");
getch();
}


2. Struktur Kondisi “If......Else….”

Dalam struktur kondisi if.....else minimal terdapat dua pernyataan. Jika kondisi yang diperiksa bernilai
benar atau terpenuhi maka pernyataan pertama yang dilaksanakan dan jika kondisi yang diperiksa bernilai
salah maka pernyataan yang kedua yang dilaksanakan. Bentuk umumnya adalah sebagai berikut :
if(kondisi)
{
pernyataan-1;
}
else
{
pernyataan-2;
}

Contoh Program :

#include <stdio.h>
#include <conio.h>
void main()
{ float nilai;
clrscr();
printf(“Masukan nilai yang didapat : “);
scanf(“%f”, &nilai); /* Masukan akan disimpan dlm var. nilai */
if (nilai > 65)
{
printf(“\n LULUS !!!\n”);
}
else
{
printf(“\n TIDAK LULUS !!!\n”);
}
getch();
}

Bila program tersebut dijalankan dan kita memasukan nilai 80 maka akan dicetak perkataan
“LULUS !!!” namun bila kita memasukan nilai yang kurang dari 65 maka akan tercetak
perkataan “TIDAK LULUS !!!”. Hal ini berbeda dengan struktur if dimana program akan
berhenti bila kita memasukan nilai kurang dari 65.

3. Kondisi

Kondisi adalah sebuah perbandingan antara dua nilai (variabel vs variabel, variabel vs
konstanta). Dalam membandingkan digunakan operator perbandingan al :
1. ==
2. >
3. <
4. >=
5. <=
6. !=

Jika kondisi lebih dari satu, maka digunakan Operator Logik, al:
1. ! 􀃆 NOT
2. && 􀃆 AND
3. || 􀃆 OR

4. Struktur Kondisi “Switch....Case....Default…”

Struktur kondisi switch....case....default digunakan untuk penyeleksian kondisi dengan
kemungkinan yang terjadi cukup banyak. Struktur ini akan melaksanakan salah satu dari
beberapa pernyataan ‘case’ tergantung nilai kondisi yang ada di dalam switch. Selanjutnya
proses diteruskan hingga ditemukan pernyataan ‘break’. Jika tidak ada nilai pada case yang
sesuai dengan nilai kondisi, maka proses akan diteruskan kepada pernyataan yang ada di bawah
‘default’.
Bentuk umum dari struktur kondisi ini adalah :
switch(variabel)
{
case 1 : pernyataan-1;
break;
case 2 : pernyataan-2;
break;
.....
.....
case n : pernyataan-n;
break;
default : pernyataan-m;
}
Kondisi / Pemilihan di Turbo C++ 2009
Suyanto
Praktikum Algoritma dengan Turbo C Hal 7
Contoh :

/* Program menentukan nama hari berdasarkan inputan */
#include <stdio.h>
#include <conio.h>
void main()
{ clrscr();
int hari;
puts(“Menentukan nama hari\n”);
puts(“1 = Senin 2 = Selasa 3 = Rabu 4 = Kamis”);
puts(“5 = Jum’at 6 = Sabtu 7 = Minggu”);
printf(“\nMasukan kode hari( 1-7) : “);scanf(“%d”, &hari);
switch(hari)
{ case 1 : puts(“Hari Senin”); /* kemungkinan pertama */
break;
case 2 : puts(“Hari Selasa”); /* kemungkinan kedua */
break;
case 3 : puts(“Hari Rabu”); /* kemungkinan ketiga */
break;
case 4 : puts(“Hari Kamis”); /* kemungkinan keempat */
break;
case 5 : puts(“Hari Jum’at”); /* kemungkinan kelima */
break;
case 6 : puts(“Hari Sabtu”); /* kemungkinan keenam */
break;
case 7 : puts(“Hari Minggu”); /* kemungkinan ketujuh */
break;
default : puts(“Kode hari yang Anda masukan SALAH”);
}
getch();
}

Bila program tersebut dijalankan, dan kita memasukan kode hari dengan 1 maka akan tercetak
“Hari Senin”, bila 2 akan tercetak “Hari Selasa” dan seterusnya.


SUMBER : Kondisi / Pemilihan di Turbo C++ 2009
Suyanto

Operator & Klasifikasinya

Mengenal Operator Dalam C++


Operator merupakan simbol yang biasa dilibatkan dalam pembuatan program untuk melakukan suatu operasi ataupun manipulasi. Pada operator c++ ada yang tergolong sebagai operator binary (yaitu operator yang dikenakan untuk dua buah nilai (operand), dan ada yang tergolong sebagai operator unary (operator yang dikenakan untuk satu buah nilai (operand). Contoh :
Binary >> a + b
Unary >> - c

OPERATOR ARITMATIKA

Adalah operator yang digunakan untuk melakukan perhitungan matematika. Pada materi sebelumnya kita telah mengenal pengertian dari Variabel, maka sekarang coba kita asumsikan bahwa variabel a = 30 dan b = 10, maka hasil implementasi dari Operator Aritmatika adalah sebagai berikut :

Operator
Keterangan
Contoh
+
Penjumlahan
a + b hasilnya 40
-
Pengurangan
a – b hasilnya 20
*
Perkalian
a * b hasilnya 300
/
Pembagian
a / b hasilnya 3
%
Sisa Pembagian
a % b hasilnya 0

Contoh program :
#include <iostream.h> 
#include <conio.h>

/**
*gatewan.com
*Wawan Beneran
*penggunaan operator aritmatika
*/

void main() { 
clrscr(); 
int a = 30; 
int b = 10; 
cout << "a + b = "; 
cout << a + b << endl; 
cout << "a - b = "; 
cout << a - b; 
cout << "a x b = "; 
out << a * b; 
cout << "a / b = "; 
cout << a / b; 
cout << "a % b = "; 
cout << a % b; 
getch(); 
}

Contoh berikutnya adalah penggunaan operator untuk memperoleh nilai diskirminan dari persamaan berikut : d = b2 – 4ac. Maka, untuk mengimplementasikan contoh diatas ke dalam pemrograman C++ adalah:
d = b * b - 4 * a * c

Contoh program :
#include <iostream.h> 
#include <conio.h>

/**
*gatewan.com
*Wawan Beneran
*Menyelesaiakan persamaan diskriminan
*/

void main() { 
clrscr(); 
int a, b, c, d; a = 5; 
b = 600; 
c = 5; 
d = b * b - 4 * a * c; 
cout << " d = " << d << '\n'; 
getch(); 
}

Hasil eksekusi :
d = 32220

Dalam C++ operator aritmatika memiliki kedudukan prioritas tertinggi atau terendah, hal tersebut ditentukan oleh cara penulisan atau penempatannya,

1. Kedudukan prioritas secara penulisan tercantum sebagaimana dalam tabel.
Operator
Prioritas
++ -- (khusus yang berkedudukan sebagai awalan)
Tertinggi
-  (Unary Minus)

* / %

+ -
Terendah

2. Kedudukan prioritas tertinggi secara penempatan ditentukan oleh posisi yang PALING KIRI dari baris program.

Jadi jika operator memiliki kedudukan prioritas yang sama (secara penulisan) maka hal tersebut dapat ditentukan lagi prioritas utamanya secara penempatan.

Sebagai contoh perhatikan persamaan berikut ini :
x = ( 2 + 3) * 2 

Secara logika matematika biasa kita sudah dapat menentukan berapa nilai dari x, yaitu 10, sebab 2 + 3 dikerjakan terlebih dahulu dan hasilnya baru dikalikan dengan 2, namun perlu agan-agan sekalian ketahui bahwa hal tersebut sangatlah berbeda jika kita implementasikan kedalam pemrograman C++, lebih jelasnya perhatikan contoh program dibawah ini :
#include <iostream.h> 
#include <conio.h>

/**
*gatewan.com
*Wawan Beneran
*Penggunaan kurung() untuk mengatur prioritas
*Pembuktian prioritas suatu operator
*/
 
void main() { 
clrscr() 
int x ; 
x = 2 + 3 * 2 ; 
cout << " x = " << x << '\n'; 
x = (2 + 3) * 2 ; 
cout << " x = " << x << '\n'; 
getch(); 
}

Hasil eksekusi :
8 
12


OPERATOR PENAIKAN DAN PENURUNAN

Operator penaikan adalah operator yang digunakan untuk menaikan nilai variabel sebesar 1,
Operator penurunan adalah operator yang digunakan untuk menurunkan nilai variabel sebesar 1.
Contoh :
x = x + 1 ;
y = y - 1 ;

Bisa ditulis menjadi :
++ x ; -- y ;
atau :
x ++ ; y -- ;

MENENTUKAN PRIORITAS OPERATOR PENAIKAN DAN PENURUNAN

Sekarang kita akan mencoba untuk menentukan prioritas dari operator penaikan dan penurunan, lalu bagaimanakah efek yang ditimbulkan dari hasil percobaan ini? selengkapnya silakan perhatikan contoh program di bawah ini :
#include <iostream.h> 
#include <conio.h>

/**
*gatewan.com
*Wawan Beneran
*Penggunaan operator penaikan di belakang variabel 
*/

void main() { 
int r = 10; 
int s; s = 10 + r++ ; 
cout << "r = " << r << '\n' ; 
cout << "s = " << s << '\n' ; 
getch(); 
}

Hasil eksekusi :
r = 11 
s = 20

Penjelasan :
Pada contoh diatas s diisi dengan penjumlahan nilai 10 dan r. Dengan demikian s akan bernilai 20. setelah s diisi dengan 20, nilai r baru dinaikan karena operator ++ ditulis dibelakang r. Disebut post-increment yang artinya dinaikkan dibelakang setelah penjumlahan antara r dan 10 dilaksanakan. Contoh lagi:
#include <iostream.h> 
#include <conio.h>

/**
*gatewan.com
*Wawan Beneran
*Penggunaan operator penaikan di depan variabel
*/

void main() { 
int r = 10; 
int s; 
s = 10 + ++r ; 
cout << "r = " << r << '\n' ; 
cout << "s = " << s << '\n' ; 
getch(); 
}

Hasil eksekusi :
r = 11 
s = 20

Penjelasan :
Pada contoh ini, nilai r mula-mula dinaikan terlebih dahulu karena operator ++ ditempatkan didepan r. Disebut pre-increment kemudian nilainnya dijumlahkan dengan 10 dan diberikan ke s. Dengan demikian s bernilai 21 dan r sama dengan 11.

OPERATOR PENUGASAN

Operator Penugasan adalah operator yang digunakan untuk memberikan nilai ke dalam variabel tertentu. Asumsikan variabel a bernilai 50 dan variabel b bernilai 30,lalu perhatikan tabel berikut:
Operator
Keterangan
Contoh
=
Memberikan nilai dari operand sisi kanan untuk sisi kiri
c = a + b
hasilnya c diberi nilai 80
c = a = b
Hasilnya c,a,b bernilai 30
+=
Menambahkan operand kiri dengan operand kanan dan menugaskan hasilnya untuk operand kiri
c += a
sama dengan
c = c + a
-=
Mengurangi operand kanan dari operand kiri dan menugaskan hasilnya untuk operand kiri
c -= a
sama dengan
c = c - a
*=
Mengalikan operand kanan dengan operand kiri dan menugaskan hasilnya untuk operand kiri
c *= a
sama dengan
c = c * a
/=
Membagi operand kiri dengan operand kanan dan menugaskan hasil untuk operand kiri
c /= a
sama dengan
c = c / a
%=
Menghitung sisa pembagian menggunakan dua operand dan memberikan hasilnya ke operand kiri
c %= a
sama dengan
c = c %  a

Contoh program :
#include <iostream.h> 
#include <conio.h>

/**
*gatewan.com
*Wawan Beneran
*Penggunaan operator penugasan
*/
 
void main() { 
int a = 50; 
int b = 30; 
int c = a + b; 
cout << "Nilai c adalah : " << c; c = a = b; 
cout << "Nilai c sekarang : " << c; 
cout << "Nilai a sekarang : " << a; 
c += a; 
cout << "Nilai c sekarang : " << c;
c *= a; 
cout << "Nilai c sekarang : " << c; 
c -= a; 
cout << "Nilai c sekarang : " << c; 
c /= a; 
cout << "Nilai c sekarang : " << c; 
c %= a; 
cout << "Nilai c sekarang : " << c; 
getch(); 
}

OPERATOR KONDISI

Operator Kondisi merupakan penyederhanaan dari bentuk if..else yang setiap blok dari if dan else hanya terdiri dari satu statement/perintah.

Bentuk umum:
(ekspresi) ? (jika benar) : (jika salah);
Contoh Program:
#include <iostream.h> 
#include <conio.h>

/**
*gatewan.com
*Wawan Beneran
*Penggunaan operator kondisi untuk memperoleh 
*bilangan terkecil diantara dua buah bilangan 
*/
 
void main() { 
int bil1, bil2, minim; 
bil1 = 53; 
bil2 = 6;
minim = (bil1 < bil2) ? bil1 : bil2; 
cout << " Bilangan terkecil = " << minim << '\n'; 
getch(); 
}

Hasil Eksekusi: 
Bilangan terkecil = 6

OPERATOR RELASI / PERBANDINGAN

Operator Relasi digunakan untuk menguji hubungan antara nilai dan atau variabel. Operator ini digunakan dalam suatu statement bersyarat yang selalu menghasilkan nilai true atau false.

Jenis-jenis operator relasi bisa dilihat dalam tabel berikut:
Operator
Keterangan
==
Sama dengan (bukan penugasan)
!=
Tidak sama dengan
> 
Lebih dari
< 
Kurang dari
>=
Lebih dari atau sama dengan
<=
Kurang dari atau sama dengan

Contoh program :
#include <iostream.h> 
#include <conio.h>

/**
*gatewan.com
*Wawan Beneran
*Penggunaan operator relasi
*/

void main() { 
int nilai; 
nilai = 3 > 2 ; // hasil ungkapan : benar 
cout << "Nilai = " << nilai << endl; 
nilai = 2 > 3 ; // hasil ungkapan : salah
cout << "Nilai = " << nilai << endl; 
getch(); 
}

Hasil eksekusi: 
Nilai = 1 
Nilai = 0

OPERATOR LOGIKA

Operator Logika digunakan untuk membandingkan dua nilai variabel atau lebih. Hasil dari operasi ini adalah nilai boolean true atau false. Asumsikan variabel a bernilai true, b bernilai false dan c bernilai true, lalu perhatikan tabel berikut:
Operator
Keterangan
Contoh
&&
Jika semua operand bernilai benar (TRUE) maka kondisi bernilai benar.
a && b hasilnya false
a && c hasilnya true
||
Jika salah satu dari operand bernilai benar (TRUE) maka kondisi bernilai benar.
a || b hasilnya true
a || c hasilnya true
!
Digunakan untuk membalik kondisi. Jika kondisi benar (TRUE) maka akan berubah menjadi salah (FALSE), begitu pula sebaliknya
!a hasilnya false
!b hasilnya true
!( b && a ) hasilnya true


Contoh Program:
#include <iostream.h> 
#include <conio.h>

/**
*gatewan.com
*Wawan Beneran
*Penggunaan operator logika
*/

void main() { 
bool a = true; 
bool b = false; 
bool c = true; 
cout<< "(a && b) : " << (a && b);
cout<< "\n (a && c) : " << (a && c); 
cout<< "\n (a && b && c) : " << (a && b && c); 
cout<< "\n (a || b) : " << (a || b); 
cout<< "\n (a || c) : " << (a || c); 
cout<< "\n (a || b || c) : " << (a || b || c); 
cout<< "\n !a : " << !a; 
cout<< "\n !b : " << !b; 
cout<< "\n !(b && a) : " << !(b && a); 
getch(); 
}

Hasil eksekusi :
(a && b) : 0
(a && c) : 1
(a && b && c) : 0
(a || b) : 1
(a || c) : 1
(a || b || c) : 1
!a : 0
!b : 1
!(b && a) : 1

Variabel, Type Data dan Input Pada Code Blocks

Variabel, Type Data dan Input / Masukkan dari pengguna

   Untuk menyimpan data dalam program, kita membutuhkan variabel. Variabel bisa menyimpan angka, kata-kata, atau data lainnya tergantung tipe data dari variabel tersebut. Data yang kita simpan dalam variabel dapat kita pakai kapanpun saat kita butuhkan. Variabel digunakan dalam function, operasi aritmatika, percabangan dan Perulangan. Tanpa variabel kita hanya akan menampilkan sesuatu yang monoton atau selalu sama setiap kali program dijalankan.

   Variabel harus dideklarasikan sebelum digunakan karena variabel membutuhkan tempat dalam memori komputer untuk menyimpan data sesuai ukurannya. Berikut ini contoh deklarasi variabel dengan nama angka dan "int"(tipe data bilangan bulat). 

int main(){
int angka;
    return 0;
}

Program yang dihasilkan kode program di atas tidak akan menampilkan apapun karena hanya berisi deklarasi variabel. Selain itu nilai variabel di atas bisa bernilai nol atau acak. Untuk memberikan nilai variabel, anda bisa menggunakan Operator assignment ("="). Nilai variabel bisa diberikan saat deklarasi atau kapanpun di dalam program. Perhatikan contoh  berikut ini!

int main(){
int angka=5;
       angka=7;
       return 0;
}

Sama seperti sebelumnya kode program di atas tidak menghasilkan apapun. Program di atas hanya memberikan nilai kepada variabel angka saat deklarasi variabel dengan nilai 5. kemudian nilai variabel angka diubah lagi menjadi 7.

Anda bisa menampilkan nilai variabel atau menggunakan varabel untuk hal lain. Tapi sebelum membahas tentang hal tersebut anda harus paham tentang cara memberikan nama variabel dan apa saja tipe data yang bisa digunakan dalam bahasa C dan C++.

Nama variabel, konstanta dan function disebut identifier. Penulisan identifier memiliki beberapa syarat. Jika cara penulisan identifier tidak tepat maka kode program tidak bisa dicompile karena error. Berikut ini syarat penulisan identifier dalam bahasa C++.
1.  Karakter yang digunakan untuk nama variabel boleh menggunakan huruf(a..z, A..Z), angka (0, 1, 2, 3, 4, 5, 6, 7, 8, 9), dan Underscore ( _ ). Karakter pertama harus berupa Huruf atau underscore. Kita tidak boleh menggunakan spasi, operator aritmatika dan karakter khusus lainnya.
2.  Tidak melebihi batas karakter yang ditentukan compiler, pada umumnya batas maksimal jumlah karakter dalam variabel adalah 32.
3.  Nama variabel dalam C++ bersifat case sensitive, artinya huruf besar dan kecil berbeda. Misalnya, variabel Program dan program adalah dua variabel yang berbeda.
4.  Tidak boleh menggunakan nama "keyword" atau kata-kata khusus yang digunakan dalam C++.
Selain untuk nama variabel, aturan diatas digunakan juga untuk nama semua identifier seperti function, objek dan identifier lainnya. Sedangkan, Keyword atau reserved Word dalam C++ adalah sebagai berikut :
alignas (C++11)
alignof (C++11)
and
and_eq
asm
auto
bitand
bitor
bool
break
case
catch
char
char16_t (C++11)
char32_t (C++11)
class
compl
concept (concepts TS)
const
constexpr (C++11)
const_cast
continue
decltype (C++11)
default
delete
do
double
dynamic_cast
else
enum
explicit
export
extern
false
float
for
friend
goto
if
inline
int
long
mutable
namespace
new
noexcept (C++11)
not
not_eq
nullptr (C++11)
operator
or
or_eq
private
protected
public
register
reinterpret_cast
requires (concepts TS)
return
short
signed
sizeof
static
static_assert (C++11)
static_cast
struct
switch
template
this
thread_local (C++11)
throw
true
try
typedef
typeid
typename
union
unsigned
using
virtual
void
volatile
wchar_t
while
xor
xor_eq

Untuk lebih memahami tentang deklarasi dan penggunaan variabel, buat buat project baru dan ketikkan program di bawah ini.
#include <iostream>

using namespace std;

int main(){
string kata="Aku masih belajar pemrograman.";
    cout << kata << endl;
    return 0;
}

Untuk menampilkan isi variabel, kita bisa menggunakan "cout" atau "printf". Saat kita menampilkan teks atau string, kita mengapit kata-kata tersebut di antara dua tanda petik ("). Untuk menampilkan "isi" variabel, kita tidak menggunakan tanda petik. Jika menggunakan tanda petik maka yang ditampilkan adalah kata-kata yang diapit tanda petik, dan bukan isi variabel. Pada kode program di atas, "kata" adalah sebuah variabel dengan tipe data string yang menyimpan data berupa kalimat "Aku masih belajar pemrograman.".

Sebuah variabel memiliki sebuah tipe data. pada kode program di atas, tipe data dari kata adalah "string". string adalah tipe data dalam bahasa C++ yang digunakan untuk menyimpan teks atau kata-kata.  Karena string bukan tipe data dasar, string tidak dapat diubah "secara langsung" menggunakan assignment operator, tetapi harus menggunakan fungsi khusus.

Sebuah variabel hanya dapat menyimpan satu jenis data. Selain string kita dapat menyimpan type data "integer" ( bilangan bulat ), float (pecahan desimal) dan tipe data lainnya. Tipe data integer dan float dapat digunakan untuk melakukan operasi aritmatika sehingga kita dapat menerapkan rumus-rumus matematika dalam pemrograman. Setiap tipe data memiliki kegunaan tersendiri dalam pemrograman. Dalam bahasa C++, tipe data dapat ditentukan pada saat deklarasi variabel.

Berikutnya kita akan mempelajari tentang tipe data. Ada beberapa tipe data dalam C++, beberapa di antaranya dikelompokkan sebagai tipe data dasar. Type data dasar disimpan sebagai sebuah angka dengan ukuran tertentu dalam byte, misalnya char ukurannya adalah sama dengan 1 byte. Selain itu, secara umum tipe data dasar dapat digunakan secara langsung dalam operator aritmatika karena tidak memiliki anggota ataupun indek.

Selain tipe data dasar, ukurannya bisa tergantung jumlah data yang disimpan. Tipe data yang ada dalam bahasa C++ yaitu :

1.  Tipe data dasar (Bilangan bulat / int dan Bilangan pecahan desimal / float).
2.  void
3.  array
4.  objek
5.  enumerasi / enum
6.  struct
7.  union
8.  string
9.  File
saat ini kita hanya akan fokus pada type data dasar. Seperti sudah saya jelaskan tipe data dasar memiliki ukuran dan jangkauan nilai yang berbeda. Berikut ini nilai dan jangkauan dari setiap tipe data dasar.

Type Data
Ukuran (byte)
Jangkauan nilai
char
1
signed: -128 to 127
unsigned: 0 to 255
short int (short)
2
signed: -32768 to 32767
unsigned: 0 to 65535
int
4 (bisa berubah tergantung compiler)
signed: -2147483648 to 2147483647
unsigned: 0 to 4294967295
long int (long)
4
signed: -2147483648 to 2147483647
unsigned: 0 to 4294967295
float
4
3.4e +/- 38 (7 digit)
double
8
1.7e +/- 308 (15 digits)
long double
8
1.7e +/- 308 (15 digits)
wchar_t
8
1 karakter lebar
int, short int dan long int adalah type data bilangan bulat. sedangkan float, double, dan long double digunakan untuk pecahan desimal. Tipe data dasar mungkin saja bertambah seiring dengan perkembangan teknologi komputer. Tipe data bilangan bulat dan pecahan bisa memiliki nilai signed atau unsigned. Sebuah bilangan dengan tipe data unsigned hanya bisa menyimpan 0 dan bilangan bulat positif. Tipe data unsigned memiliki jangkauan lebih banyak untuk bilangan positif dibandingkan signed. Untuk lebih paham tentang signed dan unsigned, perhatikan kode program di bawah ini.

#include <iostream>

using namespace std;

int main(){
unsigned int a=-1;
signed int b=-1;
     cout << a << endl;
     cout << b << endl;
     return 0;
}

Program di atas mungkin tetap bisa di compile. Tetapi hasilnya outputnya tidak akan sesuai dengan nilai yang sudah diberikan pada variabel, karena variabel a bertipe unsigned sehingga tidak bisa menyimpan nilai negatif. Jika anda mengubah nilai variabel a menjadi bilangan bulat positif anda bisa mendapatkan output sesuai dengan nilai variabelnya.

Karakter atau huruf dalam bahasa C++ tersimpan dalam bentuk angka, tetapi akan ditampilkan dalam bentuk karakter saat anda menampilkannya menggunakan cout. Untuk karakter ASCII atau ANSI kita bisa menyimpannya dalam variabel bertipe char. sedangkan untuk karakter unicode disimpan dalam variabel dengan tipe wchar_t. Jika kita memberi nilai angka pada tipe data char, saat kita menampilkannya dengan cout kita akan mendapatkan sebuah karakter sesuai kode ASCII-nya. Misalnya karakter 'A' sama dengan 65. Untuk memberikan nilai sebuah karakter gunakan karakter atau huruf yang diapit tanda petik(').

#include <iostream>

using namespace std;

int main(){
    char 65;
    char 'A';
    cout << a << endl;
    cout << b << endl;
    return 0;
}

Program Tersebut menampilkan Huruf 'A' dua kali, karena Kode ASCII untuk 'A' adalah 65. Jika kita ingin program tersebut menampilkan angka 65 kita bisa menggunakan Type casting seperti di bawah ini.

#include <iostream>

using namespace std;

int main(){
    char 65;
    char 'A';
    cout << (int)a << endl;// C-style type cast
    cout << int(b) << endl;// function style type cast
    return 0;
}

Program tersebut menampilkan variabel a dan b sebagai angka 65. Pada program diatas sudah saya beri komentar yang tidak berpengaruh pada program di setiap akhir pernyataan. Komentar diawali dengan "//" dan berakhir setelah akhir baris. Komentar berguna untuk mememberi keterangan pada program karena komentar akan diabaikan oleh compiler. Anda bisa menghapus komentarnya jika anda merasa sudah paham fungsi setiap baris program tanpa komentar.

Selain C-style type casting dan Function Type Casting seperti yang saya gunakan di atas, ada type casting khusus yang digunakan untuk kegunaan tertentu, yaitu :
·      static_cast
·      dynamic_cast
·      reinterpret_cast
·      const_cast

Perhatikan cara penggunaan static cast di bawah ini.

#include <iostream>

using namespace std;

int main(){
    float a=65.5;
    cout << static_cast<int> (a) << endl;
    return 0;
}

Untuk type casting lainnya anda bisa cari referensi lainnya karena saya jarang menggunakannya. Mari kita lanjutkan pembahasan tentang typedef.

Kita bisa memberi nama sebuah type data dengan nama baru yaitu menggunakan typedef. Typedef sebaiknya ditulis diluar function (variabel global), walaupun typedef bisa juga dituliskan dalam function (variabel lokal). Misalnya kita ingin memberi nama lain untuk "unsigned int" dengan nama "bilangan_bulat_positif". Kita bisa menuliskannya dengan pernyataan "typedefunsigned int bilangan_bulat_positif;". Lebih jelasnya lihat contoh dibawah ini.

#include <iostream>

using namespace std;

typedef unsigned int bilangan_bulat_positif;

int main(){
    bilangan_bulat_positif i, j;
    j=5;
    i=4-5;
    cout << "i = " << i << endl;
    cout << "j = " << j << endl;
    cout << "i+j = " << i+j << endl;
    return 0;
}

Saya jarang menggunakan typedef, karena itu saya tidak akan membahasnya terlalu rinci. Anda bisa mencobanya sendiri untuk lebih paham tentang cara penggunaan typedef. Baiklah, mari kita lanjutkan menuju pembahasan selanjutnya. :D

Sebuah variabel dapat diubah nilainya dengan "=" (assignment operator). Tapi, program yang kita buat tidak akan terlalu berguna dan akan merepotkan jika kita harus meng-compile ulang untuk mengubah nilai variabel dalam program kita.

Lalu, bagaimana caranya mendapatkan nilai variabel yang berbeda tanpa harus mengubah kode program kita? Kita bisa menggunakan cin untuk mengubah nilai suatu variabel berdasarkan nilai yang dimasukkan pengguna melalui tampilan program. Sebenarnya kita bisa juga menggunakan parameter dari function main, tetapi kita harus menjalankan program kita dari Ms. DOS(Windows) atau Terminal(Linux) jika kita ingin bisa mengubah nilainya.

Jika menggunakan DOS pengguna harus menggunakan suatu format penulisan atau mengingat urutan dari variabel. Jika kita menggunakan cin kita bisa memberitahukan apa yang harus pengguna masukkan melalui tampilan program kita. Pengguna program yang kita buat bisa memasukkan nilai yang diinginkan satu persatu atau bersamaan tergantung kode program yang kita buat. Tidak perlu terlalu banyak teori lagi, mari kita coba terapkan dalam program! :D

#include <iostream>

using namespace std;

int main(){
    int nilai;
    cin >> angka;
    cout << angka;
    return 0;
}

Jika anda sudah mengcompile dan menjalankan program anda, ketikkan sebuah bilangan bulat (misalnya, 14). Kemudian, tekan tombol enter untuk melanjutkan program. Program akan menjalankan pernyataan berikutnya yaitu "cout << angka;" yang berfungsi untuk menampilkan nilai dari variabel angka. Seharusnya program anda menampilkan nilai yang sama dengan yang anda ketik sebelumnya. Misalnya anda mengetikkan 14 dan menekan enter, maka program akan menampilkan 14 karena variabel angka nilainya berubah menjadi 14 atau angka yang anda masukkan. Jika anda memasukkan nilai yang tidak sesuai tipe variabel atau angka melebihi jangkauan nilai dari variabel, nilai dari variabel tidak akan sesuai yang anda ketikkan.

Program yang sudah kita buat hanya menampilkan kursor yang berkedip saat dibuka, sehingga pengguna tidak tahu apa yang harus dia ketik. Ada baiknya kita memberitahukan kepada pengguna apa yang harus dia ketik. Mari kita ubah sedikit program tersebut.

#include <iostream>

using namespace std;

int main(){
    int nilai;
    cout << "Masukkan sebuah bilangan bulat : ";
    cin >> nilai;
    cout << "Bilangan bulat yang anda masukkan adalah : ";
    cout << nilai;
    return 0;
}

Silahkan anda coba jalankan program anda dan lihat hasilnya. Jika program berhenti sejenak dan hanya menampilkan kursor yang berkedip untuk menunggu anda mengetikkan sesuatu, ketikkan bilangan bulat dan tekan enter. Program akan menjalankan semua pernyataan pada baris setelah perintah  yang menggunakan "cin". Sampai disini seharusnya anda sudah bisa membuat sebuah program dengan menggunakan "cin". Jika belum paham cobalah otak-atik kode program anda.

Jika hanya ingin menggunakan nilai suatu variabel tanpa ingin mengubahnya sama sekali kita bisa menggunakan Konstanta yang di deklarasikan dengan menambahkan reserved word "const" di depan variabel. Variabel yang dideklarasikan sebagai konstanta tidak akan bisa diubah nilainya, kecuali menggunakan type casting.

#include <iostream>

using namespace std;

int main(){
const string kalimat="HHHH :), aku mulai bisa membuat program. terima kasih :D";
    cout << kalimat << endl;
    return 0;
}

Supaya lebih paham, terus coba ubah kode program yang saya berikan. :D