SlideShare a Scribd company logo
0214-LuasSegitiga.py #bayuyudhasaputra
Halaman 1
Programming Exercise 02.14
Luas Segitiga
02.14.01. Masalah
2.14. Tuliskan program yang meminta input 3 titik kepada pengguna, yaitu (x1, y1),
(x2, y2), dan (x3, y3). Titik-titik yang diinput ini adalah titik sudut segitiga.
Rumus untuk menghitung luas segitiga adalah:
𝑠 =
𝑠𝑖𝑑𝑒1 + 𝑠𝑖𝑑𝑒2 + 𝑠𝑖𝑑𝑒3
2
𝑎𝑟𝑒𝑎 = √𝑠(𝑠 − 𝑠𝑖𝑑𝑒1)(𝑠 − 𝑠𝑖𝑑𝑒2)(𝑠 − 𝑠𝑖𝑑𝑒3)𝑎𝑟𝑒𝑎
= √𝑠(𝑠 − 𝑠𝑖𝑑𝑒1)(𝑠 − 𝑠𝑖𝑑𝑒2)(𝑠 − 𝑠𝑖𝑑𝑒3)
Input absis titik A : 1.5
Input ordinat titik A : -3.4
Input absis titik B : 4.6
Input ordinat titik B : 5
Input absis titik C : 9.5
Input ordinat titik C : -3.4
Luas segitiga dengan titik sudut A(1.5, -3.4), B(4.6, 5) dan C(9.5, -3.4) adalah 33.6
02.14.02. Luas Segitiga
Diketahui segitiga sembarang ABC dengan panjang sisi a, b, dan c didalam diagram
cartesius seperti pada gambar 02.14.01 berikut:
0214-LuasSegitiga.py #bayuyudhasaputra
Halaman 2
Gambar 02.14.01. Segitiga sembarang ABC
Luas segitiga ABC dapat ditentukan dengan rumus berikut:
𝐿𝑢𝑎𝑠 = √𝑠(𝑠 − 𝑎)(𝑠 − 𝑏)(𝑠 − 𝑐)
dimana,
𝑠 =
𝑎 + 𝑏 + 𝑐
2
Panjang sisi segitiga a, b dan c dapat ditentukan menggunakan rumus jarak antara dua titik
dalam diagram cartesius. Panjang sisi a sama dengan jarak antara titik B(x2, y2) dengan C(x3,
y3).
𝑎 = √(𝑥3 − 𝑥2)2 + (𝑦3 − 𝑦2)2
Panjang sisi b sama dengan jarak antara titik A(x1, y1) dengan B(x2, y2).
𝑏 = √(𝑥2 − 𝑥1)2 + (𝑦2 − 𝑦1)2
Panjang sisi c sama dengan jarak antara titik A(x1, y1) dengan C(x3, y3).
𝑐 = √(𝑥3 − 𝑥1)2 + (𝑦3 − 𝑦1)2
0214-LuasSegitiga.py #bayuyudhasaputra
Halaman 3
02.14.03. Kode Python
Langkah-langkah kerja program menghitung luas segitiga sembarang adalah:
Langkah ke-1 : meminta input absis dan ordinat titik-titik A, B dan C. absis titik A, B, dan
C disimpan dalam variabel berturut-turut x_a, x_b dan x_c. Ordinat titik A,
B, dan C disimpan dalam variabel berturut-turut y_a, y_b dan y_c.
Langkah ke-2 : menentukan panjang sisi a menggunakan rumus berikut. Hasil operasi ini
disimpan dalam variabel sisi_a.
sisi_a = ((x_c – x_b) ** 2 + (y_c – y_b) ** 2) ** (1 / 2)
Langkah ke-3 : menentukan panjang sisi b menggunakan rumus berikut. Hasil operasi ini
disimpan dalam variabel sisi_b.
sisi_b = ((x_b – x_a) ** 2 + (y_b – y_a) ** 2) ** (1 / 2)
Langkah ke-4 : menentukan panjang sisi c menggunakan rumus berikut. Hasil operasi ini
disimpan dalam variabel sisi_c.
sisi_c = ((x_c – x_a) ** 2 + (y_c – y_a) ** 2) ** (1 / 2)
Langkah ke-5 : menentukan setengah dari keliling segitiga. Hasil operasi ini disimpan
dalam variabel s.
s = (sisi_a + sisi_b + sisi_c) / 2
Langkah ke-6 : menentukan luas segitiga menggunakan rumus berikut, hasil operasi ini
disimpan dalam variabel luas.
luas = (s * (s – sisi_a) * (s – sisi_b) * (s – sisi_c)) ** (1/2)
Langkah ke-7 : menampilka nilai dalam variabel luas.
Program lengkap program menghitung luas segitiga sembarang adalah:
1 x_a = eval(input("Input absis titik A : "))
2 y_a = eval(input("Input ordinat titik A : "))
3
4 x_b = eval(input("Input absis titik B :"))
5 y_b = eval(input("Input ordinat titik B : "))
6
0214-LuasSegitiga.py #bayuyudhasaputra
Halaman 4
7 x_c = eval(input("Input absis titik C : "))
8 y_c = eval(input("Input ordinat titik C : "))
9
10 sisi_a = ((x_c - x_b) ** 2 + (y_c - y_b) ** 2) ** (1 / 2)
12 sisi_b = ((x_b - x_a) ** 2 + (y_b - y_a) ** 2) ** (1 / 2)
13 sisi_c = ((x_c - x_a) ** 2 + (y_c - y_a) ** 2) ** (1 / 2)
14
15 s = (sisi_a + sisi_b + sisi_c) / 2
17
18 luas = (s * (s - sisi_a) * (s - sisi_b) * (s - sisi_c)) ** (1 / 2)
19
20 print("Luas segitiga dengan titik sudut",
21 "A(", x_a, "," , y_a, "), ",
22 "B(", x_b, ",", y_b, "), ",
23 "C(", x_c, ",", y_c, ")",
24 "adalah", luas
25 )
Pada baris ke-1 hingga 9, program meminta input menggunakan fungsi input().
Kemudian, nilai input dikonversi dari string menjadi numerik menggunakan fungsi eval().
Nilai input ini disimpan dalam variabel berturut-turut x_a, y_a, x_b, y_b, x_c, dan y_c.
1 x_a = eval(input("Input absis titik A : "))
2 y_a = eval(input("Input ordinat titik A : "))
3
4 x_b = eval(input("Input absis titik B :"))
5 y_b = eval(input("Input ordinat titik B : "))
6
7 x_c = eval(input("Input absis titik C : "))
8 y_c = eval(input("Input ordinat titik C : "))
9
Kemudian pada baris ke-10, program menghitung jarak antara titik B(xb, yb) dengan C(xc,
yc). hasil perhitungan ini disimpan dalam variabel sisi_a. Pada baris ke-11, program
menghitung jarak antara titik B(xb, yb) dengan A(xa, ya). hasil perhitungan ini disimpan dalam
variabel sisi_b. Pada baris ke-12, program menghitung jarak antara titik A(xa, ya) dengan C(xc,
yc). hasil perhitungan ini disimpan dalam variabel sisi_c. Jarak-jarak titik ini adalah panjang
sisi-sisi segitiga.
10 sisi_a = ((x_c - x_b) ** 2 + (y_c - y_b) ** 2) ** (1 / 2)
0214-LuasSegitiga.py #bayuyudhasaputra
Halaman 5
12 sisi_b = ((x_b - x_a) ** 2 + (y_b - y_a) ** 2) ** (1 / 2)
13 sisi_c = ((x_c - x_a) ** 2 + (y_c - y_a) ** 2) ** (1 / 2)
Kemudian pada baris ke-15, nilai dalam sisi_a, sisi_b dan sisi_c dihitung menggunakan
rumus berikut. Hasil operasi ini disimpan dalam variabel s. Operasi ini adalah setengah
keliling segitiga.
14 …
15 s = (sisi_a + sisi_b + sisi_c) / 2
17 …
Pada baris ke-18, luas segitiga dihitung menggunakan rumus berikut. Hasil operasi ini
disimpan dalam variabel dengan nama luas.
17 …
18 luas = (s * (s - sisi_a) * (s - sisi_b) * (s - sisi_c)) ** (1 / 2)
19 …
Kemudian pada baris ke-20 hingga 25, program menampilkan nilai variabel luas. nilai
ini ditampilkan dengan ditambahi pesan “Luas segitiga dengan titik sudut A([nilai variabel
x_a], ([nilai variabel y_a]), B([nilai variabel x_b], ([nilai variabel y_b]), C([nilai variabel
x_c], ([nilai variabel y_c]) adalah [nilai varibel luas].”
20 print("Luas segitiga dengan titik sudut",
21 "A(", x_a, "," , y_a, "), ",
22 "B(", x_b, ",", y_b, "), ",
23 "C(", x_c, ",", y_c, ")",
24 "adalah", luas
25 )
Contoh hasil eksekusi program menghitung luas segitiga sembarang ditunjukkan oleh
gambar 02.14.02 berikut:
0214-LuasSegitiga.py #bayuyudhasaputra
Halaman 6
Gambar 02.14.02. Contoh Output Hitung Luas Segitiga
Dalam kasus ini, nilai absis dan ordinat titik A berturut-turut 1.5 dan -3.4. Sementara, absis dan
ordinat titik B adalah berturut-turut 4.6 dan 5. Serta, absis dan ordinat titik C berturut-turut 9.5
dan -3.4. Sehingga, luas segitiganya adalah 33.600000000000016.
02.14.04. Daftar Pustaka
Liang. 2013. Introduction to Programming with Python. London: Pearson Education yang bisa
diakses pada tautan berikut:
https://www.amazon.com/Introduction-Programming-Using-Python-
Daniel/dp/0132747189
Baris kode ini bisa diakses pada tautan berikut:
https://github.com/bayuYudhaSaputra/Python/blob/main/Python_Liang/0214-
LuasSegitiga.py

More Related Content

PDF
02.15. LuasSegienam Menggunakan Bahasa Pemrograman Python
PDF
03.02. Great Circle Distance Menggunakan Bahasa Pemrograman Python
PDF
02.19. Menentukan Luas Segitiga Sembarang Menggunakan Bahasa Pemrograman C++
PDF
03.01. Luas Segilima Menggunakan Bahasa Pemrograman Python
DOCX
KARTU SOAL KELAS XI MAEMATIKA KURMER.docx
PDF
Latihan &kasus FTI314-sns
PPTX
Fungsi Trigonometri (Grafik sin, cos, dan tan)
PPT
program-linear1 kurikulum merdeka SMK.ppt
02.15. LuasSegienam Menggunakan Bahasa Pemrograman Python
03.02. Great Circle Distance Menggunakan Bahasa Pemrograman Python
02.19. Menentukan Luas Segitiga Sembarang Menggunakan Bahasa Pemrograman C++
03.01. Luas Segilima Menggunakan Bahasa Pemrograman Python
KARTU SOAL KELAS XI MAEMATIKA KURMER.docx
Latihan &kasus FTI314-sns
Fungsi Trigonometri (Grafik sin, cos, dan tan)
program-linear1 kurikulum merdeka SMK.ppt

Similar to 02.14. Luas Segitiga Menggunakan Bahasa Pemrograman Python (20)

PPT
VARIABEnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnL.ppt
PDF
UN Matematika SMK pert-2005
PPTX
TitikdanGaris.pptx
PPTX
Kelompok 3 integrasi numerik fix
PPTX
Materi Pengolahan Citra Digital Fitur Biner.pptx
PPT
Relasidanfungsi 130408013733-phpapp02
DOCX
SOAL MATEMATIKA WAJIB PAT.docx
DOCX
Tugas Photosop vs Matlab
PDF
To un 2015 matematika ips b
PDF
02.26. Menggambar Lingkaran Dan Menampilkan Luas Menggunakan Bahasa Pemrogram...
PDF
C. menentukan nilai optimum dari sistem pertidaksamaan linier
PDF
C. menentukan nilai optimum dari sistem pertidaksamaan linier
PPT
Program liniear
PDF
3. prediksi mtk smk 2
DOCX
Soal unipa2010
PPT
ppt fungsi kuadrat 2.pptgggggggggggggggggggggggggg
PPTX
ppt fungsi kuadrat 2.pptx
PDF
To un 2015 matematika ips a
PDF
To un 2015 matematika ips a
PPTX
Diagram Pencar atau Scatter Diagram.pptx
VARIABEnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnL.ppt
UN Matematika SMK pert-2005
TitikdanGaris.pptx
Kelompok 3 integrasi numerik fix
Materi Pengolahan Citra Digital Fitur Biner.pptx
Relasidanfungsi 130408013733-phpapp02
SOAL MATEMATIKA WAJIB PAT.docx
Tugas Photosop vs Matlab
To un 2015 matematika ips b
02.26. Menggambar Lingkaran Dan Menampilkan Luas Menggunakan Bahasa Pemrogram...
C. menentukan nilai optimum dari sistem pertidaksamaan linier
C. menentukan nilai optimum dari sistem pertidaksamaan linier
Program liniear
3. prediksi mtk smk 2
Soal unipa2010
ppt fungsi kuadrat 2.pptgggggggggggggggggggggggggg
ppt fungsi kuadrat 2.pptx
To un 2015 matematika ips a
To un 2015 matematika ips a
Diagram Pencar atau Scatter Diagram.pptx
Ad

More from Bayu Yudha Saputra (20)

PDF
03.14. Membuat Logo Olimpiade Menggunakan Bahasa Pemrograman Python.pdf
PDF
03.13. Membuat Tanda STOP Menggunakan Bahasa Pemrograman Python.pdf
PDF
03.12.Menggambar Bintang Menggunakan Bahasa Pemrograman Python.pdf
PDF
03.11. Pembalikan Digit Bilangan Menggunakan Bahasa Pemrograman Python.pdf
PDF
03.10. Tampilkan 8 Abjad Yunani Menggunakan Bahasa Pemrograman Python.pdf
PDF
03.09. Pembayaran Gaji Menggunakan Bahasa Pemrograman Python.pdf
PDF
03.08. Pecahan Mata Uang USD Menggunakan Bahasa Pemrograman Python.pdf
PDF
03.07.Menampilkan Huruf Kapital secara Random Menggunakan Bahasa Pemrograman ...
PDF
03.06. Konversi Kode ASCII Menggunakan Bahasa Pemrograman Python.pdf
PDF
03.05. Luas Segi-n Beraturan Menggunakan Bahasa Pemrograman Python.pdf
PDF
03.04. Luas Segilima Beraturan Menggunakan Bahasa Pemrograman Python
PDF
03.03.Estimasi Luas Daerah Menggunakan Bahasa Pemrograman Python
PDF
02.23. Gambar Empat Lingkaran Menggunakan Python
PDF
02.22. proyeksi Jumlah Penduduk Menggunakan Bahasa Pemrograman Python
PDF
02.21. Hitung Bunga Majemuk Menggunakan Bahasa Pemrograman Python.pdf
PDF
02.20.Hitung Nominal Bunga Bulanan Menggunakan Python
PDF
02.19. Hitung Nilai Investasi Menggunakan Python.pdf
PDF
02.17. Menentukan Body Mass Index Menggunakan Bahasa Pemrograman Python
PDF
02.16. Hitung Percepatan Menggunakan Python
PDF
02.13. Ekstrak Bilangan Ribuan Mengguanakan Bahasa Pemrograman Python
03.14. Membuat Logo Olimpiade Menggunakan Bahasa Pemrograman Python.pdf
03.13. Membuat Tanda STOP Menggunakan Bahasa Pemrograman Python.pdf
03.12.Menggambar Bintang Menggunakan Bahasa Pemrograman Python.pdf
03.11. Pembalikan Digit Bilangan Menggunakan Bahasa Pemrograman Python.pdf
03.10. Tampilkan 8 Abjad Yunani Menggunakan Bahasa Pemrograman Python.pdf
03.09. Pembayaran Gaji Menggunakan Bahasa Pemrograman Python.pdf
03.08. Pecahan Mata Uang USD Menggunakan Bahasa Pemrograman Python.pdf
03.07.Menampilkan Huruf Kapital secara Random Menggunakan Bahasa Pemrograman ...
03.06. Konversi Kode ASCII Menggunakan Bahasa Pemrograman Python.pdf
03.05. Luas Segi-n Beraturan Menggunakan Bahasa Pemrograman Python.pdf
03.04. Luas Segilima Beraturan Menggunakan Bahasa Pemrograman Python
03.03.Estimasi Luas Daerah Menggunakan Bahasa Pemrograman Python
02.23. Gambar Empat Lingkaran Menggunakan Python
02.22. proyeksi Jumlah Penduduk Menggunakan Bahasa Pemrograman Python
02.21. Hitung Bunga Majemuk Menggunakan Bahasa Pemrograman Python.pdf
02.20.Hitung Nominal Bunga Bulanan Menggunakan Python
02.19. Hitung Nilai Investasi Menggunakan Python.pdf
02.17. Menentukan Body Mass Index Menggunakan Bahasa Pemrograman Python
02.16. Hitung Percepatan Menggunakan Python
02.13. Ekstrak Bilangan Ribuan Mengguanakan Bahasa Pemrograman Python
Ad

Recently uploaded (20)

PDF
System Requirement Enterprise Resource Planning Peternakan Ayam dan Daftar Ju...
DOCX
Modul Ajar Deep Learning Prakarya Budidaya Kelas 12 SMA Terbaru 2025
PDF
PPT Yudisium Ceremony Agusus 2025 - new. pdf
DOCX
Modul Ajar Deep Learning PKN Kelas 10 SMA Terbaru 2025
PPTX
BAB 1 Rangkuman Materi Informatika Kelas 7.pptx
PPSX
Teknik Trading Selang Seling Yang Dapat Digunakan Untuk Trading Manual Maupun...
PPTX
1. Bahan Bacaan Pola Pikir Bertumbuh.pptx
PDF
System Requirement Enterprise Resource Planning Jasa Penulisan dan Pembuatan ...
PPTX
materi pencegahan perkawinan usia anak.pptx
PPTX
Modul 2. Berpikir Komputasional sebagai Dasar Koding untuk Kecerdasan Artifis...
PDF
ANALISIS SOALAN BAHASA MELAYU SPM 2021-2024 (1).pdf
PDF
1.Materi Kebijakan Umum Program Revit.pdf
PDF
Deck Rumah Pendidikan untuk Mendukung Program Prioritas Kemendikdasmen.pdf
DOCX
Modul Ajar Deep Learning Biologi Kelas 10 SMA Terbaru 2025
PPTX
MATERI MPLS TENTANG KURIKULUM DAN KEGIATAN PEMBELAJARAN
PDF
070725 - Definisi dan Data Indikator SNP.pdf
PPTX
Keragaman kerajinan tangan mancanegara.pptx
PPTX
Modul 1. Pengenalan Koding-KA di Dikdasmen.pptx
PPTX
PPT Kurikulum Berbasis Cinta tahun 2025.
PPTX
Rancangan Kegiatan Kokurikuler SMP N 1 Karanggede
System Requirement Enterprise Resource Planning Peternakan Ayam dan Daftar Ju...
Modul Ajar Deep Learning Prakarya Budidaya Kelas 12 SMA Terbaru 2025
PPT Yudisium Ceremony Agusus 2025 - new. pdf
Modul Ajar Deep Learning PKN Kelas 10 SMA Terbaru 2025
BAB 1 Rangkuman Materi Informatika Kelas 7.pptx
Teknik Trading Selang Seling Yang Dapat Digunakan Untuk Trading Manual Maupun...
1. Bahan Bacaan Pola Pikir Bertumbuh.pptx
System Requirement Enterprise Resource Planning Jasa Penulisan dan Pembuatan ...
materi pencegahan perkawinan usia anak.pptx
Modul 2. Berpikir Komputasional sebagai Dasar Koding untuk Kecerdasan Artifis...
ANALISIS SOALAN BAHASA MELAYU SPM 2021-2024 (1).pdf
1.Materi Kebijakan Umum Program Revit.pdf
Deck Rumah Pendidikan untuk Mendukung Program Prioritas Kemendikdasmen.pdf
Modul Ajar Deep Learning Biologi Kelas 10 SMA Terbaru 2025
MATERI MPLS TENTANG KURIKULUM DAN KEGIATAN PEMBELAJARAN
070725 - Definisi dan Data Indikator SNP.pdf
Keragaman kerajinan tangan mancanegara.pptx
Modul 1. Pengenalan Koding-KA di Dikdasmen.pptx
PPT Kurikulum Berbasis Cinta tahun 2025.
Rancangan Kegiatan Kokurikuler SMP N 1 Karanggede

02.14. Luas Segitiga Menggunakan Bahasa Pemrograman Python

  • 1. 0214-LuasSegitiga.py #bayuyudhasaputra Halaman 1 Programming Exercise 02.14 Luas Segitiga 02.14.01. Masalah 2.14. Tuliskan program yang meminta input 3 titik kepada pengguna, yaitu (x1, y1), (x2, y2), dan (x3, y3). Titik-titik yang diinput ini adalah titik sudut segitiga. Rumus untuk menghitung luas segitiga adalah: 𝑠 = 𝑠𝑖𝑑𝑒1 + 𝑠𝑖𝑑𝑒2 + 𝑠𝑖𝑑𝑒3 2 𝑎𝑟𝑒𝑎 = √𝑠(𝑠 − 𝑠𝑖𝑑𝑒1)(𝑠 − 𝑠𝑖𝑑𝑒2)(𝑠 − 𝑠𝑖𝑑𝑒3)𝑎𝑟𝑒𝑎 = √𝑠(𝑠 − 𝑠𝑖𝑑𝑒1)(𝑠 − 𝑠𝑖𝑑𝑒2)(𝑠 − 𝑠𝑖𝑑𝑒3) Input absis titik A : 1.5 Input ordinat titik A : -3.4 Input absis titik B : 4.6 Input ordinat titik B : 5 Input absis titik C : 9.5 Input ordinat titik C : -3.4 Luas segitiga dengan titik sudut A(1.5, -3.4), B(4.6, 5) dan C(9.5, -3.4) adalah 33.6 02.14.02. Luas Segitiga Diketahui segitiga sembarang ABC dengan panjang sisi a, b, dan c didalam diagram cartesius seperti pada gambar 02.14.01 berikut:
  • 2. 0214-LuasSegitiga.py #bayuyudhasaputra Halaman 2 Gambar 02.14.01. Segitiga sembarang ABC Luas segitiga ABC dapat ditentukan dengan rumus berikut: 𝐿𝑢𝑎𝑠 = √𝑠(𝑠 − 𝑎)(𝑠 − 𝑏)(𝑠 − 𝑐) dimana, 𝑠 = 𝑎 + 𝑏 + 𝑐 2 Panjang sisi segitiga a, b dan c dapat ditentukan menggunakan rumus jarak antara dua titik dalam diagram cartesius. Panjang sisi a sama dengan jarak antara titik B(x2, y2) dengan C(x3, y3). 𝑎 = √(𝑥3 − 𝑥2)2 + (𝑦3 − 𝑦2)2 Panjang sisi b sama dengan jarak antara titik A(x1, y1) dengan B(x2, y2). 𝑏 = √(𝑥2 − 𝑥1)2 + (𝑦2 − 𝑦1)2 Panjang sisi c sama dengan jarak antara titik A(x1, y1) dengan C(x3, y3). 𝑐 = √(𝑥3 − 𝑥1)2 + (𝑦3 − 𝑦1)2
  • 3. 0214-LuasSegitiga.py #bayuyudhasaputra Halaman 3 02.14.03. Kode Python Langkah-langkah kerja program menghitung luas segitiga sembarang adalah: Langkah ke-1 : meminta input absis dan ordinat titik-titik A, B dan C. absis titik A, B, dan C disimpan dalam variabel berturut-turut x_a, x_b dan x_c. Ordinat titik A, B, dan C disimpan dalam variabel berturut-turut y_a, y_b dan y_c. Langkah ke-2 : menentukan panjang sisi a menggunakan rumus berikut. Hasil operasi ini disimpan dalam variabel sisi_a. sisi_a = ((x_c – x_b) ** 2 + (y_c – y_b) ** 2) ** (1 / 2) Langkah ke-3 : menentukan panjang sisi b menggunakan rumus berikut. Hasil operasi ini disimpan dalam variabel sisi_b. sisi_b = ((x_b – x_a) ** 2 + (y_b – y_a) ** 2) ** (1 / 2) Langkah ke-4 : menentukan panjang sisi c menggunakan rumus berikut. Hasil operasi ini disimpan dalam variabel sisi_c. sisi_c = ((x_c – x_a) ** 2 + (y_c – y_a) ** 2) ** (1 / 2) Langkah ke-5 : menentukan setengah dari keliling segitiga. Hasil operasi ini disimpan dalam variabel s. s = (sisi_a + sisi_b + sisi_c) / 2 Langkah ke-6 : menentukan luas segitiga menggunakan rumus berikut, hasil operasi ini disimpan dalam variabel luas. luas = (s * (s – sisi_a) * (s – sisi_b) * (s – sisi_c)) ** (1/2) Langkah ke-7 : menampilka nilai dalam variabel luas. Program lengkap program menghitung luas segitiga sembarang adalah: 1 x_a = eval(input("Input absis titik A : ")) 2 y_a = eval(input("Input ordinat titik A : ")) 3 4 x_b = eval(input("Input absis titik B :")) 5 y_b = eval(input("Input ordinat titik B : ")) 6
  • 4. 0214-LuasSegitiga.py #bayuyudhasaputra Halaman 4 7 x_c = eval(input("Input absis titik C : ")) 8 y_c = eval(input("Input ordinat titik C : ")) 9 10 sisi_a = ((x_c - x_b) ** 2 + (y_c - y_b) ** 2) ** (1 / 2) 12 sisi_b = ((x_b - x_a) ** 2 + (y_b - y_a) ** 2) ** (1 / 2) 13 sisi_c = ((x_c - x_a) ** 2 + (y_c - y_a) ** 2) ** (1 / 2) 14 15 s = (sisi_a + sisi_b + sisi_c) / 2 17 18 luas = (s * (s - sisi_a) * (s - sisi_b) * (s - sisi_c)) ** (1 / 2) 19 20 print("Luas segitiga dengan titik sudut", 21 "A(", x_a, "," , y_a, "), ", 22 "B(", x_b, ",", y_b, "), ", 23 "C(", x_c, ",", y_c, ")", 24 "adalah", luas 25 ) Pada baris ke-1 hingga 9, program meminta input menggunakan fungsi input(). Kemudian, nilai input dikonversi dari string menjadi numerik menggunakan fungsi eval(). Nilai input ini disimpan dalam variabel berturut-turut x_a, y_a, x_b, y_b, x_c, dan y_c. 1 x_a = eval(input("Input absis titik A : ")) 2 y_a = eval(input("Input ordinat titik A : ")) 3 4 x_b = eval(input("Input absis titik B :")) 5 y_b = eval(input("Input ordinat titik B : ")) 6 7 x_c = eval(input("Input absis titik C : ")) 8 y_c = eval(input("Input ordinat titik C : ")) 9 Kemudian pada baris ke-10, program menghitung jarak antara titik B(xb, yb) dengan C(xc, yc). hasil perhitungan ini disimpan dalam variabel sisi_a. Pada baris ke-11, program menghitung jarak antara titik B(xb, yb) dengan A(xa, ya). hasil perhitungan ini disimpan dalam variabel sisi_b. Pada baris ke-12, program menghitung jarak antara titik A(xa, ya) dengan C(xc, yc). hasil perhitungan ini disimpan dalam variabel sisi_c. Jarak-jarak titik ini adalah panjang sisi-sisi segitiga. 10 sisi_a = ((x_c - x_b) ** 2 + (y_c - y_b) ** 2) ** (1 / 2)
  • 5. 0214-LuasSegitiga.py #bayuyudhasaputra Halaman 5 12 sisi_b = ((x_b - x_a) ** 2 + (y_b - y_a) ** 2) ** (1 / 2) 13 sisi_c = ((x_c - x_a) ** 2 + (y_c - y_a) ** 2) ** (1 / 2) Kemudian pada baris ke-15, nilai dalam sisi_a, sisi_b dan sisi_c dihitung menggunakan rumus berikut. Hasil operasi ini disimpan dalam variabel s. Operasi ini adalah setengah keliling segitiga. 14 … 15 s = (sisi_a + sisi_b + sisi_c) / 2 17 … Pada baris ke-18, luas segitiga dihitung menggunakan rumus berikut. Hasil operasi ini disimpan dalam variabel dengan nama luas. 17 … 18 luas = (s * (s - sisi_a) * (s - sisi_b) * (s - sisi_c)) ** (1 / 2) 19 … Kemudian pada baris ke-20 hingga 25, program menampilkan nilai variabel luas. nilai ini ditampilkan dengan ditambahi pesan “Luas segitiga dengan titik sudut A([nilai variabel x_a], ([nilai variabel y_a]), B([nilai variabel x_b], ([nilai variabel y_b]), C([nilai variabel x_c], ([nilai variabel y_c]) adalah [nilai varibel luas].” 20 print("Luas segitiga dengan titik sudut", 21 "A(", x_a, "," , y_a, "), ", 22 "B(", x_b, ",", y_b, "), ", 23 "C(", x_c, ",", y_c, ")", 24 "adalah", luas 25 ) Contoh hasil eksekusi program menghitung luas segitiga sembarang ditunjukkan oleh gambar 02.14.02 berikut:
  • 6. 0214-LuasSegitiga.py #bayuyudhasaputra Halaman 6 Gambar 02.14.02. Contoh Output Hitung Luas Segitiga Dalam kasus ini, nilai absis dan ordinat titik A berturut-turut 1.5 dan -3.4. Sementara, absis dan ordinat titik B adalah berturut-turut 4.6 dan 5. Serta, absis dan ordinat titik C berturut-turut 9.5 dan -3.4. Sehingga, luas segitiganya adalah 33.600000000000016. 02.14.04. Daftar Pustaka Liang. 2013. Introduction to Programming with Python. London: Pearson Education yang bisa diakses pada tautan berikut: https://www.amazon.com/Introduction-Programming-Using-Python- Daniel/dp/0132747189 Baris kode ini bisa diakses pada tautan berikut: https://github.com/bayuYudhaSaputra/Python/blob/main/Python_Liang/0214- LuasSegitiga.py