What we know so far . . .
Sebuah program C++ terdiri atas beberapa perintah dengan ketentuan:
setiap perintah diakhiri dengan tanda titik koma (;).
std::cout akan mencetak nilai dan operator << sebagai penghubung antara perintah dan angka
nilai berupa teks ditulis di dalam tanda kutip dua (").
nilai berupa angka ditulis tanpa tanda kutip.
std::endl adalah akhir dari baris (seperti Enter).
nilai angka dapat dikombinasikan menggunakan operator aritmetika berikut: + , - , * , / , % , = , dll.
jika sebuah ekspresi aritmetika dicetak, maka yang tampil adalah hasil perhitungannya.
A. #include dan std::
Untuk berikutnya, kita akan menggunakan namespace std sebagai pengganti std:: agar lebih ringkas.
Buat beberapa potongan program dengan sintaks bahasa C++!
int main() {
}
#include <iostream>
using namespace std;
int main() {
cout << "C++" << endl;
}
#include <iostream>
using namespace std;
int main() {
cout << "C++" << std::endl;
}
B. Perkenalan variabel
Dalam C++, int digunakan untuk mendeklarasikan variabel yang berisi angka bulat.
Soal cerita:
Pak Dengklek ingin menghitung luas dan keliling dari kandang bebeknya yang berukuran panjang 364 cm dan lebar 79 cm.
#include <iostream>
using namespace std;
int main() {
int panjang = 364;
int lebar = 79;
// cetak luas kandang
cout << panjang * lebar << endl;
// cetak keliling kandang
cout << 2 * (panjang + lebar) << endl;
}
Hasil yang akan tercetak :
28756
886
C. Memperbarui nilai variabel
Nilai variabel bisa diperbarui dengan cara menuliskan nama variabel dan nilai penggantinya.
Soal cerita:
Pak Dengklek membeli kandang bebek baru, yang dilengkapi dengan fitur kata sandi.
Pak Dengklek ingin mengganti kata sandinya setiap bulan, dengan strategi berikut:
Pada bulan pertama, kata sandinya 174.
Untuk bulan kedua dan seterusnya, kata sandinya adalah kata sandi pada bulan sebelumnya, dikali 23.
#include <iostream>
using namespace std;
int main() {
// kata sandi bulan pertama
int sandi = 172;
cout << sandi << endl;
// kata sandi bulan kedua
sandi = sandi * 23;
cout << sandi << endl;
// kata sandi bulan ketiga
sandi = sandi * 23;
cout << sandi << endl;
}
174
4002
92046
Pelajaran Matematika di kelas:
jika x = 3
3 + x = x salah, karena 3 + (3) = (3) tidak logis
Dalam C++ :
jika x = 3
x = 3 + x
x = 3 + (3) x di awal akan memiliki nilai baru
x = 6
D. Kuis perubahan nilai variabel
Sekarang kita akan diuji pemahaman mengenai nilai variabel yang diperbarui
Apakah keluaran dari potongan program berikut?
#include <iostream>
using namespace std;
int main() {
int x = 3;
x = x + 1;
cout << x << endl;
}
Perintah | Nilai Keluaran
----------------+----------------
int x = 3 | 3
x = x + 1 | 4
Apakah keluaran dari potongan program berikut?
#include <iostream>
using namespace std;
int main() {
int x = 3;
x = x + x;
cout << x << endl;
}
Perintah | Nilai Keluaran
----------------+----------------
int x = 3 | 3
x = x + x | 6
Apakah keluaran dari potongan program berikut?
#include <iostream>
using namespace std;
int main() {
int x = 3;
int y = 4;
x = y;
y = x;
cout << x << " " << y << endl;
}
Perintah | Nilai x | Nilai y
----------------+---------------+---------------
int x = 3 | 3 | -
int y = 4 | 3 | 4
x = y | 4 | 4
y = x | 4 | 4
E. Perkenalan tipe data string
Untuk mencetak gabungan string dan angka, gunakan tanda << dengan urutan yang tepat.
Soal cerita:
Pak Dengklek ingin mengganti lagi kata sandi kandangnya menjadi sedikit rumit, sesuai dengan tanggal lahir bebek tertuanya, dengan format:
[tahun+10]-[bulan]-[tanggal+7]
Diketahui, bebek tertua Pak Dengklek lahir pada 15 Februari 2023.
#include <iostream> // untuk menggunakan cout dan endl
#include <string> // untuk menggunakan string
using namespace std;
int main() {
int sandi = 15;
int tahun = 2023;
// jangan lupa bahwa string perlu diapit dengan kutip dua
string bulan = "Februari";
// cetak kata sandi
cout << tahun + 10 << "-" << bulan << "-" << tanggal + 7 << endl;
}
2033-Februari-22
G. Jual-Beli Bebek
Soal cerita yang lebih kompleks:
Pak Dengklek memiliki 63 bebek jantan dan 192 bebek betina.
Pak Dengklek akan melakukan jual-beli bebek selama dua bulan ke depan sebagai berikut:
Pada bulan pertama, Pak Dengklek akan:
membeli bebek betina sebanyak total bebek jantan yang ada, lalu
menjual sepertiga dari bebek-bebek jantannya.
Pada bulan kedua, Pak Dengklek akan:
membeli bebek jantan sebanyak total bebek betina yang ada, lalu
menjual 10 bebek betinanya.
Berapakah total banyaknya bebek Pak Dengklek setelah bulan kedua? Lengkapilah program sebelah kanan agar mengeluarkan total yang diminta.
#include <iostream>
using namespace std;
int main() {
int jantan, betina;
// banyaknya bebek saat ini
int jantan = 63;
int betina = 192;
// setelah bulan pertama
betina = betina + jantan;
jantan = jantan - (jantan / 3);
// setelah bulan kedua
jantan = betina + jantan;
betina = betina - 10;
// cetak total bebek
cout << jantan + betina << endl;
}
bulan | jantan | betina | total
--------+---------------+---------------+-------------
0 | 63 | 192 | 255
1 | 42 | 255 | 297
2 | 297 | 245 | 542
H. Variabel dan tipe data
Sekarang kita akan diuji pemahaman mengenai nilai variabel
Apakah keluaran dari potongan program berikut?
#include <iostream>
using namespace std;
int main() {
int x = 10;
int y = x;
y = 5;
cout << x << endl;
}
Perintah | Nilai x | Nilai y
----------------+---------------+---------------
int x = 10 | 10 | -
int y = x | 10 | 10
y = 5 | 10 | 5
syarat penamaan variabel:
hanya terdiri dari A - Z, a - z, 0 - 9, dan _ (underscore)
tidak diawali angka
tidak ada spasi
case sensitive seperti password