• Tidak ada hasil yang ditemukan

Modul PEMROGRAMAN TERSTRUKTUR

N/A
N/A
Naufal maulana

Academic year: 2023

Membagikan "Modul PEMROGRAMAN TERSTRUKTUR"

Copied!
32
0
0

Teks penuh

(1)

Pemrograman terstruktur

Modul

PEMROGRAMAN TERSTRUKTUR

Oleh

Eko Teguh. S.Si Ubaidillah

Laboratorium Komputasi dan Pemodelan Jurusan Fisika

Fakultas Matematika dan Ilmu pengetahuan Alam Universitas Brawijaya

Malang

2016

(2)

Pemrograman terstruktur

(3)

Pemrograman terstruktur

Kata Pengantar

Pada modul ini, dijelaskan mengenai penggunaan bahasa C++ berikut dengan contoh program yang telah diuji sebelumnya. Modul ini diharapkan dapat membantu praktikan untuk memahami pemrograman terutama menggunakan bahasa C++.

Penulis menyadari banyaknya kesalahan dalam penulisan modul ini dan menyampaikan permintaan maafnya. Kemudian penulis juga menerima saran berkaitan dengan tulisan ini.

Penulis

2016

(4)

Pemrograman terstruktur

This Page Intentionally Blank

(5)

Pemrograman terstruktur

Daftar Isi

Kata Pengantar... i

Daftar Isi...iii

Daftar Gambar ...v

Daftar Tabel...v

Daftar Program...v

Bab I Pendahuluan ... 1

1.1. Bahasa pemrograman... 1

1.2. Compiler... 1

1.3. ProgramConsole... 2

1.4. Tugas ... 2

Bab II Struktur, Variabel, Tipe Data... 3

2.1. Struktur Program... 3

2.2. Variabel ... 4

2.3. Konstanta ... 4

2.4. Tipe data... 5

2.5. Latihan... 6

Bab III Operator... 7

3.1. Aritmatika... 7

3.2. Pengunaan dan Arti Kombinasi (+=,-=,*=,/=,%=,>>=,<<=,&=,^=,|=)... 8

3.3. Latihan... 8

Bab IV Basick input output... 9

4.1. Output standart (cout)... 9

4.2. Input standart (cin) ... 9

4.3. Stringstream;... 10

4.4. I/O dengan menggunakan File ... 10

4.5. Latihan... 10

Bab V Statement dan flow control... 11

5.1. Kondisi If dan else ... 11

5.2. Perulangan While... 11

5.3. Do-While ... 12

(6)

Pemrograman terstruktur

5.4. Perulangan for... 12

5.5. Latihan...13

Bab VI Array dan Pointer... 15

6.1. Array ... 15

6.2. Pointer...16

6.3. Latihan...17

Bab VII Fungsi ... 19

7.1. Fungsi... 19

7.2. Latihan...19

Bab VIII Class... 21

8.1. Class... 21

8.2. Latihan...22

UAP... 23

Daftar Pustaka... 24

(7)

Pemrograman terstruktur

Daftar Gambar

Gambar 2.1. Keluaran program “Hello Word!”... 3

Gambar 2.2.Hasil dari program 2.4... 6

Daftar Tabel

Tabel 1.1. Tabel bahasa permograman , platform dan console ... 2

Tabel 2.1.. Tipe data, size dan Signed/Unsigned ... 5

Daftar Program

Program 1.1. Contoh pemrograman menggunakan C++ ... 1

Program 2.1. ProgramHello Word... 3

Program 2.2. Variabel local dan variable formal... 4

Program 2.3. Penggunaan tipe data ... 5

Program 3.1. Penggunaan operator... 8

Program 4.1. Program menuliskan File pada .txt... 10

Program 5.1. Kondisi perulangan while ... 12

Program 5.2. Kondisi perulangando-while... 12

Program 5.3. Kondisi perulanganFor... 13

Program 6.1. Penulisan array... 16

Program 6.2. Penulisan array multidimensi... 16

Program 6.3. Pointer... 17

Program 6.4. Contoh program pointer ... 17

Program 7.1. Fungsi ... 19

program 7.2. Contoh program bilangan ganjil genap dengan menggunakan fungsi... 20

Program 8.1 Contoh penggunaan class... 22

(8)

Pemrograman terstruktur

This Page Intentionally Blank

(9)

Pemrograman terstruktur

Bab I Pendahuluan

Komputer merupakan sebuah perangkat elektronik yang bekerja dalam bahasa biner sebagai basisnya. Manipulasi sistem kerja computer untuk menjalankan perintah sesuai dengan yang diinginkan membutuhkan perintah yang ditransformasikan kedalam bahasa yang dimengerti oleh komputer dan kemudian dijalankan dalam bentuk program executable. Berbeda dengan sistem berintelegent tinggi, manipulasi komputer harus dilakukan dengan perintah menggunakan bahasa khusus yang dituliskan berdasarkan struktur tertentu. Perintah yang diberikan juga harus dalam bentuk logika dan runtut sesuai dengan struktur asli dari program.

Gambar 1.1. Skema sebuah program.

1.1. Bahasa pemrograman

Bahasa manusia tidak dapat dikenali oleh computer secara langsung. Perintah perintah dasar seperti

“hitung!, Jalankan!” tidak akan dikenali oleh komputer. Diperlukan perintah dalam bentuk lain yang dapat dikenali oleh komputer Perlu diketahui jika berbeda dengan manusia yang menggunakan rangkaian logika dalam otak, computer tidak akan bisa melakukan sesuatu sebelum perintahnya dijalankan dalam bahasa yang dikenali oleh computer. Untuk menuliskan perintah ke computer, diperlukan bahasa dasar yang nantinya dirubah menjadi bahasa binner yang dikenali sebagai perintah computer. bahasa dasar tersebut memiliki struktur yang berbeda bergantung dengan kebutuhan dan keinginan program dan dalam praktiknya memiliki bermacam macam level dan jenis. sebagai contohnya matlab, C++, java, dll. Setiap bahasa pemrograman akan memiliki struktur dan sifat yang berbeda beda meskipun pada akhirnya sama yakni akan ditransformasikan kedalam bentuk binner.

int a, b, sum;

cin >> a;

cin >> b;

sum = a + b;

cout << sum << endl;

Program 1.1. Contoh pemrograman menggunakan C++

1.2. Compiler

Bahasa pemrograman masih memerlukan transformasi lagi sebelum dikenali oleh computer sebagai perintah. seperti yang telah diketahui, pemrograman computer langsung sangat sulit dan memiliki tingkat error yang sangat tinggi. untuk itu program yang telah dituliskan dalam bahasa pemrograman harus ditulis ulang dalam bahasa mesin. Untuk itu diperlukan compiler. Compiler merupakan sebuah program

Manusia Bahasa

Pemrograman Kompiler Bahasa Mesin

(10)

Pemrograman terstruktur

yang menulis ulang perintah menjadi bahasa mesin. Pada dasarnya compiler berfungi sebagai penyusun perintah kedalam bahasa binner. Selain itu compiling program juga dapat digunakan sebagai koreksi dari program yang sudah ditulis. Contoh compiler untuk bahasa ialah Code Block, Visual Studio, dsb.

1.3. Program Console

Merupakan program yang menggunakan tekx untuk berkomunikasi dengan pengguna dan lingkungan seperti menampilkan pesan di layar atau membaca input dari keyboard. Console sangat mudah untuk digunakan dan secara umum memiliki sifat yang sama setiap platform, mudah digunakan, dan berguna untuk mempelajari basis dari bahasa pemrograman.

Tabel 1.1. Tabel bahasa permograman , platform dan console

IDE Platform Console

Code::block Win/Linux Code::block

Visual Studio Express Win VS express

Dev-C++ Win Dev-C++ compiler

1.4. Tugas

1. Apa perbedaan bahasa pemrograman, program dan algoritma?

2. Tuliskan tahapan penggunaan compiler yang anda ketahui!

3. Buat program “hello world!” dengan bahasa yang anda kuasai!

(11)

Pemrograman terstruktur

Bab II Struktur, Variabel, Tipe Data 2.1. Struktur Program

Setiap bahasa memiliki struktur sendiri namun memiliki pola yang sama. Pada bahasa C++, struktur bahasa ditunjukan pada program dibawah;

//Tulis keterangan

#include <iostream>

intmain(){

std::cout<<”Hello World”:

return0;

}

Program 2.1. Program Hello Word

Secara sederhana C++ diawali dengan memanggil setiap library yang mungkin untuk digunakan pada program. Pemanggilan library menggunakan inisial #include dan kemudian diikuti nama library yang diinginkan. Sebagai contoh <math> untuk matematika.

Bagian ke 2 ialah subprogram dimana setiap fungsi ditulis sebagai sub-class sistem yang terpisah.

Setiap program biasanya mempunyai fungsi masing masing. Menuliskan program sebagai sub-class lebih baik daripada menuliskan program dalam satu kesatuan. hal ini bertujuan untuk mengurangi double parameter, mempermudah mencari error, dan mempermudah penulisan.

Bagian terakhir ialah main () dimana menghubungkan menjadi sebuah fungsi utuh dari program yang dituliskan. Bagian ini menghubungkan setiap class menjadi satu kesatuan sehingga program yang dituliskan menjadi jelas dan bekerja. Pada bagian akhir dari perintah yang dituliskan pada bagian ini biasanya di berireturn0; untuk menghapus nilai atau menghentikan perhitungan.

Bagian Comment pada C++ menggunakan tanda // untuk menandakan bagian tersebut dibaca sebagai komentar yang akan diabaikan oleh compiler. Penulisan comment yang lain ialah/*…………..*/.

Gambar 2.1. Keluaran program “Hello Word!”

(12)

Pemrograman terstruktur

2.2. Variabel

Penulisan program tidak lepas dari penggunaan dan pendefinisian variable. Variable ini berfungsi untuk mendeklarasikan parameter dan pengalokasian memorinya. Memory yang dialokasikan dapat berfungsi untuk memodifikasi nilai yang di variabelkan.

int;

double;

variable dideklarasikan pada 3 lokasi dasar yakni di dalam fungsi, definisi dari fungsi parameter dan di luar setiap fungsi. Kemudian dikenal variable lokal, parameter formal dan variable global.

//Variabel lokal void func1(void){

int x;

x = 10;

}//Variabel formal

int form_var(char *x, char a){

while(*xs)

if(*x==a) return 1;

else x++;

return 0;

}

Program 2.2. Variabel local dan variable formal

Untuk mendeklarasikan variable, dapat dilakukan dengan memberikan nilai. Bentuk umumnya ialah

type variable_name = value;

Berikut contoh penulisan variable int x = 0;

float a = 10.0;

char b = 'b';

Deklarasi variable global dan statis hanya dilakukan di awal dari program. variable local dideklarasikan disetiap blok dimana digunakan. Perlu diperhatikan jika variable local yang tidak dideklarasikan akan menggunakan nilai pada pen deklarasian sebelumnya. Jika tidak dilakukan penginisialisasian dari variable, maka nilai variable tersebut akan bernilai 0 secara otomatis.

2.3. Konstanta

(13)

Pemrograman terstruktur

2.4. Tipe data

Di dalam bahasa C++ terdapat 5 tipe data dasar yakni karakter, integer,floating point doublefloating point dan valules (Char, Int. Float, Double dan void). Perhitungan yang dilakukan bergantung pada tipe data dari nilai yang telah diinsialisasikan. Berikut nilai beberapa tipe data;

Tabel 2.1.. Tipe data, size dan Signed/Unsigned

Tipe Data size signed unsigned

int 4 byte -2147483648 to 2147483647 0 to 4294967295

long int 4 byte -2147483648 to 2147483647 0 to 4294967295

Float 4 byte +/- 3.4e +/- 38 (~7 digits)

Double 8 byte +/- 1.7e +/- 308 (~15 digits)

Long double 8 byte +/- 1.7e +/- 308 (~15 digits)

char 1 byte -128 to 127 0 to 255

bool 1 byte True/False

//Contoh penggunaan type data

#include <iostream>

using namespace std;

int main ()

{ // declaring variables:

int xa, yb;

int result;

// process:

xa = 5;

yb = 2;

xa = xa + 1;

result = xa - yb;

// print out the result:

cout << result;

// terminate the program:

return 0;

}

Program 2.3. Penggunaan tipe data

(14)

Pemrograman terstruktur

Gambar 2.2. Hasil dari program 2.4

Disaat dilakukan penulisan program, sangat penting untuk mengetahui tentang tipe data tersebut.

hal ini berkaitan dengan jumlah memory yang dialokasikan untuk setiap tipe data. kesalahan pengunaan tipe data akan menambah jumlah memori yang digunakan atau penggunaan yang tidak tepat dapat menghentikan perhitungan.

2.5. Latihan

1. Diketahui

x = 2,7 y = 3,4 z = 4.0

R = +( ) + +

Tuliskan persamaan tersebut dalam bahasa komputasi!

2. Tuliskan algoritma untuk menyelesaikan persamaan R!

3. Buat program kalkulator sederhana dengan menggunakan struktur yang benar untuk mencari nilai R!.

(15)

Pemrograman terstruktur

Bab III Operator

Pengoperasian konstan dan variable dalam sebuah program sangatlah penting mengingat setiap perhitungan berbasis numeric. Pada bahasa C++, setiap operator merupakan symbol non alfabetik yang telah tersedia di keyboard dan dapat dipergunakan sewaktu waktu.

=

tanda sama dengan digunakan untuk memberikan nilai pada variable dimana bagian kiri tanda = dikenal dengan sebutan lvalue (left-value) dan kanan rvalue (right-value). lvalue harus berupa variable yang akan didefinisikan nilainya di rvalue.

a=1;

b=a;

bagian atas menuliskan jika nilai a ialah satu. Sedangkan bagian bawah mnyatakan jika nilai b = a sehingga dapat disimpulkan jika

b=1;

3.1. Aritmatika

Bahasa pemrograman biasanya telah mengetahui symbol daar matemtika semisal +-* dan /.

Penggunaan dari aritmatika ini sangat sederhana yakni tinggal mendefinisikan variable dan proses aritmatik yang dikehendaki. misalkan

c = 2*a+b;

Pada contoh di atas dapat dilihat jika nilai dari c ialah 2 kali dari nilai a ditambah dengan nilai b.

Nilai a dan b mengadopsi dari deklarasi variable sebelumnya dimana a=b=1. Perlu dicatat jika pada proses aritmatik, peraturan operasi matematika harus tetap dipergunakan. sebagai contohnya ialah penyelesaian persamaan dalam kurung () terlebih dahulu dan kemudian dilanjutkan dengan operasi lainnya. Kebanyakan masalah perhitungan muncul dkarenakan programmer tidak menuliskan operasi secara benar. Misal diberikan persamaan;

d=

+ x

penulisan persamaan yang benar ialah d = ((2*x)/(a*y)) +x

Untuk aritmatika tingkat lanjut misalkan operasi trigonometri, biasanya diberikan library lanjutan disetiap bahasa pemrograman yang harus di inisialisasi di awal program. Untuk C++, dapat menggunakan

#include <math>. Cara ke 2 ialah dengan menggunakan pendekatan numeric untuk mendapatkan nilai dari trigonometri tersebut.

(16)

Pemrograman terstruktur

3.2. Pengunaan dan Arti Kombinasi (+=,-=,*=,/=,%=,>>=,<<=,&=,^=,|=)

saat dilakukan modifikasi dari nilai variable dengan menggunakan operasi dar nilai yang telah di tetapkan, dapat digunakan gabungan dari beberapa tanda

x += a sama artinya dengan x = x+ a ax -= 3 samaartinya dengan a = a–5

dan y *= a +5 sama artinya dengan y = y *(a+5)

// compound assignment operators

#include <iostream>

using namespace std;

int main () {

int a, b=3;

a = b;

a+=2; cout << a;

return 0;

}

Program 3.1. Penggunaan operator

Beberapa kombinasi tanda lain dan penggunaanya

== Equal to

!= Not equal to

> Greater than

< Less than

>= Greater than or equal to

<= Less than or equal to

3.3. Latihan

(17)

Pemrograman terstruktur

Bab IV Basick input output

Meskipun computer telah berjalan secara otomatis saat programdijalankan, programmer masih

memerlukan input dan output dari prosesnya. Hal ini dilakukan untuk mengendalikan jalannya program dan melacak proses dari program tersebut melacak error hingga melihat kebenaran perhitungan dari proses jalanya program.

4.1. Output standart (cout)

Cout digunakan untuk menuliskan pesan dari program terhadap pengguna. format penulisan cout ialah cout <<” Output”;

sebagai contoh cout << "pesan";

cout << 30;

cout << z;

Program 4.1 terebut menuliskan 3 macam keluaran output pada layar. pada contoh pertama, layar akan menuliskan setiap pesan yang diberikan diantara"". Untuk contoh ke 2, akan menuliskan angka 30 dan pada contoh ke 3 akan menuliskan nilai dari z.

Operator << akan memasukan data dari apapun yang mengikutinya dan menjadikan parameter olahan bagi computer. Pada contoh, data yang dimasukan berupa string, angka 30 dan nilai dari variable z. Perlu diketahui untuk conto pertama menggunakan"" karena merupakan tipe data string sedangkan untuk data z bukan. Hal inilah yang membedakan contoh 1 dan ke 3. Berikut contoh penulisan dengan menggunakan cout;

cout << "First sentence.\n";

cout << "Second sentence.\nThird sentence.";

cout << "First sentence." << endl;

cout << "Second sentence." << endl;

Empat contoh diatas menunjukan beberapa model penulisan perintah dengan menggunakan cout.

Pemberian\nuntuk contoh 1 dan ke 2 merupakan symbol untuk mengganti line setelah kalimat dituliskan di layar computer. Penggunaanendljuga mempunyai fungsi yang sama.

4.2. Input standart (cin)

Pada kebanyakan program, input merupakan keyboard dan pada C++ hal tersebut di gunakan cin.

Format penulisan cin ialah int a;

cin >> a;

Contoh 1 mendeklarasikan a sebagai integer dank e 2 mengekstrak nilai cin kedalamnya. Operasi ini membuat program menunggu nilai dari cin yang secara umum berarti menunggu pengguna untuk memasukan sesuatu input dengan menggunakan keyboard. Ekstraksi dari operasi cin akan menggunakan tipe variable setelah >> untuk memutuskan mengartikan karakter yang terbaca sebagai input. Jika input

(18)

Pemrograman terstruktur

yang dimasukan berupa integer, format penulisan ialah deret digit dan jika string maka deret karakter dan selanjutnya.

4.3. Stringstream;

Standar header mendefinisikan tipe yang disebut. Tipe ini mengijikan string untuk diperlakukan sebagai stream dan mengijinkan ekstraksi atau insert ke dalam atau dari string dengan cara yang sama cin dan cout. Fitur ini akan sangat berguna untuk merubah string kedalam nilai numeric atau sebaliknya.

Sebagai contohnya string mystr ("1234");

int mynum;

stringstream(mynum) >> myint;

Contoh diatas merupakan deklarasi nilai string "1234" menjadi nilai integer 1234. Baris ke3 digunakan variable untuk merubah dari stringstream dari string. Bagian ini menuliskan nilai dari 1234 kedalam variable mynum.

4.4. I/O dengan menggunakan File

Selain menggunakan standart output/input, operasi I/O juga dapat dilakukan dengan menggunakan file. pada contoh dibawah merupakan contoh I/O dengan menggunakan .txt file

// writing on a text file

#include <iostream>

#include <fstream>

using namespace std;

int main () {

ofstream myfile ("File contoh.txt");

if (myfile.is_open()){

myfile << "Baris I.\n";

myfile << "Baris II.\n";

myfile.close();

}else cout << "Gagal membuka file";

return 0;

}

Program 4.1. Program menuliskan File pada .txt

4.5. Latihan

(Latihan menyesuaikan praktikum)

(19)

Pemrograman terstruktur

Bab V Statement dan flow control 5.1. Kondisi If dan else

Kondisi if digunakan sebagai kondisi pada program. Sebagai contohnya ialah argument

“Jika nilai x < 10 maka …., untuk yang lainnya maka ……”

Argumen diatas menyatakan jika nilai x bernilai lebih besar daripada 10, maka dilakukan proses selanjutnya. Dan jika nilai yang diketahui ialah nilai lain maka proses berbeda dilakukan pada program.

Argument tersebut digunakan sesuai dengan bentuk standart if (condition) statement

sebagai contohnya if (x < 10){

//proses yang dilakukan }

Pada bentuk dasar tersebut, codition merupakan ekspresi yang akan di evaluasi dengan statement.

Ada 2 macam kondisi yang digunakan dalam If yakni true dan false. Untuk kodisi true, statemen akan di eksekusi dan dijalankan dan sebaliknya untuk kondisi false akan diabaikan. Kondisi if biasanya dapat digunakan untuk mengeluarkan suatu nilai dimana berguna untuk pengujian program dengan kondisi yang telah diketahui.

Jika dimiliki lebih dari 1 maka if dapat digunakan secara bertingkat atau ditambahkan else. Hal ini dilakukan jika statemen 1 tidak dipenuhi tetapi membutuhkan statement selanjutnya

if (x < 10)

//statement I else //statement II

5.2. Perulangan While

Perulangan while merupakan jenis perulangan yang paling sederhana dengan sintak standar while (ekspresi) statemen

Kondisi while akan mengulang statemen disaat ekspresi benar (true). Jika pada saat program dieksekusi dan ekspresi tidak lagi benar. maka perulangan diakhiri dan program tersebut dilanjutkan setelah perulangan.

#include <iostream>

using namespace std;

int main () { int x = 0;

while (x<10) {

(20)

Pemrograman terstruktur

cout << x << ", ";

} ++x;

cout << "Finish\n";

}

Program 5.1. Kondisi perulangan while

Pada program 5.1, ditunjukan program perhitungan dengan kelipatan 1 mulai dari 0. Pada saat statemen terpenuhi, maka di tuliskan “Finish” pada akhir perhitungan.

5.3. Do-While

Perulangan do-while memiliki kemiripan dengan perulangan while kecuali kondisi dievaluasi setelah eksekusi dari statement. Menjamin paling tidak satu eksekusi dari statemen meskipun kondisi tidak pernah dipenuhi. Sebagai contohnya;

#include <iostream>

#include <string>

using namespace std;

int main () { string str;

do {

cout << "masukan: ";

getline (cin,str);

cout << "keluaran: " << str << '\n';

} while (str != "selesai");

return 0;

}

Program 5.2. Kondisi perulangan do-while

Program 5.2 merupakan program pengulangan karakter yang diberikan di kolom masukan.

Keluaran dari program merupakan segala sesuatu yang dituliskan di kolom masukan dan program tersebut dianggap selesai saat diberikan tulisan “selesai” pada masukan.

5.4. Perulangan for

perulangan for diperuntukan untuk iterasi dengan jumlah teretentu. Sintak untuk perulangan for ialah

for (initialization; condition; increase) statement

Seperti halnya dengan perulangan while, perulangan ini akan mengulang statement saat kondisi true. Sebagai tambahan, perulangan for memberikan lokasi spesifik yang menganduk initialization dan

(21)

Pemrograman terstruktur

2. Condition di uji 3. statemen di eksekusi 4. increase dieksekusi 5. perulangan di akhiri.

#include <iostream>

using namespace std;

int main ()

{ for (int n=10; n>0; n--) { cout << n << ", ";

}cout << "Selesai\n";

}

Program 5.3. Kondisi perulangan For

5.5. Latihan

(Latihan menyesuaikan praktikum)

(22)

Pemrograman terstruktur

This Page Intentionally Blank

(23)

Pemrograman terstruktur

Bab VI Array dan Pointer 6.1. Array

Array merupakan sebuah bentuk data dengan tipe yang sama yang diletakan berdekatan yang secara individual dipetakan berdasarkan indeks. Sebagai contoh,array yang mengandung 5 nilai integer dituliskan

data 0 1 2 3 4

dimana setiap angka tersebut mewakilkan nilai dari elemen array.

6.1.1. Inisialisasi array

Inisialisasi array dapat dilakukan dengan menuliskan int data [5]={0, 1, 2, 3, 4}

Disaat deklarasi array biasa dari bidang local, jika tidak diberikan secara spesifik maka elemen tersebut tidak akan terinisialisasi untuk setiap nilai secara default sehingga nilai tersebut tidak terdetreminkan hingga nilai diberikan. Elemen dari global dan local array dipihak lain secara otomatis diinisialisasi nilai default yang secara fundamental bernilai nol.

Kumpulan dari nilai diantara kurung {} harus tidak lebih besar daripada jumlah elemen yang dideklarasikan diantara [ ]. Sebagai contoh array data yang dideklarasikan memiliki 5 elemen dan di dalam {} harus memiliki 5 nilai setiap elemen. Disaat inisialisasi dari nilai diberikan, C++ mengijinkan kurunguntuk tidak diisi [ ]. Pada kasus ini, compiler aan mengasumsikan ukuran dari array yang sesuai dengan jumlah nilai yang didalam kurung.

6.1.2. Mengakses nilai array

Pada setiap titik dimana array muncul, setiap elemen array didalamnya dapat diakses secara individual sebagaimana jika normal variable yang membaca dan mengganti nilainya.

name [index]

mengikuti contoh sebelumnya dimana data emmiliki 5 elemen dan setiap elemen merupakan data integer, maka dapat diakses dengan perintah;

data [3] = 2;

atau

a = data[3];

Contoh diatas menampilkan nilai data 2 pada hasil yang diperoleh dari akses nama data pada nilai ke 3 yakni 2. Nilai ini diperoleh karena setiap deklarasi dari array di mulai dari 0 sebagai awal.

// arrays example

#include <iostream>

using namespace std;

(24)

Pemrograman terstruktur

int billy [] = {16, 2, 77, 40, 12071};

int n, result=0;

int main ()

{ for ( n=0 ; n<5 ; n++ ) { result += billy[n];

}cout << result;

return 0;

}

Program 6.1. Penulisan array 6.1.3. Array multidimensi

Array multidimensi dapat dideskripsikan sebagai array didalam array. Penulisanya dilakukan dengan

int name [2][4];

contoh diatas menunjukan akses data pada array baris ke 2 dan kolom ke 4

#include <stdio.h>

int main(void){

int t, i, num[3][4];

for(t=0; t<3; ++t) for(i=0; i<4; ++i) num[t][i] = (t*4)+i+1;

//menuliskan hasil for(t=0; t<3; ++t) {

for(i=0; i<4; ++i)

printf("%3d ", num[t][i]);

printf("\n");

} return 0;

}

Program 6.2. Penulisan array multidimensi

6.2. Pointer

Pointer merupakan variabel yang memiliki alamat memori. alamat ini merupakan lokasi dari objeklain didalam memori. Jika pointer dimiliki oleh sebuah variable, maka variable tersebut harus dideklarasikan sebelumnya pada lokasi tertentu pada memori. memori pada computer dapat diasumsikan

(25)

Pemrograman terstruktur

Bentuk umum deklarasi pointer

type *name;

Berikut contoh penulisan program untuk pointer;

#include <iostream>

using namespace std;

int main ()

{ int firstvalue = 5, secondvalue = 15;

int * p1, * p2;

p1 = &firstvalue; // p1 = alamat nilai ke 1 p2 = &secondvalue; // p2 = alamat nilai ke 2

*p1 = 10; // nilai point p1 = 10

*p2 = *p1; // nilai point p2 = value p1

p1 = p2; // p1 = p2 (value of pointer is *p1 = 20; // value pointed by p1 = 20

cout << "first value is " << firstvalue << endl;

cout << "second value is " << secondvalue << endl;

return 0;

}

Program 6.3. Pointer Contoh ke 2

#include <iostream>

using namespace std;

int main ()

{ int firstvalue = 5, secondvalue = 15;

int * p1, * p2;

p1 = &firstvalue; // p1 = address of firstvalue p2 = &secondvalue; // p2 = address of secondvalue

*p1 = 10; // value pointed by p1 = 10

*p2 = *p1; // value pointed by p2 = value pointed byp1 p1 = p2; // p1 = p2 (value of pointer is copied)

*p1 = 20; // value pointed by p1 = 20 cout << "firstvalue is " << firstvalue << endl;

cout << "secondvalue is " << secondvalue << endl;

return 0;

}

Program 6.4. Contoh program pointer

6.3. Latihan

(Latihan menyesuaikan praktikum)

(26)

Pemrograman terstruktur

This Page Intentionally Blank

(27)

Pemrograman terstruktur

Bab VII Fungsi 7.1. Fungsi

Fungsi memungkinkan untuk mengatur atau memanuipulasi program secara individual. Hal ini memungkinkan jika diperlukan program yang panjang dan membutuhkan sub-program yang berbeda.

Sebagai contohnya ialah program berikut;

#include <iostream>

using namespace std;

//Fungsi I

int tambah (int a, int b){

int r;

r=a+b;

return r;

cout << "The result is R1" << z;

}

//Fungsi II

int kurang (int a, int b){

int r;

r=a-b;

return r;

cout << "The result is R2" << z;

}

int main (){

int z;

z = tambah (5,3)+ kurang (5,6);

cout << "The result is " << z;

}

Program 7.1. Fungsi

Fungsi sangat berguna disaat program membutuhkan banyak sekali koreksi. Hal ini dapat dilakukan dengan mengeluarkan hasil perhitungan setiap fungsi untuk mendeteksi dimana error muncul atau kesalahan terjadi.

Pemanggilan fungsi dilakukan dengan menginisialisasikan nama fungsi tersebut berikut parameter yang menyertainya. Pada program diatas, fungsi dipanggil dengan menggunakan tambah dan kurang yang diikuti nilai dari a dan b. Fungsi tersebut dapat dipanggil di mana pun dengan syarat pemanggilan terebut sesuai.

7.2. Latihan

1. Buat rangkuman berkaitan dengan VOID, 2. Jalankan dan analisa program dibawah ini;

(28)

Pemrograman terstruktur

// declaring functions prototypes

#include <iostream>

using namespace std;

void odd (int x);

void even (int x);

int main() {

int i;

do {

cout << "Please, enter number (0 to exit): ";

cin >> i;

odd (i);

} while (i!=0);

return 0;

}

void odd (int x) {

if ((x%2)!=0) cout << "It is odd.\n";

else even (x);

}

void even (int x) {

if ((x%2)==0) cout << "It is even.\n";

else odd (x);

}

program 7.2. Contoh program bilangan ganjil genap dengan menggunakan fungsi

Source ; http://www.cplusplus.com/doc/tutorial/functions/

3. Buat algoritma untuk pemilihan bilangan prima dengan berdasarkan program 7.2

(29)

Pemrograman terstruktur

Bab VIII Class 8.1. Class

Untuk membentuk sebuah objek, pertama harus didefinisikan bentuk umumnya dengan menggunakan keyword class. Class sama dengan struktur. Sebagai contoh penggunaan kelas

Class class-name {

Private data dan Fungsi Public;

Public data dan Fungsi }Objek name list;

Sebuah kelas mungkin terdiri dari private sebagaimana dengan public. Sebagaimana dengan bentuk dasarnya, setiap item didefinisikan pada class adalah private. sebagai contoh variable stack dan tos merupakan private.

#include <iostream>

using namespace std;

#define SIZE 100

// This creates the class stack.

class stack {

int stack[SIZE];

int tos;

public:

void init();

void push(int i);

int pop();

};void stack::init(){

tos = 0;

}void stack::push(int i) { if(tos==SIZE) {

cout << "Stack is full.\n";

return;

}stack[tos] = i;

tos++;

}int stack::pop(){

if(tos==0) {

cout << "Stack underflow.\n";

return 0;

}tos--;

return stack[tos];

}

int main(){

stack stack1, stack2; // create two stack objects stack1.init();

(30)

Pemrograman terstruktur

stack2.init();

stack1.push(1);

stack2.push(2);

stack1.push(3);

stack2.push(4);

cout << stack1.pop() << " ";

cout << stack1.pop() << " ";

cout << stack2.pop() << " ";

cout << stack2.pop() << "\n";

return 0;

}

Program 8.1 Contoh penggunaan class

8.2. Latihan

(Latihan menyesuaikan praktikum)

(31)

Pemrograman terstruktur

UAP

Essay

1. Berikan Penjelasan Mengenai tipe data dan pengaruhnya terhadap penempatan memori.

2. Jelaskan program dibawah ini

Praktikum

Buat algoritma program Buat program

(32)

Pemrograman terstruktur

Daftar Pustaka

Schildt, Herbert.2003.C++:The Cmplete Reference, 4 th Edition.McGraw-Hill Companies Mueller, J Paul, & Cogswell, Jeff.2009.C++ All - in – One For Dummies; 2 nd Edition. Willey Publishing, Inc, River Street

http://www.cplusplus.com/doc/tutorial/functions/Acces date 05/10/2016 14.00

Gambar

Tabel 1.1. Tabel bahasa permograman , platform dan console
Gambar 2.1. Keluaran program “Hello Word!”
Tabel 2.1.. Tipe data, size dan Signed/Unsigned
Gambar 2.2. Hasil dari program 2.4

Referensi

Dokumen terkait

Tanpa melakukan pengukuran dengan mistar ukur, lukislah kubus ABCD.EFGH dengan rusuk AB diberikan pada gambar, bidang ABFE frontal, AB horizontal dan sudut surut 60 0

Sebagai gambaran, kita dapat menyimpan 5 nilai dengan tipe int tanpa harus mendeklarasikan 5 variabel yang berbeda identitas satu dengan lainnya.. Dengan array kita dapat menyimpan

Pada baris ke 5 dimana variabel i bertipe data integer dan i samadengan 0 dan dengan batasan i kurang dari samadengan 9 dan variabel i merupakan variabel yang akan menyimpan elemn

Berikut ini perintah (SQL) untuk membuat tabel “berita” CREATE TABLE berita (. id_berita int(5) unsigned NOT NULL auto_increment, id_kategori int(3) unsigned NOT NULL default