SPM KMK 2216 study materials
SPM KMK 2216 study resources

SPM KMK 2216: Pemboleh ubah, jenis data dan operator

SPM KMK 2216 · Work through your exam, one topic at a time.

All guide sections

Pemboleh ubah, jenis data dan operator

Domain Pemboleh ubah, jenis data dan operator menguji sama ada anda boleh mengisytiharkan storan yang betul untuk satu nilai, memilih jenis data yang sesuai, dan menilai ungkapan mengikut keutamaan operator yang betul. Soalan kerap meminta anda menjejak nilai akhir pemboleh ubah selepas satu siri umpukan, atau mengenal pasti ralat jenis dalam satu ungkapan.

Pengenal dan pengisytiharan

  • Nama pemboleh ubah mesti bermula dengan huruf atau garis bawah, boleh mengandungi digit tetapi tiada ruang, dan tidak boleh menggunakan kata kunci.
  • Kebanyakan bahasa bersifat case-sensitive: Jumlah dan jumlah ialah dua pemboleh ubah berbeza.
  • Pengisytiharan menetapkan jenis dan ruang: int bil = 0. Pemalar (constant) diisytiharkan sekali dan tidak boleh diubah selepas itu.

Jenis data asas

Integer (nombor bulat), real/float (perduaan), Boolean (true/false), char (satu aksara), string (jujukan aksara). Jenis menentukan operasi yang sah: anda tidak boleh menolak string daripada integer tanpa penukaran.

Operator dan keutamaan

  • Aritmetik: + - * / div mod
  • Perbandingan: = <> < > <= >= (menghasilkan Boolean)
  • Logik: AND OR NOT
  • Keutamaan dari tinggi ke rendah: kurungan → NOT → * / div mod → + - → perbandingan → AND → OR.

Contoh berperingkat

Diberi a = 7, b = 2, semuanya integer.

  • c = a / b → pembahagian integer memotong perpuluhan, jadi c = 3 (bukan 3.5).
  • d = a mod b → baki 7 ÷ 2 ialah 1.
  • e = a / 2.0 → salah satu operand real, jadi keputusan real: 3.5.
  • f = (a > b) AND (b <> 0) → true AND true = true.

Perangkap yang menghilangkan markah

  • Menganggap 7 / 2 memberi 3.5 apabila kedua-dua operand integer.
  • Menggunakan = untuk perbandingan dalam syarat, bukan == atau <> mengikut konvensyen bahasa.
  • Mengelirukan mod (baki) dengan div (hasil bulat).
  • Membaca pemboleh ubah yang belum diumpukkan nilai awal.
  • Menukar real kepada integer secara eksplisit lalu terlupa bahawa ia memotong, bukan membundarkan.