SlideShare a Scribd company logo
1 of 10
Download to read offline
02.15.DistanceTwoPoint
#bayuyudhasaputra Halaman 1
Programming Exercise 02.15
Geometry: distance of two points
2.15. (Geometry: distance of two points)
Write a program that prompts the user to enter two points (x1, y1) and (x2, y2)
and displays their distance between them. The formula for computing the distance
is √(π‘₯2 βˆ’ π‘₯1)2 + (𝑦2 βˆ’ 𝑦1)2 . Note that you can use pow(a, 0.5) to compute
βˆšπ‘Ž.
Here is a sample run:
Enter x1 and y1: 1.5 -3.4
Enter x2 and y2: 4 5
The distance between the two points is 8.764131445842194
02.15.01. Identifikasi Masalah
Masalah yang akan diselesaikan adalah menentukan jarak dua titik dalam diagram
cartesius menggunakan bahasa pemrograman C++. Pengguna menginput absis dan ordinat
titik pertama serta titik kedua.
02.15.02. Strategi Pemecahan Masalah
Untuk menyelesaikan masalah ini, penulis menggunakan rumus untuk menentukan
jarak dua titik dalam bidang cartesius berikut:
Misal, titik 𝐴(π‘₯1 , 𝑦1) dan titik 𝐡(π‘₯2 , 𝑦2) terdapat dalam diagram carteisus berikut:
02.15.DistanceTwoPoint
#bayuyudhasaputra Halaman 2
Maka, jarak antara titik 𝐴 dengan 𝐡 (dinotasikan oleh 𝑝) adalah:
Rumus 02.15.01. Jarak Dua Titik Dalam Diagram Cartesius
Misal, jarak antara titik 𝐴(βˆ’4 , 1) dengan 𝐡(5 , 3) dapat dihitung dengan langkah-
langkah berikut:
Absis titik A (π‘₯1) = βˆ’4
Ordinat titik A (𝑦1) = 1
Absis titik B (π‘₯2) = 5
Ordinat titik B (𝑦2) = 3
𝑝 = √(π‘₯2 βˆ’ π‘₯1)2 + (𝑦2 βˆ’ 𝑦1)2
02.15.DistanceTwoPoint
#bayuyudhasaputra Halaman 3
Maka jarak antara titik A dengan B adalah:
𝑝 = √(π‘₯2 βˆ’ π‘₯1)2 + (𝑦2 βˆ’ 𝑦1)2
𝑝 = √(5 βˆ’ (βˆ’4))
2
+ (3 βˆ’ 1)2
𝑝 = √(5 + 4)2 + (3 βˆ’ 1)2
𝑝 = √(9)2 + (2)2
𝑝 = √81 + 4
𝑝 = √85
𝑝 β‰ˆ 9,2195444572928873100022742817628
𝑝 β‰ˆ 9,21954
Sehingga, jarak antara titik 𝐴 dengan 𝐡 kira-kira sama dengan 9,21954 satuan panjang.
02.15.DistanceTwoPoint
#bayuyudhasaputra Halaman 4
02.15.03. Menyelesaikan Masalah
Rumus 02.15.01 dapat diterjemahkan ke dalam langkah-langkah berikut:
Langkah 1. Input absis titik pertama
Langkah 2. Input ordinat titik pertama
Langkah 3. Input absis titik kedua
Langkah 4. Input ordinat titik kedua
Langkah 5. Hitung jarak titik pertama dengan titik kedua
Langkah 6. Tampilkan hasil perhitungan jarak titik pertama dengan kedua
02.15.04. Mengajukan Solusi
Keenam langkah ini dapat diterjemahkan ke dalam baris kode bahasa pemrograman
C++ berikut:
1 #include <iostream>
2 #include <cmath>
3 using namespace std;
4
5 /*
6 =================================================================
7 02.14. Distance Of Two Point
8 by : #bayuyudhasaputra
9 lang : IDN (Bahasa Indonesia)
10 -----------------------------------------------------------------
11 Masalah :
12 Write a program that prompts the user to enter two points (x1, y1)
and
13 (x2, y2) and displays their distance between them!
14 ==================================================================
15 */
16
02.15.DistanceTwoPoint
#bayuyudhasaputra Halaman 5
17 int main()
18 {
19 cout << endl
20 << "======================================================="
21 << endl
22 << endl
23 << "02.15. Distance Of Two Points"
24 << endl
25 << endl
26 << "-------------------------------------------------------"
27 << endl
28 << endl;
29
30 // 1. Input absis titik pertama
31 cout << "Input absis titik pertama (Misal. 4) : ";
32 double absisPertama;
33 cin >> absisPertama;
34 cout << endl << endl;
35
36 // 2. Input ordinat titik pertama
37 cout << "Input ordinat titik pertama (Misal. -1) : ";
38 double ordinatPertama;
39 cin >> ordinatPertama;
40 cout << endl
41 << endl
42 << " --- [Titik pertama adalah "
43 << "A(" << absisPertama << " ; " << ordinatPertama << ")] –
- "
44 << endl
45 << endl;
46
47 // 3. Input absis titik kedua
48 cout << "Input absis titik kedua (Misal, 5) : ";
49 double absisKedua;
50 cin >> absisKedua;
02.15.DistanceTwoPoint
#bayuyudhasaputra Halaman 6
51 cout << endl << endl;
52
53 // 4. Input ordinat titik kedua
54 cout << "Input ordinat titik kedua (Misal, 3) : ";
55 double ordinatKedua;
56 cin >> ordinatKedua;
57 cout << endl
58 << endl
59 << " --- [Titik kedua adalah "
60 << "B(" << absisKedua << " ; " << ordinatKedua << ")] --- "
61 << endl
62 << endl;
63
64 // 5. Hitung jarak titik pertama dengan titik kedua
65 double jarak;
66 jarak = pow(pow(( absisKedua - absisPertama ), 2) + pow((
ordinatKedua - ordinatPertama ), 2) , 0.5);
67
68 // 6. Tampilkan hasil perhitungan jarak titik pertama dengan kedua
69 cout << "Jadi, jarak antara titik" << endl << endl
70 << " A(" << absisPertama << " ; " << ordinatPertama <<
")" << endl << endl
71 << " dengan " << endl << endl
72 << " B(" << absisKedua << " ; " << ordinatKedua << ")"
<< endl << endl
73 << "kira-kira sama dengan " << jarak << " satuan panjang."
74 << endl
75 << endl
76 << "======================================================="
77 << endl;
78
79 return 0;
80 }
02.15.DistanceTwoPoint
#bayuyudhasaputra Halaman 7
Pada baris ke-1, penulis menyertakan file header iostream. Header ini harus disertakan
karena program ini menggunakan perintah cin untuk menginput nilai dan cout untuk
menampilkan output ke layar. Selain itu pada baris ke-2, penulis mendeklarasikan file header
cmath karena akan menggunakan fungsi pow(a, b) untuk melakukan operasi pangkat.
1 #include <iostream>
2 #include <cmath>
Variabel-variabel dengan nama absisPertama, ordinatPertama, absisKedua dan
ordinatKedua dideklarasikan pada baris ke-32, 38, 49 dan 55 dengan tipe data double.
Variabel-variabel ini menampung data input dari pengguna seperti yang ditunjukkan oleh baris
ke-33, 39, 50 dan 56.
32 double absisPertama;
33 cin >> absisPertama;
38 double ordinatPertama;
39 cin >> ordinatPertama;
49 double absisKedua;
50 cin >> absisKedua;
55 double ordinatKedua;
56 cin >> ordinatKedua;
Kemudian, variabel dengan nama jarak didefinisikan dengan tipe data double untuk
menampung nilai ekspresi dalam baris ke-66. Ekspresi ini terdapat fungsi built-in pow(a, b).
65 double jarak;
66 jarak = pow(pow(( absisKedua - absisPertama ), 2) + pow((
ordinatKedua - ordinatPertama ), 2) , 0.5);
02.15.DistanceTwoPoint
#bayuyudhasaputra Halaman 8
Penjelasan mengenai fungsi pow(a, b) adalah sebagai berikut:
pow((absisKedua – absisPertama), 2) = (π‘Žπ‘π‘ π‘–π‘ πΎπ‘’π‘‘π‘’π‘Ž βˆ’ π‘Žπ‘π‘ π‘–π‘ π‘ƒπ‘’π‘Ÿπ‘‘π‘Žπ‘šπ‘Ž)2
pow((ordinatKedua – ordinatPertama), 2) = (π‘œπ‘Ÿπ‘‘π‘–π‘›π‘Žπ‘‘πΎπ‘’π‘‘π‘’π‘Ž βˆ’ π‘œπ‘Ÿπ‘‘π‘–π‘›π‘Žπ‘‘π‘ƒπ‘’π‘Ÿπ‘‘π‘Žπ‘šπ‘Ž)2
Sehingga ekspresi fungsi yang tersimpan dalam variabel jarak menjadi:
pow(pow(( absisKedua - absisPertama ), 2) + pow((ordinatKedua - ordinatPertama
), 2), 0.5);
Ekspresi ini sama dengan ekspresi aritmatika berikut:
√(π‘Žπ‘π‘ π‘–π‘ πΎπ‘’π‘‘π‘’π‘Ž βˆ’ π‘Žπ‘π‘ π‘–π‘ π‘ƒπ‘’π‘Ÿπ‘‘π‘Žπ‘šπ‘Ž)2 + (π‘œπ‘Ÿπ‘‘π‘–π‘›π‘Žπ‘‘πΎπ‘’π‘‘π‘’π‘Ž βˆ’ π‘œπ‘Ÿπ‘‘π‘–π‘›π‘Žπ‘‘π‘ƒπ‘’π‘Ÿπ‘‘π‘Žπ‘šπ‘Ž)2
Misal, variabel-variabel absisPertama, absisKedua, ordinatPertama dan
ordinatKedua diinput nilai berikut:
absisPertama = -4
absisKedua = 5
ordinatPertama = 1
ordinatKedua = 3
Maka, proses kalkulasi yang disimpan dalam variabel jarak adalah sebagai berikut:
jarak = pow(pow(( absisKedua - absisPertama ), 2) + pow((ordinatKedua -
ordinatPertama ), 2), 0.5);
jarak = pow(pow((5 – (-4)), 2) + pow((3 - 1 ), 2), 0.5);
jarak = pow(pow(( 5 + 4), 2) + pow((3 - 1), 2), 0.5);
jarak = pow(pow(( 9), 2) + pow((2), 2), 0.5);
jarak = pow((81+ 4), 0.5);
jarak = pow(85, 0.5);
jarak = 9,21954
02.15.DistanceTwoPoint
#bayuyudhasaputra Halaman 9
Contoh output program dengan nilai variabel absisPertama = -4, absisKedua = 5,
ordinatPertama = 1 dan ordinatKedua = 3 adalah sebagai berikut:
02.15.05. Refleksi
Program menentukan jumlah nominal tabungan menggunakan bahasa pemrograman
C++ ini dapat dikembangkan dengan menambahkan:
1. Mengecek nilai input. Data yang diinput tentu saja harus bertipe double. Jika pengguna
menginput data selain bilangan maka program menjadi error tanpa menampilkan pesan
yang dipahami oleh pengguna.
2. Menawarkan input kembali kepada pengguna atau berhenti menjalankan program setelah
program dijalankan, baik ketika program berjalan sesuai dengan harapan atau malah terjadi
error.
02.15.DistanceTwoPoint
#bayuyudhasaputra Halaman 10
02.15.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:

More Related Content

Similar to 02.15. Jarak Dua Titik Dalam Diagram Cartesius Menggunakan Bahasa Pemrograman C++

Materi kuliah 02 array part 2
Materi kuliah 02   array part 2Materi kuliah 02   array part 2
Materi kuliah 02 array part 2
Budi Yono
Β 
Asyiknya Belajar Struktur Data di Planet C++
Asyiknya Belajar Struktur Data di Planet C++Asyiknya Belajar Struktur Data di Planet C++
Asyiknya Belajar Struktur Data di Planet C++
Nurdin Al-Azies
Β 
Asyiknya belajar struktur data di planet c++
Asyiknya belajar struktur data di planet c++Asyiknya belajar struktur data di planet c++
Asyiknya belajar struktur data di planet c++
Ilan Surf οΊ•
Β 
Materi kuliah 16 array part 2
Materi kuliah 16   array part 2Materi kuliah 16   array part 2
Materi kuliah 16 array part 2
Budi Yono
Β 
Materi kuliah 16 array part 2
Materi kuliah 16   array part 2Materi kuliah 16   array part 2
Materi kuliah 16 array part 2
kua
Β 
Materi kuliah 02 array part 2
Materi kuliah 02   array part 2Materi kuliah 02   array part 2
Materi kuliah 02 array part 2
Budi Yono
Β 
Materi kuliah 02 array part 2
Materi kuliah 02   array part 2Materi kuliah 02   array part 2
Materi kuliah 02 array part 2
kua
Β 

Similar to 02.15. Jarak Dua Titik Dalam Diagram Cartesius Menggunakan Bahasa Pemrograman C++ (20)

Bab ii keg pembel 6 array
Bab ii keg pembel 6  arrayBab ii keg pembel 6  array
Bab ii keg pembel 6 array
Β 
Modul maple untuk metnum 2014
Modul maple untuk metnum 2014Modul maple untuk metnum 2014
Modul maple untuk metnum 2014
Β 
Diskriminan
DiskriminanDiskriminan
Diskriminan
Β 
Algoritma dan pengetahuan terkait (menghitung, konversi, dll)
Algoritma dan pengetahuan terkait (menghitung, konversi, dll) Algoritma dan pengetahuan terkait (menghitung, konversi, dll)
Algoritma dan pengetahuan terkait (menghitung, konversi, dll)
Β 
Materi kuliah 02 array part 2
Materi kuliah 02   array part 2Materi kuliah 02   array part 2
Materi kuliah 02 array part 2
Β 
Tugas alogaritma
Tugas alogaritmaTugas alogaritma
Tugas alogaritma
Β 
Fungsi grafik di matlab
Fungsi grafik di matlabFungsi grafik di matlab
Fungsi grafik di matlab
Β 
Asyiknya Belajar Struktur Data di Planet C++
Asyiknya Belajar Struktur Data di Planet C++Asyiknya Belajar Struktur Data di Planet C++
Asyiknya Belajar Struktur Data di Planet C++
Β 
Asyiknya belajar struktur data di planet c++
Asyiknya belajar struktur data di planet c++Asyiknya belajar struktur data di planet c++
Asyiknya belajar struktur data di planet c++
Β 
Materi kuliah 16 array part 2
Materi kuliah 16   array part 2Materi kuliah 16   array part 2
Materi kuliah 16 array part 2
Β 
Materi kuliah 16 array part 2
Materi kuliah 16   array part 2Materi kuliah 16   array part 2
Materi kuliah 16 array part 2
Β 
Efisiensi algoritma
Efisiensi algoritmaEfisiensi algoritma
Efisiensi algoritma
Β 
2.6. Jumlah Digit dalam Bilangan Ratusan Menggunakan C++
2.6. Jumlah Digit dalam Bilangan Ratusan Menggunakan C++2.6. Jumlah Digit dalam Bilangan Ratusan Menggunakan C++
2.6. Jumlah Digit dalam Bilangan Ratusan Menggunakan C++
Β 
Materi kuliah 02 array part 2
Materi kuliah 02   array part 2Materi kuliah 02   array part 2
Materi kuliah 02 array part 2
Β 
Materi kuliah 02 array part 2
Materi kuliah 02   array part 2Materi kuliah 02   array part 2
Materi kuliah 02 array part 2
Β 
Praktikum p-fisika
Praktikum p-fisikaPraktikum p-fisika
Praktikum p-fisika
Β 
Data Mining Klasifikasi (Updated 30 Desember 2020)
Data Mining Klasifikasi (Updated 30 Desember 2020)Data Mining Klasifikasi (Updated 30 Desember 2020)
Data Mining Klasifikasi (Updated 30 Desember 2020)
Β 
PENGENALAN MATLAB, ARRAY DAN MATRIKS
PENGENALAN MATLAB, ARRAY DAN MATRIKSPENGENALAN MATLAB, ARRAY DAN MATRIKS
PENGENALAN MATLAB, ARRAY DAN MATRIKS
Β 
Auto cad kelas_2_sem_1
Auto cad kelas_2_sem_1Auto cad kelas_2_sem_1
Auto cad kelas_2_sem_1
Β 
Hand out aplikasi komputer
Hand out aplikasi komputerHand out aplikasi komputer
Hand out aplikasi komputer
Β 

More from BayuYudhaSaputra

02.17. Menentukan Temperatre Wind-Chill Menggunakan Bahasa Pemrograman C++
02.17. Menentukan Temperatre Wind-Chill Menggunakan Bahasa Pemrograman C++02.17. Menentukan Temperatre Wind-Chill Menggunakan Bahasa Pemrograman C++
02.17. Menentukan Temperatre Wind-Chill Menggunakan Bahasa Pemrograman C++
BayuYudhaSaputra
Β 
02.13. Menghitung Bunga Majemuk Menggunakan Bahasa Pemrograman C++
02.13. Menghitung Bunga Majemuk Menggunakan Bahasa Pemrograman C++02.13. Menghitung Bunga Majemuk Menggunakan Bahasa Pemrograman C++
02.13. Menghitung Bunga Majemuk Menggunakan Bahasa Pemrograman C++
BayuYudhaSaputra
Β 

More from BayuYudhaSaputra (9)

02.17. Menentukan Temperatre Wind-Chill Menggunakan Bahasa Pemrograman C++
02.17. Menentukan Temperatre Wind-Chill Menggunakan Bahasa Pemrograman C++02.17. Menentukan Temperatre Wind-Chill Menggunakan Bahasa Pemrograman C++
02.17. Menentukan Temperatre Wind-Chill Menggunakan Bahasa Pemrograman C++
Β 
02.13. Menghitung Bunga Majemuk Menggunakan Bahasa Pemrograman C++
02.13. Menghitung Bunga Majemuk Menggunakan Bahasa Pemrograman C++02.13. Menghitung Bunga Majemuk Menggunakan Bahasa Pemrograman C++
02.13. Menghitung Bunga Majemuk Menggunakan Bahasa Pemrograman C++
Β 
2.8. Menampilkan GMT menggunakan bahasa pemrograman C++
2.8. Menampilkan GMT menggunakan bahasa pemrograman C++2.8. Menampilkan GMT menggunakan bahasa pemrograman C++
2.8. Menampilkan GMT menggunakan bahasa pemrograman C++
Β 
2.7. Konversi Satuan Menit Ke Tahun Hari Jam Menggunakan Bahasa Pemrograman C++
2.7. Konversi Satuan Menit Ke Tahun Hari Jam Menggunakan Bahasa Pemrograman C++2.7. Konversi Satuan Menit Ke Tahun Hari Jam Menggunakan Bahasa Pemrograman C++
2.7. Konversi Satuan Menit Ke Tahun Hari Jam Menggunakan Bahasa Pemrograman C++
Β 
Logaritma (Log0001)
Logaritma (Log0001)Logaritma (Log0001)
Logaritma (Log0001)
Β 
Fungsi Kuadrat FK0001
Fungsi Kuadrat FK0001Fungsi Kuadrat FK0001
Fungsi Kuadrat FK0001
Β 
Lembar Kerja Peserta DIdik Penjumlahan Bilangan cacah
Lembar Kerja Peserta DIdik Penjumlahan Bilangan cacahLembar Kerja Peserta DIdik Penjumlahan Bilangan cacah
Lembar Kerja Peserta DIdik Penjumlahan Bilangan cacah
Β 
1 1 01b2_lkpd_pengenalan_bilangan_cacah_antara_11_sampai_19
1 1 01b2_lkpd_pengenalan_bilangan_cacah_antara_11_sampai_191 1 01b2_lkpd_pengenalan_bilangan_cacah_antara_11_sampai_19
1 1 01b2_lkpd_pengenalan_bilangan_cacah_antara_11_sampai_19
Β 
1 1 01b1_lkpd_pengenalan_bilangan_cacah_antara_0_sampai_10
1 1 01b1_lkpd_pengenalan_bilangan_cacah_antara_0_sampai_101 1 01b1_lkpd_pengenalan_bilangan_cacah_antara_0_sampai_10
1 1 01b1_lkpd_pengenalan_bilangan_cacah_antara_0_sampai_10
Β 

Recently uploaded

IPS - karakteristik geografis, sosial, budaya, dan ekonomi di ASEAN
IPS - karakteristik geografis, sosial, budaya, dan ekonomi di ASEANIPS - karakteristik geografis, sosial, budaya, dan ekonomi di ASEAN
IPS - karakteristik geografis, sosial, budaya, dan ekonomi di ASEAN
GilangNandiaputri1
Β 
Kisi kisi Ujian sekolah mata pelajaran IPA 2024.docx
Kisi kisi Ujian sekolah mata pelajaran IPA 2024.docxKisi kisi Ujian sekolah mata pelajaran IPA 2024.docx
Kisi kisi Ujian sekolah mata pelajaran IPA 2024.docx
FitriaSarmida1
Β 
Modul 5 Simetri (simetri lipat, simetri putar)
Modul 5 Simetri (simetri lipat, simetri putar)Modul 5 Simetri (simetri lipat, simetri putar)
Modul 5 Simetri (simetri lipat, simetri putar)
BashoriAlwi4
Β 
Asimilasi Masyarakat Cina Dengan Orang Melayu di Kelantan (Cina Peranakan Kel...
Asimilasi Masyarakat Cina Dengan Orang Melayu di Kelantan (Cina Peranakan Kel...Asimilasi Masyarakat Cina Dengan Orang Melayu di Kelantan (Cina Peranakan Kel...
Asimilasi Masyarakat Cina Dengan Orang Melayu di Kelantan (Cina Peranakan Kel...
luqmanhakimkhairudin
Β 
Informatika Latihan Soal Kelas Tujuh.pptx
Informatika Latihan Soal Kelas Tujuh.pptxInformatika Latihan Soal Kelas Tujuh.pptx
Informatika Latihan Soal Kelas Tujuh.pptx
MateriSMPTDarulFalah
Β 
Aksi Nyata Menyebarkan Pemahaman Merdeka Belajar.pdf
Aksi Nyata Menyebarkan Pemahaman Merdeka Belajar.pdfAksi Nyata Menyebarkan Pemahaman Merdeka Belajar.pdf
Aksi Nyata Menyebarkan Pemahaman Merdeka Belajar.pdf
subki124
Β 
,,,,,,,,,,,,,,,,,,,,,,Swamedikasi 3.pptx
,,,,,,,,,,,,,,,,,,,,,,Swamedikasi 3.pptx,,,,,,,,,,,,,,,,,,,,,,Swamedikasi 3.pptx
,,,,,,,,,,,,,,,,,,,,,,Swamedikasi 3.pptx
furqanridha
Β 
Laporan RHK PMM Observasi Target Perilaku.docx
Laporan RHK PMM Observasi Target Perilaku.docxLaporan RHK PMM Observasi Target Perilaku.docx
Laporan RHK PMM Observasi Target Perilaku.docx
Jajang Sulaeman
Β 

Recently uploaded (20)

contoh-kisi-kisi-bahasa-inggris-kelas-9.docx
contoh-kisi-kisi-bahasa-inggris-kelas-9.docxcontoh-kisi-kisi-bahasa-inggris-kelas-9.docx
contoh-kisi-kisi-bahasa-inggris-kelas-9.docx
Β 
IPS - karakteristik geografis, sosial, budaya, dan ekonomi di ASEAN
IPS - karakteristik geografis, sosial, budaya, dan ekonomi di ASEANIPS - karakteristik geografis, sosial, budaya, dan ekonomi di ASEAN
IPS - karakteristik geografis, sosial, budaya, dan ekonomi di ASEAN
Β 
Kisi kisi Ujian sekolah mata pelajaran IPA 2024.docx
Kisi kisi Ujian sekolah mata pelajaran IPA 2024.docxKisi kisi Ujian sekolah mata pelajaran IPA 2024.docx
Kisi kisi Ujian sekolah mata pelajaran IPA 2024.docx
Β 
Modul 5 Simetri (simetri lipat, simetri putar)
Modul 5 Simetri (simetri lipat, simetri putar)Modul 5 Simetri (simetri lipat, simetri putar)
Modul 5 Simetri (simetri lipat, simetri putar)
Β 
Prov.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdf
Prov.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdfProv.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdf
Prov.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdf
Β 
MODUL AJAR IPAS KELAS 5 KURIKULUM MERDEKA.pdf
MODUL AJAR IPAS KELAS 5 KURIKULUM MERDEKA.pdfMODUL AJAR IPAS KELAS 5 KURIKULUM MERDEKA.pdf
MODUL AJAR IPAS KELAS 5 KURIKULUM MERDEKA.pdf
Β 
UAS Matematika kelas IX 2024 HK_2024.pdf
UAS Matematika kelas IX 2024 HK_2024.pdfUAS Matematika kelas IX 2024 HK_2024.pdf
UAS Matematika kelas IX 2024 HK_2024.pdf
Β 
Asimilasi Masyarakat Cina Dengan Orang Melayu di Kelantan (Cina Peranakan Kel...
Asimilasi Masyarakat Cina Dengan Orang Melayu di Kelantan (Cina Peranakan Kel...Asimilasi Masyarakat Cina Dengan Orang Melayu di Kelantan (Cina Peranakan Kel...
Asimilasi Masyarakat Cina Dengan Orang Melayu di Kelantan (Cina Peranakan Kel...
Β 
Aksi Nyata profil pelajar pancasila.pptx
Aksi Nyata profil pelajar pancasila.pptxAksi Nyata profil pelajar pancasila.pptx
Aksi Nyata profil pelajar pancasila.pptx
Β 
MODUL AJAR MATEMATIKA KELAS 5 KURIKULUM MERDEKA.pdf
MODUL AJAR MATEMATIKA KELAS 5 KURIKULUM MERDEKA.pdfMODUL AJAR MATEMATIKA KELAS 5 KURIKULUM MERDEKA.pdf
MODUL AJAR MATEMATIKA KELAS 5 KURIKULUM MERDEKA.pdf
Β 
MODUL AJAR BAHASA INDONESIA KELAS 5 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INDONESIA KELAS 5 KURIKULUM MERDEKA.pdfMODUL AJAR BAHASA INDONESIA KELAS 5 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INDONESIA KELAS 5 KURIKULUM MERDEKA.pdf
Β 
MESYUARAT KURIKULUM BIL 1/2024 SEKOLAH KEBANGSAAN SRI SERDANG
MESYUARAT KURIKULUM BIL 1/2024 SEKOLAH KEBANGSAAN SRI SERDANGMESYUARAT KURIKULUM BIL 1/2024 SEKOLAH KEBANGSAAN SRI SERDANG
MESYUARAT KURIKULUM BIL 1/2024 SEKOLAH KEBANGSAAN SRI SERDANG
Β 
SISTEM SARAF OTONOM_.SISTEM SARAF OTONOM
SISTEM SARAF OTONOM_.SISTEM SARAF OTONOMSISTEM SARAF OTONOM_.SISTEM SARAF OTONOM
SISTEM SARAF OTONOM_.SISTEM SARAF OTONOM
Β 
Informatika Latihan Soal Kelas Tujuh.pptx
Informatika Latihan Soal Kelas Tujuh.pptxInformatika Latihan Soal Kelas Tujuh.pptx
Informatika Latihan Soal Kelas Tujuh.pptx
Β 
Aksi Nyata Menyebarkan Pemahaman Merdeka Belajar.pdf
Aksi Nyata Menyebarkan Pemahaman Merdeka Belajar.pdfAksi Nyata Menyebarkan Pemahaman Merdeka Belajar.pdf
Aksi Nyata Menyebarkan Pemahaman Merdeka Belajar.pdf
Β 
,,,,,,,,,,,,,,,,,,,,,,Swamedikasi 3.pptx
,,,,,,,,,,,,,,,,,,,,,,Swamedikasi 3.pptx,,,,,,,,,,,,,,,,,,,,,,Swamedikasi 3.pptx
,,,,,,,,,,,,,,,,,,,,,,Swamedikasi 3.pptx
Β 
Topik 4_Eksplorasi Konsep LK Kelompok_Pendidikan Berkelanjutan
Topik 4_Eksplorasi Konsep LK Kelompok_Pendidikan BerkelanjutanTopik 4_Eksplorasi Konsep LK Kelompok_Pendidikan Berkelanjutan
Topik 4_Eksplorasi Konsep LK Kelompok_Pendidikan Berkelanjutan
Β 
Laporan RHK PMM Observasi Target Perilaku.docx
Laporan RHK PMM Observasi Target Perilaku.docxLaporan RHK PMM Observasi Target Perilaku.docx
Laporan RHK PMM Observasi Target Perilaku.docx
Β 
Webinar 1_Pendidikan Berjenjang Pendidikan Inklusif.pdf
Webinar 1_Pendidikan Berjenjang Pendidikan Inklusif.pdfWebinar 1_Pendidikan Berjenjang Pendidikan Inklusif.pdf
Webinar 1_Pendidikan Berjenjang Pendidikan Inklusif.pdf
Β 
Skenario Lokakarya 2 Pendidikan Guru Penggerak
Skenario Lokakarya 2 Pendidikan Guru PenggerakSkenario Lokakarya 2 Pendidikan Guru Penggerak
Skenario Lokakarya 2 Pendidikan Guru Penggerak
Β 

02.15. Jarak Dua Titik Dalam Diagram Cartesius Menggunakan Bahasa Pemrograman C++

  • 1. 02.15.DistanceTwoPoint #bayuyudhasaputra Halaman 1 Programming Exercise 02.15 Geometry: distance of two points 2.15. (Geometry: distance of two points) Write a program that prompts the user to enter two points (x1, y1) and (x2, y2) and displays their distance between them. The formula for computing the distance is √(π‘₯2 βˆ’ π‘₯1)2 + (𝑦2 βˆ’ 𝑦1)2 . Note that you can use pow(a, 0.5) to compute βˆšπ‘Ž. Here is a sample run: Enter x1 and y1: 1.5 -3.4 Enter x2 and y2: 4 5 The distance between the two points is 8.764131445842194 02.15.01. Identifikasi Masalah Masalah yang akan diselesaikan adalah menentukan jarak dua titik dalam diagram cartesius menggunakan bahasa pemrograman C++. Pengguna menginput absis dan ordinat titik pertama serta titik kedua. 02.15.02. Strategi Pemecahan Masalah Untuk menyelesaikan masalah ini, penulis menggunakan rumus untuk menentukan jarak dua titik dalam bidang cartesius berikut: Misal, titik 𝐴(π‘₯1 , 𝑦1) dan titik 𝐡(π‘₯2 , 𝑦2) terdapat dalam diagram carteisus berikut:
  • 2. 02.15.DistanceTwoPoint #bayuyudhasaputra Halaman 2 Maka, jarak antara titik 𝐴 dengan 𝐡 (dinotasikan oleh 𝑝) adalah: Rumus 02.15.01. Jarak Dua Titik Dalam Diagram Cartesius Misal, jarak antara titik 𝐴(βˆ’4 , 1) dengan 𝐡(5 , 3) dapat dihitung dengan langkah- langkah berikut: Absis titik A (π‘₯1) = βˆ’4 Ordinat titik A (𝑦1) = 1 Absis titik B (π‘₯2) = 5 Ordinat titik B (𝑦2) = 3 𝑝 = √(π‘₯2 βˆ’ π‘₯1)2 + (𝑦2 βˆ’ 𝑦1)2
  • 3. 02.15.DistanceTwoPoint #bayuyudhasaputra Halaman 3 Maka jarak antara titik A dengan B adalah: 𝑝 = √(π‘₯2 βˆ’ π‘₯1)2 + (𝑦2 βˆ’ 𝑦1)2 𝑝 = √(5 βˆ’ (βˆ’4)) 2 + (3 βˆ’ 1)2 𝑝 = √(5 + 4)2 + (3 βˆ’ 1)2 𝑝 = √(9)2 + (2)2 𝑝 = √81 + 4 𝑝 = √85 𝑝 β‰ˆ 9,2195444572928873100022742817628 𝑝 β‰ˆ 9,21954 Sehingga, jarak antara titik 𝐴 dengan 𝐡 kira-kira sama dengan 9,21954 satuan panjang.
  • 4. 02.15.DistanceTwoPoint #bayuyudhasaputra Halaman 4 02.15.03. Menyelesaikan Masalah Rumus 02.15.01 dapat diterjemahkan ke dalam langkah-langkah berikut: Langkah 1. Input absis titik pertama Langkah 2. Input ordinat titik pertama Langkah 3. Input absis titik kedua Langkah 4. Input ordinat titik kedua Langkah 5. Hitung jarak titik pertama dengan titik kedua Langkah 6. Tampilkan hasil perhitungan jarak titik pertama dengan kedua 02.15.04. Mengajukan Solusi Keenam langkah ini dapat diterjemahkan ke dalam baris kode bahasa pemrograman C++ berikut: 1 #include <iostream> 2 #include <cmath> 3 using namespace std; 4 5 /* 6 ================================================================= 7 02.14. Distance Of Two Point 8 by : #bayuyudhasaputra 9 lang : IDN (Bahasa Indonesia) 10 ----------------------------------------------------------------- 11 Masalah : 12 Write a program that prompts the user to enter two points (x1, y1) and 13 (x2, y2) and displays their distance between them! 14 ================================================================== 15 */ 16
  • 5. 02.15.DistanceTwoPoint #bayuyudhasaputra Halaman 5 17 int main() 18 { 19 cout << endl 20 << "=======================================================" 21 << endl 22 << endl 23 << "02.15. Distance Of Two Points" 24 << endl 25 << endl 26 << "-------------------------------------------------------" 27 << endl 28 << endl; 29 30 // 1. Input absis titik pertama 31 cout << "Input absis titik pertama (Misal. 4) : "; 32 double absisPertama; 33 cin >> absisPertama; 34 cout << endl << endl; 35 36 // 2. Input ordinat titik pertama 37 cout << "Input ordinat titik pertama (Misal. -1) : "; 38 double ordinatPertama; 39 cin >> ordinatPertama; 40 cout << endl 41 << endl 42 << " --- [Titik pertama adalah " 43 << "A(" << absisPertama << " ; " << ordinatPertama << ")] – - " 44 << endl 45 << endl; 46 47 // 3. Input absis titik kedua 48 cout << "Input absis titik kedua (Misal, 5) : "; 49 double absisKedua; 50 cin >> absisKedua;
  • 6. 02.15.DistanceTwoPoint #bayuyudhasaputra Halaman 6 51 cout << endl << endl; 52 53 // 4. Input ordinat titik kedua 54 cout << "Input ordinat titik kedua (Misal, 3) : "; 55 double ordinatKedua; 56 cin >> ordinatKedua; 57 cout << endl 58 << endl 59 << " --- [Titik kedua adalah " 60 << "B(" << absisKedua << " ; " << ordinatKedua << ")] --- " 61 << endl 62 << endl; 63 64 // 5. Hitung jarak titik pertama dengan titik kedua 65 double jarak; 66 jarak = pow(pow(( absisKedua - absisPertama ), 2) + pow(( ordinatKedua - ordinatPertama ), 2) , 0.5); 67 68 // 6. Tampilkan hasil perhitungan jarak titik pertama dengan kedua 69 cout << "Jadi, jarak antara titik" << endl << endl 70 << " A(" << absisPertama << " ; " << ordinatPertama << ")" << endl << endl 71 << " dengan " << endl << endl 72 << " B(" << absisKedua << " ; " << ordinatKedua << ")" << endl << endl 73 << "kira-kira sama dengan " << jarak << " satuan panjang." 74 << endl 75 << endl 76 << "=======================================================" 77 << endl; 78 79 return 0; 80 }
  • 7. 02.15.DistanceTwoPoint #bayuyudhasaputra Halaman 7 Pada baris ke-1, penulis menyertakan file header iostream. Header ini harus disertakan karena program ini menggunakan perintah cin untuk menginput nilai dan cout untuk menampilkan output ke layar. Selain itu pada baris ke-2, penulis mendeklarasikan file header cmath karena akan menggunakan fungsi pow(a, b) untuk melakukan operasi pangkat. 1 #include <iostream> 2 #include <cmath> Variabel-variabel dengan nama absisPertama, ordinatPertama, absisKedua dan ordinatKedua dideklarasikan pada baris ke-32, 38, 49 dan 55 dengan tipe data double. Variabel-variabel ini menampung data input dari pengguna seperti yang ditunjukkan oleh baris ke-33, 39, 50 dan 56. 32 double absisPertama; 33 cin >> absisPertama; 38 double ordinatPertama; 39 cin >> ordinatPertama; 49 double absisKedua; 50 cin >> absisKedua; 55 double ordinatKedua; 56 cin >> ordinatKedua; Kemudian, variabel dengan nama jarak didefinisikan dengan tipe data double untuk menampung nilai ekspresi dalam baris ke-66. Ekspresi ini terdapat fungsi built-in pow(a, b). 65 double jarak; 66 jarak = pow(pow(( absisKedua - absisPertama ), 2) + pow(( ordinatKedua - ordinatPertama ), 2) , 0.5);
  • 8. 02.15.DistanceTwoPoint #bayuyudhasaputra Halaman 8 Penjelasan mengenai fungsi pow(a, b) adalah sebagai berikut: pow((absisKedua – absisPertama), 2) = (π‘Žπ‘π‘ π‘–π‘ πΎπ‘’π‘‘π‘’π‘Ž βˆ’ π‘Žπ‘π‘ π‘–π‘ π‘ƒπ‘’π‘Ÿπ‘‘π‘Žπ‘šπ‘Ž)2 pow((ordinatKedua – ordinatPertama), 2) = (π‘œπ‘Ÿπ‘‘π‘–π‘›π‘Žπ‘‘πΎπ‘’π‘‘π‘’π‘Ž βˆ’ π‘œπ‘Ÿπ‘‘π‘–π‘›π‘Žπ‘‘π‘ƒπ‘’π‘Ÿπ‘‘π‘Žπ‘šπ‘Ž)2 Sehingga ekspresi fungsi yang tersimpan dalam variabel jarak menjadi: pow(pow(( absisKedua - absisPertama ), 2) + pow((ordinatKedua - ordinatPertama ), 2), 0.5); Ekspresi ini sama dengan ekspresi aritmatika berikut: √(π‘Žπ‘π‘ π‘–π‘ πΎπ‘’π‘‘π‘’π‘Ž βˆ’ π‘Žπ‘π‘ π‘–π‘ π‘ƒπ‘’π‘Ÿπ‘‘π‘Žπ‘šπ‘Ž)2 + (π‘œπ‘Ÿπ‘‘π‘–π‘›π‘Žπ‘‘πΎπ‘’π‘‘π‘’π‘Ž βˆ’ π‘œπ‘Ÿπ‘‘π‘–π‘›π‘Žπ‘‘π‘ƒπ‘’π‘Ÿπ‘‘π‘Žπ‘šπ‘Ž)2 Misal, variabel-variabel absisPertama, absisKedua, ordinatPertama dan ordinatKedua diinput nilai berikut: absisPertama = -4 absisKedua = 5 ordinatPertama = 1 ordinatKedua = 3 Maka, proses kalkulasi yang disimpan dalam variabel jarak adalah sebagai berikut: jarak = pow(pow(( absisKedua - absisPertama ), 2) + pow((ordinatKedua - ordinatPertama ), 2), 0.5); jarak = pow(pow((5 – (-4)), 2) + pow((3 - 1 ), 2), 0.5); jarak = pow(pow(( 5 + 4), 2) + pow((3 - 1), 2), 0.5); jarak = pow(pow(( 9), 2) + pow((2), 2), 0.5); jarak = pow((81+ 4), 0.5); jarak = pow(85, 0.5); jarak = 9,21954
  • 9. 02.15.DistanceTwoPoint #bayuyudhasaputra Halaman 9 Contoh output program dengan nilai variabel absisPertama = -4, absisKedua = 5, ordinatPertama = 1 dan ordinatKedua = 3 adalah sebagai berikut: 02.15.05. Refleksi Program menentukan jumlah nominal tabungan menggunakan bahasa pemrograman C++ ini dapat dikembangkan dengan menambahkan: 1. Mengecek nilai input. Data yang diinput tentu saja harus bertipe double. Jika pengguna menginput data selain bilangan maka program menjadi error tanpa menampilkan pesan yang dipahami oleh pengguna. 2. Menawarkan input kembali kepada pengguna atau berhenti menjalankan program setelah program dijalankan, baik ketika program berjalan sesuai dengan harapan atau malah terjadi error.
  • 10. 02.15.DistanceTwoPoint #bayuyudhasaputra Halaman 10 02.15.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: