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:
hargaSatuan = 1500;
jumlah = 3;
total = hargaSatuan * jumlah;
fprintf('Total belanja: %d\n', total);Output yang Dihasilkan:
Total belanja: 4500Mari kita bedah baris-baris kode di atas:
- Baris 1 (
hargaSatuan = 1500;): MATLAB mengalokasikan sebuah array 1×1 bertipedouble, mengisinya dengan nilai1500, lalu mengikat namahargaSatuanke array tersebut. Titik koma menekan echo (penampilan hasil) di layar. - Baris 2 (
jumlah = 3;): variabeljumlahdibuat dengan cara yang sama dan berisi nilai3. - Baris 3 (
total = hargaSatuan * jumlah;): MATLAB membaca nilai darihargaSatuandanjumlah, mengalikan keduanya menghasilkan4500, lalu menyimpan hasilnya ke variabel baru bernamatotal. - Baris 5 (
fprintf(...)): fungsifprintfmencetak teks ke layar dengan format specifier%duntuk nilai bulat. Kita bahasfprintfsecara 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:
>> 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):
>> 7 + 3
ans =
10Variabel 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:
| Aturan | Contoh sah | Contoh salah |
|---|---|---|
| Diawali huruf atau underscore | harga, _total | 1harga, 2x |
| Hanya huruf, angka, dan underscore | harga_total, suhu2 | harga-total, harga total |
| Kapitalisasi dibedakan (case-sensitive) | suhu dan Suhu berbeda variabel | |
| Tidak boleh sama dengan kata kunci | nilai, data | for, if, end |
Maksimal 63 karakter (namelengthmax) | totalHargaSatuan | nama 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:
info = 7500;
info = 'tujuh ribu lima ratus';
fprintf('Isi info sekarang: %s\n', info);Output yang Dihasilkan:
Isi info sekarang: tujuh ribu lima ratusPada 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.