STRUKTUR perulangan (1) Pemrograman 1 (C++) STMIK AsiA Malang
Perulangan Loop adalah pengulangan perintah-perintah sampai mencapai keadaan tertentu. C++ mempunyai 3 jenis loop yaitu for while do-while
Loop For for mempunyai bentuk umum : Keterangan : for (inisialisasi;syarat;penambahan) pernyataan; Keterangan : Inisialisasi adalah pernyataan untuk menyatakan keadaan awal dari variable kontrol. Syarat adalah ekspresi relasional yang menyatakan berhentinya suatu pengulangan. Penambahan menyatakan perubahan variable kontrol setiap terjadi perulangan.
OPERATOR PENAMBAHAN DAN PENGURANGAN C++ mempunyai dua operator khusus yaitu penambahan (++) dan pengurangan (--) . Contoh : x++ Artinya x=x+1 x-- Artinya x=x-1 Operator penambahan dan pengurangan dapat dituliskan di depan atau dibelakang, tetapi mempunyai arti yang berbeda.jadi dapat dituliskan : x++ atau ++x.
OPERATOR PENAMBAHAN DAN PENGURANGAN Jika Operator diletakkan di depan, C++ akan melakukan penambahan dan pengurangan sebelum memakai operator. Jika diletakkan dibelakang, C++ akan memakai nilai operator lalu menambah atau mengurangi variable. Perhatikan contoh berikut : x=10 y=++x Pada contoh ini, y bernilai 11 sebab x ditambah 1, lalu diisikan ke y. Bandingkan dengan : y=x++ y diisi 10, lalu ditambahkan 1. Pada kedua contoh tersebut x sama-sama bernilai 11, bedanya adalah kapan hal itu terjadi, sebelum diisikan ke y dan sesudah diisikan ke y.
Penambahan : i++, ditambah 1 Contoh Penambahan Buatlah program untuk menampilkan bilangan 1 sampai 5. #include <conio.h> #include <stdio.h> main() { int i; clrscr(); for(i=1;i<=5;i++) printf(" %d \n",i); } Program disamping : Inisialisasi : i=1 Syarat : i<=5 Penambahan : i++, ditambah 1
Contoh Pengurangan Buatlah program untuk menampilkan bilangan 5 sampai 1. #include <conio.h> #include <stdio.h> main() { int i; clrscr(); for(i=5;i>=1;i--) printf(" %d \n",i); }
Variable kontrolnya dapat diubah dengan 5 Buatlah program untuk menampilkan 5 bilangan cacah yang pertama yang habis dibagi 5. Penyelesaian: #include <conio.h> #include <stdio.h> main() { int i; clrscr(); for(i=0;i<=20;i=i+5) printf(" %d \n",i); }
PENJUMLAHAN BILANGAN Dengan for kita bisa membuat program untuk menghitung jumlah bilangan dari bilangan tertentu sampai bilangan tertentu. Penjumlahan dimulai dari bilangan yang dinyatakan dengan variable awal sampai dengan akhir. Misalnya awal=1 dan akhir=5. Yang diinginkan adalah 1+2+3+4+5=15.
Contoh Buatlah program untuk menjumlahkan angka 1 sampai 15. #include <conio.h> #include <stdio.h> main() { int i,awal,akhir,jumlah; clrscr(); awal=1; akhir=5; jumlah=0; for(i=awal;i<=akhir;i++) jumlah=jumlah+i; printf(" awal = %d akhir = %d Jumlah = %d ",awal,akhir,jumlah); }
Nilai awal dan akhir bisa diinputkan #include <conio.h> #include <stdio.h> main() { int i,awal,akhir,jumlah; clrscr(); printf("Masukkan nilai awal ="); scanf("%d",&awal); printf("Masukkan nilai akhir="); scanf("%d",&akhir); jumlah=0; for(i=awal;i<=akhir;i++) jumlah=jumlah+i; printf(" awal = %d akhir = %d Jumlah = %d ",awal,akhir,jumlah); }
Membuat Tabel Buatlah program untuk menampilkan bilangan 1 sampai 10 beserta kuadrat dan akarnya dalam bentuk tabel ! #include <conio.h> #include <stdio.h> #include <math.h> main() { int bil,kuad; float akar; char garis[38]="_____________________________________"; clrscr(); printf("%s\n",garis); printf(" Bilangan Kuadrat Akar Kuadrat \n"); for(bil=1;bil<=10;bil++) kuad=bil*bil; akar=sqrt(bil); printf(" %2d %3d %6.2f\n",bil,kuad,akar); }
VARIASI LOOP FOR Kita dapat memakai beberapa variable kontrol didalam loop for. Contoh #include <conio.h> #include <stdio.h> main() { int x,y; clrscr(); for(x=0,y=0;x+y<6;x++,y++) printf("%2d %2d %2d \n",x,y,x+y); } Output program tersebut : 0 0 0 1 1 2 2 2 4
MENGHILANGKAN SEBUAH BAGIAN LOOP Variasi lain adalah dengan menghilangkan salah satu bagian dari loop. Contoh Buatlah program yang jika ditekan huruf z maka program akan berhenti. #include <conio.h> #include <stdio.h> main() { char ch; clrscr(); printf(" Ketik z untuk berhenti \n"); for(ch=' ';ch!='z';) ch=getche(); } Program di atas, jika kita diminta mengetikkan karakter-karakter dan program akan berhenti jika kita ketikan ‘z’
LOOP TAK HINGGA Loop tak hingga dibuat dengan menghilangkan bagian syaratnya. Contoh : #include <conio.h> #include <stdio.h> main() { char ch; clrscr(); printf(" Ketik karakter karakter: \n"); for(ch=' ';;) ch=getche(); }
MENGHENTIKAN LOOP Untuk menghentikan suatu loop mengunakkan perintah break. Contoh #include <conio.h> #include <stdio.h> main() { char ch; clrscr(); printf(" Ketik z untuk berhenti \n"); for(ch=' ';;) ch=getche(); if (ch=='z') break; }
Loop Bersarang Sebuah perulangan bisa berada dalam perulangan yang lain Hal ini dinamakan sebagai nested loop Untuk for bersarang bentuk umumnya : for (inisialisasi;syarat;penambahan) pernyataan;
LOOP BERSARANG Untuk membuat program dengan keluaran seperti : **** Jika kita membuat struktur seperti berikut : for(j=1;j<=4;j++) printf(“*”); maka akan menghasilkan Jika kita ingin mencetak tiga baris, struktur tersebut harus diulang sebanyak 3 kali. Struktur tersebut harus diletakkan di dalam for yang lain : for(i=1;i<=3;i++)
Hasil dari struktur tersebut tidak sesuai dengan yang kita harapkan sebab semua “*” tercetak dalam satu baris. ************ Untuk membuat tampilan menjadi 3 baris, kita harus menambahkan \n pada perulangan pertama, karena itu perulangan pertama memiliki pernyataan majemuk yang harus ditulis dalam sebuah blok {}.
Contoh #include <conio.h> #include <stdio.h> main() { char i,j; clrscr(); for(i=1;i<=3;i++) for (j=1;j<=4;j++) printf("*"); printf("\n"); }