Halo, selamat datang di Bony3D!
Jika kita ingin mengulang kata berjumlah ratusan, menuliskan bilangan genap sampai batas 2000, atau bahkan menentukan termasuk bilangan apakah ini, maka apa perlu menuliskan kodenya 1 per 1? Tentu, cara itu sangat tidak efektif.. Pada artikel ini, saya akan membahas apa itu algoritma perulangan for, fungsi, konsep dasar, kode, dan beberapa kasus yang hanya bisa diselesaikan oleh algoritma ini.
Algoritma perulangan for adalah salah satu algoritma perulangan pada bahasa pascal. Perbedaan yang mendasar ialah jumlah perulangannya. For hanya bisa digunakan jika sudah tahu pasti berapa jumlah perulangannya. Konsep dasar for mengacu pada increment dan decrement. Increment ialah menambahkan nilai 1 pada kode dengan simbol ++, sedangkan decrement ialah mengurangi nilai 1 pada kode dengan simbol --. Increment juga sering disebut perulangan positif dengan kode (for-to-do) dan decrement disebut sebagai perulangan negatif dengan kode (for-downto-do).
Berikut merupakan flowchart dari decrement:

Berdasarkan flowchart di atas, kita mengetahui bahwa batas dan nilai awal, tipe datanya integer, input-nya sama dengan batas, set nilai awal lebih besar sama dengan 1, dan nilai awal berkurang 1 point sampai kode "selesai". Untuk lebih jelasnya, perhatikan contoh ilustrasi berikut:

Pada ilustrasi di atas saya membuat batas = 5 dan nilai awal = 5. Karena 5 lebih dari 1, maka dihasilkan output 5. Langkah selanjutnya karena ini decrement maka kurangi nilai awal dengan 1, lihat ilustrasi ke-2:

4 adalah hasil pengurangan nilai awal 5 dengan 1, karena 4 masih lebih besar dari 1, maka tuliskan 4 sebagai output dan begitu seterusnya sampai nilai awal kurang dari 1, seperti pada ilustrasi di bawah:

Program akan menuliskan "selesai" jika nilai awal kurang dari 1 seperti yang tertera dalam flowchart. Jadi, selain harus mengetahui jumlah perulangan, kode akan selesai jika sudah tidak memenuhi syarat flowchart. Lantas, bagaimana dengan increment? Pada prinsipnya sama, namun nilai akan bertambah sampai nilai batasnya.
Berikut adalah flowchart increment:

Konsep flowchart increment sama dengan decrement namun yang membedakan adalah set nilai awal sama dengan 1 dan nilai awal akan bertambah 1 point setiap kode sampai nilai batas. Perhatikan ilustrasi berikut:


