Lewati ke isi
JRG++JRG++ v0.2.0

Bab 19 · Level Lanjut

Trigonometri Dasar

Trigonometri menjawab pertanyaan: kalau tahu satu sudut dan satu sisi segitiga siku-siku, bisakah kita menghitung semua sisi & sudut lainnya? Jawabannya ya — lewat sin, cos, dan tan.

KonsepTiga nama sisi segitiga siku-siku

Relatif terhadap sudut yang kita perhatikan (θ):

Sisi MiringHipotenusa — selalu di depan sudut siku-siku, selalu paling panjang
Depan (opposite)Sisi di seberang sudut θ
Samping (adjacent)Sisi yang menempel pada sudut θ (bukan hipotenusa)

SOH-CAH-TOA — jembatan keledai wajib hafal

sin θ = depan / miring
cos θ = samping / miring
tan θ = depan / samping

Contoh: mengukur tinggi tanpa memanjat

Sudut elevasi ke puncak tiang = 60°, jarak berdiri = 20m
tan(60°) = tinggi / 20
tinggi = 20 × tan(60°) = 20 × 1.732 ≈ 34.6m

Nilai sudut istimewa

Sudutsincostan
0°010
30°0.50.8660.577
45°0.7070.7071
60°0.8660.51.732
90°10tak terdefinisi
Latihan mandiri

1. Segitiga siku-siku, sisi depan=3, sisi samping=4. Berapa sisi miringnya? (petunjuk: Pythagoras)

2. Tangga bersandar membentuk sudut 45° dengan tanah, panjang tangga 10m. Berapa tinggi ujung tangga dari tanah?

Jawaban 1: √(3²+4²)=√25=5
Jawaban 2: sin(45°)=tinggi/10 → tinggi=10×0.707≈7.07m

Kode JRGFungsi trigonometri — hati-hati radian!

Fungsi math::sin/cos/tan di JRG (seperti kebanyakan bahasa pemrograman) menerima sudut dalam radian, bukan derajat. Konversinya: radian = derajat × (π/180).

trigonometri.jrg
fn keRadian(derajat: float) -> float {
    return derajat * (math::PI / 180.0)
}

pub fn main() {
    let sudut = keRadian(60.0)
    let jarak = 20.0

    let tinggi = jarak * math::tan(sudut)
    wok("Tinggi tiang:", tinggi, "meter")
}
Tinggi tiang: 34.641016151377535 meter

Kuis 1

sin θ didefinisikan sebagai...

Kuis 2

tan θ didefinisikan sebagai...

Kuis 3

Sebelum memanggil math::sin() di JRG, sudut derajat harus...