Blogger news

News Update :
Home » , » Memahami Looping atau Perulangan Dalam C/C++

Memahami Looping atau Perulangan Dalam C/C++


 Looping atau Perulangan Dalam C/C++
Dalam kesempatan kali ini saya ingin mencoba untuk menerangkan Fungsi Looping dan Perulangan pada Bahasa C/C++, saya harap dengan artikel ini, kalian yang membacanya dapat lebih memahami walau hanya sedikit. Hhehehe
Berikut Penjelasannya tentang Fungsi Looping dengan for()while(), dan do while()

Memahami Looping

Buatlah sebuah program yang akan menghasilkan keluaran sebagai berikut,

1    1    1    1    1
2    2    2    2    2
3    3    3    3    3
4    4    4    4    4
5    5    5    5    5

Penyelesaian

Sebelum memulai pembuatan programnya, ada beberapa hal yang harus kita cari tahu
  1. Berapa buah variable yang dibutuhkan
  2. Berapa banyak fungsi For yang dibutuhkan
Dari soal tersebut kita dapat memperkirakan berapa banyak fungsi for yang kita perlukan, dan berapa banyakvariable yang digunakan.
Perhatikan ini,
1    1    1    1    1
2    2    2    2    2
3    3    3    3    3
4    4    4    4    4
5    5    5    5    5
Disana hanya terjadi perulangan pencetakan angka 1, 2, …, 5 dan setiap angka bertambah setiap kali program telah mencetak sebanyak 5 kali yang disertai dengan perintah ganti baris “\n”. Jadi dapat kita bayangkan bahwa variable yang kita butuh kan adalah 2 (variable pertama akan digunakan untuk menghitung berapa baris computer sudah mencetak dan variable kedua akan menghitung sudah berapa kali computer mengulang).
Mari kita mulai membuat programnya,
Pertama-tama kita buat terlebih dahulu kerangka programnya
include<stdio.h>
void main()
{
}
Kemudian kita buat isi dari program kita tersebut, langkah yang pertama adalah mendeklarasikan variable nya, kita perlu mengetahui jenis data yang kita perlukan dan disini kita akan membuat sebuah variable untuk menyimpan data berupa numeric atau angka. Sehingga tipe data yang kita perlukan ialah integer atau intpada C/C++. Kita buat variablenya dengan menambahkan code berikut.
int i;
dan secara keseluruhan code yang telah kita buat akan nampak seperti ini
include<stdio.h>
void main()
{
int i, n;
}
Perhatikan ini,
int i, n;
int disana merupakan tipe variable nya, masih banyak tipe-tipe variable lainnya seperti :
  1. char (digunakan untuk menyimpan data berupa character atau huruf)
  2. float (digunakan untuk menyimpan data berupa numeric atau angka namun dapat berupa bilangandecimal, tidak sepertin integer yang hanya mampu menyimpan bilangan bulat)
  3. Dan tentu masih banyak lagi yang lainnya yang saya tidak jelaskan satu persatu kegunaanya dalam artikel saya kali ini)
Kedua tipe data tersebut belum kita butuhkan dalam program kita kali ini.
Mari sekarang kita masuk kedalam pembuatan looping atau perulangannya, fungsi perulangan ada 3 macam, while()do while() dan for(), setiap fungsi-fungsi tersebut memiliki kegunaan yang sama, yaitu membuat sebuah perulangan. Namun kedua fungsi tersebut akan memiliki tingkat efisiensi dan kompetibelitas yang saling berbeda. Ada beberapa kasus yang tidak memungkinkan kita menggunakan for()(saat dimana kita tidak tahu batas perulangannya sampai berapa, sebagai contoh saat kita ingin menghitung sebuah penjumlahan dan akan menghentikannya saat dimana kedua buah bilangan tersebut memiliki nilai yang sama besar) tapi mengharuskan kita menggunakan while() atau do while(). Dan ada pula beberapa kasus yang memungkinkan kita menggunakan salah satu dari kedua jenis perulangan tersebut, tapi kita sebagai programmer nya tentu akan menggunakan sebuah fungsi yang jauh lebih effiesien dalam penggunaannya, contohnya for().
Berikut ini adalah cara penulisan atau syntax dari perintah-perintah tersebut.

Perintah for()

for(inisialisasi nilai; syarat perulangan; perubahan nilai)
{
… perintah-perintah yang akan diulang
}
  • Inisialisasi nilai adalah tempat dimana kita akan memberikan nilai awal pada variable counter (variableyang digunakan untuk menghitung jumlah perulangan)
  • Syarat perulangan adalah syarat yang harus dipenuhi agar perulangan tetap dilakukan
  • Perubahan nilai adalah perubahan yang akan dilakukan pada setiap putaran untuk menjamin bahwa perulangan tersebut tidak akan berlangsung secara terus menerus.

Perintah while()

while(syarat perulangan)
{
… perintah-perintah yang akan diulang
}
Berbeda dengan for()while() tidak memiliki inisialisasi nilai. Oleh karena itu, inisialisasi harus diberikan sebelum perintah while()Statement yang melakukan perubahan nilai juga harus diberikan di dalam perintah-perintah yang akan diulang. Hal ini perlu dilakukan untuk menjamin bahwa perintah while() tidak akan melakukan perulangan terus menerus.
Berikut cara membuat perulangan dengan while() dengan benar
inisialisasi nilai;
while(syarat perulangan)
{
… perintah-perintah yang akan diulang
perubahan nilai;
}
Dan ini apabila kita telah memasukkan code didalamnya,
int i;
i = 1;
while(i <= 10)
{
... perintah-perintah yang akan diulang
i++;
}
Dari code diatas, maka perulangan tersebut akan terjadi sebanyak 10 kali.

Perintah do while()

do
{
… perintah-perintah yang akan diulang
} while(syarat perulangan);
Pada prinsipnya perintah do while() sama dengan while(). Perintah do while() akan mengulang statement-nya terlebih dahulu. Setelah itu ia akan 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 pengulangan tidak terpenuhi.
Berikut cara membuat perulangan dengan do while() dengan benar
inisialisasi nilai;
do
{
… perintah-perintah yang akan diulang
perubahan nilai;
} while(syarat perulangan)
Perhatikan tanda
i++
Tanda ++ berfungsi untuk menambahkan nilai awal sebuah variable dengan satu, jadi apabila nilai ‘a adalah 1’ setelah computer menjalankan perintah ‘a++’ maka nilai ‘a menjadi 2’. Adapula fungsi serupa lainnya, misalnya ‘a–‘, ‘++a’ dan ‘–a’.
Saya harap penjelasannya telah cukup dan kalian telah dapat memahami fungsi-fungsi perulangan pada C/C++ dengan baik.
Sekarang kita kembali ke topic untuk menyelesaikan permasalahan diatas, dari soal tersebut kita telah mengetahui bahwa kita akan memerlukan 2 buah fungsi perulangan for() ataupun while() (perulangan pertama untuk mengganti baris sebanyak 5 kali dan perulangan kedua untuk mencetak nomor baris sebanyak 5 kali) dengan kata lain kita akan membuat sebuah nested for(). Karena menurut saya dalam masalah ini lebih mudah menjelaskan perulangan dengan menggunakan perintah for() jadi kita akan tabahkan code berikut dalam program kita,
for(i = 1;i <= 5; i++)
{
for(n = 1;n <= 5;n++)
{
printf("%i", i);
}
printf("\n");
}
Dan code yang telah kita buat akan nampak seperti ini,
include<stdio.h>
void main()
{
int i, n;
for(i = 1;i <= 5; i++)
{
for(n = 1;n <= 5;n++)
{
printf("%i", i);
}
printf("\n");
}
}
Perhatikan potongan code berikut,
for(i = 1;i <= 5; i++)
{
for(n = 1;n <= 5;n++)
{
printf("%i", i);
}
printf("\n");
}
Code itu akan dijalankan sebanyak 5 kali untuk mencetak nilai dari i, jadi apabila dijalankan akan menhasilkan ini
1    1    1    1    1
Dan kemudian perulangan tersebut berakhir, lalu akan menjalankan perintah ‘printf(“\n“)’ yang digunakan untuk mengganti baris. Karena nilai i saat ini adalah 2 (bertambah 1 setelah fungsi i++ dijalankan secara otomatis) maka perulangan akan kembali terjadi, kini computer akan mencetak nilai dari i yaitu 2, hasilnya menjadi seperti ini,
1    1    1    1    1
2    2    2    2    2
Dan begitulah seterusnya sampai akhirnya program selesai dijalankan, dan yang tercetak adalah,
1    1    1    1    1
2    2    2    2    2
3    3    3    3    3
4    4    4    4    4
5    5    5    5    5
Setelah semua code kita buat dan kerjakan, maka secara keseluruhan program kita akan nampak sebagai berikut,
include<stdio.h>
void main()
{
int i, n;
for(i = 1;i <= 5; i++)
{
for(n = 1;n <= 5;n++)
{
printf("%i", i);
}
printf("\n");
}
}
Berikutnya kita akan membahas beberapa soal yang lebih sulit dari ini,

Buatlah sebuah program yang akan menghasilkan keluaran sebagai berikut,
1
2    2
3    3    3
4    4    4    4
5    5    5    5    5
Di sana dapat kita lihat bahwa program akan mencetak sebanyak nomor baris nya, pada baris pertama akan tercetak sebanyak 1 kali, pada baris kedua akan tercetak sebanyak 2 kali, dan begitupun seterusnya.
Kita dapat menggunakan program kita yang lama, yang telah kita kerjakan dengan sedikit modifikasi dan perbaikan di dalamnya agar sesuai dengan kebutuhan kita.
include<stdio.h>
void main()
{
int i, n;
for(i = 1;i <= 5; i++)
{
for(n = 1;n <= 5;n++)
{
printf("%i", i);
}
printf("\n");
}
}
Dengan mudah permasalahan tersebut dapat kita atasi, kita hanya perlu mengganti banyaknya angka yang akan kita cetak dengan nilai dari dimana variable tersebut berisikan baris yang sedang dikerjakan.
Sehingga program yang telah kita modifikasi akan nampak seperti ini
include<stdio.h>
void main()
{
int i, n;
for(i = 1;i <= 5; i++)
{
for(n = 1;n <= i;n++)
{
printf("%i", i);
}
printf("\n");
}
}
Selesai
Sekarang ada soal berikutnya, soal tersebut seperti ini.
Buatlah sebuah program yang akan menghasilkan keluaran sebagai berikut,
1.   1
2.   2    2
3.   3    3    3
4.   4    4    4    4
5.   5    5    5    5    5
Bagaimana cara mencetak nomor beserta tanda ‘titik’nya kedalam sebuah perulangan yang sedang berjalan?
Caranya mudah, hanya membutuhkan sebuah ketelitian dan trik saja, kita hanya harus mencetak nomor halaman disertakan ‘titik’nya sebelum perintah perulangan untuk mencetak angka sebanyak nomor barisnya dilakukan. Jadi program kita akan tampak seperti ini,
include<stdio.h>
void main()
{
int i, n;
for(i = 1;i <= 5; i++)
{
printf("%i.”, i); perhatikan ada tanda ‘titik’ setelah huruf i
for(n = 1;n <= i;n++)
{
printf("%i", i);
}
printf("\n");
}
}
Selesai lagi
Saya harap sampai sejauh ini kalian telah memahami bagaimana cara memanipulasi sebuah perintah perulangan untuk mendapatkan hasil yang diinginkan.
Ini adalah penjelasan terakhir tentang cara mengerjakannya, selanjutnya saya hanya akan memberikan sebuah contoh hasil tercetak dan code untuk membuatnya.
Saya akan meminta anda untuk membuat program yang akan menghasilkan cetakan sebagaimana berikut,
1    2    3    4    5
6    7    8    9    10
11   12   13   14   15
16   17   18   19   20
21   22   23   24   25
Disana dapat kita lihat bahwa program akan mencetak sebanyak 5 baris dan 5 kolom dimana setiap cetakannya akan membuat nilai yang selalu bertambah, 1, 2, 3, 4, … , 25.
Singkatnya setelah kita analisa, program tersebut akan membutuhkan,
  1. 3 Buah variable
    1. Variable pertama untuk menghitung barisnya
    2. Variable kedua untuk menghitung cetakan ke berapa (1, 2, 3, 4, … , 25)
    3. Variable ketiga untuk menghitung jumlah kolom nya
  2. 2 Buah perulangan
    1. Perulangan pertama untuk mencetak baris
    2. Perulangan kedua untuk mencetak kolom
Dari penjelasan-penjelasan yang saya berikan, saya harap teman-teman telah dapat membuat programnya sendiri, lengkapnya program akhir kita akan tampak seperti ini,
include<stdio.h>
void main()
{
int i, n, j;
j = 1;
for(i = 1;i <= 5; i++)
{
for(n = 1;n <= 5;n++)
{
printf("%i", j);
j++;
}
printf("\n");
}
}
Sekian artikel ini saya buat, semoga dapat menambah pemahaman anda seputar Looping atau Perulangan.
Bila ada bagian yang masih kurang jelas dapat ditanyakan langsung kepada saya,
E-Mail : bendot.tue@gmail.com
Dengan segala hormat, bendot.tue :: Ferdinand Dimas
Lampiran berikutnya akan berisikan contoh hasil cetakan dan cara membuatnya
Hasil Tercetak dan Cara Membuatnya Dengan Bahasa C
    1. 1
    2. 2   3
    3. 4   5   6
    4. 7   8   9   10
    5. 11  12  13  14  15
include<stdio.h>
void main()
{
int i, n, j;
j = 1;
for(i = 1;i <= 5; i++)
{
printf("%i. ", i);
for(n = 1;n <= i;n++)
{
printf("%i", j);
j++;
}
printf("\n");
}
}
1    2    3    4    5
2    3    4    5
3    4    5
4    5
5
include<stdio.h>
void main()
{
int i, n;
for(i = 1;i <= 5; i++)
{
for(n = i;n <= 5;n++)
{
printf("%i", n);
}
printf("\n");
}
}
1
2   3
4   5   6
7   8   9   10
11  12  13  14  15
#include<stdio.h>
int main()
{
int spasi, panjang, nilai, tingkat;
nilai = 1;
for(tingkat=1;tingkat<=5;tingkat++)
{
for(spasi=5;spasi>=tingkat;spasi--)
{
printf("   ");
}
for(panjang=1;panjang<=tingkat;panjang++)
{
printf("%3i", nilai);
nilai++;
}
printf("\n");
}
}
1
2   2
3   3   3
4   4   4   4
5   5   5   5   5
#include<stdio.h>
void main()
{
int i, j, n;
n = 0;
for(i=1;i<=5;i++)
{
for(j=i;j<=5;j++)
{
printf("  ");
}
for(n=1;n<=i;n++)
{
printf("%3i ", i);
}
printf("\n");
}
}
Tentu masih begitu banyak pola-pola lainnya yang dapat dikembangkan. Semoga beberapa pola sederhana yang saya berikan dapat membantu anda dalam memahaminya, terima kasih sebelumnya telah membaca artikel sederhana saya ini.
Share this article :

Posting Komentar

Blogger templates

 
Company Info | Contact Us | Privacy policy | Term of use | Widget | Advertise with Us | Site map
Copyright © 2011. note . All Rights Reserved.
Design Template by panjz-online | Support by creating website | Powered by Blogger