Range secara arti bahasa (kalau tidak salah inggris...) adalah jarak/jangkauan. Bicara mengenai jarak itu pasti ada yang namanya titik awal dan titik akhir, atau jarak antara benda 1 dan benda 2. Range merupakan sebuah fungsi yang menghasilkan array of integer/ List of Integer secara terurut/sequential.
Kegunaannya dari Range ini ialah (di antaranya....) :
- kita bisa membuat sebuah pola deret terartur tanpa membuat sebuah variabel dan memasukan nilai secara manual
- digunakan dalam perulangan (loops) sebagai inisialisasi (kondisi awal) dan batas akhir.
sintaksnya:
- Range(Inisialisasi, Batas)
Inisialisasi adalah kondisi awal dari fungsi range. Jika kita memasukan nilai 1, maka kita memulai perhitungan/pertambahan/iterasi dari 1.
Batas adalah kondisi untuk banyaknya data dalam range. Jika inisialisasi kita masukan 1 dan Batas kita masukan 10, maka range akan terisi dengan angka 1,2,3,4,5,6,7,8,9. Kenapa hanya sampai 9? sebab kondisi di range memiliki operand '<' , jadi semua nilai yang berada di bawah 10. Jika kita ingin sampai 10 angka, rubah saja batasnya menjadi 11. Take it easy.
contoh:
Print Range(1,10)
hasilnya: [1, 2, 3, 4, 5, 6, 7, 8, 9]
Print Range(1,11)
hasilnya: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
2.
Range(Inisialisasi,Batas,Iterasi)
Sama saja seperti di sebelumnya, tapi ada tambahan
Iterasi yaitu penambahan/increment nilai. Bingung ga? contoh ada pola deret [1, 3, 5, 7, 9], pola deret ini yaitu n+2 atau [1, 11, 21, 31, 41, 51] punya rumus n+10. Jadi Iterasi ini membuat step/langkah dari range membentuk pola yang teratur. Default jika kita tidak menambahkan Iterasi di akhir seperi kasus sebelumnya adalah n+1.
contoh:
Print Range(1,10,2)
hasilnya: [1, 3, 5, 7, 9]
Print Range(1,60,10)
hasilnya: [1, 11, 21, 31, 41, 51]
For your Information:
Range memiliki bentuk nilai seperti
[1,2,3,4,5,6]
karena ini bahasa pemrograman, kita memulai indeks nilai dari 0, bukan dari 1. jadi perhatikan contoh di atas.
Indeks ke-0 diisi oleh 1
Indeks ke-1 diisi oleh 2
Indeks ke-5 diisi oleh 6
Untuk memahami lebih dalam kita pelajari tentang
Array
kasus lain:
Bagaimana jika Iterasi melebihi batas?
seperti Range(1,10,11), maka hanya akan menghasilkan nilai array : [1]
karena angka 1 (Inisialitator) masuk sebagai elemen pertama di array dan penambahan tidak tereksekusi karena sudah mencapai batas.
Jika Inisialitator lebih besar dari Batas (dalam kasus Interasi positif) ?
contoh Range(10,1), maka menghasilkan array yang kosong : [ ]
syarat minimal satu elemen yaitu elemen ke 1 (indeks 0) bisa masuk array ialah Inisialitator harus lebih kecil dari Batas. Sebenarnya Inisialitator bisa lebih besar dari batas, karena kita dalam kasus Iterasi positif, jadi tidak mungkin.
Range dengan Iterasi minus?
Bagaimana kita bisa membuat array dari range dengan isi nilai [5, 4, 3, 2, 1] ?
dari kasus sebelumnya bahwa pada iterasi positf atau default, inisialisasi tidak boleh lebih besar dari batas, jika tidak maka akan menghasilkan array kosong. maka sebaliknya juga untuk iterasi minus.
Untuk membentuk List/Array di atas maka kita tentukan dulu inisialiasinya yaitu 5 dan batas ( ingat '<' atau '>' ) yaitu 0. Kemudian masukan iterasinya yaitu -1. maka penulisan nya yaitu Range(5, 0, -1).
Iterasi/Step dengan Nilai 0?
Saya jawab langsung, maka akan terjadi Error. Tidak ada step yang bernilai 0.
------------------------------------ || --------------------------------------