Anda di halaman 1dari 18

LAPORAN PRAKTIKUM V

DASAR PEMROGRAMAN KOMPUTER

OPERASI PERULANGAN

Disusun untuk Memenuhi Matakuliah Dasar Pemrograman Komputer


Dibimbing oleh Prof. Dr. Tri Atmadji S., M.Pd.

Oleh :
AHMAD SAIFUDIN
220534600320
S1 PTE ’22 OFF A

UNIVERSITAS NEGERI MALANG


FAKULTAS TEKNIK
DEPARTEMEN TEKNIK ELEKTRO
PRODI S1 PENDIDIKAN TEKNIK ELETRO
FEBRUARI 2023
PENGENALAN PEMROGRAMAN DAN STRUKTUR PROGRAM C++

I. TUJUAN
Setelah mempelajari bab ini mahasiswa diharapkan mampu :

1. Menjelaskan Perintah For


2. Menjelaskan Perintah Do…While
3. Menjelaskan Perintah While
4. Menjelaskan Perintah Break
5. Menjelaskan Perintah Continue
6. Menjelaskan Perintah Goto

II. PETUNJUK
1. Awali setiap kegiatan dengan berdoa dan tekad kuat, agar diberi kelancaran
dalam belajar dan mendapatkan ilmu yang bermanfaat.
2. Pahami tujuan praktikum, dasar teori, dan latihan praktikum dengan baik.
3. Kerjakan tugas praktikum dengan baik, jujur, sabar dan teliti.
4. Tanyakan kepada asisten laboratorium apabila ada hal-hal yang kurang jelas.

III. DASAR TEORI


Pada pemrograman komputer, perulangan digunakan untuk mengulang blok kode yang
dieksekusi. Misalnya diperlukan untuk menampilkan pesan sebanyak 70 kali. Daripada
menulis perintah cout sebanyak 70 kali, kita dapat menggunakan perintah perulangan untuk
mengulangi satu perintah cout sebanyak 70 kali.

Implementasi perulangan tidak hanya terbatas pada cetak berulang namun fungsi lain seperti
menghitung bilangan pangkat. Terdapat 3 jenis perulangan di dalam C++, yaitu :

1. Perulangan for
Perulangan loop adalah jenis perulangan yang memungkinkan untuk melakukan
perulangan dalam jumlah yang spesifik. Sebuah variabel perlu digunakan untuk
mengontrol perulangan yang akan berhenti apabila memenuhi suatu kondisi.
 Blok awal digunakan untuk melakukan inisialisasi variabel loop.
 Blok kondisi digunakan untuk melakukan pengecekan. Jika bernilai benar maka
perulangan dieksekusi, jika tidak maka perulangan dihentikan.
 Blok kontrol digunakan untuk melakukan perubahan nilai variabel loop.

Diagram Alir Kode Program


for (awal; kondisi; kontrol) {
pernyataan;
}

Contoh Program :

#include <iostream>

using namespace std;

int main() {
for (int i = 1; i <= 5; i++) {
cout << "Hitung " << i << endl;
}
}

Keluaran Program :

Penjelasan Program:
Pada program diatas, variabel i di inisialisasi dengan nilai 1, yang artinya perulangan akan
di mulai dari angka 1, kemudian dalam perulangan tersebut terdapat kondisi i <= 5 yang
artinya batas dari perulangan adalah i++ yang artinya value i akan bertambah 1 sampek
akhirnya nilai i=5 (i++).
2. Perulangan while
Perulangan while adalah perulangan yang tidak membutuhkan jumlah pasti seberapa
banyak perulangan dilakukan. Sehingga perulangan while bekerja dengan mengecek
kondisi, apabila bernilai benar maka pernyataan di dalam perulangan akan dieksekusi
hingga kondisi bernilai salah.

Diagram Alir Kode Program


while (kondisi) {
pernyataan;
perubahan_kondisi;
}

Contoh Program :

#include <iostream>

using namespace std;

int main() {
int i = 1;

while (i <= 5) {
cout << "Hitung " << i << endl;
i++;
}
}

Keluaran Program :

Penjelasan program:
Pada program diatas, variabel i di inisialisasi dengan nilai 1, yang artinya perulangan akan
di mulai dari angka 1, kemudian dalam perulangan tersebut terdapat kondisi i <= 5 yang
artinya batas dari perulangan adalah i++ yang artinya value i akan bertambah 1 sampek
akhirnya nilai i=5 (i++).

3. Perulangan do while
Perulangan do while merupakan variasi dari perulangan while dimana letak perbedaannya
adalah perulangan ini melakukan eksekusi kode sekali sebelum pengecekan kondisi.

Diagram Alir Kode Program


do {
pernyataan;
perubahan_kondisi;
} while (kondisi);

Contoh Program :

#include <iostream>

using namespace std;

int main() {
int i = 1;

do {
cout << "Hitung " << i << endl;
i++;
} while (i <= 5);
}

Keluaran Program :

Penjelasan Program:

Pada program diatas, variabel i di inisialisasi dengan nilai 1, yang artinya perulangan akan
di mulai dari angka 1, kemudian dalam perulangan tersebut terdapat kondisi i <= 5 yang
artinya batas dari perulangan adalah i++ yang artinya value i akan bertambah 1 sampai
akhirnya nilai i=5 (i++).

Selain itu terdapat perintah lain yang di dalam pengulangan yaitu break, continue, dan goto.

1. Pernyataan break
Pernyataan break digunakan untuk menghentikan perulangan. Contohnya program
dibawah hanya akan mencetak angka 1 dan 2. Karena ketika bertemu dengan angka 3,
perulangan dihentikan.

Contoh Program :

#include <iostream>

using namespace std;

int main() {
for (int i = 1; i <= 5; i++) {
if (i == 3) {
break;
}
cout << "Hitung " << i << endl;
}
}

Keluaran Program :

Penjelasan program:
Pada program diatas, variabel i di inisialisasi dengan nilai 1, yang artinya perulangan akan
di mulai dari angka 1, kemudian dalam perulangan tersebut terdapat kondisi i <= 5 yang
artinya batas dari perulangan adalah i++ yang artinya value i akan bertambah 1 sampek
akhirnya nilai i=5 (i++). Namun, terdapat kondisi i == 3 yang mana true nya adalah sintak
break yang artinya program akan berhenti apabila value i bernilai 3.

2. Pernyataan continue
Pernyataan continue digunakan untuk melewati atau skip iterasi saat ini dan berpindah ke
iterasi berikutnya. Contohnya pada program ini, iterasi dimana i bernilai 3 akan diskip
sehingga hanya mencetak angka 1, 2, 4, dan 5.

Contoh Program :

#include <iostream>

using namespace std;

int main() {
for (int i = 1; i <= 5; i++) {
if (i == 3) {
continue;
}
cout << "Hitung " << i << endl;
}
}

Keluaran Program :

Penjelasan program:
Pada program diatas, variabel i di inisialisasi dengan nilai 1, yang artinya perulangan akan
di mulai dari angka 1, kemudian dalam perulangan tersebut terdapat kondisi i <= 5 yang
artinya batas dari perulangan adalah i++ yang artinya value i akan bertambah 1 sampek
akhirnya nilai i=5 (i++). Namun, terdapat kondisi i == 3 yang mana true nya adalah sintak
continue yang artinya program akan langsung meloncat ke loop berikutnya.

3. Pernyataan goto
Pernyataan goto digunakan untuk melewati urutan normal eksekusi program dengan
melakukan “lompatan” ke bagian lain. Pernyataan goto dapat melompat ke atas maupun ke
bawah blok kode.

Pernyataan goto biasanya jarang dipakai dalam pemrograman karena membuat kode
menjadi kompleks dan membingungkan. Sehingga beberapa programmer memilih
menggunakan break dan continue.

Contoh Program :

#include <iostream>

using namespace std;

int main() {
for (int i = 1; i <= 5; i++) {
if (i == 3) {
goto lompat;
}
cout << "Hitung " << i << endl;
}

cout << "Pernyataan ini tidak akan dieksekusi";


lompat:
cout << "Lompat ke bawah";
}

Keluaran Program :

Penjelasan program:
Pada program diatas, variabel i di inisialisasi dengan nilai 1, yang artinya perulangan akan di
mulai dari angka 1, kemudian dalam perulangan tersebut terdapat kondisi i <= 5 yang artinya
batas dari perulangan adalah i++ yang artinya value i akan bertambah 1 sampek akhirnya nilai
i=5 (i++). Sehingga output dari perulangan tersebut mencetak kata “Hitung” diikuti value dari
variabel i. Tetapi, terdapat kondisi i == 3 yang mana true nya adalah sintak goto yang mana
akan langsung mengeksekusi ke label lompat.

IV. QUIZ
Membuat perulangan menaik dan menurun
Source code:
#include <iostream>
#include <stdlib.h>
using namespace std;

int main() {
int menu, counter = 0;
char a, ulangi ='y';
while (true) {
cout << "Silakan pilih menu:\n";
cout << "1. Perulangan menaik\n";
cout << "2. Perulangan menaik 2\n";
cout << "3. Perulangan menurun\n";
cout << "4. Perulangan menurun 2\n";
cout << "Pilihan Anda: ";
cin >> menu;

switch (menu) {
case 1: {
cout << "Anda memilih perulangan menaik" << endl;
for (int i=1;i<=5;i++) {
cout << "a" <<endl;
}
printf("Apakah kamu mau melanjutkan?\n");
printf("jawab (y/t): ");
cin >> ulangi;
continue;
counter++;

case 2: {
cout << "Anda memilih perulangan menaik 2" << endl;
for (int i=1;i<=5;i++) {
cout <<i<<endl;
}
printf("Apakah kamu mau melanjutkan?\n");
printf("jawab (y/t): ");
cin >> ulangi;
continue;
counter++;
case 3: {
cout << "Anda memilih perulangan menurun " << endl;
for (int i=10;i>=1;i--) {
cout <<i<<endl;
}
printf("Apakah kamu mau melanjutkan?\n");
printf("jawab (y/t): ");
cin >> ulangi;
continue;
counter++;
case 4: {
cout << "Anda memilih perulangan menurun 2" << endl;
for (int i=13;i>=7;i--) {
cout <<i<<endl;
}
printf("Apakah kamu mau melanjutkan?\n");
printf("jawab (y/t): ");
cin >> ulangi;
continue;
counter++;
}
}

}
}
}
}
return 0;
}
Penjelasan Program: program ini diminta untuk membuat perulangan menaik dan
menurun, program dibuat dengan menggunakan percabangan switch case dan
menggunakan perulangan while untuk dan for dilam percabangannya. Program
menggunakan printf untuk menanyakan apakah user mau melanjutkan atau tidak. Dan
continue untuk melanjutkan juka user menjawab y, jika user menjawab t maka program
akan berhenti.
V. LATIHAN PRAKTIKUM
1. Ketik kode program di bawah ini dengan menggunakan Visual Studio, kemudian compile
dan jalankan program tersebut. Jelaskan dan simpulkan hasil program.
#include <iostream>

using namespace std;

int main() {
int number;

do {
cout << "Masukkan sebuah angka positif: ";
cin >> number;
} while (number <= 0);

cout << "Angka berhasil dimasukkan adalah " << number << endl;
}

Penjelasan Program: program diminta untuk memasukkan angka positif . disini program
menggunakan program do while dimana program akan mengekseskusi kode sekali
sebelum pengecekan kondisi, ketika kondisi tidak terpenuhi atau ketika kita memasukkan
angka negative maka program akan berhenti.

2. Ketik kode program di bawah ini dengan menggunakan Visual Studio, kemudian compile
dan jalankan program tersebut. Jelaskan dan simpulkan hasil program.
#include <iostream>
using namespace std;

int main() {
int base, exp, result = 1;

cout << "Masukkan angka: ";


cin >> base;

cout << "Masukkan pangkat: ";


cin >> exp;

cout << base << "^" << exp << " adalah ";

while (exp != 0) {
result = result * base;
exp--;
}

cout << result << endl;


}

Penjelasan program: program diminta untuk menghitung pangkat dari angka yang
dimasukkan user, program ini menggunakan perulangan while, dimana ini tidak
membutuhkan jumlah perulangan pasti namun program akan dicek apakah data yang
dimasukkan benar atau salah. Jika program salah maka nprogram akan berhenti.

3. Ketik kode program di bawah ini dengan menggunakan Visual Studio, kemudian compile
dan jalankan program tersebut. Jelaskan dan simpulkan hasil program.
#include <iostream>

using namespace std;

int main() {
for (int i = 1; i < 100; i++) {
if (i % 2 == 0) {
cout << i << " ";
}
}
}
Penjelasan program:
Program tersebut diminta untuk melakukan perulangan menggunakan for, dimana
program digunakan untuk mencetak bilangan genap dari 1 hingga 99. Loop akan
berulang sebanyak 99 kali dan pada setiap perulangannya program akan mengecek
apakah bilangan tersebut bilangan genap atau bukan menggunakan operator %, jika
program tersebut merupakan bilangan genap maka program akan menampilkan
bilangan tersebut.

VI. TUGAS PRAKTIKUM


1. Buatlah sebuah program sederhana yang menerima input kalimat yang akan
diulang dan jumlah pengulangan (n). Program akan menampilkan kalimat
tersebut dalam n kali.
Source code:

#include <iostream>
#include <string>
using namespace std;

int main() {
string kalimat;
int n;
cout <<"Masukkan kalimat: ";
getline(cin,kalimat);
cout << "Masukkan jumlah pengulangan: ";
cin>> n;
for (int i= 1; i<10; i++) {
cout << kalimat << endl;
}
return 0;
}

Output:

Penjelasan Program:
Disini program dibuat untuk menampilkan kalimat yang di ulangi sampai 9 kali.
Menggunakan perulangan for, dengan menggunakan tipe data integer dan
string. Menggunakan getline untuk menambah baris agar output yang
dikeluarkan tidak menyamping tapi turun kebawah.

2. Buatlah program yang menerima input integer a dan b. Kemudian program


akan menampilkan bilangan prima dari rentang a hingga b.
Source code:

#include <iostream>

using namespace std;

bool is_prime(int n) {
if (n<5) {
return false;
}
for (int i = 2; i*i <= n; i++) {
if (n % i == 0) {
return false;
}
}
return true;
}

int main() {
int a,b;
cout << "Masukkan nilai a: ";
cin >> a;
cout << "Masukkan nilai b: ";
cin >> b;

cout << "Bilangan prima antara " << a << "dan" << b << "adalah: "
<< endl;
for (int i=a; i<=b; i++) {
if (is_prime(i)) {
cout << i << endl;
}
}
return 0;
}

Output program:

Penjelasan program:
Pada program di atas, terdapat dua fungsi yaitu `is_prime() dan '`main()`. Fungsi
is_prime() digunakan untuk mengecek apakah suatu bilangan adalah bilangan
prima atau bukan. Fungsi ini akan mengembalikan nilai `true` jika bilangan
tersebut merupakan bilangan prima dan mengembalikan nilai `false` jika bukan.

Pada fungsi main(), program akan meminta input dari user berupa nilai a dan b
menggunakan fungsi `cin`. Kemudian, program akan menampilkan bilangan
prima dari rentang a hingga b menggunakan loop `for`. Setiap bilangan pada
rentang tersebut akan dicek menggunakan fungsi `is_prime(), dan jika
merupakan bilangan prima maka akan ditampilkan pada layar menggunakan
fungsi `cout`.

3. Buatlah program yang menerima input integer n kemudian program akan


menampilkan bilangan fibonacci ke-n.
Source code:

#include <iostream>
using namespace std;
int fibonacci(int n) {
if (n <= 1) {
return n;
}
else {
return fibonacci(n-1)+ fibonacci(n-2);
}
}

int main() {
int n;
cout << "Masukkan nilai n: ";
cin >> n;

cout << "Bilangan Fibonacci ke-" << n << "adalah: " << fibonacci(n)
<< endl;

return 0;
}

Output Program:

Penjelasan Program:
Pada program di atas, terdapat satu fungsi yaitu 'fibonacci() dan satu blok
utama. Fungsi fibonacci() digunakan untuk menghitung bilangan Fibonacci ke-n
menggunakan rekursi.

Pada blok utama, program akan meminta input dari user berupa nilai n
menggunakan fungsi `cin. Kemudian, program akan memanggil fungsi
fibonacci() dengan argumen n dan menampilkan hasilnya menggunakan fungsi
`cout'.

4. Buatlah sebuah program yang menyelesaikan permasalahan di sekitar dengan


perulangan. Kemudian jelaskan hasil dari program tersebut.
Source Code:
#include <iostream>
using namespace std;

int main() {
int n, fact = 1;
cout << "Masukkan nilai n: ";
cin >> n;

for (int i = 1; i <= n; i++) {


fact *=i;

cout << "Factorial dari " << n << " adalah " << fact << endl;

return 0;
}

Output Program:

Penjelasan Program:
Pada program di atas, program akan meminta input dari user berupa nilai
n menggunakan fungsi 'cin. Kemudian, program akan menghitung
faktorial dari n menggunakan perulangan 'for'. Variabel fact akan
digunakan untuk menyimpan nilai faktorial sementara, dimana nilai
awalnya adalah 1. Pada setiap iterasi perulangan, nilai 'fact akan dikalikan
dengan nilai i. Setelah selesai melakukan perulangan, program akan
menampilkan hasil faktorial menggunakan fungsi 'cout'.

VII. KESIMPULAN
1. Perintah while digunakan untuk mengulangi blok kode selama kondisi tersebut
terpenuhi.
2. Blok kode sksn terus terulang selam kondisi tersebut terpenuhi atau kondisi true,
ketika kondisi tersebut salah maka program akan berhenti.
3. Perintah break digunakan untuk menghentikan program perulangan yang sedang
berjalan. Dan akan lanjut ke ekseskusi kode selanjutnya
4. Perintah countinue digunakan untuk melanjutkan dan digunakan untuk
menghindari eksekusi kode yang tidak diperlukan sehingga mengoptimalkan
program
5. Perintah goto digunkan untuk kembali ke menu awal.
6. Perintah for digunakan untuk melakukan perulangan sebanyak jumlah kondisi yang
terpenuhi dan ditentukan.
7. Perintah do while juga digunakan untuk mengulangi blok kode selama kondisi
terpenuhi

5. DAFTAR RUJUKAN
1. Stroustrup, B. (2013). The C++ Programming Language, 4th Edition. Addison-
Wesley Professional.
2. Sutter, H., & Alexandrescu, A. (2004). C++ Coding Standards: 101 Rules,
Guidelines, and Best Practices. Addison-Wesley Professional.
3. Eckel, B. (2000). Thinking in C++, Volume 1: Introduction to Standard C++, 2nd
Edition. Prentice Hall.
4. Liberty, J., & Cadenhead, R. (2002). Teach Yourself C++ in 24 Hours, 2nd
Edition. Sams Publishing.

Anda mungkin juga menyukai