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

Bab 1 · Aritmatika Dasar

Angka & Bilangan

Sebelum menghitung apa pun, kita perlu sepakat dulu: bilangan itu apa, dan ada berapa "jenis" bilangan. Bab ini adalah pondasi — dipahami betul di sini, bab-bab berikutnya jauh lebih ringan.

KonsepKeluarga besar bilangan

Semua angka yang pernah kamu tulis termasuk ke dalam salah satu "keluarga" berikut. Semakin ke bawah tabel, semakin besar keluarganya — setiap keluarga mencakup keluarga di atasnya.

NamaSimbolIsinyaContoh
AsliℕMulai dari 1, buat menghitung benda1, 2, 3, 4, …
Cacahℕ₀Bilangan asli + nol0, 1, 2, 3, …
BulatℤCacah + lawannya (negatif)…, −2, −1, 0, 1, 2, …
RasionalℚBisa ditulis sebagai pecahan a/b½, 0.75, −3, 4
Irasional—Desimal tak berulang & tak berhentiπ, √2, e
RealℝSemua di atas digabung — semua titik di garis bilanganSemua contoh di atas

Garis bilangan

Cara termudah membayangkan bilangan bulat adalah sebagai titik-titik berjarak sama pada satu garis. Nol di tengah, positif ke kanan, negatif ke kiri.

−4
−3
−2
−1
0
1
2
3
4

Semakin ke kanan, nilainya semakin besar — bukan semakin "banyak digit". Ini penting: −1 lebih besar dari −100, walau "100" kelihatan lebih besar dari "1".

Nilai tempat (place value)

Angka 2.507 sebenarnya adalah singkatan dari penjumlahan berdasarkan posisi setiap digit:

2.507 = 2×1000 + 5×100 + 0×10 + 7×1
Posisi ribuan → 2
Posisi ratusan → 5
Posisi puluhan → 0
Posisi satuan → 7
Latihan mandiri

1. Termasuk keluarga apa saja bilangan −7? (boleh lebih dari satu)

2. Antara −15 dan −3, mana yang lebih besar? Kenapa?

Jawaban 1: Bulat (ℤ) dan Rasional (ℚ) dan Real (ℝ) — tapi bukan Asli/Cacah karena negatif.
Jawaban 2: −3 lebih besar. Di garis bilangan, −3 ada di sebelah kanan −15, lebih dekat ke nol.

Kode JRGTipe data angka di JRG

Di dunia pemrograman, "jenis bilangan" ini punya nama teknis sendiri: tipe data. JRG punya dua tipe angka utama — int untuk bilangan bulat, dan float untuk bilangan berdesimal.

angka.jrg
pub fn main() {
    // int → bilangan bulat, tanpa koma
    let umur: int = 17

    // float → bilangan berdesimal
    let tinggi: float = 165.5

    let nama = "Budi"

    wok("Umur:", umur)
    wok("Tinggi:", tinggi, "cm")
    wok("Nol itu tetap angka:", 0)
}
Umur: 17
Tinggi: 165.5 cm
Nol itu tetap angka: 0

Kuis 1

Bilangan −8 termasuk kelompok apa?

Kuis 2

Manakah yang lebih besar: −20 atau −5?

Kuis 3

Kode let x: int = 7.2 di JRG akan...