Sabtu, 18 Juli 2020

Mengenal Opertor, Percabangan, Perulangan Dan Array Pada C++

Mengenal Opertor, Percabangan, Perulangan Dan Array Pada C++

Oke sahabat setia syarif soden, ketemu lagi di blog kesayangan kalian pada kesempatan kali ini kita akan belajar tentang operator pada C++, percabangan pada c++, perulangan pada c++ dan array pada c++.

Berikut pengertian operator dalam bahasa pemrograman:
Operator adalah simbol khusus yang biasa dilibatkan dalam pembuatan program untuk melakukan suatu operasi matematika maupun manipulasi logika.

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 = "Syarif";
umur = 20;
Berikut contoh program sederha penggunaan assignment operator pada C++:
#include <iostream>
using namespace std;

int main ()
{
  int a, b;         // a:?,  b:?
  a = 20;           // a:20, 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 20 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;
}

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 KD
     int KD;

     // Mengisi nilai kedalam Variabel KD
     // dengan nilai 10
     KD = 10;

     // Melakukan Pre-Increment
     cout<<"Nilai KD awal : "<<KD<<endl;
     cout<<"Nilai ++MD    : "<<++KD<<endl;
     cout<<"Nilai KD      : "<<KD<<endl;

     // Mengubah nilai yang terdapat dalam variabel KD
     // dengan nilai 20
     KD = 20;

     // Melakukan Post-Increment
     cout<<"\nNilai KD awal : "<<KD<<endl;
     cout<<"Nilai KD++    : "<<KD++<<endl;
     cout<<"Nilai KD      : "<<KD<<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

Salah satu strukur kontrol dalam bahasa pemrograman c++ yang akan kita bahas adalah konsep percabangan. Idenya, kita akan belajar membuat program pengambil keputusan.

Sebelum itu, mari kita lihat pengertian dari percabangan terlebih dahulu:
Percabangan merupakan pemilihan statemen yang akan dieksekusi dimana pilihan tersebut didasarkan atas kondisi tertentu untuk mengarahkan jalannya program.
Dalam kehidupan sehari-hari terkadang kita dihadapkan pada kondisi dimana kita harus memilih suatu tindakan. Sebagai contoh ketika anda ingin menonton film di bioskop.

Konsepnya seperti ini:
Jika anda memiliki tiket, maka anda boleh masuk untuk menonton film.
Nah, disana ada sebuah kondisi yang harus terpenuhi yaitu memiliki tiket.
Artinya jika anda tidak memiliki tiket (kondisi = FALSE) maka anda tidak diperbolehkan untuk menonton film di bioskop. Kurang lebih itulah contoh nyata konsep percabangan.
Intinya selama kondisi terpenuhi maka program akan dijalankan.

Begitu juga dalam membuat program, kita akan sedikit banyak berurusan dengan pilihan. Disini kita akan mengenal dua fungsi percabangan yaitu if else dan switch case.

1 Contoh Program If Else pada C++
Berikut ini merupakan contoh program C++ sederhana menggunakan fungsi if else:
#include <iostream>
using namespace std;

void pilihan (int x){
    if (x==1) {
        cout << "Anda Memesan Nasi Goreng";
    }
    else {
        cout << "Anda Memesan Nasi Kucing";
    }
}

int main(){
    int pilih;

    cout << "1. Nasi Goreng" << '\n';
    cout << "2. Nasi Kucing" << '\n';
    cout << "Masukan Pulihan Anda (1-2): "; cin >> pilih;

    pilihan (pilih);
}

Dalam program di atas, saya membuat prosedur bernama pilihan dengan parameter x bertipe integer. 
Apabila variabel X bernilai 1 maka program akan mencetak "Anda pesan nasi goreng", jika tidak (selain angka 1) maka program akan mencetak "anda memesan nasi kucing".
Nah, didalam program utama saya hanya menyiapkan varibel pilih bertipe integer untuk menyimpan nilai inputan yang akan digunakan pada prosedur pilihan.

Mari kita lihat struktur dari fungsi If-else pada C++.
Secara sederhana, fungsi if dapat ditulis seperti berikut:
if (kondisi) {
    Statemen1;
    //kode yang dijalankan jika bernilai benar
}
else {
    Statemen2;
    //kode yang dijalankan jika salah
}

Jadi cara kerjanya seperti ini: Jika kondisi bernilai benar (TRUE) maka statement1 akan dijakanlan, sedangkan jika bernilah salah (FALSE) maka statemen2 yang dieksekusi.
Macam-macam operator yang digunakan.

Operator Relasi - Operator ini digunakan untuk membandingkan 2 buah data untuk mendepatkan kondisi benar (TRUE) atau salah (FALSE). Berikut daftarnya:

Operator
Keterangan
==
Sama dengan
!=
Tidak sama dengan
< 
Kurang dari
> 
Lebih dari
<=
Kurang dari atau sama dengan
>=
Lebih dari atau sama dengan
Operator Logika - Faktanya, terkadang kita dihadapkan kondisi yang memiliki lebih dari satu syarat. Jika anda mengalami hal yang sama maka gunakan operator berikut:

Operator
Keterangan
&&
And (Semua kondisi harus bernilai benar)
||
Or (Salah satu harus bernilai benar)
!
Not (Kebalikan dari kondisi sebenarnya)
Nested If atau If Bersarang - Seperti yang telah saya singgung diatas, terkadang kita akan dihadapkan pada kondisi yang sedikit lebih rumit dalam menentukan pilihan.

Jika anda paham struktur percabangan if else maka anda hanya perlu menambahkan fungsi if dalam sebuah program if tersebut. contohnya seperti bari kode berikut:
#include <iostream>
using namespace std;

void Hasil (int x, int y){
    if (x==1) {
        if (y>=17){
            cout << "Pria Dewasa";
        }
        else{
            cout << "Perjaka";
        }
    }
    else {
        if (y>=17){
            cout << "Wanita Dewasa";
        }
        else{
            cout << "Gadis";
        }
    }
}

int main(){
    int umur, kel;

    cout << "Jenis Kelamin" << '\n';
    cout << "1. Laki-Laki" << '\n';
    cout << "2. Perempuan" << '\n';
    cout << "Masukan Pilihan Anda (1-2): "; cin >> kel;

    cout << "Masukan Umur Anda (1-100): "; cin >> umur;

    Hasil(kel,umur);
}
Pada kasus ditas, kita ingin mengetahui bagaimana seseorang dikatakan gadis, perjaka, wanita dewasa, dan pria dewasa menggunakan dua syarat yaitu umur dan jenis kelamin.
Inti dari nested if adalah: Kita memiliki pecabangan didalam percabangan.

2 Contoh Program Switch Case pada C++
Secara pengertian, switch dapat diartikan sebagai berikut:
Switch adalah konsep percabangan yang digunakan untuk menyelesaikan sebuah masalah dengan sejumlah kemungkinan dengan kondisi konstan.

Namun pada dasarnya memiliki fungsi yang sama dengan percabangan if else.
Lalu apa yang membedakan kedua sintaks tersebut dan kapan anda menggunakan fungsi switch atau sebaliknya? Mari kita lihat strukur peercabangan switch case.
Secara sederhana peryataan switch dapat ditulis sebagai berikut:
switch (kondisi)
{
  case constant1:
     statements-1;
     break;
  case constant2:
     statements-2;
     break;
  default:
     default-statements;
}

Mari kita pelajari bagaimana cara kerja program switch.
Peryataan switch mengevaluasi kondisi dan memeriksa apakah sama dengan constant1. Jika ya, maka statements-1 akan dieksekusi hingga kode break;
Jika tidak maka switch akan memeriksa terhadap constant2 dan seterusnya hingga kondisi terpenuhi dan mengeksekusi program sesuai konsisi tersebut.

Namun, jika nilai kondisi tidak sesuai dengan konstanta yang telah ditentukan sebalumnya, maka program akan mengeksekusi peryataan default.
Catatan: Saat menemukan pernyataan break, maka program akan beralih ke akhir keseluruhan pernyataan switch (tanda "}" ) tanpa mengeksekusi baris dibawahnya.

Sedangkan keyword default akan bekerja jika semua kondisi tidak terpenuhi.
Berikut contoh sederhana program percabangan pada C++ menggunakan switch case:
#include <iostream>
using namespace std;

int pilihan;
string text;

int main(){
 cout << "Daftar bahasa pemrograman:\n";
 cout << "1. Java \n2. C++ \n3. PHP\n";

 ulangi:

 cout << "Masukan pilihan anda (1-3): ";

 cin >> pilihan;

 switch(pilihan){
  case 1:
   text="Anda memilih Pemrograman Java";
  break;
  case 2:
   text="Anda memilih Pemrograman C++";
  break;
  case 3:
   text="Anda memilih Pemrograman PHP";
  break;
  default:
   goto ulangi;
 }

 cout << text;
}

Disini saya menggunakan dua variabel, pertama variabel pilihan dengan tipe data integer yang akan kita gunakan sebagai kondisi pada peryataan switch.
Yang kedua variabel text dengan tipe data string yang akan kita gunakan untuk menyimpan tulisan sesuai pilihan kita sebelumnya.

Masuk ke pokok pembahasan kita kali ini, disini saya akan mengevalusi kondisi (pilihan) dengan konstanta 1-3 menggunakan fungsi switch case.
Namun apabila kondisi tidak terpenuhi maka fungsi default akan dieksekusi yaitu menuju ke indetifier ulangi: dan kita akan memasukan pilihan lagi.
Sebagai contoh: apabila anda memasukan angka 2, maka tulisan yang akan muncul adalah "Anda memilih pemrograman C++".

Namun jika angka yang anda masukan bukan 1, 2, dan 3 maka program akan menuju identifier ulangi: karena kondisi default diberi fungsi goto ulangi.
Studi Kasus - Sekarang anda sudah mengetahui apa itu switch case dan bagaimana stuktur penulisannya, anda juga telah mengetahui apa fungsi break dan default.
Sebagai studi kasus, disini saya akan memberikan contoh program "NPM (Nomor Pokok Mahasiswa) Generator" menggunakan peryataan switch dalam bahasa c++.

#include <iostream>
using namespace std;

string tahun;
int fakultas,prodi;
string idtahun,idfakultas,idprodi,nomor,npm;

int main(){

 cout << "Masukan tahun: "; cin >> tahun;
 idtahun = tahun.substr(2,3);

 cout << "Fakultas:\n 1. Hukum\n 2. Pendidikan\n 3. Ilmu Kesehatan\n 4. Teknik\n";
 cout << "Masukan fakultas anda: "; cin >> fakultas;
 switch (fakultas){
  case 1:
   idfakultas="01";
   cout << "Program Studi:\n 1. Ilmu Humum S1\n";
   break;
  case 2:
   idfakultas="02";
   cout << "Program Studi:\n 1. Bimbingan Konseling (S-1)\n 2. Pendidikan Guru PAUD (S-1) 3. Pendidikan Guru SD (S-1)\n";
   break;
  case 3:
   idfakultas="03";
   cout << "Program Studi:\n 1. Ilmu Keperawatan (S-1)\n 2. Keperawatan (D-3)\n 3. Farmasi (D-3)\n 4. Profesi Ners\n";
   break;
  case 4:
   idfakultas="04";
   cout << "Program Studi:\n 1. Teknik Industri (S-1)\n 2. Teknik Informatika (S-1)\n";
   break;
 }

 cout << "Masukan pilihan anda: "; cin >> prodi;
 switch (prodi){
  case 1:
   idprodi = "01";
   break;
  case 2:
   idprodi = "02";
   break;
  case 3:
   idprodi = "03";
   break;
  case 4:
   idprodi = "04";
   break;
 }

 cout << "Masukan Nomor Urut: "; cin >> nomor;

 npm=idtahun+"."+idfakultas+"."+idprodi+"."+nomor;
 cout << "NPM: " << npm;
}

Dalam program diatas saya sengaja tidak menggunakan fungsi default sehingga bisa saja anda memasukan angka diluar nilai yang tersedia.

Tugas anda adalah memperbaiki program tersebut, sebagai petunjuk silahkan gunakan peryataan switch didalam switch (nested switch case).

konsep perulangan dalam bahasa C++ dengan contoh programnya.

Mari kita sedikit mengenal apa itu perulangan:
Mungkin anda juga pernah dihukum guru anda untuk menulis sebuah kalimat perjanjian yang intinya tidak akan mengulangi perbuatan salah anda sampai papan tulis penuh.
Misalnya menulis:
Saya belajar bahsa c++
……………………….
……………………….
……………………….
Saya belajar bahasa c++

Catatan: Anggaplah bagian titik-titik merupakan tulisan yang sama.
Seperti yang bisa anda lihat diatas, kita diminta untuk menulis kalimat yang sama sebanyak (contoh: 50 kali). Tentunya hal ini menjadi pekerjaan yang melelahkan.

Namun kabar baiknya, kita mengenal fungsi perulangan atau looping.
Dalam bahasa pemrograman kita akan membutuhkan looping untuk mengerjakan sesuatu yang sifatnya berulang. Dalam contoh diatas mencetak tulisan 50 kali.
Dengan perulangan, anda bisa menghemat sekian banyak baris kode yang pada dasarnya cukup diketik satu kali. Untuk itulah program perulangan digunakan.

Pengertian Perulangan atau Looping
Perulangan dapat diartikan sebagai berikut:
Perulangan (atau dalam bahasa inggris disebut dengan loop) adalah instruksi program yang bertujuan untuk mengulang beberapa baris perintah.
Fungsi paling sederhana yaitu untuk mempermudah melakukan suatu proses yang berulang-ulang, seperti mencetak angka dari 1 – 100.

Ada 3 cara untuk melakukan perulangan di C++ yaitu: for, while, & do while.

1 Perulangan dengan fungsi for
Penulisan dasar format perulangan for dalam C++ adalah sebagai berikut:
for (start; condition; increment)
{
   statement;
}

Start adalah kondisi pada saat awal perulangan.
Biasanya kondisi awal ini digunakan untuk membuat dan memberikan nilai kepada variabel yang digunakan untuk mengontrol perulangan.

Misalkan, kita akan membuat variabel i, maka untuk kondisi start ini, kita juga harus memberikan nilai awal untuk variabel i, misalnya dengan 1, maka i=1.

Misalkan kita ingin menghentikan perulangan jika variabel i telah mencapai nilai 10, maka pada bagian condition ini kita membuat perintah i<=10.

Yang berarti selama nilai i kurang atau sama dengan 10, terus lakukan perulangan.
Increment adalah bagian yang digunakan untuk memproses variabel agar bisa memenuhi kondisi akhir perulangan.

Umumnya nilai variable tersebut bertambah (i++) / berkurang (i--) 1 (satu).
Condition adalah kondisi yang harus dipenuhi agar perulangan dijalankan. Selama kondisi ini terpenuhi, maka C++ akan terus melakukan perulangan.

Statement adalah bagian kode program yang akan diproses secara terus-menerus selama proses perulangan berlangsung.

Kita membuat blok program di antara tanda kurung kurawal ({ dan }) sebagai penanda bahwa bagian di dalam kurung kurawal inilah yang akan dikenai proses perulangan.

Contoh looping dengan fungsi for pada program c++:
#include <iostream>
using namespace std;

void CetakAngka (int i, int j){
    for (i = 1; i <= j; i++){
        cout << i << '\n';
    }
}

int main ()
{
    CetakAngka (1,10);
}

2 Perulangan dengan fungsi while
Dalam perulangan while, program akan terus melakukan perulangan dengan mengeksekusi pernyataan target selama kondisi tertentu bernilai benar.

Penulisan dasar format perulangan while dalam C++ adalah sebagai berikut:
while(condition){
    statement;
}

Condition adalah kondisi yang harus dipenuhi agar perulangan berlangsung.
Kondisi ini mirip seperti dalam perulangan for.

Condition ini akan diperiksa pada tiap perulangan, dan hanya jika hasilnya FALSE, maka proses perulangan berhenti. Artinya kita tidak tahu berapa banyaknya perulangan.

Karena, selama condition bernilai TRUE, maka perulangan akan terus dilakukan.
Statement adalah kode program yang akan diulang.

Tanda kurung kurawal diperlukan untuk membatasi blok program yang akan diulang. Jika statement hanya terdiri dari 1 baris, maka tidak diperlukan.

Contoh perulangan dengan fungsi while dalam program c++:
#include <iostream>
using namespace std;

int main () {
   // Local variable declaration:
   int a = 1;

   // while loop execution
   while( a < 10 ) {
      cout << "value of a: " << a << endl;
      a++;
   }

   return 0;
}

3 Perulangan dengan fungsi do while
Perulangan while dan do-while pada dasarnya hampir sama.
do {
    statement;
} while (condition);

Perbedaan terletak pada ’lokasi’ pengecekan kondisi perulangan.
Dalam struktur while, pengecekan untuk kondisi perulangan di lakukan di awal, sehingga jika kondisi tidak terpenuhi, maka perulangan tidak akan pernah dijalankan.

Namun pada perulangan do-while:
Pengecekan kondisi akan dilakukan di akhir perulangan, sehingga walaupun kondisi adalah FALSE, perulangan akan tetap berjalan minimal 1 kali.

Statement adalah kode program yang akan diulang & condition adalah kondisi yang harus dipenuhi agar perulangan berlangsung.

Contoh program looping dengan fungsi do while dalam pemrograman c++:
#include <iostream>
using namespace std;

int main () {
   // Local variable declaration:
   int a = 1;

   // while loop execution
   do {
      cout << "value of a: " << a << endl;
      a = a + 1;
   } while ( a < 10 );

   return 0;
}

Method dapat diartikan sebagai berikut:
Method adalah kumpulan statemen atau blok peryataan yang berfungsi untuk menyelesaikan tugas khusus dari program kita. Berfungsi sebagai subprogram.

Intinya kita ingin membagi-bagi program dari program utama (main program) sehingga program dapat lebih rapih dan juga lebih terstruktur dan dapat dijalankan berulang kali.

Dalam sebuah program C++ minimal kita memiliki 1 method, karena pada dasarnya main() juga merupakan sebuah method. Method main adalah program utama kita.

Deklasasi Fungsi / Method pada C++
Berikut cara mendeklarasikan fungsi atau method pada bahasa C++:
return_type nama_method ( daftar parameter) {
  blok pernyataan;
}

Ada dua jenis method dalam pemrograman C+:
Method Return - Memiliki nilai kembali, contoh: int (sama seperti fungsi).
Method Void - Tanpa memiliki nilai kembalian (sama seperti prosedur).

1 Method Tanpa Return Value
Method Void - fungsi yang tidak memiliki nilai kembalian, maka dari itu penggunaan prosedur selalu menggunakan void karena void tidaklah mengembalikan nilai.

Tujuan dari penggunaan prosedur atau method void salah satunya adalah untuk mendefinisikan masing – masing tugas. Berikut ini contoh prosedur pada C++:
#include <iostream>
using namespace std;

void LuasPersegi()
{
 int panjang,lebar;

 cout << "Masukkan panjang: "; cin >> panjang;
 cout << "Masukkan lebar: "; cin >> lebar;

 cout<<"Luas persegi: " << panjang*lebar;
}

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

2 Method dengan Return value
Fungsi adalah subprogram yang akan mengolah data dan mengembalikan nilai (return value). Silahkan perhatikan program fungsi pada kode C++ berikut ini:
#include <iostream>
using namespace std;

int LuasPersegi (int p, int l){
    int luas;
    luas = p*l;
    return luas;
}

int main()
{
    int a,b;

    cout << "masukkan panjang: "; cin >> a;
    cout << "masukkan lebar: "; cin >> b;

    cout << "Luas Persegi: " << LuasPersegi(a,b);
    return 0;
}

Catatan: penggunaan parameter dalam prosedur boleh dikosongkan, sedangkan dalam sebuah fungsi kita harus menggunakan parameter dalam penggunaannya.


Deklarasi & Inisialisasi Array
Untuk mendeklarasikan sebuah array pada c++ anda hanya perlu menuliskan:
tipe_data nama_array [ ukuran_array ];

Saya akan memberikan sedikit catatan:
Nama Array - Anda bebas memberi nama array yang akan digunakan.
Ukuran Array - Digunakan untuk menentukan banyak index, anda dapat menentukan sesuai kebutuhkan anda. Namun harus lebih dari 0.

Berikut adalah contoh pendeklarasian tipe data array pada program c++:
int daftarNilai [20];
Faktanya, anda dapat melakukan inisialisasi terhadap array atau memberikan nilai awal:
int daftarNilai [5] = {10,9,10,8,9};

Dengan catatan, jumlah inisialisasi tidak boleh lebih dari ukuran array.
Namun anda juga dapat mendeklarasikan array sekaligus memberikan inisialisasi tanpa harus memberikan tambahan deklarasi ukuran array, sebagai berikut:
int daftarNilai [] = {10,9,8,10,9};

1 Contoh Program C++ Array 1 Dimensi
Berikut cara mendeklarasikan array 1 dimensi pada C++:
tipedata [totalindex];

//atau

tipedata [] = { nilai1, nilai2, dst };
Jadi, ada dua cara mendeklarasikan sebuah array berdimensi satu cara pertama cukup dengan menggunakan tipe data dan total index yang diinginkan, contoh:
int umur[5];

Artinya, anda menyediakan varibel array bernama umur dengan tipe data integer yang mampu menampung 5 data yang sama mulai dari index 0 - 4.
Ingat: Index pada array selalu dimulai dari nol.

Kemudian untuk mengisi nilai untuk tiap index pada array dengan cara:
umur[0] = 18;
umur[1] = 19;
umur[2] = 20;
umur[3] = 21;
umur[4] = 22;

Cara kedua, anda bisa langsung memberi nilai untuk tiap index pada saat pendeklarasian array. Contoh kodenya sebagai berikut:

int umur[] = {18,19,20,21,22};
Untuk penerapan array dalam program biasanya dipadukan dengan perulangan for, while-do, dan do-while. Pilih salah satu namun yang paling umum adalah for.
Berikut contoh program sederhana array 1 dimensi pada c++:
#include <iostream>
using namespace std;

int umur[] = {18, 19, 20, 21, 22};
int n, hasil=0;

int main ()
{
  for ( n=0 ; n<5 ; ++n )
  {
    hasil+= umur[n];
  }
  cout << hasil;
  return 0;
}

Dalam program diatas, saya ingin menjumlahkan nilai dari tiap index umur dan hasilnya saya simpan kedalam variabel hasil untuk ditampilkan di akhir program.

2 Contoh Program C++ Array 2 Dimensi
Sama halnya dengan array 1 dimensi, array 2 dimensi juga memiliki cara yang sama dalam pendeklarasiannya. Berikut contoh array berdimensi 2:

Deklarasi array 2 dimensi:
tipedata [totalbaris][totalkolom];
Pemberian nilai array 2 dimensi:
namatabel [indexbaris][indexkolom] = nilai;

Sehingga untuk memberi nilai secara manual menjadi sebagai berikut:
tabel[0][0]= 1; tabel[0][1]= 2; tabel[0][2]= 3; tabel[0][3]= 4; tabel[0][4]= 5;
tabel[1][0]= 2; tabel[1][1]= 4; tabel[1][2]= 6; tabel[1][3]= 8; tabel[1][4]= 10;
tabel[2][0]= 3; tabel[2][1]= 6; tabel[2][2]= 9; tabel[2][3]= 12; tabel[2][4]= 15;
Catatan: anda akan menggunakan looping bersarang untuk mengakses array dua dimensi (array dua dimensi seperti sebuah tabel dengan baris dan kolom).

Berikut ini merupakan contoh program sederhana array 2 dimensi pada c++:
#include <iostream>
using namespace std;

int x,y;
int tabel[3][5] = {
                  {1, 2, 3, 4, 5},
                  {2, 4, 6, 8, 10},
                  {3, 6, 9, 12, 15}
                  };

int main ()
{
  for (x=0; x<3; x++)
    for (y=0; y<5; y++)
    {
      cout << tabel[x][y] << " ";
    }
    cout << "\n";
}

Dalam program diatas kita mendeklarasikan variabel x dan y sebagai iterator.
Lalu kita mendeklarasikan varibel tabel dengan tipe array dua dimensi (jumlah baris = 3, jumlah kolom = 5). Selain itu, kita langsung melakukan inisialisasi pada array tersebut.

Kemudian dalam program utama kita menggunakan nested loop dengan fungsi for untuk mengakses baris dan kolom secara otomatis supaya dapat mencetak isi array tabel.
Previous Post
Next Post

0 Post a Comment: