Saturday, April 19, 2014

Perintah perulangan dalam bahasa C#

Perintah perulangan / loop statement adalah perintah untuk mengulang satu atau lebih statement sebanyak beberapa kali. Loop statement digunakan agar kita tidak perlu menuliskan satu atau sekumpulan statement berulang - ulang. Dengan demikian tingkat kesalahan pengetikan dapat dikurangi.

Perintah for()
Berikut ini adalah cara penulisan (syntax) dari perintah for :

for (inisialisasi nilai awal; syarat perulangan; perubagan nilai)
{
        Statement / perintah yang akan di ulang ...
}

Inisialisasi nilai adalah tempat dimana kita akan memberikan nilai awal pada variabel counter (variabel yang digunakan untuk menghitung jumlah perulangan). Syarat perulangan adalah syarat yang harus dipenuhi agar perulangan tetap dilakukan. Perulangan nilai adalah perulangan yang akan dilakukan pada tiap putaran untuk menjamin bahwa perulangan tersebut tidak akan berlangsung terus menerus.

Perintah for biasa dilakukan untuk melakukan perulangan sebanyak jumlah yang di ketahui.
Contoh Saya ingin mengulang kata "UNIVERSITAS KUNINGAN" sebanyak sepuluh kali.
Berikut adalah programnya :



using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ProgramPerulangan
{
    class Program
    {
        static void Main(string[] args)
        {
            for (int i = 1; i <= 10; i++)
            {
                Console.WriteLine("{0}. UNIVERSITAS KUNINGAN", i);
            }
        }
    }
}

Perintah While()
Berikut ini adalah cara penulisan (Syntax) dari perintah while() :

while (syarat perulangan)
{
        Statement / perintah ......
}

Berbeda dengan for(), while() tidak memiliki inisialisasi. Karena itu, inisialisasi harus di berikan sebelum perintah while. Statement yang melakukan perubahan nilai juga perlu diberikan di dalam perintah - perintah yang akan di ulang. Hal ini perlu dilakukan untuk menjamin bahwa perintah while() tidak akan melakukan perulangan terus menerus.

While() biasa digunakan untuk mengulang satu / beberapa perintah hingga syarat yang di tentukan terpenuhi. Kita tidak tahu perintah tersebut akan di ulang berapa kali, namun kita tahu bahwa perintah tersebut akan dilakukan selama syarat yang di tentukan tidak terpenuhi.

Contoh, Saya ingin memaksa user memberikan sebuah bilangan negatif, maka programnya adalah seperti berikut :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ProgramPerulangan
{
    class Program
    {
        /// 
        /// Meminta input bilangan negatif
        /// 
        /// Menampilkan inputan
        static void Main(string[] args)
        {
            string input;
            int angka;
            
            input = Console.ReadLine();
            int.TryParse(input, out angka);
            
            while (angka >= 0)
            {
                input = Console.ReadLine();
                int.TryParse(input, out angka);
            }
        }
    }
}

Perintah do while()
Berikut ini adalah cara penulisan (Syntax) do while() :

do
{
          Statement / perintah ...
}

Pada prinsipnya perintah do while() sama denga while(). Perintah do while akan mengulang statement miliknya selama syarat perulangan terpenuhi. Hanya saja perintah do while() menjalankan statementnya terlebih dahulu. Setelah itu, ia memeriksa apakah syarat perulangan masih terpenuhi atau tidak. Sedangkan perintah while() memeriksa syarat perulangan terlebih dahulu. Oleh karena itu, perintah do while() akan menjalankan statement miliknya minimal sebanyak 1 kali, meskipun syarat pengulanan tidak terpenuhi.
Berikut ini adalah contoh program yang menggunakan perintah do while() :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ProgramPerulangan
{
    class Program
    {
        static void Main(string[] args)
        {
            int number;
            string input;

            input = Console.ReadLine();
            int.TryParse(input, out number);

            do
            {
                Console.WriteLine("{0}", number);
                number--;
            } while (number > 0);
        }
    }
}
Jika input yang dimasukan ke dalam variabel number bernilai 5, semua statement di dalam do while() akan di ulang sebanyak lima kali, yaitu ketika number bernilai 5, 4, 3, 2, dan 1. Namun jika input yang diberikan adalah -1, statement di dalam do while() akan di jalankan terlebih dahulu. Oleh karena itu, komputer akan menampilkan nilai number yaitu -1, lalu mengurangi number dengan 1 menjadi -2. Setelah itu, do while() akan memeriksa apakah syarat yang di berikan bernilai True atau False. Karena -2 lebih kecil dari 0, maka syarat perulangan do while() bernilai False, sehingga perintah do while() berhenti melakukan perulangan. Dengan demikian, komputer tetap melakukan statement do while() 1 kali meskipun input awal yang di berikan (-1) menyebabkan syarat perulangan bernilai False.