Dalam versi lama MATLAB, dulu ada alasan bagus untuk menghindari penggunaan i
danj
sebagai nama variabel - versi awal JIT MATLAB tidak cukup pintar untuk mengatakan apakah Anda menggunakannya sebagai variabel atau sebagai unit imajiner, dan karena itu akan matikan banyak kemungkinan optimasi.
Karenanya, kode Anda akan menjadi lebih lambat hanya dengan kehadiran i
dan j
sebagai variabel, dan akan dipercepat jika Anda mengubahnya menjadi sesuatu yang lain. Itu sebabnya, jika Anda membaca banyak kode MathWorks, Anda akan melihat ii
dan jj
menggunakan indeks loop secara luas. Untuk sementara waktu, MathWorks bahkan mungkin secara tidak resmi menyarankan orang untuk melakukan itu sendiri (walaupun mereka selalu secara resmi menyarankan orang untuk memprogram keanggunan / pemeliharaan daripada apa pun yang dilakukan JIT saat ini, karena itu merupakan target yang bergerak setiap versi).
Tapi itu sudah lama sekali, dan saat ini sedikit masalah "zombie" yang benar-benar jauh kurang penting daripada yang dipikirkan banyak orang, tetapi menolak untuk mati.
Dalam versi terbaru apa pun, itu benar-benar preferensi pribadi apakah akan menggunakan i
dan j
sebagai nama variabel atau tidak. Jika Anda melakukan banyak pekerjaan dengan bilangan kompleks, Anda mungkin ingin menghindari i
dan j
sebagai variabel, untuk menghindari kemungkinan risiko kebingungan yang kecil (meskipun Anda juga / hanya ingin menggunakan 1i
atau 1j
mengurangi kebingungan, dan sedikit kinerja yang lebih baik ).
Di sisi lain, dalam pekerjaan tipikal saya, saya tidak pernah berurusan dengan bilangan kompleks, dan saya menemukan kode saya lebih mudah dibaca jika saya merasa bebas untuk menggunakan i
dan j
sebagai indeks loop.
Saya melihat banyak jawaban di sini yang mengatakan Tidak direkomendasikan ... tanpa mengatakan siapa yang melakukan rekomendasi itu. Inilah sejauh mana rekomendasi aktual MathWorks, dari dokumentasi rilis saat ini untuk i
:
Karena saya adalah fungsi, itu dapat diganti dan digunakan sebagai variabel. Namun, yang terbaik adalah menghindari menggunakan i dan j untuk nama variabel jika Anda bermaksud menggunakannya dalam aritmatika kompleks. [...] Untuk kecepatan dan ketahanan yang ditingkatkan, Anda dapat mengganti kompleks i dan j dengan 1i.
i
,j
,k
sebagai nama variabel loop generik.