Anda di halaman 1dari 6

Statement

Statement dalam C++ adalah instruksi dasar yang memberitahu program apa yang
harus dilakukan. Statement-statement ini membentuk program C++ secara
keseluruhan.1 Berikut adalah beberapa jenis statement umum dalam C++:

1. Deklarasi Variabel: Digunakan untuk membuat tempat penyimpanan data di memori


dan memberi nama untuk referensi nanti2.Contoh:

C++
int angka; // mendeklarasikan variabel integer bernama `angka`
std::string nama = "Budi"; // mendeklarasikan variabel string bernama `nama`
dengan nilai "Budi"

2. Pernyataan Penugasan: Digunakan untuk menyimpan nilai ke dalam variabel.

C++
angka = 10; // menetapkan nilai 10 ke variabel `angka`
nama = "Andi"; // mengubah nilai variabel `nama` menjadi "Andi"

3. Pernyataan Ekspresi: Melakukan perhitungan atau operasi dan mungkin atau tidak
menghasilkan nilai.

C++
int hasil = x + y; // menghitung `x` dan `y` dan menyimpan hasilnya di `hasil`
std::cout << (x > 0); // mencetak `true` jika `x` lebih besar dari 0, `false`
jika tidak

4. Pernyataan Input/Output: Memungkinkan program untuk berinteraksi dengan


pengguna.

C++
std::cin >> angka; // membaca input integer dan menyimpannya di `angka`
std::cout << "Halo, " << nama << "!"; // mencetak "Halo, Budi!" ke konsol

5. Pernyataan Kontrol Alur: Mengontrol urutan eksekusi program berdasarkan


kondisi.

C++
if (x > 0) {
// blok kode ini dieksekusi jika `x` lebih besar dari 0
} else {
// blok kode ini dieksekusi jika `x` tidak lebih besar dari 0
}

1
Larus, J., & Reps, T. A Survey of C++ Statement Coverage Tools. (ACM Computing Survey, 2012 ),
h.44.
2
Balakrishnan, A Framework for C++ Statement-Level Concurrency Analysis. (ACM SIGPLAN
Conference 2014),h. 245-256
for (int i = 0; i < 10; i++) {
// blok kode ini diulang 10 kali
}

6. Pernyataan Loncat: Digunakan untuk langsung melompat ke bagian lain program.

C++
while (true) {
// loop ini terus berjalan sampai `break` dieksekusi
if (kondisi) {
break; // keluar dari loop
}
}
continue; // melanjutkan ke iterasi berikutnya pada loop

Dalam pemrograman C++, setiap statement harus diakhiri dengan tanda titik koma (;). Hal ini
untuk memberitahu compiler bahwa statement tersebut telah selesai. Statement dieksekusi
secara berurutan, baris demi baris, dari atas ke bawah. Namun, urutan ini dapat diubah dengan
menggunakan statement kontrol alur seperti if, else, for, dan while. 3Dengan memahami
berbagai macam statement yang tersedia di C++, Anda dapat membangun program yang
kompleks dan fungsional.

Ekspresi

Ekspresi dalam C++ adalah kombinasi variabel, operator, dan literal yang menghasilkan nilai.
Ekspresi digunakan untuk melakukan perhitungan, operasi logika, dan operasi lainnya dalam
program.4

1. Ekspresi Aritmatika

Ekspresi ini melakukan operasi matematika dasar seperti penjumlahan, pengurangan,


perkalian, dan pembagian.

C++
#include <iostream>

int main() {
int a = 10;
int b = 5;

// Penjumlahan
int sum = a + b;
std::cout << "Hasil penjumlahan: " << sum << std::endl; // Mencetak 15

// Pengurangan
int difference = a - b;
3
Susanto, R.A.A. C++: Dasar Pemrograman Berorientasi Objek. (Jakarta: PT Gramedia Pustaka Utama 2020),
h 41
4
Tang, J., & Sun, W, A Static Analysis Framework for C++ Expressions.(IEEE Transactions on Software
Engineering, 2012),h 1030-1044
std::cout << "Hasil pengurangan: " << difference << std::endl; // Mencetak 5

// Perkalian
int product = a * b;
std::cout << "Hasil perkalian: " << product << std::endl; // Mencetak 50

// Pembagian
double quotient = a / (double)b; // Casting b ke double untuk menghindari
pembagian integer
std::cout << "Hasil pembagian: " << quotient << std::endl; // Mencetak 2.0

return 0;
}

2. Ekspresi Logika

Ekspresi ini mengevaluasi kondisi menjadi true atau false menggunakan operator
logika seperti && (AND), || (OR), dan ! (NOT).5

C++
#include <iostream>

int main() {
bool x = true;
int y = 15;

// Memeriksa apakah x bernilai true dan y lebih besar dari 10


bool condition1 = x && (y > 10);
std::cout << "Kondisi 1: " << condition1 << std::endl; // Mencetak true

// Memeriksa apakah y sama dengan 15 atau x bernilai false


bool condition2 = (y == 15) || !x;
std::cout << "Kondisi 2: " << condition2 << std::endl; // Mencetak true

return 0;
}

3. Ekspresi Kombinasi

Ekspresi ini menggabungkan ekspresi aritmatika dan logika dengan operator seperti
kurung untuk mengatur prioritas evaluasi6.

C++
#include <iostream>

int main() {
int x = 5;
int y = 3;

5
Grenning, J. (2015), C++ Expression Coverage for Unit Testing. Software Testing, Verification and
Reliability, 25(5)
6
Susanto, R.A.A, C++: Dasar Pemrograman Berorientasi Objek. (Jakarta: PT Gramedia Pustaka Utama,
2015), h 43
// Menghitung (x + 2) * y dan kemudian memeriksa apakah hasilnya genap
bool isEven = ((x + 2) * y) % 2 == 0;
std::cout << "Apakah hasilnya genap: " << isEven << std::endl; // Mencetak
true

return 0;
}

4. Ekspresi dengan Variabel dan Literal

Ekspresi dapat berisi variabel yang nilainya bisa berubah dan literal yang mewakili nilai
tetap.

C++
#include <iostream>

int main() {
double pi = 3.14159;
int radius = 10;

// Menghitung luas lingkaran


double area = pi * radius * radius;
std::cout << "Luas lingkaran: " << area << std::endl; // Mencetak 314.159

return 0;
}

5. Ekspresi dalam Pernyataan Penugasan

Ekspresi digunakan di sisi kanan pernyataan penugasan untuk menetapkan nilai ke


variabel.

C++
#include <iostream>

int main() {
int angka = 0;

// Menugaskan nilai hasil perkalian 5 dan 3 ke variabel angka


angka = 5 * 3;
std::cout << "Nilai variabel angka: " << angka << std::endl; // Mencetak 15

return 0;
}

Ini hanyalah beberapa contoh sederhana. Ekspresi dalam C++ bisa jauh lebih kompleks
dan digunakan untuk berbagai keperluan dalam program.
Library

Library dalam C++ adalah kumpulan kode pra-tertulis yang dapat Anda masukkan ke
program Anda untuk mengakses fungsionalitas tertentu. Library ini menghemat waktu
dan tenaga Anda dengan menawarkan blok kode yang teruji dan dioptimalkan untuk
berbagai tugas.7

Jenis-jenis Library di C++:

1. C++ Standard Template Library (STL):


o STL adalah library powerful yang hanya tersedia dalam header dan
disertakan dengan sebagian besar compiler C++.8
o Menawarkan berbagai fitur seperti:
 Container: Menyimpan dan mengelola data dalam berbagai
struktur, seperti vector, list, map, dan set.
 Algoritma: Melakukan operasi pada data, seperti sorting,
searching, dan merging.
 Iterator: Mengakses elemen dalam container dengan cara yang
terkontrol.
 Fungsi Generik: Bekerja dengan berbagai jenis data tanpa perlu
modifikasi kode.

Contoh:

* **Manipulasi String:**
* `std::string`: Menyimpan dan memanipulasi string teks.
* `std::stringstream`: Mengubah data antar tipe data dan string.
* `std::regex`: Mencocokkan pola dalam string.

* **Operasi Matematika:**
* `std::numeric_limits`: Mendapatkan informasi tentang batas nilai
numerik.
* `std::complex`: Bekerja dengan bilangan kompleks.
* `std::random`: Menghasilkan bilangan acak.

* **Algoritma Pencarian dan Pengurutan:**


* `std::find`: Menemukan elemen tertentu dalam container.
* `std::sort`: Mengurutkan elemen dalam container.
* `std::lower_bound`: Menemukan posisi elemen yang lebih besar atau
sama dengan nilai tertentu.

2. C++ Standard Library:


o Kumpulan header standar yang menyediakan fungsionalitas dasar untuk
tugas pemrograman umum, seperti:
 I/O: std::cout, std::cin, std::fstream (file I/O).

7
Tang, J., & Sun, W, A Static Analysis Framework for C++ Expressions. (IEEE Transactions on Software
Engineering,2015), h 31.
8
Susanto, R.A.A, C++: Dasar Pemrograman Berorientasi Objek, (Jakarta: PT Gramedia Pustaka Utama,
2017) h 72.
 Manipulasi String: std::string, std::stringstream.
 Alokasi Memori: new, delete, std::vector.
 Konversi Tipe Data: std::stod, std::stoi.

3. Library Pihak Ketiga:


o Dikembangkan oleh komunitas developer dan menawarkan fungsionalitas
di luar library standar, seperti:9
 Boost: Menyediakan berbagai library untuk threading, networking,
random number generation, dan lainnya.
 Qt: Framework cross-platform untuk pengembangan GUI.
 OpenGL: Library grafis untuk membuat aplikasi 2D dan 3D.
 Eigen: Library untuk komputasi ilmiah dan manipulasi matriks.

Contoh:

* **Networking:**
* `Boost.Asio`: Library untuk pemrograman jaringan asynchronous.
* `Qt Network`: Library untuk pemrograman jaringan cross-platform.

* **GUI:**
* `Qt Widgets`: Library untuk membangun GUI dengan widget seperti
tombol, textbox, dan lainnya.
* `wxWidgets`: Library cross-platform untuk membangun GUI dengan
widget native.

* **Pengolahan Citra:**
* `OpenCV`: Library untuk pengolahan citra dan visi komputer.
* `FreeImage`: Library untuk membaca, menulis, dan memanipulasi
gambar.

Manfaat Menggunakan Library:

 Meningkatkan Produktivitas: Menghemat waktu dan tenaga dengan


menggunakan kode yang sudah teruji dan dioptimalkan.
 Meningkatkan Kualitas Kode: Library biasanya teruji dengan baik dan memiliki
dokumentasi yang lengkap.
 Meningkatkan Portabilitas: Library standar C++ tersedia di hampir semua
platform,

9
Grenning, J, C++ Expression Coverage for Unit Testing. (Software Testing, Verification and Reliability,
2015), H 87.

Anda mungkin juga menyukai