03.01.SolveQuadraticEquation
Halaman 1
Programming Exercise 03.02
Check A Number
3.2. (Check numbers)
Write a program that prompts the user to enter two integers and checks whether the
first number is divisible by the second. Here is a sample run:
Here is a sample run:
Enter two integers: 2 3
2 is not divisible by 3
Here is a sample run:
Enter two integers: 22 2
22 is divisible by 2
03.02.01. Identifikasi Masalah
Masalah yang akan diselesaikan adalah menguji apakah bilangan pertama dapat dibagi
dengan bilangan kedua. Bilangan pertama dan kedua diinput oleh pengguna.
03.02.02. Strategi Pemecahan Masalah
Masalah ini adalah masalah keterbagian suatu bilangan. Misal, 𝑎 dan 𝑏 adalah bilangan
asli maka bilangan 𝑎 dapat dibagi oleh bilangan 𝑏 jika 𝑎 𝑚𝑜𝑑 𝑏 = 0. Sebaliknya, jika 𝑎 tidak
dapat dibagi oleh 𝑏 maka 𝑎 𝑚𝑜𝑑 𝑏 ≠ 0.
03.02.03. Menyelesaikan Masalah
Langkah pertama untuk menyelesaikan masalah ini adalah menawarkan prompt kepada
pengguna untuk menginput dua bilangan. Bilangan-bilangan ini disimpan dalam variabel
03.01.SolveQuadraticEquation
Halaman 2
dengan nama berturut-turut bilDibagi dan bilPembagi. Kemudian, nilai dalam variabel
bilDibagi dioperasikan modulo dengan nilai dalam variabel bilPembagi. Jika hasil operasi
modulo 0 maka nilai dalam variabel bilDibagi dapat dibagi dengan nilai dalam variabel
bilPembagi. Sebaliknaya, hasil operasi modulo antara nilai dalam variabel bilDibagi dengan
nilai dalam variabel bilPembagi tidak sama dengan 0 maka nilai dalam variabel bilDibagi
tidak dapat dibagi dengan nilai dalam variabel bilPembagi. Langkah-langkah ini dapat
dinyatakan dalam diagram alir berikut:
Gambar 03.01.01. Diagram Alir Menentukan Keterbagian Dua Bilangan
03.02.04. Mengajukan Solusi
Baris kode untuk menguji apakah bilangan pertama dapat dibagi dengan bilangan kedua
dan bilangan pertama dan kedua diinput oleh pengguna adalah:
1 #include <iostream>
2
3 /*
4 ==================================================================
Input bilDibagi
dan bilPembagi
false
bilDibagi %
bilPembagi == 0
bilDibagi > 0
&&
bilPembagi > 0
true
Tampilkan pesan:
bilDibagi tidak dapat
dibagi bilPembagi
true
Tampilkan pesan:
bilDibagi dapat
dibagi bilPembagi
Tampilkan pesan:
“Input bilangan asli”
false
03.01.SolveQuadraticEquation
Halaman 3
5 03.02. Check A Number
6 by : #bayuyudhasaputra
7 lang : IDN (Bahasa Indonesia)
8 -----------------------------------------------------------------
9 Masalah :
10 Write a program that prompts the user to enter two integers and
checks whether
11 the first number is divisible by the second.
12 ==================================================================
13 */
14
15 int main()
16 {
17 // 1. Input bilangan yang dibagi dan pembagi
18 int bilDibagi, bilPembagi;
19 std::cout << "Input bilangan yang dibagi (Misal. 14) : ";
20 std::cin >> bilDibagi;
21 std::cout << std::endl;
22
23 std::cout << "Input bilangan pembagi (Misal. 2) : ";
24 std::cin >> bilPembagi;
25 std::cout << std::endl;
26
27 // 2. Cek input, apakah bilangan integer positif atau bukan
28 if (bilDibagi > 0 && bilPembagi > 0)
29 {
30 // 3. Cek keterbagian bilDibagi dengan bilPembagi
31 if (bilDibagi % bilPembagi == 0)
32 {
33 // 4. Tampilkan pesan
34 std::cout << bilDibagi << " dapat dibagi oleh "
<< bilPembagi;
35 std::cout << std::endl;
36 }
37 else
03.01.SolveQuadraticEquation
Halaman 4
38 {
39 // 4. Tampilkan pesan
40 std::cout << bilDibagi << " tidak dapat dibagi oleh "
<< bilPembagi;
41 std::cout << std::endl;
42 }
43
44 } else
45 {
46 // 3. Tampilkan pesan warning.
47 std::cout << "Warning:" << std::endl
48 << " Input bilangan asli."
49 << std::endl;
50 }
51
52 return 0;
53 }
54
Pada baris ke-18 hingga 25, program menawarkan prompt untuk diinput oleh pengguna.
Input ini disimpan dalam variabel bilDibagi dan bilPembagi.
18 int bilDibagi, bilPembagi;
19 std::cout << "Input bilangan yang dibagi (Misal. 14) : ";
20 std::cin >> bilDibagi;
21 std::cout << std::endl;
22
23 std::cout << "Input bilangan pembagi (Misal. 2) : ";
24 std::cin >> bilPembagi;
25 std::cout << std::endl;
Pada baris baris ke-28 dan baris ke-44, program mengecek nilai dalam variabel
bilDibagi dan bilPembagi. Jika nilai kedua variabel ini lebih dari 0 maka langkah
selanjutnya akan dilakukan. Jika nilai kedua variabel ini tidak lebih dari 0 maka akan muncul
pesan “Warning : Input bilangan asli”.
03.01.SolveQuadraticEquation
Halaman 5
28 if (bilDibagi > 0 && bilPembagi > 0)
29 {
30 /* langkah selanjutnya */
/ * ………………………………………………………………………… ………….. */
44 } else
45 {
46 // 3. Tampilkan pesan warning.
47 std::cout << "Warning:" << std::endl
48 << " Input bilangan asli."
49 << std::endl;
50 }
Setelah dipastikan nilai variabel bilDibagi dan bilPembagi lebih dari 0, nilai variabel
bilDibagi dioperasikan menggunakan operator modulo dengan nilai variabel bilPembagi.
Jika hasil modulo adalah bilangan 0 maka pesan “ … dapat dibagi oleh … “ di layar. Jika
hasil operasi modulo bukan bilangan 0 maka pesan “ … tidak dapat dibagi oleh … “ seperti
yang ditunjukkan oleh baris ke-31 hingga 42.
31 if (bilDibagi % bilPembagi == 0)
32 {
33 // 4. Tampilkan pesan
34 std::cout << bilDibagi << " dapat dibagi oleh "
<< bilPembagi;
35 std::cout << std::endl;
36 }
37 else
38 {
39 // 4. Tampilkan pesan
40 std::cout << bilDibagi << " tidak dapat dibagi oleh "
<< bilPembagi;
41 std::cout << std::endl;
42 }
03.01.SolveQuadraticEquation
Halaman 6
Contoh output program ini ditunjukkan oleh gambar 03.01.02 berikut:
Gambar 03.01.02. Contoh Output
03.02.05. Refleksi
Program ini dapat diperbaiki dengan menambahkan beberapa hal berikut:
1. Mengecek input dari pengguna untuk memastikan nilai yang diinput adalah bilangan
bukan tipe data lain.
2. Mengecek input apakah mempunyai nilai atau tidak.
03.01.SolveQuadraticEquation
Halaman 7
3. Menawarkan kembali input kepada pengguna setelah proses sudah dilakukan, baik ketika
program memunculkan bilangan error atau ketika program menampilkan output yang
sesuai.
03.02.06. Daftar Rujukan
Liang. 2014. Introduction to Programming with C++ 3rd Edition. London: Pearson Education
yang bisa diakses pada tautan berikut:
https://www.pearson.com/en-us/subject-catalog/p/Liang-Companion-Website-for-
Introduction-to-Programming-with-C-Access-to-Videonotes-3rd-
Edition/P200000003422/978013338026
Baris kode ini bisa diakses pada tautan berikut:
https://github.com/bayuYudhaSaputra/introduction-programming-CPP-
liang/blob/main/03.02.CheckNumber.cpp

03.02. Menguji Keterbagian BIlangan Menggunakan Bahasa Pemrograman C++

  • 1.
    03.01.SolveQuadraticEquation Halaman 1 Programming Exercise03.02 Check A Number 3.2. (Check numbers) Write a program that prompts the user to enter two integers and checks whether the first number is divisible by the second. Here is a sample run: Here is a sample run: Enter two integers: 2 3 2 is not divisible by 3 Here is a sample run: Enter two integers: 22 2 22 is divisible by 2 03.02.01. Identifikasi Masalah Masalah yang akan diselesaikan adalah menguji apakah bilangan pertama dapat dibagi dengan bilangan kedua. Bilangan pertama dan kedua diinput oleh pengguna. 03.02.02. Strategi Pemecahan Masalah Masalah ini adalah masalah keterbagian suatu bilangan. Misal, 𝑎 dan 𝑏 adalah bilangan asli maka bilangan 𝑎 dapat dibagi oleh bilangan 𝑏 jika 𝑎 𝑚𝑜𝑑 𝑏 = 0. Sebaliknya, jika 𝑎 tidak dapat dibagi oleh 𝑏 maka 𝑎 𝑚𝑜𝑑 𝑏 ≠ 0. 03.02.03. Menyelesaikan Masalah Langkah pertama untuk menyelesaikan masalah ini adalah menawarkan prompt kepada pengguna untuk menginput dua bilangan. Bilangan-bilangan ini disimpan dalam variabel
  • 2.
    03.01.SolveQuadraticEquation Halaman 2 dengan namaberturut-turut bilDibagi dan bilPembagi. Kemudian, nilai dalam variabel bilDibagi dioperasikan modulo dengan nilai dalam variabel bilPembagi. Jika hasil operasi modulo 0 maka nilai dalam variabel bilDibagi dapat dibagi dengan nilai dalam variabel bilPembagi. Sebaliknaya, hasil operasi modulo antara nilai dalam variabel bilDibagi dengan nilai dalam variabel bilPembagi tidak sama dengan 0 maka nilai dalam variabel bilDibagi tidak dapat dibagi dengan nilai dalam variabel bilPembagi. Langkah-langkah ini dapat dinyatakan dalam diagram alir berikut: Gambar 03.01.01. Diagram Alir Menentukan Keterbagian Dua Bilangan 03.02.04. Mengajukan Solusi Baris kode untuk menguji apakah bilangan pertama dapat dibagi dengan bilangan kedua dan bilangan pertama dan kedua diinput oleh pengguna adalah: 1 #include <iostream> 2 3 /* 4 ================================================================== Input bilDibagi dan bilPembagi false bilDibagi % bilPembagi == 0 bilDibagi > 0 && bilPembagi > 0 true Tampilkan pesan: bilDibagi tidak dapat dibagi bilPembagi true Tampilkan pesan: bilDibagi dapat dibagi bilPembagi Tampilkan pesan: “Input bilangan asli” false
  • 3.
    03.01.SolveQuadraticEquation Halaman 3 5 03.02.Check A Number 6 by : #bayuyudhasaputra 7 lang : IDN (Bahasa Indonesia) 8 ----------------------------------------------------------------- 9 Masalah : 10 Write a program that prompts the user to enter two integers and checks whether 11 the first number is divisible by the second. 12 ================================================================== 13 */ 14 15 int main() 16 { 17 // 1. Input bilangan yang dibagi dan pembagi 18 int bilDibagi, bilPembagi; 19 std::cout << "Input bilangan yang dibagi (Misal. 14) : "; 20 std::cin >> bilDibagi; 21 std::cout << std::endl; 22 23 std::cout << "Input bilangan pembagi (Misal. 2) : "; 24 std::cin >> bilPembagi; 25 std::cout << std::endl; 26 27 // 2. Cek input, apakah bilangan integer positif atau bukan 28 if (bilDibagi > 0 && bilPembagi > 0) 29 { 30 // 3. Cek keterbagian bilDibagi dengan bilPembagi 31 if (bilDibagi % bilPembagi == 0) 32 { 33 // 4. Tampilkan pesan 34 std::cout << bilDibagi << " dapat dibagi oleh " << bilPembagi; 35 std::cout << std::endl; 36 } 37 else
  • 4.
    03.01.SolveQuadraticEquation Halaman 4 38 { 39// 4. Tampilkan pesan 40 std::cout << bilDibagi << " tidak dapat dibagi oleh " << bilPembagi; 41 std::cout << std::endl; 42 } 43 44 } else 45 { 46 // 3. Tampilkan pesan warning. 47 std::cout << "Warning:" << std::endl 48 << " Input bilangan asli." 49 << std::endl; 50 } 51 52 return 0; 53 } 54 Pada baris ke-18 hingga 25, program menawarkan prompt untuk diinput oleh pengguna. Input ini disimpan dalam variabel bilDibagi dan bilPembagi. 18 int bilDibagi, bilPembagi; 19 std::cout << "Input bilangan yang dibagi (Misal. 14) : "; 20 std::cin >> bilDibagi; 21 std::cout << std::endl; 22 23 std::cout << "Input bilangan pembagi (Misal. 2) : "; 24 std::cin >> bilPembagi; 25 std::cout << std::endl; Pada baris baris ke-28 dan baris ke-44, program mengecek nilai dalam variabel bilDibagi dan bilPembagi. Jika nilai kedua variabel ini lebih dari 0 maka langkah selanjutnya akan dilakukan. Jika nilai kedua variabel ini tidak lebih dari 0 maka akan muncul pesan “Warning : Input bilangan asli”.
  • 5.
    03.01.SolveQuadraticEquation Halaman 5 28 if(bilDibagi > 0 && bilPembagi > 0) 29 { 30 /* langkah selanjutnya */ / * ………………………………………………………………………… ………….. */ 44 } else 45 { 46 // 3. Tampilkan pesan warning. 47 std::cout << "Warning:" << std::endl 48 << " Input bilangan asli." 49 << std::endl; 50 } Setelah dipastikan nilai variabel bilDibagi dan bilPembagi lebih dari 0, nilai variabel bilDibagi dioperasikan menggunakan operator modulo dengan nilai variabel bilPembagi. Jika hasil modulo adalah bilangan 0 maka pesan “ … dapat dibagi oleh … “ di layar. Jika hasil operasi modulo bukan bilangan 0 maka pesan “ … tidak dapat dibagi oleh … “ seperti yang ditunjukkan oleh baris ke-31 hingga 42. 31 if (bilDibagi % bilPembagi == 0) 32 { 33 // 4. Tampilkan pesan 34 std::cout << bilDibagi << " dapat dibagi oleh " << bilPembagi; 35 std::cout << std::endl; 36 } 37 else 38 { 39 // 4. Tampilkan pesan 40 std::cout << bilDibagi << " tidak dapat dibagi oleh " << bilPembagi; 41 std::cout << std::endl; 42 }
  • 6.
    03.01.SolveQuadraticEquation Halaman 6 Contoh outputprogram ini ditunjukkan oleh gambar 03.01.02 berikut: Gambar 03.01.02. Contoh Output 03.02.05. Refleksi Program ini dapat diperbaiki dengan menambahkan beberapa hal berikut: 1. Mengecek input dari pengguna untuk memastikan nilai yang diinput adalah bilangan bukan tipe data lain. 2. Mengecek input apakah mempunyai nilai atau tidak.
  • 7.
    03.01.SolveQuadraticEquation Halaman 7 3. Menawarkankembali input kepada pengguna setelah proses sudah dilakukan, baik ketika program memunculkan bilangan error atau ketika program menampilkan output yang sesuai. 03.02.06. Daftar Rujukan Liang. 2014. Introduction to Programming with C++ 3rd Edition. London: Pearson Education yang bisa diakses pada tautan berikut: https://www.pearson.com/en-us/subject-catalog/p/Liang-Companion-Website-for- Introduction-to-Programming-with-C-Access-to-Videonotes-3rd- Edition/P200000003422/978013338026 Baris kode ini bisa diakses pada tautan berikut: https://github.com/bayuYudhaSaputra/introduction-programming-CPP- liang/blob/main/03.02.CheckNumber.cpp