Anda di halaman 1dari 108

PRAKTIKUM

DASAR PEMROGRAMAN KOMPUTER

DI SUSUN OLEH :
NAMA: IWANG FITRAH PERDANA
NIM : 180150026

Laboratorium Teknik Elektro


Universitas Malikussaleh
2019

1
KATA PENGANTAR

Assalamu’alaikum warahmatullahi wabarakatuh

Segala puji bagi Allah SWT yang telah memberikan saya kemudahan sehingga saya
dapat menyelesaikan makalah ini dengan tepat waktu. Tanpa pertolongan-Nya
tentunya saya tidak akan sanggup untuk menyelesaikan makalah ini dengan baik.
Shalawat serta salam semoga terlimpah curahkan kepada baginda tercinta kita yaitu
Nabi Muhammad SAW yang kita nanti-natikan syafa’atnya di akhirat nanti.

Penulis mengucapkan syukur kepada Allah SWT atas limpahan nikmat sehat-Nya, baik
itu berupa sehat fisik maupun akal pikiran, sehingga penulis mampu untuk
menyelesaikan pembuatan makalah sebagai tugas dari mata kuliah Dasar Program
Komputer dengan judul “Praktikum Dasar Pemrograman Komputer”.

Saya Mengucapkan Terima kasih Kepada Bapak Taufiq,S.T,M.T selaku pembimbing


dan Bapak Andik Bintoro,S.T, M.Eng selaku Dosen Praktikum Dasar pemorograman
Komputer yang telah membimbing saya untuk menyelesaikan tugas makalah ini .

Lhokseumawe , Desember 2019

IWANG FITRAH PERDANA

2
DAFTAR ISI

KATA PENGANTAR ................................................................................................. 1

DAFTAR ISI ............................................................................................................ 3

BAB I ............................................................................................................................ 9

PENGENALAN BAHASA PEMROGRAMAN C++ .............................................. 9

1.1 Latar Belakang ...................................................................................................... 9

1.2 Rumusan Masalah................................................................................................. 9

1.3 Tujuan Instruksional ............................................................................................ 9

1.4 Kompetensi Yang Diharapkan ............................................................................ 9

1.5 Pembahasan ......................................................................................................... 10

BAB II ........................................................................................................................ 13

STRUKTUR PROGRAM C++ ................................................................................ 13

2.1 Latar Belakang ........................................................................................... 13

2.2 Rumusan Masalah ...................................................................................... 13

2.3 Tujuan Instruksional ................................................................................. 13

2.4 kompetensi Yang Diharapkan ................................................................... 13

2.5 Pembahasan ................................................................................................ 14

2.5.1 Percobaan 1: Program 1-1 ..................................................................... 14

2.5.2 Tuliskan Outputnya................................................................................ 14

2.5.3 Percobaan 2 : Program 1-2 .................................................................... 14

2.5.4 Tuliskan Outputnya................................................................................ 15

2.5.5 Percobaan 3 :Program 1-3 ..................................................................... 15

3
2.5.7 Percobaan 4 :Program 1-4 ..................................................................... 16

2.5.8 Tuliskan output ....................................................................................... 17

2.5.9 Percobaan 5 :Program 1-5 ..................................................................... 18

2.5.10 Tuliskan Output ...................................................................................... 18

2.6 Soal Latihan ..................................................................................................... 19

Tuliskan program anda ................................................................................. 19

BAB III ....................................................................................................................... 21

TIPE DATA FUNDAMENTAL PADA C++ .......................................................... 21

3.1 Latar Belakang ........................................................................................... 21

3.2 Rumusan Masalah ...................................................................................... 21

3.3 Tujuan Instruksional ................................................................................. 21

3.4 kompetensi Yang Diharapkan ................................................................... 21

3.5 Pembahasan ................................................................................................ 22

3.5.1 Percobaan 1 :Program 2-1 ........................................................................... 22

3.5.2 Tuliskan output pada kode program anda ................................................ 22

3.5.3 Percobaan 2 :Program 2-2 ........................................................................... 23

3.5.4 Tuliskan output pada kode program anda dan jelaskan! ........................ 23

3.6 Soal Latihan ................................................................................................ 24

BAB IV ................................................................................................................... 27

OPERATOR C++ .................................................................................................. 27

4.1 Latar Belakang .................................................................................................... 27

4.2 Rumusan Masalah............................................................................................... 28

4.3 Tujuan Instruksional .......................................................................................... 28

1.4 Kompetensi Yang Diharapkan .......................................................................... 28

4
4.5 Pembahasan ......................................................................................................... 29

4.5.1 Percobaan 1: Program 3-1 ..................................................................... 29

4.5.2 Tuliskan output pada kode program anda dan jelaskan! ................... 30

4.5.3 Percobaan 2 : Program 3-2 .................................................................... 31

4.5.4 Tuliskan Outputnya................................................................................ 31

4.5.5 Percobaan 3 :Program 3-3 ..................................................................... 32

4.5.6 Tuliskan output pada kode program anda dan jelaskan! ................... 33

4.5.7 Percobaan 4 :Program 3-4 ..................................................................... 34

4.5.8 Tuliskan output pada kode diatas , lalu jelaskan! ............................... 34

4.6 Soal Latihan .................................................................................................... 35

BAB V......................................................................................................................... 42

5.1 Latar Belakang .................................................................................................... 42

5.2 Rumusan Masalah............................................................................................... 42

5.3 Tujuan Instruksional .......................................................................................... 42

5.4 Kompetensi Yang Diharapkan .......................................................................... 43

5.5 Pembahasan .................................................................................................... 43

5.3.1 Percobaan 1: Program 4-1 ..................................................................... 43

5.3.4 Tuliskan Outputnya, lalu Jelaskan ! ..................................................... 43

5.3.3 Percobaan 2 : Program 4-2 .......................................................................... 44

5.3.5 Tuliskan Outputnya, lalu Jelaskan ! ..................................................... 44

5.3.6 Percobaan 3 :Program 4-3 ..................................................................... 45

5.3.7 Tuliskan outputnya , lalu Jelaskan ! ..................................................... 46

5.3.8 Percobaan 4 :Program 4-4 ..................................................................... 47

5.3.9 Tuliskan output, lalu Jelaskan ! ............................................................ 48

5
5.3.10 Percobaan 5 :Program 4-5 ..................................................................... 49

5.3.11 Tuliskan Output , lalu Jelaskan ! .......................................................... 50

5.6 Soal Latihan ..................................................................................................... 51

BAB VI ....................................................................................................................... 56

PENGULANGAN ..................................................................................................... 56

6.1 Latar Belakang .................................................................................................... 56

6.2 Rumusan Masalah............................................................................................... 56

6.3 Tujuan Instruksional .......................................................................................... 57

6.4 Kompetensi Yang Diharapkan .......................................................................... 57

6.5 Pembahasan .................................................................................................... 57

6.5.1 Percobaan 1: Program 5-1 ..................................................................... 57

6.5.2 Tuliskan Outputnya, lalu jelaskan !...................................................... 57

6.5.3 Percobaan 2 : Program 5-2 .......................................................................... 58

6.5.4 Tuliskan Outputnya, lalu jelaskan !...................................................... 59

6.5.5 Percobaan 3 :Program 5-3 ..................................................................... 59

6.5.6 Tuliskan outputnya , lalu jelaskan ! ...................................................... 60

6.5.7 Percobaan 4 :Program 5-4 ..................................................................... 60

6.5.8 Tuliskan output, lalu jelaskan ! ............................................................. 61

6.5.9 Percobaan 5 :Program 5-5 ..................................................................... 61

6.5.10 Tuliskan Output, lalu jelaskan ! ............................................................ 62

6.5.11 Percobaan 5 :Program 5-6 ..................................................................... 63

6.5.12 Tuliskan Output, lalu jelaskan ! ............................................................ 63

6.6 Soal Latihan ..................................................................................................... 64

BAB VII ..................................................................................................................... 73

6
PENGENALAN BAHASA PEMROGRAMAN C++ ............................................ 73

7.1 Latar Belakang .................................................................................................... 73

7.2 Rumusan Masalah............................................................................................... 74

7.3 Tujuan Instruksional .......................................................................................... 74

7.4 Kompetensi Yang Diharapkan .......................................................................... 74

7.5 Pembahasan .................................................................................................... 74

7.5.1 Percobaan 1: Program 6-1 ..................................................................... 74

7.5.2 Tuliskan Outputnya, lalu jelaskan!....................................................... 75

7.5.3 Percobaan 2 : Program 6-2 .......................................................................... 76

7.5.3 Tuliskan Outputnya, lalu jelaskan!....................................................... 76

7.5.4 Percobaan 3 :Program 6-3 ..................................................................... 77

7.5.5 Tuliskan outputnya, lalu jelaskan! ........................................................ 78

7.5.6 Percobaan 4 :Program 6-4 ..................................................................... 81

Tuliskan output, lalu jelaskan!............................. Error! Bookmark not defined.

7.6 Soal Latihan ..................................................................................................... 83

BAB VIII .................................................................................................................... 90

ARRAY ...................................................................................................................... 90

8.1 Latar Belakang .................................................................................................... 90

8.2 Rumusan Masalah............................................................................................... 91

8.3 Tujuan Instruksional .......................................................................................... 91

8.4 Kompetensi Yang Diharapkan .......................................................................... 91

8.5 Pembahasan .................................................................................................... 91

8.5.1 Percobaan 1: Program 7-1 ..................................................................... 91

8.5.2 Tuliskan Outputnya, lalu jelaskan!....................................................... 92

7
8.5.3 Percobaan 2 : Program 7-2 .......................................................................... 93

8.5.4 Tuliskan Outputnya, lalu jelaskan!....................................................... 94

8.5.5 Percobaan 3 :Program 7-3 ..................................................................... 94

8.5.6 Tuliskan outputnya, lalu jelaskan! ........................................................ 95

8.5.7 Percobaan 4 :Program 7-4 ..................................................................... 96

8.5.8 Tuliskan output, lalu jelaskan! .............................................................. 96

8.5.9 Percobaan 5 :Program 7-5 ..................................................................... 97

8.5.10 Tuliskan Output, lalu jelaskan! ............................................................. 97

8.5.11 Percobaan 5 :Program 7-6 ..................................................................... 98

8.5.12 Tuliskan Output, lalu jelaskan! ............................................................. 99

8.6 Soal Latihan ................................................................................................ 99

8
BAB I

PENGENALAN BAHASA PEMROGRAMAN C++

1.1 Latar Belakang


Pada bagian ini, kita akan mendiskusikan bahasa pemrogrman C++. Mulai dari
sejarah perkembangan bahasa C++ samapai dengan kelibihan dan kekuranga yang
dimiliki oleh bahsa pemrograman C++. Sejarah merupakan hal yang tudak bisa
terlepaskan denganmunculya suatu penemuan baru. Tanpa mengerti sejrah kita akan
merasa bingung latar dari penemuan tersebut. Kelebihan merupakan hal wajar yang
mesti dimiliki oleh penemuan baru, akan tetapi kelebihan tersebut tidak akan berdiri
sendiri tanpa adanya kekurangan yang dimilikinya.

1.2 Rumusan Masalah


1. Siapa Penemu C++ ?
2. Apakah yang di maksud compiler ?
3. Sebutkan kelebihan dan kekurangan c++ (minimal 5) !
1.3 Tujuan Instruksional

Memahami bahasa pemrograman c++ Pokok bahasan ini menjelaskan tentang sejarah
perkembangan Bahasa c++ serta keunggulan dan kekurangan Bahasa c++

1.4 Kompetensi Yang Diharapkan


Mahasiswa diharapkan mengetahui sejarah serta keunggulan dan kelemahan Bahasa
pemrograman c++

Waktu Pertemuan : 100 menit

9
1.5 Pembahasan

Bahasa C++ diciptakan oleh Bjarne Stroustrup di AT&T Bell Laboratories awal
tahun 1980an berdasarkan C ANSI (American National Standard Institute). Pertama
kali, prototype C++ muncul sebagai C yang dipercanggih dengan fasilitas kelas. Bahasa
tersebut disebut C dengan kelas ( C wih class).

Selama tahun 1983-1984, C dengan kelas disempurnakan dengan


menambahkan fasilitas pembebanlebihan operator dan fungsi yang kemudian
melahirkan apa yang disebut C++. Symbol ++ merupakan operator C untuk operasi
penaikan, muncul untuk menunjukkan bahwa bahasa baru ini merupakan versi yang
lebih canggih dari C.

Borland International merilis compiler Borland C++ dan Turbo C++. Kedua
compiler ini sama-sama dapat digunakan untuk mengkompilasi kode C++. Bedanya,
Borland C++ selain dapat digunakan dibawah lingkungan DOS, juga dapat digunakan
untuk pemrograman Windows. Selain Borland International, beberapa perusahaan lain
juga merilis compiler C++, seperti Topspeed C++ dan Zortech C++.

C++ diciptakan untuk mendukung pemrograman berorientasi pada objek


(Object Oriented Pragramming /OOP) yang tidak dimiliki C. sementara C merupakan
bahasa pemrograman terbaik dilingkungannya, bahasa ini tidak memiliki kemampuan
OOP. Reputasi C tidak diragukan lagi dalam menghasilkan program .EXE berukuran
kecil, eksekusi yang cepat, antarmuka (interfacing) yang sederhana dengan bahasa lain
dan fleksibilitas pemrograman. Apa yang membuat C tampak sukar dipelajari mungkin
karena tiadanya pemeriksaan tipe. Sebagai contoh, dapat mencampur bilangan bulat
dengan string untuk menghasilkan karakter. Namun, justru dsitu letak fleksibilitas C,
dapat mengolah data C sebebas mengolah data dalam bahasa assembly.

 Kelebihan dan Kekurangan C++


 Kelebihan C++

10
1. Bahasa Standard-nya ANSI bisa dipakai diberbagai platform.
2. Kecepatan program jika dibanding dengan program yang sama buatan bahasa
lain, relatif lebih cepat.
3. Kode bahasa C++ dengan portabilitas dan fleksibilitas yang tinggi untuk semua
jenis komputer.
4. Bahasa C++ tersedia hampir di semua jenis komputer.
5. Kode program bersifat reuseable, sehingga dapat digunakan kembali pada project
lain dengan hanya menggunakan library dan file header.
6. Bahasa C++ hanya menyediakan sedikit kata-kata kunci (hanya terdapat 48 kata
kunci).
7. Dukungan pustaka fungsi dan kelas yang banyak sehingga memungkinkan
pembuatan aplikasi makro.
8. C++ adalah bahasa yang terstruktur, dengan demikian akan lebih mendukung
OOP.
9. Bahasa C++ termasuk bahasa tingkat menengah dan lebih dekat dengan bahasa
mesin.
10. C++ dapat membuat aplikasi graphic processor berkualitas tinggi.

 Kekurangan
1. C++ tidak murni OOP sehingga kurang cocok untuk mengajarkan Konsep OOP
karena kaidah- kaidah OOP dapat dilanggar. Dan di C++ ada konsep pointer yang
sangat membingunkan, ini salah satu alasan mengapa C++ menjadi sesuatu yg
paling tidak disukai.
2. C++ walapun tidak terpengaruh oleh Sistem Operasi tetapi tool untuk
developmentnya harus spesific pada salah satu sistem operasi contoh Visual Studio
hanya dapat berjalan di Windows. Alasan ini juga nantinya akan dapat
menurunkan minat terhadap sistem operasi yang lain contohnya Linux. Apabila
dalam praktiknya menggunakan Visual Studio maka otomatis akan

11
menggunakannya juga dan pada akhirnya malas untuk mencoba sistem operasi
yang lain.
3. Implementasi C++ dalam teknologi IT pada saat sekarang sudah sangat sedikit
sekali.
4. Sulitnya untuk membuat sesuatu dengan C++ sehingga kepeminatannya dalam
memperdalam programming akhirnya harus kandas, kecuali dengan inisiatif
sendiri mempelajari bahasa/teknologi lain.

12
BAB II

STRUKTUR PROGRAM C++

2.1 Latar Belakang


Pada materi ini, kita akan mempelajari tentang struktur program dari C++.
Stuktur dari program C++ mencakup komponen-komponen seperti file header,
deklarasi variabel, int main(), pernyataan output dan lain sebagainya.

2.2 Rumusan Masalah


1. Sebutkan macam – macam editor c++?

2.3 Tujuan Instruksional


Memahami struktur program c++ Pokok bahasan ini menjelaskan tentang
struktur program c++ yaitu komponen-komponen program, cara menggunakan
namespace, serta fungsi cin.getline dan cin.

2.4 kompetensi Yang Diharapkan

Mahasiswa diharapkan mengetahui definisi komponen-komponen pada sebuah


program c++, menggunakan namespace, dan membedakan fungsi cin.getline dan cin

Waktu Pertemuan : 100 menit

13
2.5 Pembahasan

2.5.1 Percobaan 1: Program 1-1

#include <iostream>

int main()
{
std::cout << “Selamat datang di Algoritma dan Pemrograman”<<
std::endl;
std::cout << “Ada yang bisa dibantu ?” <<
std::endl;
return 0;
}

2.5.2 Tuliskan Outputnya

2.5.3 Percobaan 2 : Program 1-2

#include <iostream>

using namespace std; int main()

cout<<"\"Selamat Datang\"\n";

cout<<"\tMahasiswa/i Komputer 2015\?"<<endl;

cout<<"\'Di Universitas Lampung\'"<<endl;

return 0;

} 14
2.5.4 Tuliskan Outputnya

2.5.5 Percobaan 3 :Program 1-3

#include <iostream>

using namespace std;

namespace NS1 {

int n = 3;

float m = 2.5;

int k = 2;

double R = n*m*k;

namespace NS2 {

float n = 4.0;

int m = 2 ;

double k = 3.0 ;

double R = n*m*k;

int main(){ 15
int Square;
int Product;

using namespace NS2;

Square = n*n + m*m ;

Product = NS1::k * NS2::m;

cout << "Square = " << Square << ",\t Product = " << Product<<endl; cout<< " R =
"<< NS1::R <<endl; cout << " R = " <<NS2::R<< endl; return 0 ;

2.5.6 Tuliskan outputnya :

2.5.7 Percobaan 4 :Program 1-4

#include <iostream>
using namespace std;
int main() {
int x =205;
double PI=3.141592653589793, y=4564.2318765;
cout.fill(‘-’);

16
cout.width (6);
cout<<x<<endl;
cout.precision(8);
cout.width(16);
cout<<PI<<endl;
cout.precision(6);
cout.fill(‘ ’);
cout.width(10);
cout<<y<<endl;
return 0;
}

2.5.8 Tuliskan Output

17
2.5.9 Percobaan 5 :Program 1-5

#include <iostream>
using namespace std; int main() {
char kata [30];
cout<<"Tulis dua buah kata : ";
cin.getline(kata,30);
cout<<"Kamu menulis "<<"Ayam Geprek"<<"\n";
cout<<"Tulis lagi dua buah kata : "; cin>> kata;
cout<<"Kamu menulis "<<"Sangat Enak"<<"\n";
return 0;

2.5.10 Tuliskan Output

18
2.6 Soal Latihan
1. Tulislah program yang dapat mencetak segitiga sama kaki dengan
menggunakan simbol asterisk (*)!

*
***
*****
*******
*********
***********

 Tuliskan program anda


#include <iostream>
using namespace std;
int main() {
char kata [30];
cout<<"gambar segitiga sama kaki : ";
cin.getline(kata,30);
cout<<" "<<"*"<<"\n";
cout<<" "<<"***"<<"\n";
cout<<" "<<"*****"<<"\n";
cout<<" "<<"*******"<<"\n";
cout<<" "<<"*********"<<"\n";
cout<<" "<<"***********"<<"\n";
return 0;
}

19
2. Identifikasi syntax di bawah agar dapat di running dengan benar!

#include <iostream>; using namespace STD; int main(); {


INT x = 201;
double u = 12222,122, v = 222.222;
cout.fill('-'); cout.width(6) cout << u < endl; cout.precision(10) ;
cout.width(8);
cout << PI << endl cout.precision(5) coutwidth(90) return 0;
}

 Tuliskan program anda yang benar disini!

#include <iostream>
using namespace std;
int main()
{
int x = 201;
double u = 12222.122, v = 222.222;
cout.fill('-');
cout.width(6) ;
cout << u << endl;
cout.precision(10) ;
cout.width(8);
cout << v << endl ;
cout.precision(5) ;
cout.width(90);
return 0;
}

20
BAB III

TIPE DATA FUNDAMENTAL PADA C++

3.1 Latar Belakang


Pada bagian ini, kita akan mendiskusikan mengenai tipe data yang
terdapat pada C++. Terdapat macam-macam tipe data yang ada di C++ seperti
tipe bilangan bulat (int), riil (seperti float atau double), karakter (seperti char
atau string) dan lain-lain. Struktur untuk mendeklarasikan sebuah variabel
dengan tipe data tertentu adalah sebagai berikut: type identifier tipe merujuk
pada tipe data apa yang ingin kita deklarasikan bersama dengan variabel yang
dirujuk pada kata identifier.

3.2 Rumusan Masalah


1. Terdapat sebuah lingkaran dengan diameter 10 cm, persegi panjang dengan
panjang 5 cm dan lebar 1.5 cm, dan sebuah segitiga dengan panjang alas 4 dan
tinggi 2.5. Buatlah program untuk menghitung luas masing-masing bangun
datar tersebut!
3.3 Tujuan Instruksional
Memahami tipe data fundamental pada c++ Pokok bahasan ini
menjelaskan tentang tipe data fundamental c++ yaitu macam-macam tipe data
serta cara mendeklarasikan variable
3.4 kompetensi Yang Diharapkan
Mahasiswa diharapkan mengetahui macam-macam tipe data dan cara
mendeklarasikan variable dengan tipe data tertentu.
Waktu Pertemuan : 100 menit

21
3.5 Pembahasan
3.5.1 Percobaan 1 :Program 2-1
#include <iostream>
using namespace std;
int main()
{
int umur=20;
double PI=3.1415926535;
char Tambah = '+';
char Sungai[] = "Sungai Ciliwung";
string Danau = "Danau Toba";
cout << "umur: " << umur << endl;
cout << "PI: " << PI << endl;
cout << "Tambah: " << Tambah << endl; cout << "Sungai: " << Sungai <<
endl; cout << "Danau: " << Danau << endl; return 0;
}

3.5.2 Tuliskan output pada kode program anda

22
3.5.3 Percobaan 2 :Program 2-2
#include <iostream>
using namespace std;
int main() {
int n=5,D=5, x=1, m=5;
float y=1.5;
cout <<"n*n = " << n*n << ", y*y = "<< y*y <<endl;
cout << "m*D = "<< m*D << endl;
bool B = (x == y);
bool C = (y*y == 2.25);
cout << "B = " << B<< ", C = " << C<<endl;
return 0;
}

3.5.4 Tuliskan output pada kode program anda dan jelaskan!


Output: Penjelasan :
-Bahasa c++ membedakan antara
huruf besar dengan huruf kecil
-Setiap akhir perintah diakhiri
dengan tanda titik kom (;)
-Kenapa program di samping
terjadi kesalahan !. hal ini
disebabkan ada kekurangandalam
penulisan “cout <<"n*n = " << n*n
<< ", y*y = "<< y*y <<endl; “
kurang tanda titik koma (;). Letak
kesalahan iniakan ditujukan Bahasa
C++ dengan menginformasikan
letak baris yang terjadi kesalahan

23
serta penjelasan kenapa terjadi
kesalahan. Jadi …. Agar tidak
bingung saat terjadi kesalahan, lihat
pesan kesalahan dan konsentrasi
pada letak baris kesalahan dan
lakukan perbaikan.

3.6 Soal Latihan


1. Terdapat sebuah lingkaran dengan diameter 10 cm, persegi panjang dengan
panjang 5 cm dan lebar 1.5 cm, dan sebuah segitiga dengan panjang alas 4 dan
tinggi 2.5. Buatlah program untuk menghitung luas masing-masing bangun
datar tersebut!

 Tuliskan program anda


 Untuk lingkaran dengan diameter 10 cm:
#include <iostream>
using namespace std;
int main (){
int d;
float phi=3.14,luas;
cout<<"masukan diameter lingkaran : ";
cin>>d;
luas=phi*d/2;
cout<<"luas lingkaran adalah "<<luas;
return 0;
}
 persegi panjang dengan panjang 5 cm dan lebar 1.5 cm:
#include <iostream>
using namespace std;

24
int main (){
int p,l,luas;
cout<<"masukan panjang persegi panjang(cm) : ";
cin>>p;
cout<<"masukan lebar persegi panjang(cm) : ";
cin>>l;
luas=p*l;
cout<<"luas persegi panjang adalah "<<luas<<" cm";
return 0;
}

 Untuk segitiga dengan panjang alas 4 dan tinggi 2.5:


#include <iostream>
using namespace std;
int main(){
int a,t;
float luas;
cout << "Masukkan panjang alas: ";
cin >> a;
cout << "Masukkan tinggi segitiga: ";
cin >> t;
luas = 0.5*a*t;
cout << "Luas segitiga adalah " << luas << endl;
return 0;
}

2. Mana yang salah dari statement di bawah ini. Benarkanlah!


a. int x = 12.2; c. int shot = 9;
b. char m = A; d. double n = int (B);

25
c. char m = A; harusnya char m = “A”;
d. harusnya short int = 9;

3. Apakah inisialisasi di bawah sudah benar? Jika tidak, tulislah versi yang
benar!
a. int x = 6 c. short int = 9;
b. unsign long = -100; d. enum (senin, selasa, rabu);
a. int x = 6 harusnya int x = 6;
b. unsign long = -100; harusnya unsigned long = -100;
c. enum (senin, selasa, rabu); harusnya enum {senin, selasa, rabu};

26
BAB IV
OPERATOR C++

4.1 Latar Belakang


Operator merupakan symbol yang bisa dilibatkan dalam program untuk
melakukan suatu operasi atau manipulasi, seperti penjumlahan, pengurangan,
perkalian, dan lainlain.Sebelum kita mengenal operator lebih dalam lagi kita harus
mengetahui beberapa istilah yang harus kita ketahui terlebih dahulu :

X=2+8

Maka:

X disebut dengan variable

= disebut dengan operator assignment

2 dan 8 disebut dengan operand

2+8 disebut dengan ekspresi

+ disebut dengan operator aritmatika (penjumlahan)

X=2+8 disebut dengan statemen aritmatika

Pada umumnya operator dibagi menjadi 4 bagian : Operator Assigment, Operator


Unary, Operator Binary, dan Operator Ternary.Pada praktikum ini kita akan
mempelajari tentang assigment, unary, dan sebagian dari binary untuk operator ternary
kita akan mempelajarinya di bagian uji kondisi.

1. Operator Assigment Adalah operator yang berfungsi untuk memasukkan nilai ke


dalam suatu

variabel ataupun konstanta. Operatot ini dilambangkan dengan tanda sama dengan ( =
).

27
2. Operator Binary Adalah operator yang digunakan dalam operasi yang melibatkan
dua buah operand. Dalam C++, operator binary ini dikelompokan ke dalam empat jenis,
yaitu operator aritmatika, logika, relasional, dan bitwise.

4.2 Rumusan Masalah


1. Buatlah sebuah program yang dapat digunakan untuk menghitung volume sebuah
tabung (phi= 3.14)?

2. Buatlah sebuah program ?

3. Buatlah program yang dapat digunakan untuk menghitung panjang sisi miring dari
sebuah segitiga siku-siku ?

4. Buatlah program yang dapat digunakan untuk menghitung diskon suatu barang ?

5. Kembangkan program nomor 4 sehingga dapat menghitung harga total beberapa


barang yang telah di diskon,

4.3 Tujuan Instruksional

Memahami operator c++ Pokok bahasan ini menjelaskan tentang operator c++
yaitu definisi serta cara implementasi operator c++

1.4 Kompetensi Yang Diharapkan


Mahasiswa diharapkan mengetahui konsep dasar operator dan implementasi
konsep operator dalam program

28
4.5 Pembahasan
Berikut adalah tabel operator yang ada di bahasa C++

4.5.1 Percobaan 1: Program 3-1

#include <iostream>
using namespace std;
int main()
{
int P(20);
//int p(20) sama dengan int p = 20

29
int M = 12;
cout << "P = " <<", M = "<< M << endl;
double C (4.56), D;
//doubel C(20) sama dengan int C = 20
D = 6.54;
cout << "C = " <<", D = "<< M << endl;
return 0;
}

4.5.2 Tuliskan output pada kode program anda dan jelaskan!

Output: Penjelasan :
-Bahasa c++ membedakan antara
huruf besar dengan huruf kecil
-Setiap akhir perintah diakhiri
dengan tanda titik kom (;)
-Kenapa program di atas terjadi
kesalahan !. hal ini disebabkan ada
kekurangandalam penulisan “cout
<< "C = " <<", D = "<< M <<
endl;
“kurang tanda (cout<<). Letak
kesalahan iniakan ditujukan
Bahasa C++ dengan
menginformasikan letak baris yang
terjadi kesalahan serta penjelasan
kenapa terjadi kesalahan. Jadi ….
Agar tidak bingung saat terjadi
kesalahan, lihat

30
pesan kesalahan dan konsentrasi
pada letak baris kesalahan dan
lakukan perbaikan.

4.5.3 Percobaan 2 : Program 3-2

#include <iostream>
using namespace std;
int main()
{
int A, B, n;
cout << "Input 2 integer : ";
cin >> A >> B;
cout << "Anda menginput A = " << A << " dan B = " << B <<
endl;
if (A % B)
cout << "A tidak habis dibagi B" << endl;
else
cout << "A habis dibagi B" << endl; return 0;
}

4.5.4 Tuliskan Outputnya

31
Dari percobaan 2, kondisi pada percabangan if adalah A % B. Apa maskud
dari kondisi tersebut, Jelaskan!

Untuk kondisi pertama selalu menggunakan IF (Kondisi 1) THEN, sedangkan


untuk kondisi kedua dan seterusnya selain kondisi terakhir, menggunakan ELSE IF
(kondisi n) THEN, dan untuk kondisi terakhir menggunakan ELSE saja.
Algoritma untuk mencari nilai dalam bentuk A%B, dengan ketentuan
1. Jika nilai > A tidak habis dibagi B
2. jika nilai > A habis dibagi B

4.5.5 Percobaan 3 :Program 3-3

#include <iostream>

using namespace std;

int main()

int m = 3, n = 2, p = 5, l = 12;

32
m += 2; //tidak ada spasi diantara + dan = n -= 1;

p *= 0;

l /= 4;

cout << "m = " << m << ", n = " << n << endl;

cout << "p = " << p << ", l = " << l << endl;

return 0;

4.5.6 Tuliskan output pada kode program anda dan jelaskan!

Output: Penjelasan :
-fungsi main merupakan titik

awal di mana seluruh program C++ akan


mulai dieksekus.

-Instruksi return menyebabkan fungsi main()


berakhir dan mengembalikan kode yang
mengikuti instruksi tersebut, dalam kasus ini 0. Ini
merupakan cara yang paling sering digunakan
untuk mengakhiri program.

- Bahasa c++ membedakan antara huruf besar


dengan huruf kecil.

- Setiap akhir perintah diakhiri dengan tanda titik


koma.

33
4.5.7 Percobaan 4 :Program 3-4
#include <iostream>
using namespace std;
int main()
{
int a = 6, p = 4, c = 3, A, B, C; A = 8 * ++c;
cout << "A = " << A <<"\tc = " << c <<endl;
B = 3 * p--;
cout << "B = " << B <<"\tp = " << p <<endl;
C = p-- * --a;
cout << "C = " << C <<"\ta = " << a <<endl;
return 0;
}
4.5.8 Tuliskan output pada kode diatas , lalu jelaskan!

Penjelasan:
- Hasil program di atas menghasilkan tampilan di layar sebanyak tiga
baris, hal ini dikarenakan dalam program terdapat tiga perintah cout dan
di setiap akhir ada instruksi untuk ganti baris.
-Perintah petik dua (“) mempunyai fungsi untuk mengawali dan
mengakhiri suatu teks/ kalimat. Sehingga penulisan tersebut salah
- Bahasa c++ membedakan antara huruf besar dengan huruf kecil.

34
- Setiap akhir perintah diakhiri dengan tanda titik koma.

- // Komentar baris /* Komentar Blok */  Komentar baris, akan


mengabaikan apapun mulai dari tanda (//) sampai akhir dari baris yang
sama. Komentar Blok, akan mengabaikan apapun yang berada diantara
tanda /* dan */.

 Buatlah kesimpulan dari penggunaan operator increment dan decrement


pada percobaan 4

Pre atau Post Operator Deskripsi


Pre-Increment ++k melakukan penambahan nilai
sebelum variabel itu diproses.
Post-Increment k++ melakukan proses terlebih
dahulu sebelum dilakukan
Pre-Decrement --k variabel k akan ditambahkan 1
penambahan nilai.
angka, baru nilainya
Post-Decrement k-- akan menampilkan
ditampilkan.hasilnya
terlebih dahulu, baru nilai
variabel a naik 1 angka

4.6 Soal Latihan


1. Buatlah sebuah program yang dapat digunakan untuk menghitung volume sebuah
tabung (phi= 3.14), contoh : Test 1

Input :

r=7

t = 10

Output :

V = 1538.600098

35
Programnya :
#include <iostream>
using namespace std;

const double phi=3.14;


double volume;

double volume_tabung(int r, int tinggi)


{
volume = phi*r*r*tinggi;
return volume;
}

int main()
{
double t,r;
cout<<"Menghitung volume Tabung"<<endl;
cout<<"Masukkan jari jari tabung : ";cin>>t;cout<<endl;
cout<<"masukkan tinggi tabung : ";cin>>r;cout<<endl;

cout<<"volume tabung = "<<volume_tabung(t,r)<<endl;


}

36
2. Buatlah sebuah program dengan tampilan berikut :

TEKS 1 TEKS 2
Input : Input :

32 53

Output : Output :

9.000000 125.000000

Program 1 : Program 2 :
#include <iostream> #include <iostream>
#include <math.h> #include <math.h>
using namespace std; using namespace std;
int main() int main()
{ {
float x,y,hasil; float x,y,hasil;
cout<<"bilangan :"; cout<<"bilangan :";
cin>>x; cin>>x;
cout<<"pangkat berapa :"; cout<<"pangkat berapa :";
cin>>y; cin>>y;
hasil = pow(x,y); hasil = pow(x,y);
cout<<hasil; cout<<hasil;
return 0; return 0;
} }

3. Buatlah program yang dapat digunakan untuk menghitung panjang sisi miring dari
sebuah segitiga siku-siku :

37
Input :

Masukkan tinggi (cm) = 5

Masukkan alas (cm) = 6

Output :

Sisi miring = 7.810250 cm

Programnya :
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
double ab,bc;float AC;
cout<<"masukan tinggi = ";
cin>>ab;
cout<<"masukan alas =";
cin>>bc;
AC=(ab*ab)+(bc*bc);
AC=sqrt(AC);
cout<<"sisi miring ="<<AC<<endl;
return 0;
}

4. Buatlah program yang dapat digunakan untuk menghitung diskon suatu barang,
contoh : Test 1 Test 2

38
barang (Rp) = 10000 Input :

Diskon barang (%) = 35 Harga barang (Rp) = 250000

Output : Diskon barang (%) = 30

Jumlah diskon = Rp3.500.000.000 Output :

Jumlah diskon = Rp 7.500.000.000

Programnya :
#include <iostream>

using namespace std;

int main(){
float harga, diskon, total;

cout << "harga barang (RP): ";


cin >> harga;
cout << "diskon barang (%): ";
cin >> diskon;

diskon = (diskon/100)*harga;
total = harga-diskon;

cout << "jumlah diskon: " << diskon << endl;


}

39
5. Kembangkan program nomor 4 sehingga dapat menghitung harga total beberapa
barang yang telah di diskon, contoh :

Test

Input :

Harga barang (Rp) = 1000

Diskon barang (%) = 30

Jumlah barang =5

Output :

Total harga = Rp 3.500.000.000

Programnya :
#include <iostream>
using namespace std;
int main()
{
float harga, diskon,jumlah,potongan, total;
cout << "==========================\n";
cout << "Masukkan harga barang: ";
cin >> harga;
cout << "Masukkan diskon (%): ";
cin >> diskon;
cout << "Masukkan jumlah barang: ";
cin>> jumlah;
cout << "==========================\n";
potongan = (diskon/100)*harga*jumlah;
total = harga-potongan;

40
cout << "Harga asli: " << harga << endl;
cout << "Potongan: " << potongan << endl;
cout << "Total yang harus bayar: " << total << endl;
return 0;
}

41
BAB V
PERCABANGAN

5.1 Latar Belakang


Pada bagian ini, kita akan mendiskusikan mengenai konsep dasar dalam
selection statement dan cara mengimplementasikan selection statements dalam kode
program. Kita akan mendefinisikan apa saja yang termasuk dalam statement selection.
Seperti halnya Pascal, perintah IF dalam C++ juga digunakan untuk menyatakan
pernyataan kondisional (bersyarat). Sintaks sederhana IF adalah if (kondisi)
statement; Statement pada sintaks di atas akan dilakukan jika kondisinya bernilai
TRUE (tidak sama dengan nol).

5.2 Rumusan Masalah


1. Buat program untuk menentukan apakah sebuah karakter termasuk bilangan vocal
atau konsonan ?

2. Buat sebuah program untuk menentukan nilai mutu berdasarkan nilai angka yang di
inputkan ?

3. Seorang pengirim surat menuisakan nama kota pada amplop surat, tetapi tidak
mencantumkan kode pos-nya. Buatlah program yang menerima masukan nama kota
dan menuliskan kode pos kota tersebut ke piranti keluaran. Kota—kota yang tersedia
di dalam hanya 5 ?

5.3 Tujuan Instruksional

Memahami percabangan Pokok bahasan ini menjelaskan tentang percabangan


yaitu konsep dasar selection statements dan implementasinya kedalam program.

42
5.4 Kompetensi Yang Diharapkan
Mahasiswa diharapkan mengetahui konsep dasar selection statements,
statement if, nested if, dan switch dalam program

Waktu Pertemuan : 100 menit

5.5 Pembahasan
5.3.1 Percobaan 1: Program 4-1

#include<iostream>
using namespace std;
main()
{
int a,b; a=15; b=10; if(a>b){
cout<<"True";
}
return 0;
}

5.3.4 Tuliskan Outputnya, lalu Jelaskan !


Output: Penjelasan :
-Bahasa c++ membedakan antara
huruf besar dengan huruf kecil
-Setiap akhir perintah diakhiri
dengan tanda titik kom (;)
-Kenapa program di atas terjadi
kesalahan !. hal ini disebabkan ada
kekurangandalam penulisan “using
namespace std;
“kurang tanda (std;). Letak
kesalahan iniakan ditujukan Bahasa

43
C++ dengan menginformasikan letak
baris yang terjadi kesalahan serta
penjelasan kenapa terjadi kesalahan.
Jadi …. Agar tidak bingung saat
terjadi kesalahan, lihat
pesan kesalahan dan konsentrasi
pada letak baris kesalahan dan
lakukan perbaikan.

5.3.3 Percobaan 2 : Program 4-2

#include<iostream>
using namespace std;
main(){
int a,b;
a=11; b=5; if(a%b==0){
cout<<"True";
}else{
cout<<"False";
}
return 0;
}

5.3.5 Tuliskan Outputnya, lalu Jelaskan !

Output : Penjelasan :
-Bahasa c++ membedakan antara huruf
besar dengan huruf kecil
-Setiap akhir perintah diakhiri dengan
tanda titik kom (;)

44
-Kenapa program di atas terjadi
kesalahan !. hal ini disebabkan ada
kekurangandalam penulisan “ a=11;
b=5; if(a%b==0) “
kurang tanda (;if). Letak kesalahan
iniakan ditujukan Bahasa C++ dengan
menginformasikan letak baris yang
terjadi kesalahan serta penjelasan
kenapa terjadi kesalahan. Jadi …. Agar
tidak bingung saat terjadi kesalahan,
lihat pesan kesalahan dan konsentrasi
pada letak baris kesalahan dan lakukan
perbaikan.

5.3.6 Percobaan 3 :Program 4-3

#include<iostream>
using namespace std;
main()
{
int bilangan;
cout<<"Masukkan bilangan :"; cin>>bilangan; if(bilangan%2==1){
cout<<"Ganjil"<<endl;
if(bilangan>10){
cout<<"diatas 10";

45
}else{
cout<<"dibawah 10";
}
}
}

5.3.7 Tuliskan outputnya , lalu Jelaskan !


Output : Penjelasan :
-Bahasa c++ membedakan antara huruf
besar dengan huruf kecil
-Setiap akhir perintah diakhiri dengan
tanda titik kom (;)
-Kenapa program di atas terjadi
kesalahan !. hal ini disebabkan ada
kekurangandalam penulisan
“cout<<"Ganjil"<<endl;
“kurangnya tanda (endl). Letak
kesalahan iniakan ditujukan Bahasa
C++ dengan menginformasikan letak
baris yang terjadi kesalahan serta
penjelasan kenapa terjadi kesalahan.
Jadi …. Agar tidak bingung saat terjadi
kesalahan, lihat
pesan kesalahan dan konsentrasi pada
letak baris kesalahan dan lakukan
perbaikan.

46
 Ubahlah kode program pada percobaan 3, agar dapat membedakan bilangan
Bulat positif dan negatif (Tanpa merubah keputusan genap dan ganjil) !
Tulis kode nya di bawah ini!
#include<iostream>
using namespace std;
int main(){

int bilangan;
cout << "menentukan bilangan bulat positif/negatif/nol \n";
cout << "masukkan bilangan : ";
cin >> bilangan;

if ( bilangan == 0 )
cout << "bilangan nol " << endl;
else if ( bilangan % 2 == 0 && bilangan > 0 )
cout << "bilangan genap positif " << endl;
else if ( bilangan % 2 == 0 && bilangan < 0 )
cout << "bilangan genap negatif " << endl;
else if ( bilangan % 2 != 0 && bilangan > 0 )
cout << "bilangan ganjil positif " << endl;
else
cout << "bilangan ganjil negatif " << endl;

return 0;
}

5.3.8 Percobaan 4 :Program 4-4

#include<iostream>
using namespace std;
int main()
{
int x;
{
cout<<"Masukkan suhu = ";
cin>>x;
}
if(x<=0)
{
cout<< "Bentuk padat";

47
}
else if(x>0 && x<100)
{
cout<<"Bentuk cair";
}
else if(x>=100)
{
cout<<"Bentuk gas";
}
return 0;
}

5.3.9 Tuliskan output, lalu Jelaskan !


Output : Penjelasan :
-Bahasa c++ membedakan
antara huruf besar dengan huruf
kecil
-Setiap akhir perintah diakhiri
dengan tanda titik koma (;)
-Kenapa program di atas terjadi
kesalahan ? hal ini disebabkan
karena adanya variabel “x”
sebelum int(integer) sehingga
pada saat ingin di compile
terjadi kesalahan.
Agar tidak bingung saat terjadi
kesalahan, lihat
pesan kesalahan dan konsentrasi
pada letak baris kesalahan dan
lakukan perbaikan.

48
Modifikasilah kode program pada percobaan 4, agar dapat menerima
inputan bilangan desimal ! Contoh: Masukkan suhu = 12.3 Benda dengan suhu
12.3 berbentuk padat

Tulis kode nya disini

#include<iostream>
using namespace std;
main(){
int x;
cout<<"Masukkan suhu = "; cin>>x;
if(x<=0){
cout<< "Bentuk cair";
}else if(x>0 && x<12.3){
cout<<"Bentuk padat";
}else if(x>12.3){
cout<<"Bentuk gas";
}
return 0;
}

5.3.10 Percobaan 5 :Program 4-5

#include<iostream>
using namespace std;
main()
{
int kota;
cout<<"Masukkan angka kota=";
cin>>kota;
switch(kota) {

49
case 1:cout<<"Jakarta";break; case 2:cout<<"Bandung";break; case
3:cout<<"Bogor";break; case 4:cout<<"Jogja";break;
default :cout<<"Angka kota salah";break;
}
return 0;
}

5.3.11 Tuliskan Output , lalu Jelaskan !


Output : Penjelasan :
-Kenapa program di atas terjadi
kesalahan ?
hal ini disebabkan
karena tidak diberi penjelasan untuk
output kota yang akan dikeluarkan
contohnya : switch
(bogor,Jakarta,dll).

Modifikasilah kode program pada percobaan 5, agar dapat mencetak output kode
kendaraan bermotor (1 digit abjad) !
Contoh:Kode kendaraan : A, Kode kendaraan A adalah Banten
Tulis kodenya disini!
#include<iostream>
using namespace std;
main()
{
int kota;

50
cout<<"Masukkan angka kota=";
cin>>kota;
switch(kota)
{
case 1:cout<<"kode kendaraan A adalah Jakarta";break;
case 2:cout<<"kode kendaraan B adalah Bandung";break;
case 3:cout<<"kode kendaraan C adalah Bogor";break;
case 4:cout<<"kode kendaraan D adalah Jogja";break;
default :cout<<"Angka kota salah";break;
}
return 0;
}

5.6 Soal Latihan

1. Buat program untuk menentukan apakah sebuah karakter termasuk bilangan vocal
atau konsonan.

Input1

Masukkan karakter : a

Output1

Huruf Vokal

Input2

Masukkan karakter : K Output2

Huruf Konsonan

Programnya :
#include<iostream>
using namespace std;
int main ( )
{
char H;
cout<<"masukkan huruf = ";
cin>>H;

51
if (H == 'a' || H == 'e' || H == 'i' || H == 'u' || H == 'o')
cout<<"huruf vokal";
else
cout<<"huruf konsonan "<<endl;
return 0;
}

2. Buat sebuah program untuk menentukan nilai mutu berdasarkan nilai angka yang
di inputkan

(berupa desimal), ketentuan nilai :

>76 nilai mutu A

>70 dan < 76 nilai mutu B

>65 dan < 70 nilai mutu C

>50 dan < 65 nilai mutu D

≤50 nilai mutu E

Input1

Masukkan nilai : 73.41

Output1

Nilai mutu : B

Input2

Masukkan nilai : 50.52

Output2

Nilai mutu : D

52
Programnya :
#include <iostream>
using namespace std;
int main()
{
int a;
cout<<"Masukkan Nilai Siswa : ";
cin>>a;
if((a>=76))
{
cout<<"Nilai Siswa A"<<endl;
}
else if((a>=70)&&(a<=76))
{
cout<<"Nilai Siswa B"<<endl;
}
else if((a>=65)&&(a<=70))
{
cout<<"Nilai Siswa C"<<endl;
}
else if((a>=50)&&(a<=65))
{
cout<<"Nilai Siswa D"<<endl;
}
else if((a>=0)&&(a>=50))
{
cout<<"Nilai Siswa E"<<endl;
}
else

53
{
cout<<"Input Error";
}
return 0;
}

3. Seorang pengirim surat menuisakan nama kota pada amplop surat, tetapi tidak
mencantumkan kode pos-nya. Buatlah program yang menerima masukan nama kota
dan menuliskan kode pos kota tersebut ke piranti keluaran. Kota—kota yang tersedia
di dalam hanya 5, yaitu:

Padang : 122233

Bandung : 122122

Solo : 332211

Lampung : 331990

Palu : 221444

Tulis kodenya disini!

#include <iostream>
using namespace std;
int main()
{
int a;
cout<<"Masukkan Kode Pos : ";
cin>>a;

if(a=122233)
{

54
cout<<"Padang"<<endl;
}
else if(a=122122)
{
cout<<"Bandung"<<endl;
}
else if(a=332211)
{
cout<<"Solo"<<endl;
}
else if(a=331990)
{
cout<<"Lampung"<<endl;
}
else if(a=221444)
{
cout<<"Palu"<<endl;
}
else
{
cout<<"Input Error";
}
return 0;
}

55
BAB VI

PENGULANGAN

6.1 Latar Belakang


Pada bagian ini, kita akan mendiskusikan mengenai pengulangan, pengulangan
disini juga dapat diartikan perulangan atau pengulangan yang merupakan cara yang
dilakukan untuk melakukan beberapa statement secara berulang-ulang. Dalam
melakukan proses pengulangan terdapat beberapa pernyataan yang bisa digunakan.
Diantaranya dengan pernyataan for, pernyataan while, pernyataan do-while,
pernyataan break, pernyataan continue dan pernyataan go to.

6.2 Rumusan Masalah


1. Tuliskan program yang menghasilkan output segitiga pascal, seperti berikut.

2. Tulislah program yang dapat menghitung jumlah deret pecahan N adalah bilangan
bulat positif ( dibaca terlebih dahulu )

3. Tulislah program untuk menuliskan teks lagu Anak Ayam Turun N dengan N adalah
jumlah anak ayam semula (nilai N positif dan dibaca terlebih dahulu). Contoh : N = 10,
maka syair lagu Anak Ayam Turun N tersetak seperti pada teks di bawah!

4. Buatlah program yang dapat meniru mekanisme pembacaan sandi-lewat (password)


untuk masuk ke sebuah mesin (ATM, Server, reaktor nukir, lebari besi, dan
sebagainya). Apabila sandi—sandi lewat yang dibaca salah, maka pembacaan sadi-
lewat hanya boleh di ulang maksimum 3 kali. Sandi lewat yang benar disimpan di
dalam program sebagai konstanta (dalam praktek, sandi lewat disimpan dalam basis
data yan terenskripsi untuk menjaga keamaannya).

5. Buatlah program yang mengonversi bilanga bulat tidaknegatif dalam sistem desimal
menjadi bilangan dalam sistem biner. Misalnya 1810 = 100102.

56
6. Buatlah program yang membaca nilai a dan n bilangan bulat (n ≥ 0) lalu untuk
meghitung nilai perpangkata an. Perpangkatan an berarti mengalikan a sebanyak n
kali. a = a × a × a × a {sebanyak n kali}

6.3 Tujuan Instruksional

Memahami pengulangan c++ Pokok bahasan ini menjelaskan tentang


pengulangan pada c++ yaitu definisi, kegunaan, serta implementasi dalam program

6.4 Kompetensi Yang Diharapkan


Mahasiswa diharapkan mengetahui menggunakan dan membedakan kegunaan
pernyataan pengulangan

Waktu Pertemuan : 100 menit

6.5 Pembahasan
6.5.1 Percobaan 1: Program 5-1

#include<iostream>
using namespace std;
int main() {
for(int a=1;a<=5;a++){
cout<<a<<endl;
}
return 0;
}

6.5.2 Tuliskan Outputnya, lalu jelaskan !

57
Output: Penjelasan :
-tidak terdapat kesalahan pada
program tersebut hanya saja
penyusunan kalimat yang kurang
tepat

Berapa nilai a, pada percobaan 1

6.5.3 Percobaan 2 : Program 5-2

#include<iostream>
using namespace std;
int main() {
int a=1;
while(a<=5){ cout<<a<<endl; a++;
}
return 0;
}

58
6.5.4 Tuliskan Outputnya, lalu jelaskan !

Output: Penjelasan :
-tidak terdapat kesalahan pada
program tersebut hanya saja
penyusunan kalimat yang
kurang tepat

6.5.5 Percobaan 3 :Program 5-3

#include<iostream>
using namespace std;
int main(){
int a=1;
do{ cout<<a; a++;
}while(a<=5);
return 0;
}

59
6.5.6 Tuliskan outputnya , lalu jelaskan !

Output: Penjelasan :
-tidak terdapat kesalahan pada
program tersebut hanya saja
penyusunan kalimat yang kurang
tepat

Tuliskan Perbedaan pengulangan for, while, dan do-while

6.5.7 Percobaan 4 :Program 5-4

#include<iostream>
using namespace std;
int main() {
int a, b ;
cout<<"Inputkan dua buah bilangan bulat: ";
cin>>a>>b;
cout<<"Anda menginput A= "<<a<<" and B = "<<b<<endl;
Again : //label looping bernama again
if(a<b){
a++;

60
}else {
b++;
if(a==b)
cout<<"Sekarang A = " <<a<<" and B = "<<b<<endl;
else
goto Again; // lompat ke Again, ini yang membuat looping
}
return 0;
}

6.5.8 Tuliskan output, lalu jelaskan !

Output: Penjelasan :
-kesalahan pada program terdapatnya
else yg sebelum if dan kurung
kurawal yang berlebihan

6.5.9 Percobaan 5 :Program 5-5

#include<iostream>
using namespace std;
int main() {
int a=7,b=20;
while(a<b) {
b=b-1;

61
if(b%a==0)
goto end;
else
continue;
} end:
cout<<"B = "<<b<<"and A = " <<a<<endl;
return 0;
}

6.5.10 Tuliskan Output, lalu jelaskan !

Output: Penj-tidak ditemukan kesalahan


pada program tersebut
-prodram tersebut menunjukan
pembagian elasan :

Tuliskan Perbedaan pengulangan continue dan goto


 Pernyataan Continue :
Digunakan untuk mengarahkan eksekusi ke proses berikutnya pada loop yang
sama. Pada do-while dan while, pernyatan continue menyebabkan eksekusi
menuju kondisi pengujian pengulangan. Namun, pada loop for, pernyataan
continue menyebabkan bagian penaik variable pengendali loop dikerjakan dan
kondisi untuk keluar dari loop for diuji kembali.
 Pernyataan Goto:

62
Pernyataan goto merupakan instruksi untuk mengarahkan eksekusi ke pernyataan
yang diawali dengan suatu label. Label sendiri berupa suatu pengenal (identifier)
yang diikuti dengan tanda titik koma(;).

6.5.11 Percobaan 5 :Program 5-6

#include<iostream>
using namespace std;
int main() {
for(int a=1;a<10;a++)
{
cout<<"Number "<<a<<endl;
if (a==6) break;
}
return 0;
}

6.5.12 Tuliskan Output, lalu jelaskan !

Output: Penjelasan :
-tidak ditemukan kesalahan dari
program tersebut
-program tersebut menunjukan
a=1 b=2 c=3 dst.

63
6.6 Soal Latihan

1. Tuliskan program yang menghasilkan output segitiga pascal, seperti berikut.

Penyelesaian :
#include <iostream>
using namespace std;
int main(){
int nilai,a;
cout<<"masukkan batas : ";
cin>>nilai;
for (int i=0; i<=nilai; i++){
for (int k=0; k<=((2*nilai)-(2*i)); k++){
cout<<" ";
}
for (int j=0; j<=i; j++){
if (j==0||i==j){
a=1;
}else{
a=a*(i+1-j)/j;
}
cout<<" ";
cout<<a;

64
cout<<" ";
}
cout<<" ";
cout<<endl<<endl;
}
return 0;
}

2. Tulislah program yang dapat menghitung jumlah deret pecahan

1 2 1 𝑋 1
𝑋− + + + ∓
3 5 7 9 𝑋

N adalah bilangan bulat positif ( dibaca terlebih dahulu )

65
Penyelesaian :
#include <iostream>
using namespace std;
class hitung
{
public:
void input();
int proses();
private:
int n;
float rumus,jumlah,total;
};

void hitung::input(){
cin>>n;
cout<<endl;}

int hitung::proses(){
jumlah=0;
total=0;
rumus=-1;
for(int j=1; j<=n; j++){
rumus=(rumus*(-1));
total=rumus/j;
jumlah+=total;
if(j==1)
cout<<"("<<total<<")";
if(j>1)
cout<<"+("<<total<<")";
}

cout<<endl<<endl<<"hasil penjumlahan deret =


"<<jumlah;
return jumlah;
}

int main()
{
cout<<"menghitung jumlah dari rumus x-
(1/3)+(2/5)-(1/7)+(x/9)+(1/x)...+(1/n)"<<endl<<endl;
cout<<"nilai n : ";
hitung deret;
deret.input();

66
deret.proses();

return 0;
}

3. Tulislah program untuk menuliskan teks lagu Anak Ayam Turun N dengan N adalah
jumlah anak ayam semula (nilai N positif dan dibaca terlebih dahulu). Contoh : N = 10,
maka syair lagu Anak Ayam Turun N tersetak seperti pada teks di bawah!

Anak Ayam Turun 10

Anak Ayam turun 10, mati satu tinggal 9

Anak Ayam turun 9, mati satu tinggal 8

Anak Ayam turun 8, mati satu tinggal 7

Anak Ayam turun 7, mati satu tinggal 6

Anak Ayam turun 6, mati satu tinggal 5

Anak Ayam turun 5, mati satu tinggal 4

Anak Ayam turun 4, mati satu tinggal 3

Anak Ayam turun 3, mati satu tinggal 2

Anak Ayam turun 2, mati satu tinggal 1

Anak Ayam turun 1, mati satu tinggal induknya

Programnya :
#include <iostream>
main()
{
int n, a;

67
printf("Berapa Jumlah Anak Ayam? ");
scanf("%d",&n);
while(n<0){
printf("\nInput Salah\n");
printf("Masukkan Nilai Positif!\n");
printf("Berapa Jumlah Anak Ayam? ");
scanf("%d",&n);
}
printf("\n\n Syair Lagunya:\n\n");
for(a=n; a>=2; a--){
n=n-1;
printf("Anak Ayam Turun %3d, Mati Satu tinggal %3d\n",a,n);
}
printf("Anak Ayam Turun %3d, Mati Satu tinggal INDUKNYA\n",n);
printf("\n\n");
}

4. Buatlah program yang dapat meniru mekanisme pembacaan sandi-lewat (password)


untuk masuk ke sebuah mesin (ATM, Server, reaktor nukir, lebari besi, dan
sebagainya). Apabila sandi—sandi lewat yang dibaca salah, maka pembacaan sandi
lewat hanya boleh di ulang maksimum 3 kali. Sandi lewat yang benar disimpan di
dalam program sebagai konstanta (dalam praktek, sandi lewat disimpan dalam basis
data yang terenskripsi untuk menjaga keamaannya).

Programnya :
#include <iostream>
using namespace std;
class ATM{
public: ATM();
void input();

68
bool proses();
void output();
private: int pin;
};
ATM :: ATM(){
cout<<"================SELAMAT DATANG DI BANK
BRI================="<<endl;
cout<<endl<<endl;
}
void ATM::input(){
cout<<"Masukan PIN anda : ";cin>>pin;
}
bool ATM::proses(){
if (pin != 552244){
return false;}
else{
return true;}
}
void ATM::output(){
cout<<"Pilih Menu Transaksi :"<<endl;
cout<<"1.Tarik Tunai"<<endl;
cout<<"2.Transfer"<<endl;
cout<<"3.Pembayaran"<<endl;
cout<<"4.Info Saldo"<<endl;
cout<<"5.Lain-lain\n"<<endl;
}
int main(int argc, char *argv[])
{
ATM go;

69
for (int i=1;i<=3;i++){
go.input();
if (go.proses()==true){
go.output();
break;
}
else if( (go.proses()==false) and (i==3)){
cout<<"Maaf, anda sudah salah memasukkan PIN 3 kali ATM anda terblokir
sementara"<<endl;
break;
}
else
cout<<"Pin yang anda masukan salah, silakan coba lagi"<<endl<<endl;
}
system("PAUSE");
return 0;
}

5. Buatlah program yang mengonversi bilanga bulat tidaknegatif dalam sistem


desimal menjadi bilangan dalam sistem biner. Misalnya 1810 = 100102.

Penyelesaian :
#include <iostream>
using namespace std;
void binary(int desimal);
void binary(int desimal)
{
int sisa;
int hasil;
if ( desimal <=1)

70
{
cout<<desimal;
return;
}
sisa = desimal %2;
hasil = desimal / 2;
binary(hasil);
cout<<sisa;
}
int main()
{
int a;
cout << "Masukkan Bilangan yang akan dikonversi : ";
cin>>a;
cout << a << " dalam biner adalah " ;
binary(a);
cout<<endl;
system("pause");
return 0;
}

6. Buatlah program yang membaca nilai a dan n bilangan bulat (n ≥ 0) lalu untuk
meghitung nilai perpangkata an. Perpangkatan an berarti mengalikan a sebanyak n kali.
a = a × a × a ×a {sebanyak n kali}

Penyelesaian :
#include <iostream>
using namespace std;
int pangkat ( int a, int n ){
int i , hasil;

71
hasil=1;
for (i=1; i<=n;i++){
hasil = hasil * a;
}
return hasil;
}
int main(int argc, char *argv[])
{
int a,n,hasil;
cout<<"menghitung pangkat"<<endl;
cout<<" masukan nilai a : ";
cin>>a;
cout<<" masukan nilai n : ";
cin>>n;
cout<<"hasil a pangkat n adalah : "<<pangkat(a,n);
cout<<endl;
system("PAUSE");
return 0;
}

72
BAB VII

PENGENALAN BAHASA PEMROGRAMAN C++

7.1 Latar Belakang


Pada bagian ini kita akan belajar tentang fungsi. Fungsi (Function) adalah
sekumpulan perintah operasi program yang dapat menerima argumen input dan dapat
memberikan hasil output yang dapat berupa nilai ataupun sebuah hasil operasi.

Dalam fungsi terdapat dua tipe, yaitu tipe yang tidak memiliki nilai balik (void) dan
tipe yang memiliki nilai balik (non-void).

Fungsi void sering disebut juga prosedur. Disebut void karena fungsi
tersebut tidak mengembalikan suatu nilai keluaran yang didapat dari hasil proses
fungsi tersebut.

Ciri-ciri dari jenis fungsi Void adalah Tidak adanya keyword return, Tidak
adanya tipe data di dalam deklarasi fungsi, Menggunakan keyword void, Tidak dapat
langsung ditampilkan hasilnya, Tidak memiliki nilai kembalian fungsi dan Keyword
void juga digunakan jika suatu function tidak mengandung suatu parameter apapun.

Fungsi non-void disebut juga function. Disebut non-void karena


mengembalikan nilai kembalian yang berasal dari keluaran hasil proses function
tersebut.

Ciri-ciri dari jenis fungsi non void adalah Ada keyword return, Ada tipe data
yang mengawali fungsi, Tidak ada keyword void, Memiliki nilai kembalian, Dapat
dianalogikan sebagai suatu variabel yang memiliki tipe data tertentu Sehingga dapat
langsung ditampilkan hasilnya.

73
7.2 Rumusan Masalah
1. Buatlah progam dengan menggunakan suatu fungsi F(x) = 2x2 + 5x − 8, lalu
di tampilkan dalamsebuah tabel yang berisi nilai—nilai x dan f(x) didalam
selang [10,15] deanga ∆x = 0.2 !
2. Buatlah progam dengan menggunakan suatu untuk menghitung nilai FPB
dan KPK dari 2 bilangan bulat!
3. Kembangkanlah kode program nomor 2 agar dapat mengoperasikan bilangan
pecahan bulat.!
4. Buatlah program countdown dari kombinasi angka dan titik, dimana N angka
di tentukan terlebih dahulu. (Syarat : Gunakan Fungsi Rekrusif) !
5. Buatlah program mengetahui nilai permutasi dan kombinasi dari dua bilangan
bulat. Dimana bilangan1<= bilangan2 (Syarat : Gunakan Fungsi Rekrusif,
faktorial) !
6.
7.3 Tujuan Instruksional

Memahami fungsi pada c++ Pokok bahasan ini menjelaskan tentang fungsi
pada c++ yaitu cara menggunakan fungsi, membuat fungsi dan mengembangkan
bentuk-bentuk fungsi

7.4 Kompetensi Yang Diharapkan


Mahasiswa diharapkan mengetahui cara menggunakan fungsi, cara membuat
fungsi, serta mengembangkan fungsi dalam pemrograman. Waktu Pertemuan : 100
menit

7.5 Pembahasan
7.5.1 Percobaan 1: Program 6-1

Tipe_data nama_fungsi(daftarparameter){ /*Badan Fungsi*/ }

#include <iostream>

74
using namespace std;

void tampilkan_jml(){

int a = 3, b = 5, jml;

jml = a + b;

cout << jml << endl;

Int main(){ Tampilkan_jml(); Return 0; }

7.5.2 Tuliskan Outputnya, lalu jelaskan!

Output Penjelasan
Tipe data fungsi /function adalah
satu blok kode yang melakukan tugas
tertentu atau satu blok instruksi yang
di eksekusi ketika dipanggil dari
bagian lain dalam suatu
program.<iostream> sendiri adalah
file header standar untuk proses
input/output yang digunakan dalam
bahasa pemograman C++, Using
namespace std merupakan instruksi
yang kita berikan kepada aplikasi
compiler, Void adalah suatu fungsi
yang disebut juga sebagai prosedur,
Cout sendiri merupakan sebuah
output dalam sebuah pemrograman
C++

75
7.5.3 Percobaan 2 : Program 6-2

#include <iostream>
using namespace std;
int hitung_luas (int panjang, int lebar){
int luas = panjang*lebar;
return luas;
}
int main(){
int a,b,hasil;
cout<<"Program Hitung Luas Persegi Panjang"<<endl;
cout<<"-----------------------------------"<<endl;
cout<<"Masukkan nilai panjang :"; cin>>a;
cout<<"Masukkan nilai lebar :"; cin>>b;
hasil = hitung_luas(a,b);
cout<<"Luas persegi panjang adalah :"<<hasil<<endl;
return 0;
}

7.5.3 Tuliskan Outputnya, lalu jelaskan!

Output Penjelasan
#include<iostream> sendiri adalah file
header standar untuk proses input/output
yang digunakan dalam bahasa
pemograman C++, Using namespace
std merupakan instruksi yang kita berikan
kepada aplikasi compiler, int main adalah
fungsi utama dari sebuah kode bahasa
C++, Cout sendiri merupakan sebuah

76
output dalam sebuah pemrograman C++,
Return sendiri adalah berfungsi untuk
mengakhri eksekusi dari function
tersebut, dan return juga dapat
memberikan nilai pada saat akhir dari
function kepada pemanggil.

Apa perbedaan antara fungsi void dan fungsi tipe data

Fungsi Perbedaan
Tipe data
Void

7.5.4 Percobaan 3 :Program 6-3

#include <iostream>

using namespace std;

int luas_persegi_panjang(int p, int l){

/*Isi coding disini*/

int main(){

cout << "Luas Persegi : " << luas_persegi_panjang(4, 5) << endl;

77
return 0;

7.5.5 Tuliskan outputnya, lalu jelaskan!

Output Penjelasan
#include<iostream> sendiri adalah file
header standar untuk proses
input/output yang digunakan dalam
bahasa pemograman C++, Using
namespace std merupakan instruksi
yang kita berikan kepada aplikasi
compiler, Cout sendiri merupakan
sebuah output dalam sebuah
pemrograman C++, Return sendiri
adalah berfungsi untuk mengakhri
eksekusi dari function tersebut, dan
return juga dapat memberikan nilai
pada saat akhir dari function kepada
pemanggil. Cout yaitu sebuah
keluaran atau output didalam sebuah
pemrograman C++, int main adalah
sebuah fungsi dari kode utama C++

Modifikasi program percobaan 3, sehingga dapat menghitung luas persegi panjang,


lingkaran, kubus dan balok.

Tulis kode disini !

# include <iostream>
using namespace std;

78
int main ()
{
int pilihan;
double sisi,luas_kubus;
double panjang, lebar, lpp;
double jari2, luas_lingkaran;
double _panjang,_lebar,_tinggi,luas_balok;

cout<<"Masukkan Pilihan"<<endl;
cout<<"1. Menghitung Luas Kubus"<<endl;
cout<<"2. Menghitung Luas Persegi Panjang"<<endl;
cout<<"3. Menghitung Luas Lingkaran"<<endl<<endl;
cout<<"4. Menghitung Luas Balok "<<endl<<endl;

cout<<"Pilih (1/2/3/4) : ";


cin>>pilihan;
cout<<endl;

if (pilihan == 1)
{
cout<<"\t Menghitung Luas Kubus \n";
cout<<"Masukkan Sisi : ";
cin>>sisi;

luas_kubus=6*sisi*sisi;
cout<<"Luas Kubus = "<<luas_kubus<<endl;
}

79
else if (pilihan==2)
{
cout<<"\t Menghitung Luas Persegi Panjang \n";
cout<<"Masukkan Panjang : ";
cin>>panjang;

cout<<"Masukkan Lebar : ";


cin>>lebar;

lpp=panjang*lebar;
cout<<"Luas Persegi Panjang = "<<lpp<<endl;
}

else if (pilihan==3)
{
cout<<"\t Menghitung Luas Lingkaran \n";
cout<<"Masukkan Jari-Jari : ";
cin>>jari2;
luas_lingkaran=3.14*(jari2*jari2);
cout<<"Luas Lingkaran = "<<luas_lingkaran<<endl;
}
else if (pilihan==4)
{
cout<<"\t Menghitung Luas Balok \n";
cout<<"Masukkan Panjang : ";
cin>>panjang;
cout<<"Masukkan Lebar : ";
cin>>lebar;

80
cout<<"masukkan tinggi";
cin<<t;
cout<<"luas_balok="<<2(panjang*lebar+panjang*tinggi+lebar*tinggi)<<endl;
cout<<"Luas Balok = "<<balok<<endl;
}
else
{
cout<<"Maaf, Anda Salah Memilih"<<endl;
}

return 0;
}

7.5.6 Percobaan 4 :Program 6-4

#include <iostream>

using namespace std;

int Kali(int a, int b){

if (b == 1)

return a;

else

return a + Kali(a, b - 1);

int main(){ int A = 12; int B = 11;

cout << "Hasil kali A dan B : " << Kali(A, B) << endl;

81
return 0;

Tuliskan output, lalu jelaskan!

Output Penjelasan
#include<iostream> sendiri adalah file
header standar untuk proses input/output
yang digunakan dalam bahasa
pemograman C++, Using namespace
std merupakan instruksi yang kita berikan
kepada aplikasi compile, int adalah inti dari
sebuah pemrograman, if adalah
memanipulasi aliran jalannya program,else
berfungsi untuk menerima nilai jika
pernyataan if yang dibuat tidak memenuhi
persyaratan, Return sendiri adalah
berfungsi untuk mengakhri eksekusi, dari
function tersebut, dan return juga dapat
memberikan nilai pada saat akhir dari
function kepada pemanggil. int main
adalah sebuah fungsi dari kode utama
C++

Modifikasi program percobaan 4, sehingga program dapat menerima inputan dari


user.Tulis kode disini!

#include <iostream>
using namespace std;
int Kali(int a, int b){

82
if (b == 1)
return a;
else
return a + Kali(a, b - 1);
}
int main(){
int A = 50;
int B = 25;
cout << "Hasil kali A dan B : " << Kali(A, B) << endl;
return 0;
}

7.6 Soal Latihan


1. Buatlah progam dengan menggunakan suatu fungsi F(x) = 2x2 + 5x − 8, lalu di
tampilkan dalam sebuah tabel yang berisi nilai—nilai x dan f(x) didalam selang
[10,15] deanga ∆x = 0.2, seperti contoh berikut:

X F(X)
10.0 242.0
10.2 251.08
10.4 …….
…….. ……..
…… ……..
14.8 ……….
15.0 ………..

Penyelesaian :

83
2. Buatlah progam dengan menggunakan suatu untuk menghitung nilai FPB
dan KPK dari 2 bilangan bulat.

Bilangan1 = 12

Bilangan1 = 24

FPB dari 12 dan 24 adalah 6

KPK dari 12 dan 24 adalah 24

Penyelesaian :
#include <iostream>
#include <conio.h>
using namespace std;
int main()
{
int p,q,kpk;
kpk=0;
cout<<"program mencari KPK "<<endl;
cout<<"Masukkan Nilai Bil ke 1 : ";

84
cin>>p;
cout<<"Masukkan Nilai Bil ke 2 : ";
cin>>q;
for(int x=1;x<=q;x++)
{
kpk=kpk+p;
if(kpk % q==0)
{
cout<<"KPK bilangan "<<p<<" dan "<<q<<" Adalah "<<kpk;
break;
}
}
int m,n,r;
cout<<"program mencari FEB"<<endl;
cout << "Masukan Bilangan 1 : ";
cin >> m;
cout << "Masukan Bilangan 2 : ";
cin >> n;
r = m % n;
while(r != 0)
{
m = n;
n = r;
r = m % n;
}
cout<< "FPB bilangan 1 dan 2 adlah: " << n << endl;
return 0;
}

85
3. Kembangkanlah kode program nomor 2 agar dapat mengoperasikan bilangan
pecahan bulat.

Pembilang1 = 1

Pembilang2 = 1

Penyebut1 = 4

Penyebut2 = 2

Hasil dari 1/4 + 1/2 = ¾

Penyelesaian :
#include <iostream>
using namespace std;
typedef struct pecahan{
int pb;
int py;
};
int main(int argc, char *argv[])
{
pecahan P1,P2;
cout<<"Masukkan Pembilang1 = ";
cin >> P1.pb;
cout<<"Masukkan Pembilang2 = ";
cin >> P2.pb;
cout<<"Masukkan Penyebut1 = ";
cin >> P1.py;
cout<<"Masukkan Penyebut2 = ";
cin >> P2.py;
{
cout<<"Hasil dari 1/4+1/2 "<<endl;

86
cout<<"\t "<<(P1.pb)+(P2.py)<<endl;
cout<<"\t = -" <<endl;
cout<<"\t "<<(P2.py+P2.py)<<endl;
}
return 0;
}

4. Buatlah program countdown dari kombinasi angka dan titik, dimana N angka
di tentukan terlebih dahulu. (Syarat : Gunakan Fungsi Rekrusif).

N = 10

10..9..8..7..6..5..4..3..2..1

Penyelesaian :
#include <iostream>
#include <conio.h>
using namespace std;
class deret
{
public:
int proses();

int masukan();
private:
int n;
float hasil;
};
int deret::masukan()

87
{
cout<<"program sederhana menghitung jumlah dari rumus 1-
(1/3)+(1/5)-(1/7)+(1/9)+…+(1/n)"<<endl;
cout<<"tentukan nilai n : ";
cin>>n;
cout<<endl;
}
int deret::proses()
{
hasil=0;
for(int i=1; i<=n; i++)
{
if(i%2==0)
{
hasil=hasil-(1.0/i);
cout<<"-(1/<<i<<)";}
else{
hasil=hasil+(1.0/i);
cout<<"+(1/"<<i<<")";}
}
cout<<endl<<endl<<"hasil penjumlahan deret = ";
cout<<hasil;
}
int main()
{
deret a;
a.masukan();
a.proses();
getch();

88
return 0;
}

5. Buatlah program mengetahui nilai permutasi dan kombinasi dari dua bilangan
bulat. Dimana bilangan1<= bilangan2 (Syarat : Gunakan Fungsi Rekrusif,
faktorial).

Angka1 : 2

Angka2 : 4

Permutasi 2 dari 4 adalah 12

Kombinasi 2 dari 4 adalah 6S

Penyelesaian:

89
BAB VIII

ARRAY

8.1 Latar Belakang


Pada bagian ini, kita akan mendiskusikan array dalam bahsa C++.
Pertama, kita akan mendefinisikan apa yang dimaksud dengan array, kemudian kita
juga akan mendefiniskan bagaimana mendeklarasikan dan menggunakannya dalanm
bahasa C++.

Dibagian sebelumnya,kita telah mendiskusikan bagaimana cara pendeklarasian


berbagai macam variabel dengan menggunakan tipe data primitif. Dalam
pendeklarasian variabel, kita sering menggunakan sebuah tipe data beserta nama
variabel atau identifier yang unik, dimana untuk menggunakan variabel tersebut, kita
akan memanggil dengan nama identifiernya.

Sebagai contoh, kita memiliki tiga variabel dengan tipe data int yang memiliki
identifier yang berbeda untuk tiap variabel.

int number1;

int number2

; int number3;

number1 = 1;

number2 = 2;

number3 = 3;

Seperti yang dapat Anda perhatikan pada contoh diatas, hanya untuk
menginisialisasi dan menggunakan variabel terutama pada saat variabel-variabel
tersebut memiliki tujuan yang sama, dirasa sangat membingungkan. Di Java maupun

90
di bahasa pemrograman yang lain, mereka memiliki kemampuan untuk menggunakan
satu variabel yang dapat menyimpan sebuah data list dan kemudian
memanipulasinya dengan lebih efektif. Tipe variabel inilah yang disebut sebagai
array.

Sebuah array akan menyimpan beberapa item data yang memiliki tipe data sama di
dalam sebuah blok memori yang berdekatan yang kemudian dibagai menjadi beberapa
slot. Bayangkanlah array adalah sebuah variabel – sebuah lokasi memori tertentu
yang memiliki satu nama sebagai identifier, akan tetapi ia dapat menyimpan lebih
dari sebuah value.

8.2 Rumusan Masalah


1. Tulislah program untuk mengurutkan karakter secara ascending, contoh A—
Z. Dari char. MyArray = {‘R’,’T’,’A’,’Q’,’G’};
2. Buatlah program untuk menghitung operasi aritmatika (penjumlahan,
pengurangan, perkalian, pembagian) matriks A dan matriks B?
3. Tulislah progam dengan menggunakan konsep array mutidimensi?
8.3 Tujuan Instruksional

Memahami array pada c++ Pokok bahasan ini menjelaskan tentang array pada
c++ yaitu pendeklarasian array, mengakses elemen array, array multidimensi.

8.4 Kompetensi Yang Diharapkan


Mahasiswa diharapkan mengetahui cara pendeklarasian array, menentukan
jumlah array dalam sebuah array, dan membuat array multidimensi.

Waktu Pertemuan :100 menit

8.5 Pembahasan
8.5.1 Percobaan 1: Program 7-1

#include <iostream>

91
using namespace std;

int main(){

int A[3]; //deklarasi array A

A[0] = 1;

A[1] = 0;

A[2] = 2; //inisialiasi array A

cout << "A[0] : " << A[0] <<endl;

cout << "A[1] : " << A[1] <<endl;

cout << "A[2] : " << A[2] <<endl;

8.5.2 Tuliskan Outputnya, lalu jelaskan!


Output Penjelasan
 Bahasa C++ membedakan
huruf besar dan huruf kecil
 Setiap akhir perintah diakhiri
dengan tanda petik dan koma
 Kenapa program tersebut
terjadi kesalahan disebabkan
adanya kekurangan penulisan
pada syntax cout << "A[0] : "
<< A[0] <<endl;
 Kesalahan tersebut karena
kurangnya tanda (A[0]
:).Kesalahan inilah

92
ditunjukkan Bahasa C++
menginformasikan letak baris
yang terjadi kesalahan serta
penjelasan kenapa terjadi
kesalahan.Maka ketika terjadi
kesalahan perhatikan
keterangan compile baris
mana yang salah dan perbaiki
syntax di baris tersebut

8.5.3 Percobaan 2 : Program 7-2

#include <iostream>
using namespace std;
int main(){
int A[10] = {1, 2, 3, 4, 5, 4, 3, 2, 1, 0};
cout << A[0] << endl;
cout << A[1] << endl;
/*
..........
..........
..........
dst ....
*/
cout << A[9] << endl;
return 0;
}

93
8.5.4 Tuliskan Outputnya, lalu jelaskan!
Output Penjelasan
 Bahasa C++ membedakan
huruf besar dan huruf kecil
 Setiap akhir perintah diakhiri
dengan tanda petik dan koma
Program tersebut di compile dan di
run dengan baik,taka da kesalahan
pada syntax atau kekurangan syntax

 Modifikasi percobaan 2 sehingga dapat mengeluarkan semua nilai dari A,


dengan menggunakan looping. Tulis kode programnya disini

#include <iostream>
using namespace std;

int main(){
int A[10] = {1, 2, 3, 4, 5, 4, 3, 2, 1, 0};
for(int i=0; i<=9; i++)
{
cout<<" Nilai A ke "<<i<<" ="<<A[i]<<endl;
}
return 0;
}

8.5.5 Percobaan 3 :Program 7-3

94
#include <iostream>

using namespace std;

int main(){

int bill[5];

cout << "Input 5 bilangan bulat : ";

for(int o = 0;

o < sizeof(bill)/sizeof(int);

o++) cin >> bill[o];

cout << endl;

for(int o = 0;

o < sizeof(bill)/sizeof(int);

o++) cout << "bilangan [" << o << "]" << bill[o] << endl;

return 0;

8.5.6 Tuliskan outputnya, lalu jelaskan!

Output Penjelasan
 Bahasa C++ membedakan huruf
besar dan huruf kecil
 Setiap akhir perintah diakhiri
dengan tanda petik dan koma
 Program tersebut di compile dan
di run dengan baik,tak ada

95
kesalahan pada syntax atau
kekurangan syntax

8.5.7 Percobaan 4 :Program 7-4

#include <iostream>

using namespace std;

int main(){

int bill[5] = {1, 2, 4, 5, 11};

for(int o = 0; o < 7; o++)

cout << "bilangan [" << o << "]" << bill[o] << endl;

return 0;

8.5.8 Tuliskan output, lalu jelaskan!

Output Penjelasan
 Bahasa C++ membedakan huruf
besar dan huruf kecil
 Setiap akhir perintah diakhiri
dengan tanda petik dan koma

96
 Program tersebut di compile dan
di run dengan baik,tak ada
kesalahan pada syntax atau
kekurangan syntax.

8.5.9 Percobaan 5 :Program 7-5

#include <iostream>

using namespace std;

int main(){

int bill[5] = {1, 2, 4, 5, 11};

for(int o = 0; o < 5; o++)

cout << "Alamat dari bilangan [" << o << "]" << bill + o << endl;

return 0;

8.5.10 Tuliskan Output, lalu jelaskan!

97
Output Penjelasan
 Bahasa C++ membedakan huruf
besar dan huruf kecil
 Setiap akhir perintah diakhiri
dengan tanda petik dan koma
 Program tersebut di compile dan
di run dengan baik,tak ada
kesalahan pada syntax atau
kekurangan syntax.

8.5.11 Percobaan 5 :Program 7-6

#include <iostream>
using namespace std;
int main(){
int bill[5][5] = {{1, 2, 4, 5, 11},
{6, 3, 1, 3, 6},
{7, 6, 3, 2, 1},
{8, 4, 0, 1, 4},
{9, 2, 2, 1, 0}};
for(int o = 0; o < 5; o++){
for(int p = 0; p < 5; p++){ cout << bill[o][p] << " " ;
}
cout << endl;
}

98
return 0;
}

8.5.12 Tuliskan Output, lalu jelaskan!


Output Penjelasan
 Bahasa C++ membedakan huruf
besar dan huruf kecil
 Setiap akhir perintah diakhiri
dengan tanda petik dan koma
 Program tersebut di compile dan
di run dengan baik,tak ada
kesalahan pada syntax atau
kekurangan syntax.

8.6 Soal Latihan


1. Tulislah program untuk mengurutkan karakter secara ascending, contoh
A—Z. Dari char MyArray = {‘R’,’T’,’A’,’Q’,’G’};
Penyelesaian :
#include<iostream>
#include<conio.h>
#define n 11
using namespace std;
int main()
{
char a[n] = {'R','T','A','Q','G'};
char x,y,z;
cout<<"\tProgram Sorting Array Dengan Ascending"<<endl;
cout<<"\t======================================"<<endl;

99
cout<<"\n\n==> Sebelum Abjad Di-Urutkan : \t";
for (y=0; y<=n-1; y++)
cout<<a[y];
cout<<endl;

z=0;
while(z<=n-2)
{
y=0;
while(y<=n-2-z)
{
if(a[y]>a[y+1])
{
x=a[y];
a[y]=a[y+1];
a[y+1]=x;
}
y++;
}
z++;
}
cout<<"\n==> Abjad Sesudah Di-Urutkann :";
for(y=0; y<=n-1; y++)
cout<<a<<a[y];
getch();
}

2. Buatlah program untuk menghitung operasi aritmatika (penjumlahan,


pengurangan, perkalian, pembagian) matriks A dan matriks B?

100
Penyelesaian :
#include<iostream>
#include<conio.h>

#define z 3
using namespace std;
int main(){

int A[z][z]={0},B[z][z]={0},C[z][z]={0},D[z][z]={0},E[z][z]={0},i=0,j=0;

cout<<endl<<"INPUT MATRIKS A"<<endl;

for(i=0;i<z;i++){

for(j=0;j<z;j++){

cout<<"Input elemen baris ke-"<<i+1<<" kolom ke-"<<j+1<<" : ";


cin>>A[i][j];

cout<<endl<<"INPUT MATRIKS B"<<endl;

for(i=0;i<z;i++){

101
for(j=0;j<z;j++){

cout<<"Input elemen baris ke-"<<i+1<<" kolom ke-"<<j+1<<" :


";cin>>B[i][j];

cout<<endl<<"===========================================
====="<<endl<<endl;

cout<<"Tampilan Matriks A : "<<endl<<endl;

for(i=0;i<z;i++){

for(j=0;j<z;j++){

cout<<" "<<A[i][j];

cout<<endl;

102
cout<<"Tampilan Matriks B : "<<endl<<endl;

for(i=0;i<z;i++){

for(j=0;j<z;j++){

cout<<" "<<B[i][j];

cout<<endl;

cout<<endl<<"Penjumlahan matriks A dengan matriks B :"<<endl<<endl;

for(i=0;i<z;i++){

for(j=0;j<z;j++){

C[i][j]=A[i][j]+B[i][j];

cout<<" " <<C[i][j]<<"\t";

103
cout<<endl;

cout<<endl<<"Pengurangan matriks A dengan matriks B :"<<endl<<endl;

for(i=0;i<z;i++){

for(j=0;j<z;j++){

D[i][j]=A[i][j]-B[i][j];

cout<<" "<<D[i][j]<<"\t";

cout<<endl;

cout<<endl<<"Pekalian matriks A dengan matriks B :"<<endl<<endl;

for(i=0;i<z;i++){

for(j=0;j<z;j++){

for(int x=0;x<z;x++){

104
E[i][j]=E[i][j]+A[x][j]*B[i][x];

cout<<" "<<E[i][j]<<"\t";

cout<<endl;

cout<<endl<<"Pembagian matriks A dengan matriks B :"<<endl<<endl;

for(i=0;i<z;i++){

for(j=0;j<z;j++){

D[i][j]=A[i][j]/B[i][j];

cout<<" "<<D[i][j]<<"\t";

cout<<endl;

105
getch();

3. Tulislah progam dengan menggunakan konsep array mutidimensi?


Penyelesaian :
#include <iostream>
using namespace std;
class arrayMulti
{
private: int Baris;
private: int Kolom;
public: void isiarray()
{
cout<<"Banyak Baris = ";
cin>>Baris;
cout<<"Banyak Kolom = ";
cin>>Kolom;
int array[Baris][Kolom];
for(int i=0;i<Baris;i++)
{
for(int j=0;j<Kolom;j++)
{
cout<<"Masukkan Data Array:";
cin>>array[i][j];
}

106
}
for(int i=0;i<Baris;i++)
{
for (int j = 0; j <Kolom; j++)
{
cout<<array[i][j]<< " ";
}
cout<<endl;
}
}
};
int main()
{
arrayMulti a;
a.isiarray();
return 0;
}

107
108

Anda mungkin juga menyukai