Disusun untuk Memenuhi Matakuliah Praktikum Dasar Pemrograman C++ Dibimbing oleh Bpk. Wahyu Sakti G.I
Oleh: Ulfa Devayuni Utami 120534431501 S1 PTE12 OFF D
UNIVERSITAS NEGERI MALANG FAKULTAS TEKNIK JURUSAN TEKNIK ELEKTRO PRODI PENDIDIKAN TEKNIK INFORMATIKA Maret 2014
PERULANGAN (LOOPI NG)
Tujuan Setelah mempelajari bab ini diharapkan mahasiswa akan mampu : 1. Mengenal dan memahami penggunaan statement perulangan 2. Membuat program sederhana dengan menerapkan konsep perulangan
DASAR TEORI
A. Statemen FOR Statement FOR digunakan untuk menyatakan perulangan. Sintaksnya:
for (ungkapan1; ungkapan2;ungkapan3) { Blok Pernyataan 1 Blok Pernyataan n }
- Ungkapan1 merupakan statement awal (inisialisasi) - Ungkapan2 merupakan kondisi/syarat perulangan dilakukan - Ungkapan3 merupakan statement control untuk perulangan - Blok Pernyataan merupakan pernyataan yang dijalankan jika syarat terpenuhi. Contoh: for (a = 1; a <= 5; a++) { cout << Hello world \n; }
Perintah di atas akan menampilkan teks Hello World sebanyak 5 buah. Perhatikan tanda a++, Apa maksudnya? Selain berupa angka, pencacah perulangan juga dapat berupa karakter. Contoh: for (huruf = Z; huruf >= A; huruf--) { cout << Huruf abjad= << huruf << \n; }
Perintah di atas akan menampilkan teks Huruf abjad = ... mulai dari Z sampai dengan A Perhatikan perintah operator -- for (angka = 1; angka <= 6; angka+=2)
{ cout << Isi dari angka = << angka << endl; }
Perintah di atas akan menampilkan angka 1, 3, 5. Mengapa terjadi demikian? Perhatikan perintah angka+=2 ! Di bawah ini adalah program untuk mencetak bilangan genap yang kurang dari n (n diperoleh dari input).
#include <iostream.h> #include <conio.h> void main() { int bil, n; cout << Masukkan n = ; cin >> n; for (bil = 0; bil < n; bil++) { if (bil % 2 == 0) cout << bil << ; } }
B. Statement WHILE Statement WHILE juga digunakan untuk menyatakan perulangan. Sintaksnya:
while (kondisi) { Blok Pernyataan }
contoh: Dua perintah di bawah ini adalah identik. for (a = 1; a <= 5; a++) { cout << Hello world \n; }
Dengan a = 1; while (a <= 5) { cout << Hello world \n; a++; }
Penting ! Jika Anda menggunakan WHILE, pastikan bahwa suatu saat bagian kondisi sampai bernilai FALSE. Apabila tidak, proses perulangan akan terus berjalan selamanya. Contoh program di bawah ini digunakan untuk menjumlahkan sejumlah data angka. Angka yang akan dijumlahkan diinputkan satu-persatu. Proses pemasukan data angka akan berhenti ketika dimasukkan angka 1. Setelah itu tampil hasil penjumlahannya.
#include <iostream.h> #include <conio.h> void main() { int data, jumlah,cacah; jumlah = 0; data = 0; cacah = 0; while (data != -1) { cout << Masukkan data angka : ; cin >> data; jumlah += data; cacah++; } cout << Jumlah data adalah : << jumlah << endl; cout << Rata-rata : << jumlah/cacah; } Kondisi dalam WHILE juga dapat menggunakan operator logika. Misalnya
while ((kondisi1) && (kondisi2)) { Blok Pernyataan }
C. Statement DO ... WHILE Perintah DO ... WHILE hampir sama dengan WHILE sebelumnya. Sintaknya:
do { Blok Pernyataan } while (kondisi)
Perbedaan dengan WHILE sebelumnya yaitu bahwa pada DO WHILE statement perulangannya dilakukan terlebih dahulu baru kemudian di cek kondisinya. Sedangkan WHILE kondisi dicek dulu baru kemudian statement perulangannya dijalankan. Akibat dari hal ini adalah dalam DO WHILE minimal terdapat 1x perulangan. Sedangkan WHILE dimungkinkan perulangan tidak pernah terjadi yaitu ketika kondisinya langsung bernilai FALSE. Contoh: a = 1; do { cout << Hello world \n; a++; } while(a==0)
Perintah di atas akan muncul satu buah Hello World. Bandingkan dengan yang berikut ini:
MULAI INPUT a>0 Pernyataan Output a++ SELESAI
a = 1; while(a==0) { cout << Hello world \n; a++; }
Perintah di atas sama sekali tidak menampilkan Hello World, karena kondisinya langsung FALSE.
Latihan Praktikum 1 Pemrograman C++ Nama Program : Membuat tampilan segitiga menggunakan FOR Bahasa Pemrogramam : C++ Compiler : Visual C++ 6.0 Script program : #include <iostream.h> #include <conio.h> int main() { int a, b, x; cout<<"===============================\n"; cout<<" LATIHAN 1 MODUL 5 \n"; cout<<" ULFA DEVAYUNI UTAMI/120534431501\n"; cout<<" PTE 2012 OFF D\n"; cout<<"===============================\n"; cout<<"Masukkan Tinggi Segitiga = "; cin>>x; for (a=1; a<=x; a++) { for (b=1; b<=a; b++) cout<<"*"; cout<<"\n"; } getch(); }
Output Program :
Deskripsi program : Ini adalah program untuk membuat bentuk segitiga siku-siku dengan menggunakan statement perulangan, yang menggunakan header #include <iostream.h> karena menggunakan fungsi cout dan cin. Juga menggunakan type data int yang diperuntukkan untuk bilangan bulat. Menggunakan statement FOR untuk melakukan perulangan dengan for (a=1; a<=x; a++), kita masukkan nilai x yang akan menjadi nilai tinggi dan alas dari segitiga tersebut. Algoritma : - Mulai - Deklarasi header - Deklarasi variabel - Deklarasi konstanta - Selesai
Latihan Praktikum 2 Pemrograman C++ Nama Program : Membuat simulasi menu program menggunakan WHILE Bahasa Pemrogramam : C++ Compiler : Visual C++ 6.0 Script program : #include <iostream.h> //header cout & cin #include <conio.h> //header getche void main() { int pilih; //deklarasi variabel pilih = 0; while ( pilih != 4) //kondisi while { cout<<"===============================\n"; cout<<" LATIHAN 2 MODUL 5 \n"; cout<<" ULFA DEVAYUNI UTAMI/120534431501\n"; cout<<" PTE 2012 OFF D\n"; cout<<"===============================\n"; cout<<"++++++++++++++++++++++\n"; cout<<" MENU PILIHAN\n"; cout<<"++++++++++++++++++++++\n"; cout<<"1. Baca Data\n"; cout<<"2. Ubah Data\n"; cout<<"3. Hapus Data\n"; cout<<"4. Exit\n"; cout<<"Pilihan Anda (1/2/3/4) : "; cin>>pilih; cout << "Anda memilih menu : " <<pilih << endl; cout << "Tekan ENTER untuk kembali ke menu utama"<<endl; if (pilih == 4) {
break; } getche (); } }
Output Program :
Deskripsi program : Ini adalah simulasi menu program dengan menggunakan statement perulangan WHILE while (kondisi), yang menggunakan header #include <iostream.h> karena menggunakan fungsi cout dan cin. Juga menggunakan type data int yang diperuntukkan untuk bilangan bulat. Kita pilih salah satu menu yang ada, kemudian akan muncul tampilan dari menu tersebut dan dapat kembali ke menu utama lagi dengan menekan enter. Karene itulah fungsinya while sebagai perulangan. Algoritma : - Mulai - Deklarasi header - Deklarasi variabel - Deklarasi konstanta - Selesai
Tugas Praktikum 1 Pemrograman C++ Nama Program : Program menentukan nama hari Bahasa Pemrogramam : C++ Compiler : Visual C++ 6.0 Script program : #include <iostream.h> #include <stdlib.h> #include <conio.h> main() { char x, yn; do { cout<<""<<endl; cout<<"===============================\n"; cout<<" TUGAS PRAKTIKUM 1 MODUL 5 \n"; cout<<" ULFA DEVAYUNI UTAMI/120534431501\n"; cout<<" PTE 2012 OFF D\n"; cout<<"===============================\n"; cout<<"-------------------------"<<endl; cout<<" Menu Pilihan Hari "<<endl; cout<<"-------------------------\n"<<endl; cout<<" A. Senin"<<endl; cout<<" B. Selasa"<<endl; cout<<" C. Rabu"<<endl; cout<<" D. Kamis"<<endl; cout<<" E. Jum'at"<<endl; cout<<" F. Sabtu"<<endl; cout<<" G. Minggu"<<endl; cout<<"\n-------------------------\n"<<endl; cout<<" Masukkan kode hari (A-G) : "; cin>>x; cout<<"\n"; while (x=='A'||x=='a') { cout<<" Anda memilih A yaitu hari SENIN\n\n"; break; } while (x=='B'||x=='b') { cout<<" Anda memilih B yaitu hari SELASA\n\n"; break; } while (x=='C'||x=='c') { cout<<" Anda memilih C yaitu hari RABU\n\n"; break; } while (x=='D'||x=='d') { cout<<" Anda memilih D yaitu hari KAMIS\n\n"; break; } while (x=='E'||x=='e') { cout<<" Anda memilih E yaitu hari JUM'AT\n\n"; break; }
while (x=='F'||x=='f') { cout<<" Anda memilih F yaitu hari SABTU\n\n"; break; } while (x=='G'||x=='g') { cout<<" Anda memilih G yaitu hari MINGGU\n\n"; break; } cout <<"\n Anda Ingin Mengulang Kembali (y/n) : "; cin>>yn; system("cls"); } while ((yn == 'Y')||(yn == 'y')); cout<<"\n"; getch(); }
Output Program :
Deskripsi program : Ini adalah program menentukan nama hari yang bila dikembangkan bisa menjadi program untuk jadwal kuliah misalnya. dengan menggunakan statement perulangan WHILE while (kondisi), yang menggunakan header #include <iostream.h> karena menggunakan fungsi cout dan cin, serta header #include <stdlib.h> yang diperuntukkan untuk fungsi system(). Menggunakan type data int yang diperuntukkan untuk bilangan bulat. Algoritma : - Mulai - Deklarasi header - Deklarasi variabel - Selesai
Flowchart:
Menu E Cetak Jumat Menu F Cetak Sabtu Menu G Cetak Minggu Selesai Menu B Cetak Selasa Menu C Cetak Rabu Menu D Cetak Kamis Mulai Menu Pilihan Hari A-G Menu A Cetak Senin Ya Ya Ya Ya Ya Ya Ya
Tugas Praktikum 2 Pemrograman C++ Nama Program : Membuat simulasi menu program menggunakan WHILE Bahasa Pemrogramam : C++ Compiler : Visual C++ 6.0 Script program : #include <iostream.h> #include <stdlib.h> #include <conio.h> int main() { int x; awal:; system("cls"); cout<<"===============================\n"; cout<<" TUGAS PRAKTIKUM 2 MODUL 5 \n"; cout<<" ULFA DEVAYUNI UTAMI/120534431501\n"; cout<<" PTE 2012 OFF D\n"; cout<<"===============================\n";
cout<<"\n------------------"<<endl; cout<<" - MENU PILIHAN - "<<endl; cout<<"------------------\n"<<endl; cout<<" 1.Baca Data "<<endl; cout<<" 2.Ubah Data "<<endl; cout<<" 3.Hapus Data "<<endl; cout<<" 4.Exit "<<endl; cout<<"\nMasukkan Pilihan Anda : "; cin>>x; system("cls"); Penjelasan Flowchart: Proses pertama yang digambarkan flowchart adalah Start, yaitu untuk memulai suatu program, selanjutnya kita memilih menu pilihan hari yaitu pilihan dari A-G, kemudian data akan diproses, apabila: - Memilih A akan menampilkan output hari Senin - Memilih B akan menampilkan output hari Selasa - Memilih C akan menampilkan output hari Rabu - Memilih D akan menampilkan output hari Kamis - Memilih E akan menampilkan output hari Jumat - Memilih F akan menampilkan output hari Sabtu - Memilih G akan menampilkan output hari Minggu Selanjutnya eksekusi selesai.
cout<<"\n"; while (x==1) { cout<<"\n Anda Memilih Menu 1 Baca Data"<<endl; cout<<"\n Tekan ENTER Untuk Kembali Ke Menu Pilihan\n"<<endl; break; } while (x==2) { cout<<"\n Anda Memilih Menu 2 Ubah Data"<<endl; cout<<"\n Tekan ENTER Untuk Kembali Ke Menu Pilihan\n"<<endl; break; } while (x==3) { cout<<"\n Anda Memilih Menu 3 Hapus Data"<<endl; cout<<"\n Tekan ENTER Untuk Kembali Ke Menu Pilihan\n"<<endl; break; } while (x==4) { cout<<"\n Anda Memilih Menu 4 Exit"<<endl; cout<<"\n\n Terima Kasih\n"; cout<<"\n Tekan ENTER Untuk Keluar\n"<<endl; getch(); goto exit; break; } getch(); goto awal; exit:; }
Output Program :
Deskripsi program : Ini adalah simulasi menu program dengan menggunakan statement perulangan WHILE while (kondisi), yang menggunakan header #include <iostream.h> karena menggunakan fungsi cout dan cin. Juga menggunakan type data int yang diperuntukkan untuk bilangan bulat. Kita pilih salah satu menu yang ada, kemudian akan muncul tampilan
dari menu tersebut dan dapat kembali ke menu utama lagi dengan menekan enter. Karene itulah fungsinya while sebagai perulangan. Algoritma : - Mulai - Deklarasi header - Deklarasi variabel - Deklarasi konstanta - Selesai
Flowchart:
Mulai Menu Pilihan 1-4 Menu 1 Baca data Cetak hasil Menu 2 Ubah data Menu 3 Hapus data Menu 4
Exit Selesai Cetak hasil Cetak hasil Cetak hasil Ya Ya Ya Ya
Tugas Praktikum 3 Pemrograman C++ Nama Program : Program menampilkan penyelesaian dari persamaan x + y + z = 20. Dengan x, y, z bilangan bulat >=0 Bahasa Pemrogramam : C++ Compiler : Visual C++ 6.0 Script program : #include <iostream.h> #include <conio.h> main() { int x, y, z; const int max=20; cout<<"===============================\n"; cout<<" TUGAS PRAKTIKUM 3 MODUL 5 \n"; cout<<" ULFA DEVAYUNI UTAMI/120534431501\n"; cout<<" PTE 2012 OFF D\n"; cout<<"===============================\n"; cout<<"---------------------"<<endl; cout<<" TABEL"<<endl; cout<<" x+y+z=20"<<endl; cout<<"---------------------"<<endl;
for (x=0; x<=20; x++) { for (y=0; y<=20; y++) Penjelasan Flowchart: Proses pertama yang digambarkan flowchart adalah Start, yaitu untuk memulai suatu program, selanjutnya kita memilih menu pilihan 1 4, kemudian data akan diproses, apabila: - Memilih menu 1 akan menampilkan output Baca data Dan jika ditekan ENTER akan kembali pada menu pilihan yang sebelumnya - Memilih menu 2 akan menampilkan output Ubah data Dan jika ditekan ENTER akan kembali pada menu pilihan yang sebelumnya - Memilih menu 3 akan menampilkan output Hapus data Dan jika ditekan ENTER akan kembali pada menu pilihan yang sebelumnya - Memilih menu 4 akan menampilkan output Exit Dan jika ditekan ENTER akan keluar dari program Selanjutnya eksekusi selesai.
Deskripsi program : Ini adalah program penyelesaian dari persamaan (x+y+z=20). dengan menggunakan statement perulangan FOR for (ungkapan1; ungkapan2; ungkapan3) yang menggunakan header #include <iostream.h> karena menggunakan fungsi cout dan cin. Menggunakan type data int yang diperuntukkan untuk bilangan bulat. Algoritma : - Mulai - Deklarasi header - Deklarasi variabel - Selesai
Flowchart:
Mulai Read x, y, z x=0; x<=20; x++ y=0; y<=20; y++ z=0; z<=20; z++ x+y+z=20 Cetak Hasil Selesai Penjelasan Flowchart: Proses pertama yang digambarkan flowchart adalah Start, yaitu untuk memulai suatu program, selanjutnya program akan membaca data x, y, dan z dengan ketentuan: x=0; x<=20; x++ y=0; y<=20; y++ z=0; z<=20; z++ x + y + z = 20 proses selanjutnya adalah menampilkan output seperti yang terlihat pada gambar output program di atas. Selanjutnya eksekusi selesai.
Tugas Praktikum 4 Pemrograman C++ Nama Program : Membuat program untuk keperluan transaksi bank Bahasa Pemrogramam : C++ Compiler : Visual C++ 6.0 Script program : #include <iostream.h> #include <stdlib.h> #include <conio.h> main() { float saldo, setor, ambil; int menu; char yn; saldo = 10000; while (menu!=3) { awal:; cout<<"===============================\n"; cout<<" TUGAS PRAKTIKUM 4 MODUL 5 \n"; cout<<" ULFA DEVAYUNI UTAMI/120534431501\n"; cout<<" PTE 2012 OFF D\n"; cout<<"===============================\n"; cout<<"\n -----------------------------\n"<<endl; cout<<" PT. BANK SYARIAH INDEPENDEN\n"<<endl;; cout<<" -----------------------------\n"<<endl; cout<<" Saldo Sebesar : Rp "<<saldo<<endl; cout<<" --------------\n\n"; cout<<" Pilihan Menu Transaksi \n"<<endl; cout<<" 1. Setor Tabungan"<<endl; cout<<" 2. Ambil Tabungan"<<endl; cout<<" 3. Exit"<<endl; cout<<"\n Pilihan menu : "; cin>>menu; cout<<"\n"; cout<<" -----------------------------\n"<<endl; while (menu==1) { cout<<" Jumlah setoran : Rp "; cin>>setor; saldo = saldo + setor; cout <<"\n Saldo : Rp "<<saldo<<endl; cout<<" --------------\n"; break; } while (menu==2) { cout<<" Jumlah tarikan : Rp "; cin>>ambil; saldo = saldo - ambil; if (saldo>=10000) { cout <<"\n Saldo : Rp "<<saldo<<endl; cout<<" --------------\n"; cout<<" Anda telah mengambil\n"; cout<<" Uang senilai Rp "<<ambil<<endl;
break; } else if (saldo<10000) { saldo = saldo + ambil; cout <<"\n Saldo : Rp "<<saldo<<endl; cout<<" --------------\n\n"; cout<<" Maaf Sisa Saldo Anda Tidak Boleh Kurang Dari\n"; cout<<" Rp 10000 Setelah Melakukan Pengambilan\n"; break; } break; } while (menu==3) { cout <<"\n Anda Yakin Ingin Keluar (y/n) : "; cin>>yn; system("cls"); if (yn=='Y' || yn=='y') { goto akhir;} else if (yn=='n' || yn =='N') { goto awal;} else {cout<<"\tERROR! "; system("pause"); goto awal;} } cout<<"\n Anda Ingin Melakukan"; cout<<"\n Transaksi Lagi (y/n) : "; cin>>yn; system("cls"); if (yn=='Y' || yn=='y') { goto awal;} else if (yn=='n' || yn =='N') { goto akhir;} else {cout<<"\tERROR! "; system("pause"); goto awal;} } cout<<"\n"; akhir:; cout<<"\n Terima Kasih Telah"; cout<<" Melakukan Transaksi\n"; getch(); }
Output Program :
Deskripsi program : Ini adalah program untuk mempermudah traksaksi di bank. dengan menggunakan statement perulangan WHILE while (kondisi), yang menggunakan header #include <iostream.h> karena menggunakan fungsi cout dan cin, serta header #include <stdlib.h> yang diperuntukkan untuk fungsi system(cls). Menggunakan type data int yang diperuntukkan untuk bilangan bulat. Algoritma : - Mulai - Deklarasi header - Deklarasi variabel - Deklarasi konstanta - Selesai Flowchart:
Mulai Menu 1 Input Jumlah setoran Cetak hasil
Menu 2 Menu 3 Selesai Pilihan Menu Transaksi 1. setor Tabungan 2. ambil Tabungan 3. Exit
Input Jumlah tarikan Cetak hasil
Exit Cetak hasil
Ya Ya Ya
KESIMPULAN Tiap header file memiliki karakteristik dan fungsi yang berbeda-beda, pada saat pembuatan program harus memperhatikan fungsi yang digunakan. Header #include <stdlib.h> untuk mengaktifkan fungsi system (). Pada pernyataan while pastikan bahwa suatu saat bagia kondisi sampai bernilai salah (False). Apabila tidak proses perulangan akan berjalan selamanya. Tambahkan syntax break; u tuk memberikan batas perulangan agar tidak terus menerus melakukan pengulangan tersebut.
DAFTAR RUJUKAN Tim Asisten Dosen. 2012. Modul 5 Perulangan (Looping). Malang: Universitas Negeri Malang.
Penjelasan Flowchart: Proses pertama yang digambarkan flowchart adalah Start, yaitu untuk memulai suatu program, selanjutnya kita memilih menu pilihan transaksi, kemudian data akan diproses, apabila: - Memilih menu 1 akan menampilkan isian Jumlah Setoran Setelah itu jumlah setoran yang kita masukkan tadi akan dijumlah dengan saldo awal (Rp. 10000). - Memilih menu 2 akan menampilkan isian Jumlah Tarikan Setelah itu jumlah jumlah saldo akan dikurangi jumlah tarikan yang kita masukkan tadi. - Memilih menu 3 akan menampilkan output Exit Dan jika ditekan Y akan kembali keluar dari program Selanjutnya eksekusi selesai.