Sabtu, 19 November 2016

DO WHILE dan FOR dalam Bahasa C

DO WHILE dan FOR dalam Bahasa C digunakan untuk membuat perulangan proses dalam sebuah program. Perulangan proses atau yang lazim disebut dengan loop dibutuhkan untuk membuat penulisan kode program lebih efisien. Misalnya kita akan mengulang sebuah tampilan sebanyak seratus kali maka sangat tidak efisien jika harus menulis kode yang sama sebanyak seratus kali. Dengan menggunakan logika perulangan proses atau loop cukup beberapa baris kode program saja.

Pada bahasa C dikenal tiga buah perulangan proses yaitu WHILE, DO WHILE dan FOR. Kemudian untuk keluar dari perulangan proses digunakan beberapa pernyataan program seperti BREAK, GOTO dan CONTINUE. Berikut ini pembahasan mengenai masing-masing perulangan proses dalam bahasa C tersebut.

1. Perulangan DO...WHILE

Pada perulangan menggunakan DO WHILE, statemen program akan dijalankan secara berulang selama kondisi syarat pada WHILE masih terpenuhi atau bernilai benar. Perulangan akan berhenti jika kondisi syarat pada WHILE bernilai salah. Pada perulangan DO WHILE, statemen program akan dijalankan setidaknya sekali sebelum mengecek kondisi syarat pada WHILE.

Cara Penulisan DO...WHILE Dalam Bahasa C

do {
  kode yang akan dijalankan jika kondisi bernilai benar;
} while (kondisi);

Contoh Penggunaan DO...WHILE Dalam Bahasa C

 #include <stdio.h>     
      
 int main ()     
 {     
  int angka = 0;  
  do {  
     printf("%d\n", angka);  
     angka ++;  
  } while(angka <= 10);    
    
  return 0;  
 }  

Penjelasan Program :

Pertama kali dilakukan deklarasi variabel angka sekaligus diberi nilai 0 melalui perintah angka = 0. Kemudian perintah printf untuk menampilkan nilai angka lalu diikuti dengan perintah increment angka (angka++).
Selanjutnya dicek kondisi syarat pada WHILE, apakah nilai angka lebih kecil atau sama dengan 10. Jika ya maka akan diulang proses diatas sampai kondisi pada WHILE tercapai.
Jika dijalankan program diatas akan menampilkan angka 0 sampai 10 secara vertikal, karena ada karakter \n yang berarti ganti baris baru.

2. Perulangan WHILE

Pada perulangan menggunakan WHILE, statemen program juga akan dijalankan secara berulang selama kondisi syarat pada WHILE masih bernilai benar. Perulangan akan berhenti jika syarat pada WHILE bernilai salah. 

Cara Penulisan WHILE Dalam Bahasa C

while (kondisi) {
  kode yang akan dijalankan jika kondisi bernilai benar;
};

Contoh Penggunaan WHILE Dalam Bahasa C

 #include <stdio.h>     
      
 int main ()     
 {     
  int angka = 0;  
  while(angka<=10) {  
     printf("%d\n", angka);  
     angka ++;  
  };    
    
  return 0;  
 }  

Penjelasan Program :

Pertama kali dilakukan inisialisasi variabel angka sekaligus diberi nilai 0 (angka = 0). Kemudian dilakukan pengecekan terhadap nilai angka apakah lebih kecil atau sama dengan 10. Jika benar maka dijalankan perintah printf untuk menampilkan nilai angka lalu diikuti dengan perintah increment angka (angka++).
Selanjutnya dilakukan pengecekan kembali kondisi syarat pada while, apakah nilai angka masih lebih kecil atau sama dengan 10. Jika ya maka akan diulang proses diatas sampai kondisi pada while tercapai.
Jika dijalankan program diatas akan menampilkan angka 0 sampai 10 secara vertikal, karena ada karakter \n yang berarti ganti baris baru.

Perbedaan DO WHILE Dan WHILE Dalam Bahasa C

Perulangan WHILE memiliki cara kerja yang mirip dengan DO WHILE, bedanya jika pada perulangan DO WHILE pengecekan kondisi dilakukan dibelakang maka pada WHILE pengecekan kondisi syarat dilakukan didepan. 

Pada perulangan menggunakan DO WHILE, pernyataan atau statemen program setidaknya akan dijalankan selama satu kali sedangkan jika menggunakan WHILE, pernyataan atau statemen program bisa saja tidak dijalankan jika saat pengecekan kondisi sudah bernilai salah. untuk lebih jelas bisa dilihat pada program berikut ini.
 #include <stdio.h>     
      
 int main ()     
 {     
  int angka = 11;  
  do {  
     printf("%d\n", angka);  
     angka ++;  
  } while(angka <= 10);    
    
  return 0;  
 }  
Jika program diatas dijalankan pada layar akan tampil angka 11 meskipun kondisi pada WHILE tidak terpenuhi ( angka 11 lebih besar dasi 10). Hal ini terjadi karena statemen program didalam DO tetap dikerjakan setidaknya satu kali meskipun kondisi syarat pada WHILE bernilai salah. Ini disebabkan oleh sistem kerja perulangan DO WHILE yang menerapkan pengecekan kondisi dilakukan dibelakang.

3. Perulangan FOR

Perulangan FOR memiliki konsep perulangan yang khusus jika dibanding dengan WHILE dan DO WHILE. Pada perulangan FOR, inisialisasi variabel, syarat dan operasi bilangan ditulis dalam satu kelompok dan terpisah dari statemen program yang akan dijalankan.

Statemen program akan dijalankan berulang selama kondisi syarat masih terpenuhi atau bernilai benar. Perulangan FOR dilakukan untuk meringkas penulisan perulangan menggunakan WHILE bilamana telah diketahui atau ditentukan jumlah perulangannnya.

Cara Penulisan FOR Dalam Bahasa C

for (nilai awal; tes kondisi nilai; operasi perubahan nilai)
{
  kode yang akan dijalankan jika kondisi bernilai benar;
}
Keterangan parameter pada FOR:
  • nilai awal, adalah inisialisasi nilai awal yang diberikan saat FOR pertama kali dijalankan.
  • tes kondisi nilai, adalah proses pengecekan nilai selama loop berlangsung. Jika bernilai benar maka proses loop diteruskan dan jika bernilai salah maka loop berhenti.
  • operasi perubahan nilai: adalah operasi yang mengubah nilai selama proses loop yang membuat nilai mencapai kondisi nilai tes.
  • Jika salah menetapkan operasi perubahan nilai dan sampai berakibat pada tidak tercapainya kondisi syarat berhentinya loop maka loop akan dikerjakan secara terus menerus tanpa pernah berhenti.

Contoh Penggunaan FOR Dalam Bahasa C

 #include <stdio.h>  
   
 int main() {  
  int angka;  
   
  for (angka = 0; angka <= 10; angka++) {  
     printf("%d\n", angka);   
  }  
   
  return 0;  
 }  

Penjelasan Program:

Pada program tampak perulangan FOR mengacu pada perubahan nilai variabel angka. Inisialisasi nilai awal untuk variabel angka sebesar 0 lalu tes kondisi perulangan jika angka kurang dari atau sama dengan 10 dengan operasi perubahan nilai berupa increnet angka dengan perintah angka++. Dengan demikian jika program dijalankan akan tampil angka 1 sampai 10.

Selasa, 08 November 2016

Percabangan Bahasa C

Pernyataan percabangan pada pemrograman digunakan untuk memecahkan persoalan untuk mengambil suatu keputusan diantara sekian pernyataan yang ada,  dimana sebuah instruksi (pernyataan) akan  dilaksanakan jika sebuah kondisi/persyaratan terpenuhi.
1.1 Pernyataan if
Pernyataan if mempunyai pengertian” jika kondisi bernilai benar, maka (pernyataan) perintah akan dikerjakan dan jika tidak memenuhi syarat maka program akan diabaikan”.

Dari pengertian tersebut diatas maka dapat dilihat diagram alir seperti pada gambar 1. Diagram Alir if.
Bentuk umum dari pernyataan if :
if  (kondisi) Pernyataan;

Penulisan  kondisi  harus  di  dalam  kurung  (……)  dan  berupa  ekspresi  relasi  dan pernyataan tersebut dapat berupa sebuah pernyataan tunggal, pernyataan majemuk atau
pernyataan  kosong,  jika  pemakaian  if  diikuti  dengan  pernyataan  majemuk,  bentuk penulisannya sebagai berikut:
Bentuk umum dari pernyataan majemuk di dalam if
:
if  (kondisi)
{
Pernyataan;
…………...
}

1.2 Pernyataan if - else

Pernyataan if mempunyai pengertian “ jika kondisi bernilai benar, maka pernyataan-1 akan dikerjakan dan jika tidak memenuhi syarat maka akan mengerjakan pernyataan-2”. Dari pengertian tersebut dapat dilihat di diagram alir pada gambar 2. diagram alir if else.

Bentuk Umum dari pernyataan if-else:
if  (kondisi)
Pernyataan-1;
else
Pernyataan-2;

Pada  Gambar  2  diagram  alir  if  else  pernyataan-1  dan  pernyataan-2  dapat berupa sebuah pernyataan tunggal, pernyataan majemuk atau pernyataan kosong. Jika if-else diikuti dengan pernyataan majemuk, bentuk penulisannya terdapat pada halaman 3.

Bentuk Umum dari pernyataan majemuk if-else:
if  (kondisi)
{
Pernyataan-1;
}
else
{
Pernyataan-2;
}

1.3 Pernyataan NESTED IF
Nested if merupakan pernyataan yang berada di dalam pernyataan yang lain. Bentuk penulisan nested if adalah:

Bentuk Umum dari pernyataan NESTED IF:
 if  (syarat)
if  (syarat)
… pernyataan
Else
      … pernyataan;
else
if  (syarat)
… pernyataan;
else
… pernyataan;
           
1.4 Pernyataan IF – ELSE Majemuk
Bentuk dari if-else bertingkat sebenarnya mirip dengan nested if. Keuntungan penggunaan if-else bertingkat dibanding dengan nested if adalah bentuk penulisan yang lebih sederhana.

\bentuk penulisannya:
if  (syarat)
{
… pernyataan;
… pernyataan;
}
else if (syarat)
{
… pernyataan;
… pernyataan;
}
else
{
… pernyataan;
… pernyataan

1.5 Pernyataan Switch – Case

Bentuk switch – case merupakan pernyataan yang dirancang khusus untuk menanggani pengambilan  keputusan  yang  melibatkan  sejumlah  atau  banyak  alternative. Pernyataan switch – case ini memiliki kegunaan yang sama seperti if – else bertingkat, tetapi untuk memeriksa data yang bertipe karakter atau integer. Setiap cabang akan dijalankan jika syarat nilai konstanta terpenuhi dan defaultakan dijalankan jika semua cabang diatasnya tidak terpenuhi. Pernyataan break menunjukkan siap keluar dari switch. jika pernyataan ini tidak ada, maka program akan diteruskan ke cabang-cabang yang lainnya.

Selasa, 01 November 2016

Operator Pada Bahasa C

Operator adalah simbol atau karakter yang digunakan oleh program untuk melakukan sebuah operasi dalam sebuah proses program seperti operasi bilangan dan operasi string. Bahasa C mengenal penggunaan beberapa operator dengan fungsi yang berbeda-beda. Setiap operator pada bahasa C memiliki kedudukan atau hirarki saat penanganan program. Operator dengan hirarki / kedudukan lebih tinggi akan dikerjakan lebih dahulu dibandingkan operator dengan hirarki lebih rendah. Pada pemrograman bahasa C ada 6 jenis operator yaitu operator arithmeticrelationallogicalbitwiseassignmentmisc. Untuk mengetahui lebih jauh keenam jenis operator tersebut silahkan sobat simak ulasan berikut...

Operator Pada Bahasa C
 

1. Operator Arithmetic

Operator Arithmetic (aritmatika) adalah operator yang digunakan untuk operasi bilangan seperti penjumlahan, pengurangan, perkalian, pembagian, modulus, increment dan decrement. Operator aritmatika bisa digunakan pada semua tipe bilangan seperti tipe charintlong int dan tipe bilangan float. Operator aritmatika juga bisa menangani tipe signed dan unsignedIncrementadalah operasi bilangan dimana bilangan hasil merupakan bilangan asal ditambah satu, sedangkan decrement adalah operasi bilangan dimana bilangan hasil merupakan bilangan asal dikurang satu.
Tabel 1. Operator Arithmetic
OperatorNamaContoh
+Penjumlahanx + y
-Penguranganx - y
*Perkalianx * y
/Pembagianx / y
%Modulusx % y
++Incrementx++
--Decrementx--

2. Operator Relation

Operator Relation adalah operator yang digunakan untuk membandingkan nilai dua buah variabel. Nilai yang dibandingkan bisa berupa angka maupun string. Hasil dari perbandingan tersebut bisa berupa nilai boolean, yaitu true (benar) atau false (salah).
Table 2. Operator Relation
OperatorNamaContoh
==Sama dengana == b
!=Tidak sama dengana != b
>Lebih besara > b
<Lebih kecila < b
>=Lebih besar atau sama dengana >= b
<=Lebih kecil atau sama dengana <= b

3. Operator Logical

Operator Logical adalah operator yang digunakan untuk menangani tipe data boolean. Nilai data boolean bisa berupa kondisi benar (true) atau salah (false) dan juga bisa bernilai 1 atau 0.
Tabel 3. Operator Logical
OperatorNamaContoh
&&Anda && b
||Ora || b
!Not!a

4. Operator Bitwise

Operator Bitwise adalah operator yang menangani operasi bilangan biner seperti andornot dan sebagainya. Operator bitwise ini akan menangani data sesuai dengan tipenya. Misalnya sebuah data bertipe char atau byte maka bilangan yang dihasilkan adalah sebesar 8 bit.
Tabel 4. Operator Bitwise
OperatorNamaContohDalam biner (4bit)Hasil BinerHasil Desimal
&AND5 & 10101 & 000100011
|OR5 | 10101 | 000101015
~NOT~5~0101101010
^XOR5 ^ 10101 ^ 000101004
<<Left shift5 << 10101 << 0001101010
>>Right shift5 >> 10101 >> 000100102

5. Operator Assignment

Operator Assignment adalah operator yang digunakan untuk memberi nilai pada sebuah variabel. Operator assignment yang paling dasar adalah sama dengan ( = ). Dari operator ini dapat dikembangkan beberapa operator assignment lain seperti +=-= dan sebagainya.
Tabel 5. Operator Assignment
OperatorAssignmentSama dengan
=x = yx = y
+=x += yx = x + y
-=x -= yx = x - y
*=x *= yx = x * y
/=x /= yx = x / y
%=x %= yx = x % y
<<=x <<= yx = x << y
>>=x >>=x = x >> y
&=x &=x = x & y
|=x |= yx = x | y
^=x ^= yx = x ^ y

6. Operator Misc

Operator Misc adalah operator tambahan yang sering dipakai terutama pada pemrograman array misalnya operator sizeof dan pointer ( * ).
Tabel 6. Operator Misc
OperatorKeteranganContoh
sizeof()Menghasilkan ukuran (size) dari variabelsizeof(a)
&Mengembalikan alamat (address) dari variabel&a
*Pointer ke sebuah variabel*a
?:Operator kondisib = (a == 1)?20:30;