Komputasi yang berguna selalu perlu menyimpan nilai: harga barang, jumlah stok, hasil perhitungan, atau nama pengguna. Variabel adalah mekanisme MATLAB untuk mengikat nilai tersebut ke sebuah nama selama program berjalan. Berbeda dengan C atau Java, MATLAB tidak meminta kita mendeklarasikan tipe terlebih dahulu; variabel tercipta begitu kita memberi nilai, lalu hidup di workspace sampai sesi berakhir. Pada Chapter ini kita akan membedah perilaku tersebut sampai tuntas, mencakup:

  • Assignment tanpa deklarasi dan cara kerjanya di workspace
  • Peran titik koma (semicolon) dan variabel khusus ans
  • Aturan penamaan variabel
  • Menimpa nilai, membersihkan workspace dengan clear, dan jangka hidup variabel

Assignment Tanpa Deklarasi #

Di MATLAB, kita membuat variabel cukup dengan menulis nama = nilai di Command Window atau di dalam script. Tidak ada deklarasi tipe, tidak ada kata kunci khusus seperti var atau let. Mekanismenya sederhana: MATLAB mengevaluasi ekspresi di sisi kanan tanda sama dengan (=) terlebih dahulu, lalu mengikat hasilnya ke nama di sisi kiri dan menyimpannya di workspace, yaitu area memori yang menyimpan semua variabel sesi kita.

Mari kita lihat wujudnya sebagai script kecil:

matlab
hargaSatuan = 1500;
jumlah = 3;
total = hargaSatuan * jumlah;

fprintf('Total belanja: %d\n', total);

Output yang Dihasilkan:

text
Total belanja: 4500

Mari kita bedah baris-baris kode di atas:

  1. Baris 1 (hargaSatuan = 1500;): MATLAB mengalokasikan sebuah array 1×1 bertipe double, mengisinya dengan nilai 1500, lalu mengikat nama hargaSatuan ke array tersebut. Titik koma menekan echo (penampilan hasil) di layar.
  2. Baris 2 (jumlah = 3;): variabel jumlah dibuat dengan cara yang sama dan berisi nilai 3.
  3. Baris 3 (total = hargaSatuan * jumlah;): MATLAB membaca nilai dari hargaSatuan dan jumlah, mengalikan keduanya menghasilkan 4500, lalu menyimpan hasilnya ke variabel baru bernama total.
  4. Baris 5 (fprintf(...)): fungsi fprintf mencetak teks ke layar dengan format specifier %d untuk nilai bulat. Kita bahas fprintf secara penuh pada Chapter Format Output.

Semicolon dan Variabel ans #

MATLAB dirancang sebagai kalkulator interaktif. Jika sebuah statement tidak diakhiri titik koma, evaluator MATLAB mengirimkan hasilnya ke Command Window sebagai echo:

matlab
>> luas = 10 * 5

luas =

    50

>> luas = 10 * 5;
>>

Baris pertama menampilkan luas = diikuti nilainya; baris kedua tidak menampilkan apa pun karena titik koma menekan echo. Perilaku ini berlaku juga di dalam script: statement tanpa titik koma akan mencetak hasilnya saat script dijalankan, sehingga script yang baik mengakhiri hampir semua statement dengan titik koma dan menampilkan output secara terkendali lewat fprintf atau disp.

Jika kita mengevaluasi ekspresi tanpa menyimpannya ke variabel, MATLAB otomatis menyimpan hasilnya ke variabel bawaan bernama ans (singkatan dari answer):

matlab
>> 7 + 3

ans =

    10

Variabel ans bersifat biasa saja: ans dapat dibaca, dipakai dalam ekspresi berikutnya, dan akan ditimpa pada ekspresi bebas berikutnya. Gunakan ans hanya untuk inspeksi cepat di Command Window; kode yang serius selalu memberi nama eksplisit pada setiap nilai.

Aturan Penamaan Variabel #

Nama variabel yang baik membuat kode terbaca tanpa perlu menebak isinya. MATLAB menerapkan aturan penamaan yang tegas:

AturanContoh sahContoh salah
Diawali huruf atau underscoreharga, _total1harga, 2x
Hanya huruf, angka, dan underscoreharga_total, suhu2harga-total, harga total
Kapitalisasi dibedakan (case-sensitive)suhu dan Suhu berbeda variabel
Tidak boleh sama dengan kata kuncinilai, datafor, if, end
Maksimal 63 karakter (namelengthmax)totalHargaSatuannama lebih panjang dari 63 karakter

Karena MATLAB membedakan huruf besar dan kecil, salah kapital menghasilkan variabel baru, bukan galat. Kesalahan pengetikan Total alih-alih total adalah sumber kebingungan klasik: jika Total belum pernah dibuat, MATLAB menampilkan galat Unrecognized function or variable 'Total'. ketika kita mencoba membacanya.

Menimpa Nilai, clear, dan Jangka Hidup Variabel #

Isi variabel dapat diganti kapan saja; assignment terakhir selalu menimpa nilai sebelumnya. Variabel tidak perlu “dihapus” sebelum ditimpa, bahkan ketika jenis nilainya berubah:

matlab
info = 7500;
info = 'tujuh ribu lima ratus';
fprintf('Isi info sekarang: %s\n', info);

Output yang Dihasilkan:

text
Isi info sekarang: tujuh ribu lima ratus

Pada contoh di atas, assignment kedua membebaskan array double lama dan mengikat info ke char array baru. Berbeda dengan ans, variabel bernama eksplisit hanya berubah ketika kita sendiri menimpanya.

Variabel di base workspace (Command Window dan script) berumur panjang: variabel tetap ada setelah script selesai dijalankan dan dapat dipakai oleh script lain di sesi yang sama, sampai sesi ditutup atau kita membersihkannya dengan clear. Perintah clear namaVar menghapus satu variabel, clear tanpa argumen menghapus seluruh workspace, dan clearvars bekerja sama dengan clear. Mekanisme berbeda berlaku di dalam function: setiap fungsi punya workspace sendiri yang terpisah — kita bahas lengkap pada Section Fungsi.

Berkas contoh.m pada bagian bawah halaman merangkum seluruh contoh di atas dalam satu script utuh yang dapat dijalankan langsung dari MATLAB atau Octave.

Ringkasan #

Variabel MATLAB tercipta saat assignment tanpa deklarasi, hidup di workspace selama sesi berlangsung, dan ditimpa setiap kali kita memberi nilai baru. Titik koma menekan echo, ekspresi bebas mengisi variabel ans, dan penamaan yang case-sensitive menuntut konsistensi kapitalisasi. Dengan bekal ini, kita siap membedah kelas-kelas data yang dapat disimpan di dalam variabel.