Kuliah 2022/2023
MENHYA SNAE, M.KOM.|DOSEN
ALGORITMA & PEMROGAMAN
Perulangan atau Looping
Materi Tujuan
PROSES PERULANGAN (LOOPING)
 Menjelaskan proses perulangan menggunakan for.
 Menjelaskan proses perulangan menggunakan do-while.
 Menjelaskan proses perulangan menggunakan while.
 „
Menjelaskan loop di dalam loop (nested loop) dan contoh
kasusnya.
 „
Menjelaskan penggunaan pernyataan goto.
Pernyataan For
Bentuk umum dari for
For (inisialisasi; penghenti; penaikan)
{
Pernyataan;
}
For (inisialisasi; penghenti; penaikan)
{
Pernyataan1;
.
.
Pernyataan2;
}
For dengan pernyataan majemuk :
Pernyataan For
 Ungkapan1(inisialisasi): digunakan untuk memberikan
inisialisasi terhadap variabel pengendali loop.
 „Ungkapan2 (penghenti): dipakai sebagai kondisi untuk
keluar dari loop.
 „Ungkapan3 (penaikan/penurunan) : dipakai sebagai
pengatur kenaikan nilai variabel pengendaliloop.
Digunakan untuk membuat looping dengan jumlah perulangan yang
ditentukan di awal.
„
Contoh:
For ( ; ; )
{
Cout << i << endl;
}
i = 1; i <= n; i ++ F
O
R
Latihan FOR
#include <iostream>
#include <conio.h>
using namespace std;
int main ()
{
int i , n;
atas:
cout << " masukan bilangan bulat (n) : "; cin >> n;
for (i = 1; i <= n; i++)
{
cout << i << endl;
}
goto atas;
return 0;
}
Latihan FOR
#include <iostream>
#include <conio.h>
using namespace std;
int main ()
{
int i , n;
cout << " masukan bilangan bulat (n) : ";
cin >> n;
for (i = 1; i <= n; i++)
{
cout << i <<" Fiorentina " << endl;
}
return 0;
}
Latihan FOR
#include <iostream>
#include <conio.h>
using namespace std;
int main ()
{
int i , n;
cout << " masukan bilangan bulat (n) : ";
cin >> n;
for (i = n; i > 0; i--)
{
cout << i <<" Fiorentina " << endl;
}
return 0;
}
Perulangan adalah suatu bentuk pemrograman yang ringkas didalam menangani suatu
langkah yang berulang
Cth: cout << “C++” << endl;
Bagaimana bentuk perulangan dengan WHILE ?
Bentuk sederhana WHILE :
inisialisasi;
While (kondisi/penghenti)
{
Pernyataan;
Penaik;
}
Kondisi diuji terlebih dahulu; jika
kondisi bernilai benar maka bagian
pernyataan akan di eksekusi dan
kemudian kondisi di uji kembali
hingga kondisi bernilai salah
Perulangan WHILE
Kondisi
Pernyataan
Mulai
Selesai
Flowchart WHILE
Contoh WHILE
#include <iostream>
#include <conio.h>
using namespace std;
int main ()
{
int i , n;
cout << " masukan bilangan bulat (n) : "; cin >> n;
i=1;
while (i <= n)
{
cout << i <<" Fiorentina " << endl;
i++;
}
return 0;
}
While (kondisi)
{
Pernyataan _1
…
Pernyataan_n
}
Bentuk ini sering digunakan dalam program
Bentuk WHILE Majemuk
Contoh Program
#include <iostream>
using namespace std;
int main() {
int i, n;
cout << "Masukkan bilangan bulat (n): “; cin >> n;
i = 1;
while (i <= n) {
cout << i <<“ Fiorentina” << endl;
i++;
}
return 0;
}
i = 1;
while ( i <= n) {
cout << i << endl;
i++;
}
Biasanya melibatkan variabel pencacah (i) dan variabel lain (n)
Inisialisasi variabel pencacah
Kondisi penentu perulangan
Pernyataan untuk menampilkan
nilai yg diulang
Menaikan/menurun nilai
variabel pencacah
Variabel pencacah
Jika anda menginginkan tampilan yg terbalik :
i = n;
while ( i >0) {
cout << i << endl;
i--;
}
VARIABEL PENCACAH TIDAK HARUS BERUPA SATU
#include <iostream>
using namespace std;
int main() {
int i, n;
cout << "Masukkan bilangan bulat (n): "; cin >> n;
i = 1;
while (i <= n) {
cout << i << endl;
i = i + 2;
}
return 0;
}
1
3
5
7
9
11
i = 1;
while ( i <= n) {
cout << i << endl;
I = I + 2;
}
Selang kenaikan
Menampilkan bilangan 1 ke N yang habis dibagi
Pada kasus seperti ini maka harus dipikirkan dulu solusi yang tdk melibatkan
perkecualian; setelah itu tambahkan IF didalam WHILE.
int main() {
int i, n;
cout << "Masukkan bilangan bulat (n): ";
cin >> n;
i = 1;
while (i <= n) {
if (i % 5)
cout << i << endl;
i = i + 1;
}
return 0;
}
int main() {
int i, bil, n;
cout << "Masukkan bilangan bulat (n): ";
cin >> n;
i = 1;
bil = 0;
while (true) {
bil = bil + i;
if (bil > n)
break; // Keluar dari while
cout << bil << endl;
i = i + 1;
}
return 0;
}
Hal yang menarik pada latihan diatas adalah kondisi whie menggunakan konstanta boolean
bernama true, dilihat sekilas while dgn kondisi true akan menyebabkan perulangan yg tdk
berhenti,.
i = 1;
bil = 0;
while (true) {
bil = bil + i;
cout << bil << endl;
i = i + 1;
}
return 0;
}
Membuat perulangan selamanya; maka perlu
penanganan utk keluar dari perulangan
Mekanisme utk
keluar dari while if (bil > n)
break;
Pernyataan continue dalam while
Pernyataan continue digunakan utk mengarahkan eksekusi kebagian kodisi while; artinya
pernyataan tersebut akan membuat bagian kondisi diuji kembali.
While (kondisi) {
…
…
}
Bagian tersisa diabaikan
Continue;
int main() {
int bil;
bil = 7;
while (bil <= 30) {
cout << bil << endl;
if (bil == 10) {
bil = bil + 15;
continue;
}
bil++;
}
return 0;
}
Contoh:
Perhatikan pada hasil yg didapat tidak ada angka
11hingga 24; hal tersebut karena akibat adanya perintah
PERULANGAN DENGAN DO-WHILE
Bentuk umum pernyataan do-while adalah seperti berikut:
inisialisasi;
Do {
Pernyataan
penaik;
} while (kondisi/penghenti);
Berbeda dengan while, do-while menjalankan bagian pernyataan terlebih dahulu dan kemudian
menguji kondisi; sehingga paling tidak bagian pernyataan dari do-while akan dijalankan sekali.
Kondisi
Pernyataan
Mulai
Selesai
Flowchart DO-WHILE
Salah
Contoh DO-WHILE
int main ()
{
int i , n;
cout << " masukan bilangan bulat (n) : "; cin >> n;
i=0;
do
{
cout << i <<" Fiorentina " << endl;
i++;
}
while (i<=n);
return 0;
}
int main() {
int bil;
bool salah;
do {
cout << "Masukkan bilangan bulat: ";
cin >> bil;
salah = cin.fail();
if (salah)
cout << "Anda salah memasukkan bilangan!" << endl;
cin.clear(); // Hapus kesalahan kalau , // sebelumnya terjadi
cin.ignore(255,'n'); // Buang karakter tersisa, // termasuk newline
} while (salah);
cout << "Bilangan yang Anda masukkan: " << bil << endl;
return 0;
}
code Hexadecimal perubah warna
0 = Black
1 = Blue
2 = Green
3 = Aqua
4 = Red
5 = Purple
6 = Yellow
7 = White
8 = Gray
9 = Light Blue
A = Light Green
B = Light Aqua
C = Light Red
D = Light Purple
E = Light Yellow
F = Light White
Contoh
#include<iostream> //library input output stream, yang digunakan untuk support cout dan cin
#include<Windows.h>
using namespace std; //Baris ini memberitahu kompilator untuk menggunakan sekelompok fungsi std
int main()
{
system("color 8C");
cout<< “Algoritma dan Pemrograman II "<<endl<<endl;
system("pause");
return 0;
}
#include <stdio.h>
#include <windows.h> // include untuk pemberian warna
int main (){
int count;
HANDLE hConsole;
hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
for (count=0; count<257; count++)
{ SetConsoleTextAttribute(hConsole, count);
printf ("Warna pada nomer %in",count);
}
SetConsoleTextAttribute(hConsole, 7);
system ("pause");
return 0;
}
#include <iostream> // standard library buat cout dan cin
#include <conio.h> //standard library buat getch();
#include <windows.h> //standard library buat tipe data HANDLE, fungsi GetStdHandle dan prosedur
SetConsoleTextAtrribute
using namespace std;
void setcolor(unsigned short color)
{
HANDLE hCon = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hCon,color);
}
int main()
{
cout<<"Warna Text Default"<<endl; //menamppilkan kalimat “Warna Text Default”
setcolor(10); //Mengeset warna text menjadi warna hijau
cout<<"Warna Text Hijau"<<endl;
setcolor(21);
cout<<"Contoh Text Berwarna Dengan Block"<<endl;
setcolor(37);
cout<<"Warna Text Kembali Seperti Default"<<endl;
getch(); //menahan sekuensi program bisa juga dibilang menunggu inputan dri user
}
#include<Windows.h>//processor
#include<iostream> //library input output stream, yang digunakan untuk support cout dan cin
using namespace std;
void setcolor(unsigned short color) //fungsi untuk pemberian warna
{
HANDLE hCon = GetStdHandle(STD_OUTPUT_HANDLE);//membuat objek hCon
SetConsoleTextAttribute(hCon,color);//program untuk merubah warna,color akan diganti
dengan nilai i nantinya
}
int main(){
int i;
for(i=0;i<300;i++){
setcolor(i);//panggil fungsi setcolor dan beri nilai warnasesuai looping i
cout<<"Warna "<<i <<"t";
}
system("pause");
return 0;
}
TUGAS
Gunakan while untuk menyelesaikan kasus berikut :
Notasi diatas identik dengan 1+2+3+…. +n;
Algoritma untuk menyelesaikan persoalan seperti itu adalah sbb:
1. Ambil sebuah bilangan bulat dari keyboard dan simpan di N
2. Berikan nilai 1 ke variabel pencacah I .
3. Berikan nilai 0 ke variabel pencatat jumlah nilai bernama jum.
4. While I <= N
5. Tambahkan I ke jum dan simpan kembali ke jum
6. Naikan isi I sebesar 1
Gunakan while untuk menyelesaikan kasus berikut :
Notasi diatas identik dengan 1x2x3x…. X(n-1)xn;
Algoritma untuk menyelesaikan n faktorial adalah sbb:
1. Ambil sebuah bilangan bulat dari keyboard dan simpan di N
2. Berikan nilai 1 ke variabel pencacah I .
3. Berikan nilai 1 ke variabel pencatat hasil perkalian bernama hasil .
4. While I < N
5. Kalikan I ke hasil dan simpan kembali ke hasil.
6. Naikan isi I sebesar 1
N! didefinisikan sebagai berikut :
Sekian…… Terima kasih
Questions?
using namespace std;
int main()
{
int a,b;
atas:
cout<<“ Masukan titik Akhir : ”;cin>>b;
for(a=1; a<=b; a++)
{
cout<<a <<“ Algo “ <<endl;
}
goto atas;
return 0;
}

Pertemuan 6B.pptx

  • 1.
    Kuliah 2022/2023 MENHYA SNAE,M.KOM.|DOSEN ALGORITMA & PEMROGAMAN Perulangan atau Looping
  • 2.
    Materi Tujuan PROSES PERULANGAN(LOOPING)  Menjelaskan proses perulangan menggunakan for.  Menjelaskan proses perulangan menggunakan do-while.  Menjelaskan proses perulangan menggunakan while.  „ Menjelaskan loop di dalam loop (nested loop) dan contoh kasusnya.  „ Menjelaskan penggunaan pernyataan goto.
  • 3.
    Pernyataan For Bentuk umumdari for For (inisialisasi; penghenti; penaikan) { Pernyataan; } For (inisialisasi; penghenti; penaikan) { Pernyataan1; . . Pernyataan2; } For dengan pernyataan majemuk :
  • 4.
    Pernyataan For  Ungkapan1(inisialisasi):digunakan untuk memberikan inisialisasi terhadap variabel pengendali loop.  „Ungkapan2 (penghenti): dipakai sebagai kondisi untuk keluar dari loop.  „Ungkapan3 (penaikan/penurunan) : dipakai sebagai pengatur kenaikan nilai variabel pengendaliloop. Digunakan untuk membuat looping dengan jumlah perulangan yang ditentukan di awal. „
  • 5.
    Contoh: For ( ;; ) { Cout << i << endl; } i = 1; i <= n; i ++ F O R
  • 6.
    Latihan FOR #include <iostream> #include<conio.h> using namespace std; int main () { int i , n; atas: cout << " masukan bilangan bulat (n) : "; cin >> n; for (i = 1; i <= n; i++) { cout << i << endl; } goto atas; return 0; }
  • 7.
    Latihan FOR #include <iostream> #include<conio.h> using namespace std; int main () { int i , n; cout << " masukan bilangan bulat (n) : "; cin >> n; for (i = 1; i <= n; i++) { cout << i <<" Fiorentina " << endl; } return 0; }
  • 8.
    Latihan FOR #include <iostream> #include<conio.h> using namespace std; int main () { int i , n; cout << " masukan bilangan bulat (n) : "; cin >> n; for (i = n; i > 0; i--) { cout << i <<" Fiorentina " << endl; } return 0; }
  • 9.
    Perulangan adalah suatubentuk pemrograman yang ringkas didalam menangani suatu langkah yang berulang Cth: cout << “C++” << endl; Bagaimana bentuk perulangan dengan WHILE ? Bentuk sederhana WHILE : inisialisasi; While (kondisi/penghenti) { Pernyataan; Penaik; } Kondisi diuji terlebih dahulu; jika kondisi bernilai benar maka bagian pernyataan akan di eksekusi dan kemudian kondisi di uji kembali hingga kondisi bernilai salah Perulangan WHILE
  • 10.
  • 11.
    Contoh WHILE #include <iostream> #include<conio.h> using namespace std; int main () { int i , n; cout << " masukan bilangan bulat (n) : "; cin >> n; i=1; while (i <= n) { cout << i <<" Fiorentina " << endl; i++; } return 0; }
  • 12.
    While (kondisi) { Pernyataan _1 … Pernyataan_n } Bentukini sering digunakan dalam program Bentuk WHILE Majemuk
  • 13.
    Contoh Program #include <iostream> usingnamespace std; int main() { int i, n; cout << "Masukkan bilangan bulat (n): “; cin >> n; i = 1; while (i <= n) { cout << i <<“ Fiorentina” << endl; i++; } return 0; }
  • 14.
    i = 1; while( i <= n) { cout << i << endl; i++; } Biasanya melibatkan variabel pencacah (i) dan variabel lain (n) Inisialisasi variabel pencacah Kondisi penentu perulangan Pernyataan untuk menampilkan nilai yg diulang Menaikan/menurun nilai variabel pencacah Variabel pencacah
  • 15.
    Jika anda menginginkantampilan yg terbalik : i = n; while ( i >0) { cout << i << endl; i--; }
  • 16.
    VARIABEL PENCACAH TIDAKHARUS BERUPA SATU #include <iostream> using namespace std; int main() { int i, n; cout << "Masukkan bilangan bulat (n): "; cin >> n; i = 1; while (i <= n) { cout << i << endl; i = i + 2; } return 0; }
  • 17.
    1 3 5 7 9 11 i = 1; while( i <= n) { cout << i << endl; I = I + 2; } Selang kenaikan
  • 18.
    Menampilkan bilangan 1ke N yang habis dibagi Pada kasus seperti ini maka harus dipikirkan dulu solusi yang tdk melibatkan perkecualian; setelah itu tambahkan IF didalam WHILE. int main() { int i, n; cout << "Masukkan bilangan bulat (n): "; cin >> n; i = 1; while (i <= n) { if (i % 5) cout << i << endl; i = i + 1; } return 0; }
  • 19.
    int main() { inti, bil, n; cout << "Masukkan bilangan bulat (n): "; cin >> n; i = 1; bil = 0; while (true) { bil = bil + i; if (bil > n) break; // Keluar dari while cout << bil << endl; i = i + 1; } return 0; }
  • 20.
    Hal yang menarikpada latihan diatas adalah kondisi whie menggunakan konstanta boolean bernama true, dilihat sekilas while dgn kondisi true akan menyebabkan perulangan yg tdk berhenti,. i = 1; bil = 0; while (true) { bil = bil + i; cout << bil << endl; i = i + 1; } return 0; } Membuat perulangan selamanya; maka perlu penanganan utk keluar dari perulangan Mekanisme utk keluar dari while if (bil > n) break;
  • 21.
    Pernyataan continue dalamwhile Pernyataan continue digunakan utk mengarahkan eksekusi kebagian kodisi while; artinya pernyataan tersebut akan membuat bagian kondisi diuji kembali. While (kondisi) { … … } Bagian tersisa diabaikan Continue;
  • 22.
    int main() { intbil; bil = 7; while (bil <= 30) { cout << bil << endl; if (bil == 10) { bil = bil + 15; continue; } bil++; } return 0; } Contoh: Perhatikan pada hasil yg didapat tidak ada angka 11hingga 24; hal tersebut karena akibat adanya perintah
  • 23.
    PERULANGAN DENGAN DO-WHILE Bentukumum pernyataan do-while adalah seperti berikut: inisialisasi; Do { Pernyataan penaik; } while (kondisi/penghenti); Berbeda dengan while, do-while menjalankan bagian pernyataan terlebih dahulu dan kemudian menguji kondisi; sehingga paling tidak bagian pernyataan dari do-while akan dijalankan sekali.
  • 24.
  • 25.
    Contoh DO-WHILE int main() { int i , n; cout << " masukan bilangan bulat (n) : "; cin >> n; i=0; do { cout << i <<" Fiorentina " << endl; i++; } while (i<=n); return 0; }
  • 26.
    int main() { intbil; bool salah; do { cout << "Masukkan bilangan bulat: "; cin >> bil; salah = cin.fail(); if (salah) cout << "Anda salah memasukkan bilangan!" << endl; cin.clear(); // Hapus kesalahan kalau , // sebelumnya terjadi cin.ignore(255,'n'); // Buang karakter tersisa, // termasuk newline } while (salah); cout << "Bilangan yang Anda masukkan: " << bil << endl; return 0; }
  • 27.
    code Hexadecimal perubahwarna 0 = Black 1 = Blue 2 = Green 3 = Aqua 4 = Red 5 = Purple 6 = Yellow 7 = White 8 = Gray 9 = Light Blue A = Light Green B = Light Aqua C = Light Red D = Light Purple E = Light Yellow F = Light White
  • 28.
    Contoh #include<iostream> //library inputoutput stream, yang digunakan untuk support cout dan cin #include<Windows.h> using namespace std; //Baris ini memberitahu kompilator untuk menggunakan sekelompok fungsi std int main() { system("color 8C"); cout<< “Algoritma dan Pemrograman II "<<endl<<endl; system("pause"); return 0; }
  • 29.
    #include <stdio.h> #include <windows.h>// include untuk pemberian warna int main (){ int count; HANDLE hConsole; hConsole = GetStdHandle(STD_OUTPUT_HANDLE); for (count=0; count<257; count++) { SetConsoleTextAttribute(hConsole, count); printf ("Warna pada nomer %in",count); } SetConsoleTextAttribute(hConsole, 7); system ("pause"); return 0; }
  • 30.
    #include <iostream> //standard library buat cout dan cin #include <conio.h> //standard library buat getch(); #include <windows.h> //standard library buat tipe data HANDLE, fungsi GetStdHandle dan prosedur SetConsoleTextAtrribute using namespace std; void setcolor(unsigned short color) { HANDLE hCon = GetStdHandle(STD_OUTPUT_HANDLE); SetConsoleTextAttribute(hCon,color); } int main() { cout<<"Warna Text Default"<<endl; //menamppilkan kalimat “Warna Text Default” setcolor(10); //Mengeset warna text menjadi warna hijau cout<<"Warna Text Hijau"<<endl; setcolor(21); cout<<"Contoh Text Berwarna Dengan Block"<<endl; setcolor(37); cout<<"Warna Text Kembali Seperti Default"<<endl; getch(); //menahan sekuensi program bisa juga dibilang menunggu inputan dri user }
  • 31.
    #include<Windows.h>//processor #include<iostream> //library inputoutput stream, yang digunakan untuk support cout dan cin using namespace std; void setcolor(unsigned short color) //fungsi untuk pemberian warna { HANDLE hCon = GetStdHandle(STD_OUTPUT_HANDLE);//membuat objek hCon SetConsoleTextAttribute(hCon,color);//program untuk merubah warna,color akan diganti dengan nilai i nantinya } int main(){ int i; for(i=0;i<300;i++){ setcolor(i);//panggil fungsi setcolor dan beri nilai warnasesuai looping i cout<<"Warna "<<i <<"t"; } system("pause"); return 0; }
  • 32.
    TUGAS Gunakan while untukmenyelesaikan kasus berikut : Notasi diatas identik dengan 1+2+3+…. +n; Algoritma untuk menyelesaikan persoalan seperti itu adalah sbb: 1. Ambil sebuah bilangan bulat dari keyboard dan simpan di N 2. Berikan nilai 1 ke variabel pencacah I . 3. Berikan nilai 0 ke variabel pencatat jumlah nilai bernama jum. 4. While I <= N 5. Tambahkan I ke jum dan simpan kembali ke jum 6. Naikan isi I sebesar 1
  • 33.
    Gunakan while untukmenyelesaikan kasus berikut : Notasi diatas identik dengan 1x2x3x…. X(n-1)xn; Algoritma untuk menyelesaikan n faktorial adalah sbb: 1. Ambil sebuah bilangan bulat dari keyboard dan simpan di N 2. Berikan nilai 1 ke variabel pencacah I . 3. Berikan nilai 1 ke variabel pencatat hasil perkalian bernama hasil . 4. While I < N 5. Kalikan I ke hasil dan simpan kembali ke hasil. 6. Naikan isi I sebesar 1 N! didefinisikan sebagai berikut :
  • 34.
  • 35.
  • 36.
    using namespace std; intmain() { int a,b; atas: cout<<“ Masukan titik Akhir : ”;cin>>b; for(a=1; a<=b; a++) { cout<<a <<“ Algo “ <<endl; } goto atas; return 0; }