panduan praktikum · praktikum pemrograman komputer 2018 7 tahun 1989, dunia pemrograman c...

50

Upload: vutu

Post on 03-Mar-2019

294 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National
Page 2: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 2

PANDUAN PRAKTIKUM

PEMROGRAMAN KOMPUTER

Kepala Laboratorium Manajemen Industri

Dwi Sukma Donoriyanto, ST. MT

NIP. 19810726 200501 1 002

Asisten Laboratorium

Rendy Christian Koordinator Asisten

1632010065

Arfin Noor Shihab Wakil Koordinator Asisten

1632010042

Kurnia Ella Rahayu Sekretaris

1632010038

Thalia Naptalena Bendahara

1632010014

Nadlifah Hafidz Anggota

1632010023

Dhimas Putra S Anggota

1632010010

Vivi Indah Lestari Anggota

17032010027

Satrio Pinandhito T.T Anggota

17032010060

PROGRAM STUDI TEKNIK INDUSTRI

FAKULTAS TEKNIK

UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN”

JAWA TIMUR

2018

Page 3: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 3

KATA PENGANTAR

Syukur Alhamdulillah, dengan mengucapkan puji dan syukur

kehadiratAllah SWT atas rahmat dan hidayah-Nya sehingga penulis dapat

menyelesaikan modul praktikum ini dengan baik.

Modul praktikum ini dibuat dengan tujuan untuk mempermudah pelaksaan

prakitkum. Dan lebih dari itu, diharapkan mampu menjadi media akselerasi

pemahaman serta keterampilan atau skill praktikan sesuai dengan kompetensi

yang

diharapkan.

Penulis mengucapkan terima kasih yang sebesar-besarnya kepada

semuapihak yang telah membantu. Penulis menyadari sepenuhnya masih banyak

terdapat kekurangan dalam modul praktikum ini. Oleh karena itu, kritik serta

saran yang membangun dari praktikan maupun pembaca sangat membantu guna

perbaikan dan pengembangan di masa yang akan mendatang.

Akhir kata, dengan segala kerendahan hati penulis berharap semoga modul

praktikum ini dapat memberikan manfaat dan peningkatan buku pedoman bagi

pembaca maupun praktikan.

Surabaya, Juli 2018

Penyusun

Page 4: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 4

TATA TERTIB

PRAKTIKUM PEMROGRAMAN KOMPUTER

Dalam meningkatkan kedisiplinan pada Praktikum Pemrograman

Komputer maka para praktikan diharapkan mampu mematuhi tata tertib yang

berlaku antara lain:

1. Para praktikan harap datang tepat waktu dengan toleransi 10 menit lebih

awal dari jadwal yang telah ditetapkan.

2. Terlambat 5 menit dinyatakan tidak boleh mengikuti Tes Awal.

3. Terlambat 10 menit tidak diperbolehkan mengikuti Praktikum pada hari

tersebut dan nilai dimyatakan kosong.

4. Para praktikan tidak diperbolehkan memakai T-Shirt (kaos Oblong),

celana/rok pendek, celana robel ataupun sandal jepit, harus berpakain sopan,

bersepatu dan selama praktikum jaket harap dilepas.

5. Dilarang menancapkan flashdisk atau alat penyimpanan lainnya dalam

bentuk apapun ke CPU di Laboratorium an membuka program selain

program yang digunakan saat praktikum.

6. Dilarang menggunakan gadget dan sejenisnya saat praktikum berlangsung.

7. Bila izin ataupun sakit wajib memberitahu asslab max H-1 hari sebelum

praktikum (menggunakan surat tertulis).

8. Praktikum wajib melakukan Revisi H+2 dan melakukan ACC paling lambat

H+3 setelah dilaksanakannya praktikum.

9. Para praktikan tidak diperbolehkan mengikuti Ujian Global apabila telah 3

kali tidak masuk (absen).

10. Sistem penilaian dari praktikum:

• Tupen : 5%

• Test Awal : 10%

• Laporan : 20%

• Tugas Besar : 30%

• Ujian Global : 25%

• Attitude : 5%

• Absensi :5%

Page 5: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 5

DAFTAR ISI

LEMBAR JUDUL

KATA PENGANTAR

TATA TERTIB PRAKTIKUM

DAFTAR ISI

MODUL I Pengenalan dan Struktur Bahasa C++

1.1 Tujuan Praktikum

1.2 Tinjauan Pustaka

1.3 Studi Kasus

MODULII String dan Array

2.1 Tujuan Praktikum

2.2 Tinjauan Pustaka

2.3 Studi Kasus

MODUL III Fungsi,Prosedur,Struktur Kontrol Kondisional & Perulangan

3.1 Tujuan Praktikum

3.2 Tinjauan Pustaka

3.3 Studi Kasus

MODUL IV File dan Stream

4.1 Tujuan Praktikum

4.2 Tinjauan Pustaka

4.3 Studi Kasus

MODUL V Pointer

5.1 Tujuan Praktikum

5.2 Tinjauan Pustaka

5.3 Studi Kasus

Page 6: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 6

1.1 Tujuan Praktikum

1 Praktikum memahami algoritma pemrograman

2 Praktikum memahami struktur bahasa C++

3 Praktikan mampu membuat program sederhana dengan menggunakan

bahasa C++

1.2 Tinjauan Pustaka

A. Algoritma & Pemrograman

Algoritma adalah metode dan tahapan sistematis yang digunakan untuk

memecahkan suatu permasalahan. Sedangkan pemrograman adalah proses

pembuatan program dengan menerapkan algoritma dan struktur data tertentu

menggunakan bahasa pemrograman. Struktur data adalah tempat tatanan

penyimpanan data yang dibutuhkan program pada komputer. Kode program yang

telah ditulis kemudian akan di-compile dan dieksekusi untuk menjalankannya.

Compile adalah menerjemahkan kode program yang ditulis menggunakan bahasa

pemrograman, ke bahasa mesin yang dapat dimengerti oleh komputer sehingga

komputer mengerti apa yang diperintahkan.

B. Sejarah C++

Tahun 1978, Brian W. Kerninghan & Dennis M. Ritchie dari AT & T

Laboratories mengembangkan bahasa B menjadi bahasa C. Bahasa B yang

diciptakan oleh Ken Thompson sebenarnya merupakan pengembangan dari

bahasa BCPL ( Basic Combined Programming Language ) yang diciptakan oleh

Martin Richard.

Sejak tahun 1980, bahasa C banyak digunakan pemrogram di Eropa yang

sebelumnya menggunakan bahasa B dan BCPL. Dalam perkembangannya, bahasa

C menjadi bahasa paling populer diantara bahasa lainnya, seperti PASCAL,

BASIC, FORTRAN.

MODUL I

PENGENALAN DAN

STRUKTUR BAHASA C++

Page 7: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7

Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan

dikeluarkannya standar bahasa C oleh American National Standards Institute

(ANSI). Bahasa C yang diciptakan Kerninghan & Ritchie kemudian dikenal

dengan nama ANSI C.

Mulai awal tahun 1980, Bjarne Stroustrup dari AT & T Bell Laboratories

mulai mengembangkan bahasa C. Pada tahun 1985, lahirlah secara resmi bahasa

baru hasil pengembangan C yang dikenal dengan nama C++. Sebenarnya bahasa

C++ mengalami dua tahap evolusi. C++ yang pertama, dirilis oleh AT&T

Laboratories, dinamakan cfront. C++ versi kunoini hanya berupa kompiler yang

menterjemahkan C++ menjadi bahasa C.

Pada evolusi selanjutnya, Borland International Inc. mengembangkan

kompiler C++ menjadi sebuah kompiler yang mampu mengubah C++ langsung

menjadi bahasa mesin (assembly). Sejak evolusi ini, mulai tahun

1990 C++ menjadi bahasa berorientasi obyek yang digunakan oleh sebagian besar

pemrogram professional.

C. Kelebihan dan Kekurangan C++

Kelebihan C++

• Bahasa Standard-nya ANSI bisa dipakai diberbagai platform.

• Kecepatan program jika dibanding dengan program yang sama buatan

bahasa lain, relatif lebih cepat.

• Kode bahasa C++ dengan portabilitas dan fleksibilitas yang tinggi untuk

semua jenis komputer.

• Bahasa C++ tersedia hampir di semua jenis komputer.

• Kode program bersifat reuseable, sehingga dapat digunakan kembali pada

project lain dengan hanya menggunakan library dan file header.

Kekurangan

• C++ tidak murni OOP sehingga kurang cocok untuk mengajarkan Konsep

OOP karena kaidahkaidah OOP dapat dilanggar. Dan di C++ ada konsep

pointer yang sangat membingunkan, ini salah satu alasan mengapa C++

menjadi sesuatu yg paling tidak disukai.

• 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

Page 8: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 8

Linux. Apabila dalam praktiknya menggunakan Visual Studio maka

otomatis akan menggunakannya juga dan pada akhirnya malas untuk

mencoba sistem operasi yang lain.

• Implementasi C++ dalam teknologi IT pada saat sekarang sudah sangat

sedikit sekali.

• Sulitnya untuk membuat sesuatu dengan C++ sehingga kepeminatannya

dalam memperdalam programming akhirnya harus kandas, kecuali dengan

inisiatif sendiri mempelajari bahasa/teknologi lain.

D. Struktur bahasa C++

Struktur bahasa C++ terdiri atas komentar, preprocessor directive, fungsi

utama maupun tambahan, definisi fungsi dan deklarasi. Berikut ini syntax

program beserta penjelasan masing-masing struktur yang ada dalam C++.

1. // Contoh komentar satu baris //

2.

3. #include <iostream>

4. using namespace std;

5.

6. void prosedur()

7. {

8. char nama[20]=".......";

9. cout<<" Nama saya adalah "<<nama<<endl;

10. }

11.

12. int main()

13. {

14. cout<<"Hello"<<endl;

15. prosedur();

16. return 0;

17. }

1. Komentar

// Contoh komentar satu baris //

Page 9: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 9

Bagian ini berisi mengenai keterangan pada program kita. Tidak akan dieksekusi

dan tidak akan ditampilkan ketika program dijalankan alias nggak ngaruh. Tapi

cukup penting, karena komentar akan mempermudah orang lain yang ingin

mempelajari program yang kita melalui keterangan yang ada. Dan juga sangat

membantu kita megingat ketika kita membuat program dengan statement yang

panjang dan terdiri dari banyak fungsi. Komentar ditulis dengan 2 cara yaitu :

a. Dimulai dengan tanda // untuk komentar 1 baris (contoh di atas)

b. Diapit dengan tanda /* ... */ untuk komentar multi baris

2. Preprocessore Directive (Pengarah Compiler)

#include

using namespace std;

Preprocessor directive ditandai dengan simbol #. Bertugas untuk

mengarahkanprepocessor yang akan digunakan untuk membaca file header atau

bisa dikatakan sebagai pengatur proses kompilasi. Contoh preprocessor

directive : #include, #define, #if, #else, dan lainnya. Contoh file header : , , , dan

lainnya.

3. Fungsi Utama (main) dan Tambahan (function dan procedure)

a. Fungsi Utama

int main()

{

cout<<"Selamat datang"<

prosedur();

return 0;

}

Fungsi utama adalah bagian yang pertama kali akan dieksekusi, walaupun

sebelum bagian dari fungsi utama ini ada fungsi tambahan. Sehingga fungsi utama

pasti ada di dalam program C++. Fungsi utama ini tersusun atas kata main lalu

diikuti dengan tanda (). Lalu diikuti lagi dengan definisi fungsi (bagian dalam

tanda “{}”)yang berisi deklarasi dan perintah-perintah yang akan dieksekusi

dalam program tersebut.

b. Fungsi Tambahan

void prosedur()

Page 10: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 10

{

char nama[20]=".............";

cout<<" Nama saya adalah "<

}

Fungsi tambahan ini adalah fungsi yang mendukung dan merupakan pemecahan

dari fungsi utama. Terdiri atas function dan procedure. Function merupakan

fungsi dengan nilai balik, sedangkan procedure adalah fungsi tanpa nilai balik.

Untuk fungsi tambahan nanti akan kita kupas lebih lebar lagi.

4. Definisi fungsi

int main()

{

cout<<"Selamat datang"<

prosedur();

return 0;

}

Definisi fungsi adalah bagian yang menyertai fungsi. Di dalamnya berisi syntax-

syntax yang nantinya akan dieksekusi apabila fungsi tersebut dipanggil. Bagian

definisi ini selalu diawali dengan tanda kurawal buka “{” dan diakhiri dengan

tanda kurawal tutup “}”. Di dalam definisi fungsi ini terdapat beberapa statement.

Statement harus diakhiri dengan tanda “;”. Tanda ini berfungsi untuk memberi

tanda bahwa satu statement sudah selesai dan akan terjadi error jika tidak ditutupi

dengan tanda “;”. Contoh : cout<<"Selamat datang"<

5. Bagian deklarasi

void prosedur()

{

char nama[20]="AA";

cout<<" Nama saya adalah "<

}

Bisa dikatakan sebagai statement tempat pengenalan variabel, konstanta, fungsi,

array dan lainnya. Deklarasi yang sederhana da pada contoh di atas. Pada contoh

di atas diperkenalkan tentang tipe data apa yang digunakan variabel nama dalam

procedure tersebut. Kemudian diketahui pula nilai dari variabel nama adalah AA.

Page 11: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 11

E. Macam-Macam File Header pada C++ Dan Fungsinya

Macam-Macam File Header pada C++ Dan Fungsinya--Sebelum

melangkah jauh untuk lebih mendalamai bahasa pemrograman C++,alangkah

baiknya kita mengenal terlebih dahulu beberapa bagian dalam bahasa C++,salah

satunya adalah file header.File Header merupakan sebuah file yang berisi

deklarasi untuk berbagai fungsi yang dibutuhkan oleh program baik itu sebagai

standar Input/Output maupun sebagai syntax.

File Header dalam bahasa pemrograman C++ digunakan untuk memanggil

library-library yang ada sehingga suatu fungsi dapat digunakan secara baik dan

benar. #Include digunakan untuk mendeklarasikan file header dalam C++,

Berikut macam-macam file header dalam bahasa pemrograman C++:

1.#Include<Iostream.h>

Digunakan untuk menampilkan perintah:

- Cin

Merupakan fungsi masukan(digunakan untuk menyimpan data dalam suatu

variabel). Bentuk umum: cin>>var x;

- Cout

Merupakan fungsi keluaran(digunakan untuk menampilkan data ataupun tulisan).

Bentuk umum: cout<<”tulisan”; atau cout<<var x;

- Endl

Digunakan untuk pindah baris/ enter. Bentuk umum: cout<<”tulisan”<<endl;

-Ends

ends merupakan suatu fungsi manipulator yang digunakan untuk menambah

karakter null ( nilai ASCII NOL ) ke deretan suatu karakter. Fungsi ini akan

berguna untuk mengirim sejumlah karakter ke file di disk atau modem dan

mangakhirinya dengan karakter NULL.

2. #Include <Conio.h>

Digunakan untuk menampilakan perintah:

- getch

berfungsi untuk menahan tampilan. Bentuk umum: getch();

- clrscr

Page 12: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 12

berfungsi untuk membersihkan layar. Bentuk umum: clrscr;

- getche Fungsi dipakai untuk membaca sebuah karakter dengan sifat karakter

yang dimasukkan tidak perlu diakhiri dengan menekan tombol ENTER, dan

karakter yang dimasukan ditampilkan di layar.

- Putch

Akan menampilkan karakter ASCII dari nilai x ke layer monitor tanpa

memindahkan letak kursor ke baris berikutnya.

- Clreol

Fungsi ini digunakan untuk membersihkan layar mulai dari posisi kursor hingga

kolom terakhir, posisi kursor tiak berubah.

- Gotoxy

Fungsi gotoxy digunakan untuk memindahkan kursor ke kolom x, baris y.

- Wherex

Fungsi wherex digunakan untuk mengembalikan posisi kolom kursor.

- Wherey

Fungsi wherey digunakan untuk mengembalikan posisi baris kursor.

- Window

Fungsi window digunakan untuk mendefinisikan sebuah window berdasarkan

koordinat kiri atas dan kanan bawah.

3.#Include <Stdio.h>

Digunakan untuk menampilan perintah :

- Printf

Merupakan fungsi keluaran. Bentuk umum: printf (“tulisan”);

- Scanf

Merupakan fungsi masukan. Bentuk umum: scanf (“%c”, &karakter);

- Gets

Fungsi inputan yang bisa membaca spasi. Bentuk umum: gets(var x);

4.#Include <String.h>

- Strcpy

Digunakan untuk menyailn nilai string

- Strlen

Untuk mengetahui panjang string

Page 13: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 13

- Strupr

Digunakan untuk membuat string menjadi capital.

- Strcmp

Digunakan untuk membandingkan dua buah string.

Hasil dari fungsi ini bertipe integer dengan nilai: Negative, jika string pertama

kurang dari string kedua. Nol, jika string pertama sama dengan string kedua

Positif, jika string pertama lebih besar dari string kedua

Bentuk umum : strcmp(string1, string2);

- strlwr

Digunakan untuk mengubah huruf menjadi kecil semua.Bentuk umum :

strlwr(string);

- strcat

Digunakan untuk menggabungkan string.Bentuk umum : strcat(string1,string2);

5.#Include <Math.h>

Digunakan untuk menampilan perintah :

- Sqrt

Fungsi akar

- Pow

Fungsi pangkat

- Sin (), cos(), tan()

Masing-masing digunakan untuk menghitung nilai sinus, cosinus dan tangens dari

suatu sudut. Bentuk umum: Sin(sudut); Cos(sudut); Tan(sudut);

- Max

Digunakan untuk menghitung hasil pembagian dan sisa pembagian. Bentuk

umum: max(bilangan1, bilangan2);

- Min

Digunakan untuk menentukan bilangan terkecil dari dua buah bilangan. Bentuk

umum : min(bilangan1, bilangan2).

6.#Include <Iomanip.h>

Digunakan untuk menampilan perintah :

- Setiosflags()

Digunakan untuk mengatur jumlah digit decimal dibelakang koma

Page 14: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 14

7.#Include <Stdlib.h>

Digunakan untuk menampilan perintah :

- Atof()

Digunakan untuk mengonfersi nilai string menjadi bilangan bertipe double.

Bentuk umum : atof(char x);

- Atoi()

Digunakan untuk merubah tipe data string menjadi integer.

- Pow

Digunakan untuk pemangkatan suatu bilangan.Bentuk umum : pow(bilangan,

pangkat).

9.#Include <assert.h>

Berisi menegaskan makro, digunakan untuk membantu mendeteksi kesalahan

logis dan jenis lain dari bug dalam debugging versi dari sebuah program.

10. #Include <complex.h>

Sebuah set fungsi untuk memanipulasi bilangan kompleks.

11. #Include <ctype.h>

Mendefinisikan set fungsi yang digunakan untuk mengklasifikasikan karakter

dengan jenis mereka atau untuk mengkonversi antara atas dan huruf kecil dengan

cara yang independen dari yang digunakan set karakter (biasanya ASCII atau

salah satu ekstensi, meskipun implementasi menggunakan EBCDIC juga dikenal).

12. #Include <errno.h>

Untuk menguji kode kesalahan dilaporkan oleh fungsi perpustakaan.

13. #Include fenv.h>

Mendefinisikan sebuah set fungsi untuk mengendalikan floating-point lingkungan.

14. #Include <float.h>

Mendefinisikan konstanta makro menentukan implementasi khusus properti dari

floating-point library.

15. #Include <inttypes.h>

Mendefinisikan tipe bilangan bulat lebar yang tepat.

Page 15: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 15

16. #Include <iso646.h>

Mendefinisikan macro beberapa yang menerapkan cara-cara alternatif untuk

mengekspresikan token beberapa standar. Untuk pemrograman di ISO 646 set

varian karakter.

17. #Include <Limits.h>

Mendefinisikan konstanta makro menentukan implementasi khusus properti dari

tipe integer.

18. #Include <Locale.h>

Mendefinisikan fungsi lokalisasi.

19. #Include <Setjmp.h>

Demikianlah macro setjmp dan longjmp , yang digunakan untuk non-lokal keluar.

20. #Include <Signal.h>

Mendefinisikan fungsi sinyal penanganan.

21. #Include <Stdalign.h>

Untuk query dan menentukan keselarasan benda.

22. #Include <Stdarg.h>

Untuk mengakses berbagai jumlah argumen dilewatkan ke fungsi.

23. #Include <stdatomic.h>

Untuk operasi atom pada data dibagi antara benang.

24. #Include <stdbool.h>

Mendefinisikan tipe data Boolean.

25. #Include <stddef.h>

Mendefinisikan jenis beberapa berguna dan macro.

26. #Include <stdint.h>

Mendefinisikan tipe bilangan bulat lebar yang tepat.

27. #Include <stdnoreturn.h>

Untuk menentukan non-kembali fungsi.

28. #Include <tgmath.h>

Mendefinisikan jenis generik-fungsi matematika.

29. #Include <threads.h>

Mendefinisikan fungsi untuk mengelola beberapa Threads serta mutexes dan

variable kondisi.

Page 16: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 16

30. <time.h>

Mendefinisikan fungsi tanggal dan waktu penanganan.

1.3 Study Kasus

1.3.1 Permasalahan

Sebuah perusahaan PT. WIJAYA KUSUMA ingin melakukan

penginputan data karyawan. Maka buatlah bahasa pemogramannya dengan

menggunakan C++ agar perusahaan tersebut bisa melakukan penginputan yang

meliputi :

Nama : Lalushalya

Alamat : Rungkut,Surabaya

No. HP : 0812345678910

1.3.2 Penyelesaian

Output Program :

Page 17: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 17

2.1 Tujuanpraktikum

Setelah menyelesaikanmodulinimahasiswadiharapkanmampu :

1. Memahamipenulisan dan kegunaandari Identifier, Tipe Data,

Variabel,Konstanta dan Operator pada pemrograman C++

2. Membuat program C++ menggunakan Identifier, Tipe Data,

Variabel,Konstanta dan Operator untukmenyelesaikanstudikasus

3. Mahasiswa mampu memahami fungsi string dan array pada program dev

C++

4. Mahasiswa dapat membedakan macam-macam array

2.2 TinjauanPustaka

Pengertian Data

Data adalahkelompoksimbol-simbol yang teratur dan mewakilikuantitas,

tindakan,benda, dan sebagainya. Data juga mewakiliangka, karakteratau simbol-

simbol yangdigunakansebagaimasukanuntuk proses komputer. Dalam Bahasa

pemrogramanterdapatbeberapajenis data yaitu :

Data Numerikadalah data yang digunakanuntuk

prosesaritmatikaatauperhitungan

Data String adalah data yang

terdiridariberbagaimacamkarakteryangbersifat non matematis(angka juga

termasuk)

Data Logikaadalahjenis data yang

hanyaterdiriatasduasatuanyaitubenar(true) dan salah(false).

Identifier

Identifier adalahsebuahnama yang diidentifikasi dan dibuat oleh seorang

programmer dan digunakanuntukmewakilisebuahelemen pada program. Nama

variabel merupakansuatucontohdari identifier. Seorang programmer

MODUL II

STRING DAN ARRAY

Page 18: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 18

dapatmembuat identifier dengansebutanapapunasaltidaksamadengan keyword

yang dimiliki oleh sebuah Bahasa pemrogrammantersebut.

Terdapatbeberapaaturandalampemberiannamasuatu identifier

yaitusebagaiberikut :

Nama pengenalharusdimulaidengankarakterberupahuruf (A…Z)

ataudenganunderscore (_)

Karakterberikutnyadapatberupahuruf, angkaatau underscore

Tidakbolehsamadengan reservedword dalam C++ seperti int, char, float,

double, dan lain-lain

Panjang karaktermaksimum 32 karakter

Bersifat casesensitive yaituhurufbesar dan kecildiperhitungkan

Tipe Data

Merupakantempatuntukmenentukanpemberiannilaiterhadapsuatu variabel

yang diberikan oleh user. Contohnyaadalahketikakitamemasukkan databerupa

char (karakter) pada kolomharga yang bertipe data int

(angka)makaotomatisakanditolakdikarenakanadanyaperbedaantipe data.

Dalampemrograman komputerpemilihantipe data adalah salah satuunsur

paling penting. Seperticontohnya pada perhitungan 5 dibagi 2

akanmenghasilkanhasilyangberbedatergantungdaritipedatayangkitaberikan.

Apabilamenggunakantipe data int makaakanmenghasilkan 2.

Sedangkanapabilamenggunakantipe data float makaakanmenghasilkan 2,5.

Konstanta

Konstantaadalahsuatunilai yang tidakdapatdiubahdalamsuatu program

ketika program itusedangberlangsung. Oleh karenaitukonstantaharusdidefiniskan

di awal program. Konstantadapatbernilaiinteger, pecahan, karakter dan string.

Pendeklarasiankonstantadapatdilakukanmenggunakanduacara :

Menggunakan #define

Pendeklarasianmenggunakan #define diletakkanbersamaandengan

preprocessordirective dan diletakkan Bersama-samadenganpernyataan #include.

Pendeklarasianmenggunakan #define tanpamenggunakantanda = dan semicolon

(;).

Page 19: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 19

Menggunakan const

Sedangkandenganmenggunakan kata kunci const,

pendeklarasiankonstantamiripdengandeklarasi variabel yang ditambahkan kata

const dibagiandepan.

Variabel

Adalahsuatu identifier yang digunakanuntukmewakilisuatunilaitertentu di

dalamsebuah program. Nilai suatu variabel dapatdiubah-ubahsesuaikebutuhan.

Operator

Operator sendiriberartisymbolkhusus yang akanmemberitahukepada

compiler untukmelakukanoperasiaritmatika dan logikatertentu. Operator

sendirimemilikibeberapajenis, yaitusebagaiberikut :

Operator Assign (=)

Operator iniberfungsiuntukmemberikannilaikepadasuatu variabel.

Operator Majemuk (+=, -=, *=, /=, dan %=)

Operator iniberfungsiuntukmenyederhanakanoperasiaritmatika.

Operator Penaikan dan Penurunan (++ dan --)

Operator penaikan (++) akanmenambahkan 1 nilai variabel

begitupunsebaliknyadengan operator penurunan (--).

Operator relasional (==, !=, >, <, >=, dan <=)

Yang dihasilkandari operator

inibukanberupasebuahnilaimelainkansebuahbilangan bool yaitu 1 yang

berartibenar dan 0 yang berarti salah.

Operator Logika(!,&&, ||)

Operator logikadigunakanuntukmemberikannilaiataukondisi true atau false.

Operator inidigunakanuntukmembandingkanantara 2 kondisi.

STRING

String merupakan sebuah bentuk data yang sering dipakai dalam bahasa

pemrograman untuk keperluan menampung dan memanipulasi data teks. Dalam

bahasa C++, string merupakan suatu nilai karakter yang berurutan dan disimpan

dalam sebuah lokasi memori yang selalu diakhiri dengan karakter null. Dalam

sebuah program operasi string, karakter null biasanya ditulis ‘\0’, dimana hal

Page 20: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 20

tersebut biasanya secara umum berupa bilangan integer 0 atau nilai karakter null

konstanta.

Cara untuk memberikan petunjuk pointer char string pada bahasa C++

adalah dengan mengidentifikasikan penunjuk pointer dan kemudian

menetapkannya untuk menunjuk secara dinamis dan mengalokasikan

penyimpanan yang dikembalikan oleh operator yang baru. Suatu kesalahan umum

yang sering terjadi dalam menggunakan petunjuk pointer char pada string bahasa

C++ adalah ketika menggunakan penunjuk pointer tetapi tidak menunjukdan

mengalokasikan string dengan baik.

String dapat dimanipulasi dengan aturan tertentu. Di mana bahasa C++ telah

menyediakan semua ini ke dalam pustakanya. Berikut adalah fungsi-fungsi yang

digunakan untuk melakukan manipulasi string :

Tabel 2.1 Funsi untuk menangani string

FUNGSI PENJELASAN

Strlen

menerima string sebagai argumen. Pernyataan panjang string

(tidak termasuk null terminator. Contoh Penggunaan: len =

strlen (nama)).

Strcat menerima dua string sebagai argumen. Fungsi menambahkan

string kedua untuk pertama string. (Yang pertama adalah

string diubah, kedua string tersebut dibiarkan tidak berubah).

Contoh Penggunaan: strcat (string1, string2);

Strcpy menerima dua string sebagai argumen. Fungsi salinan kedua

string untuk pertama string. String miliknya kedua string

dibiarkan tidak berubah. Contoh penggunaan: strcpy (string 1,

string 2)

strncpy menerima dua string dan argumen integer. Argumen yang

ketiga, kedua integer, menunjukan berapa banyak karakter

yang dicopy dari string kedua menuju string pertama. Jika

kurang dari string2 sebanyak n karakter, string 1 adalah

ditambahkan dengan karakter’\0’. Contoh penggunaan:

strncpy (string1,string2, n)

strcmp menerima dua string argumen. Jika string1 dan string2 sama,

fungsi ini memberikan hasil 0. Jika string2 alfabetnya lebih

besar dari string1, ia kembali angka negatif. Jika string2

alfabetnya kurang dari string1, ia kembali angka positif.

Contoh penggunaan: if (strcmp (string1, string2))

strstr Pencarian untuk pertama terjadinya string2 dan string1. Jika

terjadinya string2 ditemukan, fungsi akan mengembalikan

pointer string pertama. Jika tidak, ia akan mengembalikan

Page 21: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 21

NULL pointer (alamat 0). Contoh Penggunaan: cout << strstr

(string1, string2)

Tabel 2.2 Fungsi Pengujian Karakter

FUNGSI

KARAKTER

PENJELASAN

Isalpha Returns betul (angka bukan angka nol) jika argumen adalah huruf

alfabet. Retutns salah jika argumen bukan huruf.

Isalnum Returns betul (angka bukan angka nol) jika argumen berupa huruf

atau angka. Sebaliknya return adalah salah.

Isdigit Returns betul (angka bukan angka nol) jika argumen adalah angka

0 sampai 9. Sebaliknya selain itu salah.

Islower Returns betul (angka bukan angka nol) jika argumen berupa huruf

kecil sebaliknya jika tidak maka salah

Isprint Returns betul (angka bukan angka nol) jika argumen berupa

karakter yang dapat dicetak (termasuk spasi). Jika tidak maka

return salah

Ispunct Returns betul (angka bukan angka nol) jika argumen yang ducetak

adalah karakter selain angka, huruf, atau ruang. Selain itu salah.

Isupper Returns betul (angka bukan angka nol) jika argumen adalah huruf

besar. Selain itu salah

isspace Returns betul (angka bukan angka nol) jika argumen berupa

karakter spasi. Selain itu salah.

Karakter spasi adalah salah satu dari karakter berikut ini: spasi “

vertikal tab ‘\v line baru ‘\n’ tab ‘\t’

Dari satu segi pandangan metode pemrograman yang mudah, library

standar class string menawarkan beberapa keuntungan pada string. Ketika anda

mengetahui pada modul ini, class string mempunyai beberapa anggota fungsi dan

operator yang memiliki muatan lebih. Hal ini jelas menyederhanakan tugas,

seperti penempatan sebuah karakter atau string di dalam suatu string, yang jika

dilakukan tanpa fungsi akan mengalami kesulitan dan membosankan untuk

melakukan operasi string.

Tabel 2.3 Pemakaian Konsruktor String

DEFINISI PENJELASAN

String alamat; Definisi objek string yang langsung disebutkan

String nama (“suprapto”); Mendefinisikan string benda bernama nama,

diinisialisasi dengan “suprapto”

String person1 (person2); Mendefinisikan string benda bernama person1,

yang merupakan salinan dari person2, person2

Page 22: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 22

mungkin salah satu objek atau string karakter

array

String set 1 (set2, 5); Mendefinisikan string bernama set1 objek yang

diinisialisasi untuk pertama lima karakter dalam

karakter array set2

String lineFull (‘z’, 10); Mendefiniskan string benda bernama lineFull

diinisialisasi dengan 10’z’ karakter

String firstName (fullName,

0, 7);

Mendifinisikan string benda bernama firstname,

diinisialisasi dengan substring dari string

fullName. Substring adalah tujuh karakter, mulai

pada posisi 0

Tabel 2.4 Operator String

OVERLOADED PENJELASAN OPERATOR

>> Ekstrak karakter stream dan masukkan karakter ke dalam

string. Karakter akan dicopy sampai menemui spasi atau

akhir kalimat dan sekaligus menghitung karakter masukan.

<< Menyisipkan string ke dalam stream.

= Memasukkan string pada sebelah kanan ke obyek string

pada sebelah kiri.

+= Menambahkan copyan string pada string sebelah kanan ke

obyek string pada sebelah kiri.

+ Mengembalikan string yang merupakan rangkaian dari dua

operand string.

[] Melaksanakan tanda notasi array, seperti nama [x], dimana

hal tersebut merujuk pada karakter pada pengembalian

posisi x.

Relational

Operators

Masing-masing operator penghubungdiimplementasikan:

<,>, <=, >=, ==, +==

ARRAY

Array merupakan bagian dasar pembentukan suatu struktur data yang lebih

kompleks. Hampir setiap jenis struktur data kompleks dapat di sajikan secara

logik oleh array.Array adalah suatu tipe data terstuktur yang berupa sejumlah data

sejenis (bertipe data sama) yang jumlahnya tetap dan diberi suatu nama

tertentu.Elemen-elemen array tersusun secara sekuensial di dalam memori

sehingga memiliki alamat yang berdekatan. Array dapat berupa array 1 dimensi, 2

dimensi, bahkan n-dimensi. Elemen-elemen array bertipe data sama tapi bisa

bernilai sama atau berbeda-beda. Array digunakan untuk menyimpan data-data

Page 23: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 23

yang diinputkan masing-masing kedalam memory komputer. Jadi jumlah datanya

banyak namun satu jenis.

Karaktersitik Array :

1. mempunyai batasan dari pemesanan alokasi memory (bersifat statis)

2. mempunyai type data sama (homogen)

3. dapat di akses secara acak.

4. berurutan (terstruktur)

Array Mempunyai Dimensi :

1. Array Dimensi satu (vektor)

Elemen-elemen array dapat diakses oleh program menggunakan suatu

indeks tertentu. Pengaksesan elemen array dapat dilakukan berurutan atau random

berdasarkan indeks tertentu secara langsung. Pengisian dan pengambilan nilai

pada indeks tertentu dapat dilakukan dengan mengeset nilai atau menampilkan

nilai pada indeks yang dimaksud.

Array satu dimensi juga disebut array dimensi satu atau biasa juga disebut

Vektor karena hanya memiliki satu arah.Deklarasi array satu dimensi:tipe_data

nama_var [ukuran_array]

Ket :

–type_data : menyatakan type elemen array misal int, char, float

–nama_var : nama variabel array

–ukuran : menyatakan jumlah maksimal elemen arranya

2. Array Dimensi banyak

- Dimensi dua (matrix / tabel )

-Dimensi tiga (kubik)

Array multi dimensi berarti array yang kita deklasaikan dapat

dikembangkan ke array dimensi 2 dan seteruanya. Array multi dimensi

merupakan topik yang menarik dalam matematika. Setiap dimensi dalam array

direpresentasikan sebagai sub bagian dalam array.

Oleh karena itu, array dua dimensi array memiliki dua sub bagian, sebuah

array tiga-dimensi memiliki tiga sub bagian dan sebagainya. Sebuah contoh

bentuk nyata yang baik dari array dua dimensi adalah sebuah papan catur. Satu

Page 24: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 24

dimensinya merupakan delapan baris, sedangkan dimensi lainnya merupakan

delapan kolom.

Array dua dimensi sering kali digambarkan/dianalogikan sebagai sebuah

matriks atau bentuk grid. Jika array berdimensi satu hanya terdiri dari 1 baris dan

banyak kolom, array berdimensi dua terdiri dari banyak baris dan banyak kolom

yang bertipe sama.

Array dua dimensi merupakan array yang terdiri dari M buah baris dan N

buah kolom. Bentuknya dapat berupa matriks atau tabel.

Bentuk Umum :

Tipe_Data Nama_Variabel [index-1] [index-2]

Inisialisasi array dua dimensi.

Seperti array berdimensi satu, array berdimensi dua juga bisa diinisialisasi.

Fungsi Array.

Jika suatu fungsi memberikan hasil balik, maka nilai hasil balik yang diberikan

oleh fungsi dapat dilakukan oleh statement return yang diikuti oleh nilai hasil

baliknya yang ditulis tanda kurung.

Keuntungan penggunaan array sebagai tipe data dibandingkan dengan

penggunaan tipe data yang lain adalah kemampuannya yang dapat mengumpulkan

beberapa data yang bertipe sama dalam satu variabel, sehingga dalam pembuatan

program yang terdiri dari beberapa tipe yang sama, tidak membutuhkan banyak

variabel.

2.3 Studi Kasus

2.3.1 Permasalahan

Array

Seorang Mahasiswa Teknik Industri UPN “Veteran” Jawa Timur ingin

membuat program berbasis C++. Program ini nantinya akan digunakan untuk

membuat deret bilangan. Dimana nantinya nilai awal, maksimum, dan intervalnya

dapat ditentukan sendiri. Buatlah program tersebut

Page 25: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 25

Penyelesaian :

Output Program :

Page 26: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 26

String

Seorang pegawai ingin membuat aplikasi berbasis C++ dimana aplikasi itu

akan ia gunakan untuk mengetahui jumlah karakter dari nama pegawai yang ada

di perusahaan tempat ia bekerja. Sehingga nantinya data tersebut dapat diolah

sedemikian rupa. Buatlah program tersebut!

Penyelesaian :

Output Program :

Page 27: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 27

3.1 Tujuan Praktikum

1. Praktikan dapat memahami fungsi dan prosedur dalam pemrograman

komputer.

2. Praktikan dapat mengaplikasikan fungsi dan prosedur dalam sebuah studi

kasus.

3. Praktikan dapat memahami kegunaan struktur kontrol kondisional,

perulangan dan percabangan

4. Praktikan dapat membuat bahasa pemrograman menggunakan struktur

kontrol kondisional, perulangan, dan percabangan

3.2 Tinjauan Pustaka

A. Prosedur

Prosedur adalah sederet instruksi algoritmik yang diberi nama dan akan

menghasilkan neto yang terdefinisi. Mendefinisikan (membuat spesifikasi)

prosedur berarti menentukan nama prosedur serta parameternya (jika ada), dan

mendefinisikan keadaan awal (Initial State, I.S.) dan keadaan akhir (Final State,

F.S.) dari prosedur tersebut. Prosedur didefinisikan (dituliskan spesifikasinya)

dalam kamus. Cara penulisan spesifikasi : prosedur diberi nama, dan parameter

formal (jika ada) yang juga diberi nama dan dijelaskan typenya. Nama parameter

yang dituliskan pada definisi / spesifikasi prosedur disebut sebagai parameter

formal. Sedangkan parameter yang dituliskan pada pemanggilan prosedur disebut

sebagai parameter aktual. Jadi, setiap prosedur harus

1. Didefinisikan (dibuat spesifikasinya) dan ditulis kode programnya.

2. Dipanggil, pada saat ekskusi oleh prosedur lain atau oleh program utama

parameter formal adalah nama-nam variabel (list nama) yang dipakai

MODUL III

FUNGSI, PROSEDUR, STRUKTUR

KONTROL KONDISIONAL DAN

PERULANGAN

Page 28: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 28

dalam mendefinisikan prosedur, dan membuat prosedur tersebut dapat

diekssekusi dengan nama-nama yang berbeda ketika dipanggil. Parameter

formal adalah list nama yang akan dipakai pada prosedur, yang nantinya

akan diasosiasikan terhadap nama variabel lain pada saat pemanggilan.

Sesuai dengan ketentuan nilainya.

Ada tiga type parameter formal yaitu parameter input, parameter output,

dan parameter input / outpyt. Memakai atau “memanggil” prosedur adalah

menuliskan nama prosedur yang pernah didefinisikan dan memberikan harga-

harga yang dibutuhkan oleh prosedur itu untuk dapat melaksanakan suatu aksi

terdefinisi. Sebuah prosedur juga boleh “memakai” atau memanggil prosedr. Pada

saat pemanggilan terjadi “passing parameter”.

B. Fungsi

Fungsi adalah kumpulan pernyataan yang melakukan tugas tertentu.

Sejauh ini anda telah menggunakan fungsi dalam dua cara :

(1) Anda telah membuat sebuah fungsi bernama utama dalam setiap program

yang telah ditulis.

(2) Anda memiliki fungsi library disebut seperti sqrt dan pow. Dalam bab ini

akan mempelajari cara membuat fungsi yang dapat digunakan seperti

fungsi library pada C++. Alasan lain untuk menggunakan fungsi adalah

untuk bahwa fungsi menyederhanakan program.

Jika tugas tertentu dilakukan dibeberapa tempat di sebuah program, sebuah

fungsi dapat ditulis sekali saja untuk melakukan tugas itu, dan kemudian akan

dijalankan kapan saja dibutuhkan. Ketika membuat sebuah fungsi, yang harus

ditulis adalah definisi. Semua definisi mempunyai bagian-bagian dibawah ini :

Name

Setiap fungsi harus memiliki nama. Secara umum, peraturan yang sama berlaku

untuk nama variabel juga berlaku untuk nama fungsi.

Parameter list

Program modul fungsi panggilan yang dapat mengirim data ke daftar parameter

adalah daftar variabel yang memegang nilai-nilai yang disampaikan ke fungsi.

Page 29: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 29

Body

Badan fungsi adalah serangkaian pernyataan yang melaksanakan tugas

melakaukan fungsi. Pernyataan ini akan ditutupi dalam satu set braces.

Return type

Fungsi dapat mengirim kembali ke nilai program modul yang memanggilnya.

Return type merupakan tipe data dari nilai yang dikirim kembali.

C. Struktur Kondisional

1. Statement IF

Pernyataan percabangan digunakan untuk memecahkan persoalan dalam

mengambil suatu keputusan diantara sekian kondisi yang ada.

Pernyataan IF diatas mempunyai pengertian, “jika kondisi bernilai benar,

maka perintah / pernyataan akan dikerjakan dan jika tidak memenuhi syarat maka

akan diabaikan”. Jika ‘pernyataan’ yang dijalankan hanya sebaris, maka tanda {}

boleh ditiadakan. Statement ‘kondisi’ harus merupakan statement Relasional

ataupun logika

Statement IF juga dapat ditambahkan ELSE sebagai konsekuensi alternatif

jika kondisi tidak dipenuhi (FALSE). Sintaksnya :

Perintah-1 dan perintah-2 dapat berupa sebuah pernyataan tunggal,

pernyataan majemuk atau penyataan kosong. Jika pemakaian if-else diikuti

dengan pernyataan majemuk, bentuk penulisanya sebagai berikut :

Selain format penulisan statement IF diatas, berikut adalah beberapa

format penulisan statement IF lainya :

if (kondisi)

{

Pernyataan; }

if (kondisi)

Perintah-1;

else perintah-2;

Page 30: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 30

IF Else Majemuk

Nested IF (IF bersarang)

Nested if merupakan pernyataan if berada didalam pernyataan if yang

lainya. Bentuk penulisan pernyataan Nested if adalah :

2. Statement SWITCH – CASE

Pernyataan switch adalah pernyataan yang digunakan untuk menjalankan

salah satu pernyataan dari beberapa kemungkinan pernyataan, berdasarkan nilai

dari sebuah ungkapan dan nilai penyeleksian. Syntaksnya :

if (syarat) {

_ Perintah; _ Perintah;

} else if (syarat) { _ Perintah; _ Perintah; } else

{ _ Perintah; _ Perintah;

}

if (syarat) if (syarat)

_ Perintah; else _ Perintah; else if (syarat) _ Perintah; else _ Perintah;

switch (ekspresi) { case konstanta 1 : pernyataan 1; break; case konstanta 2 : pernyataan 2; break; case konstanta 3 : pernyataan 3;

break; : : case konstanta N : pernyataan N; break; default : pernyataan lain : }

Page 31: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 31

Hal-hal yang perlu diperhatikan adalah :

1. Dibelakang keyword case harus diikuti oleh sebuah konstanta, tidak boleh

diikuti oleh kondisional.

2. Konstanta yang digunakan bertipe int atau char

3. Jika bentuknya seperti diatas maka apabila ekspresi sesuai dengan

konstanta 2 maka pernyataan 2, pernyataan 3 sampai dengan pernyataan

lain dieksekusi. Untuk mencegah hal tersebut, gunakan keyword break,

jika keyword break digunakan maka setelah pernyataan 2 dieksekusi

program langsung keluar dari pernyataan switch. Selain digunakan dalam

switch, keytword break banyak digunakan untuk keluar dari pernyataan

yang berulang (looping).

4. Pernyataan ‘default’ dieksekusi jika konstanta 1 sampai konstanta N tidak

ada yang memenuhi ekspresi.

Contoh :

Note : tidak setiap IF bisa dijadikan Switch. Tapi semua Switch dapat dijadikan IF

D. Struktur Kontrol Perulangan

Perulangan digunakan untuk mengerjakan suatu perintah secara berulang-

ulang sesuai dengan yang diinginkan.

#include<conio.h>

#include<iostream.h>

void main()

{

int bil;

clrscr();

cout<<“Masukkan bilangan :”;

cin>> bil;

switch (bil)

{

case 1 : cout<<“Anda masukkan bil. satu”;

break;

case 2 : cout<<“Anda masukkan bil. dua”;

break;

case 3 : cout<<“Anda masukkan bil. tiga”;

break;

default: cout<<“Anda memasukkan bil selain 1,2, dan 3”;

break;

}

getch();

}

Page 32: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 32

Struktur perulangan terdiri atas dua bagian :

1. Kondisi perulangan yaitu ekspresi boolean yang harus dipenuhi untuk

melaksanakan perulangan

2. Isi atau badan perulangan yaitu satu atau lebih pernyataan (aksi) yang akan

diulang

Perintah atau notasi dalam struktur perulangan adalah :

1. Pernyataan FOR

Pernyataan FOR digunakan untuk melakukan looping. Pada umumnya

looping yang dilakukan oleh for telah diketahui batas awal, syarat looping dan

perubahanya. Selama kondisi terpenuhi, maka pernyataan akan terus dieksekusi.

Inisialisasi merupakan pemberian nilai awal

Syarat pengulangan : memegang kontrol terhadap pengulangan, karena

bagian ini yang akan menetukan suatu perulangan diteruskan atau

dihentikan.

Pengubah nilai pencacah merupakan statement control untuk perulangan

Umunya mengatur kenaikan atau penurunan nilai pencacah. Bila

pernyataan didalam for lebih dari satu maka pernyataan-pernyataan tersebut harus

diletakkan didalam tanda kurung.

Contoh :

Nested FOR

Perulangan bertumpuk secara sederhana dapat diartikan : terdapat satu atau

lebih loop di dalam loop. Banyaknya tingkatan perulangan, tergantung dari

kebutuhan. Biasanya, nested loops diunakan untuk membuat aplikasi matematika

yang menggunakan baris dan kolom. Loop luar biasanya dignakan untuk

For ( inisialisasi syarat pengulangan pengubah nilai pencacah )

#include<conio.h>

#include<iostream.h>

void main()

{

int a;

clrscr();

for (a=0; a<=10; a++)

cout<<a<<” “;

getch(); }

Page 33: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 33

mendefinisikan baris. Sedangkan loop dalam digunakan untuk mendefinisikan

kolom.

Penjelasan program :

Perulangan akan menghasilkan nilai sebagai berikut :

Baris 1; kolom = 1; cetak 1

kolom = 2; cetak 2

kolom = 3; cetak 3

kolom = 4; cetak 4

kolom = 5; cetak 5

ganti baris !

Baris 2; kolom = 1; cetak 1

kolom = 2; cetak 2

kolom = 3; cetak 3

kolom = 4; cetak 4

kolom = 5; cetak 5

ganti baris !

Baris 3; kolom = 1; cetak 1

kolom = 2; cetak 2

kolom = 3; cetak 3

kolom = 4; cetak 4

kolom = 5; cetak 5

ganti baris !

Baris 4; kolom = 1; cetak 1

kolom = 2; cetak 2

kolom = 3; cetak 3

kolom = 4; cetak 4

kolom = 5; cetak 5

for (int baris = 1; baris <=4; baris++)

{

for (int kolom = 1; kolom <= 5; kolom++)

{

cout<<kolom<<” “;

}

cout<<endl;

}

Page 34: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 34

ganti baris ! selesai.

Dan dilayar akan mucul hasil dengan bentuk matrik sebagai berikut :

2. Pernyataan WHILE

Pernyataan while merupakan salah satu pernyataan yang berguna untuk

memproses suatu pernyataan tau beberapa pernyataan beberapa kali. Pernyataan

while memungkinkan statemen-statemen yang ada didalamnya tidak dilakukan

sama sekali.

Karakteristik while() adalah :

1. Dilakukan pengecekan kondisi terlebih dahulu sebelum dilakukan

perulangan. Jika kondisi yang dicek bernilai benar (true) maka perulangan

akan dilakukan.

2. Blok statement tidak harus ada. Struktur tanpa statement akan tetap

dilakukan selama kondisi masih true.

Penting!!! Jika anda menggunakan WHILE, pastikan bahwa suatu saat

bagian kondisi sampai bernilai FALSE. Apabila tidak, proses perulangan akan

terus berjalan selamanya.

3. Pernyataan DO. . .WHILE

Karakteristik do. . .while() adalah :

1. Perulangan akan dilakukan minimal 1× terlebih dahulu, kemudian baru

dilakukan pengecekan terhadap kondisi, jika kondisi benar maka

perulangan masih akan tetap dilakukan.

2. Perulangan dengan do. . .while() akan dilakukan sampai kondisi false.

While (kondisi)

{

Pernyataan;

}

1 2 3 4 5

1 2 3 4 5

1 2 3 4 5

1 2 3 4 5

Page 35: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 35

Bentuk umumnya

Perbedaan dengan WHILE sebelumnya yaitu bahwa pada DO. . .WHILE

statement perulanganya dilakukan terlebih dahulu baru kemudian dicek

kondisinya. Sedangkan WHILE kondisi dicek terlebih dahulu baru kemudian

statement perulanganya dijalankan. Akibat dari hal ini adalah dalam DO WHILE

minimal terdapat 1× perulangan. Sedangkan WHILE dimungkinkan perulangan

tidak pernah terjadi yaitu ketika kondisinya langsung bernilai false.

Struktur Kontrol Lompatan

Pernyataan Continue dan Break

Pernyataan break akan selalu terlihat digunakan bila menggunakan

pernyataan switch. Pernyataan ini juga digunakan dalam loop. Bila pernyataan ini

dieksekusi, maka akan mengakhiri loop dan akan menghentikan iterasi pada saat

tersebut. Pernyataan continue digunakan untuk pergi ke bagian awal dari blok

loop untuk memulai iterasi berikutnya. Dengan kata lain, perintah continue akan

melewati satu iterasi yang sesuai dengan syarat tertentu, dan melanjutkan ke

iterasi berikutnya.

Contoh :

Do

{

Pernyataan;

} while(kondisi);

#include<iostream.h>

void main()

{

int i;

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

{

If (i==4) continue;

cout<<“Bilangan”<<1<<;

if (i==6) break;

}

}

Page 36: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 36

Output :

Penjelasan : dari program diatas, dapat dilihat perulangan dari suatu

bilangan sebanyak 10×. Tetapi, pada perulangan i=4, ada perintah continue.

Dengan perintah ini, maka program langsung meloncat ke loop berikutnya dan

ketika sampai perulangan i=6, ada perintah break. Otomatis program akan

berhenti dan tidak sampai ke i=10. Dan program akan mencetak bilangan 0,

bilanga 1, bilangan 2, bilangan 3, bilangan 4, bilangan 5, bilangan 6.

Pernyataan GO TO

Pernyataan GO TO diperlukan untuk melakukan suatu lompatan ke suatu

pernyataan berlabel yang ditandai dengan tanda “:”

Contoh :

Output :

#include<iostream.h>

void main()

{

Cout<<”Tes go to”<<endl;

Goto selesai;

Cout<<”Hai, saya kok tidak disapa”<<endl;

Selesai :

Cout<<”Selesai...”<<endl;

}

Bilangan 0

Bilangan 1

Bilangan 2

Bilangan 3

Bilangan 4

Bilangan 5

Bilangan 6

Tes go to

Selesai...

Page 37: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 37

5.3 Studi Kasus

5.3.1 Permasalahan

Seorang pembeli bernama Vivi Indah Lestari membeli barang sejumlah

27. Berapakah harga total yang harus dibayarkan pembeli tersebut?

Dengan parameter sebagai berikut:

a. Pembelian < 50 tidak mendapat diskon maupun bonus.

b. Pembelian 50-99 mendapat diskon 5% dan bonus piring cantik

c. Pembelian 100-199 mendapat diskon 10% dan bonus headphone

d. Pembelian ≥ 200 mendapat diskon 15% dan bonus laptop

5.3.2 Penyelesaian

Output Program :

Page 38: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 38

4.1 Tujuan Praktikum

1. Mahasiswa dapat membuka dan mentup file.

2. Mahasiswa dapat mengerti perintah yang terdapat pada file dan stream

3. Mahasiswa dapat memahami dan mengaplikasikan perintah perihal input

dan output

4.2 Tinjauan Pustaka

A. Membuka file

Sebelum suatu file dapat diproses, file harus dibuka terlebih

dahulu.Sebelum file dibuka, terlebih dahulu obyek file harus didefinisikan.

Sintaksnya:ofstream nama_obyek;perintah ofstream dapat dijalankan

dengan menyertakan file header fstream.hSetelah itu, suatu file dapat

dibuka dengan perintahnama_obyek.open(“nama file dan path”);

B. Menulis ke File

Salah satu jenis pemrosesan pada file adalah menulis atau merekam

data kefile. Sintaknya:nama_obyek <<... ;

C. Menutup File

Setelah pemrosesan file selesai, file dapat ditutup menggunakan

perintah

nama_obyek.close();

Contoh 1. Program berikut ini untuk menulis teks ke dalam file

#include<iostream.h>

#include<fstream.h>

void main()

{

ofstream fileteks;

fileteks.open(“C:/algo.txt”);

fileteks<<“Untuk mencapai tujuan yg besar, maka tujuan itu ”<<endl;

MODUL IV

FILE DAN STREAM

Page 39: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 39

fileteks << “harus dibagi-bagi menjadi tujuan kecil”<< endl;

fileteks << “sampai tujuan itu merupakan tujuan yg dapat “<< “dicapai” << endl;

fileteks << “berdasarkan kondisi dan potensi yg dimiliki saat “<< itu “ << endl;

fileteks.close();

}

perintah fileteks.open(“C:/algo.txt”); akan membuka file algo.txt yang ada

di C:\

Apabila file tersebut belum ada maka akan dibuat secara otomatis, dan

apabilasudah ada isi file algo.txt akan terhapus.

D. Menambah Data pada File

Suatu file yang sudah ada sebelumnya dapat ditambah data yang

baru(tidak menghapus data lama). Caranya dengan menambahkan

perintah ios::apppada open().nama_obyek.open(“nama file”, ios::app);

Contoh 2.

#include<iostream.h>

#include<fstream.h>

void main()

{

ofstream fileteks;

fileteks.open(“C:/algo.txt”, ios::app);

fileteks << endl;

fileteks << “Oleh: Al Khowarizmi << endl;

fileteks.close();

}

E. Memeriksa Keberhasilan Operasi File

Tidak selamanya jalan yang mulus ditemui. Ada kemungkinan

terjadi saatfile dibuka, ternyata file tidak ada. Dalam C++ tersedia function

untuk memeriksakondisi-kondisi pada operasi file, sehingga kesalahan

saat eksekusi dapatdikendalikan. Function yang dimaksud adalahfail().

Contoh 3:

Page 40: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 40

#include<iostream.h>

#include<fstream.h>

void main()

{

ifstream fileteks; { ifstream digunakan u/ membaca file }

fileteks.open(“C:/algo.txt”);

if (fileteks.fail()) cout << “Maaf file takdapat dibuka/”

<< “tidak ditemukan”;

fileteks.close();

}

F. Operasi Berbasis Karakter

Operasi file dapat dilakukan dalam bentuk karakter. Misalnya

prosespenyimpanan data ke file dilakukan setiap karakter, atau membaca

data filekarakter per karakter. Operasi ini didukung oleh function put()

danget().

Contoh4. Program untuk menyimpan data karakter per karakter ke dalam

file.

#include<iostream.h>

#include<fstream.h>

void main()

{

ofstream fileteks;

fileteks.open(“C:/contoh.txt”);

fileteks.put(‘A’);

fileteks.put(‘B’);

fileteks.put(‘C’);

fileteks.close();

}

Contoh 5. Program untuk membaca file karakter per karakter

#include<iostream.h>

#include<fstream.h>

void main()

Page 41: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 41

{

char karakter;

ifstream fileteks; {}

fileteks.open(“C:/contoh.txt”);

while(!fileteks.eof())

{

fileteks.get(karakter);

cout << karakter;

}

fileteks.close();

}

4.3 Studi Kasus

4.3.1 Permasalahan

Seorang admin mempunyai tugas untuk mencatat file data-data

karyawan di PT. Cplusplus dengan data yang harus diinputkan sebagai

berikut:

a. Nama Panggilan : Vivi

b. Kota Asal : Gresik

c. Golongan Darah : O

d. Umur : 19 tahun

e. Tempat Lahir : Gresik

f. Jumlah Anak : 0

g. Agama : Islam

Tampilkanlah file data karyawan PT. Cplusplus apabila karyawan lain

ingin mengakses data-data karyawan tersebut !

4.3.2 Penyelesaian

File adalah sekumpulan data yang disimpan dalam media penyimpanan

luar seperti disket/harddisk. Stream adalah suatu logika device yang menghasilkan

dan menerima informasi atau wadah yang digunakan untuk menampung keluaran

dan menampung aliran data.Dalam C++ file adalah sebuah stream yang disimpan

dalam media penyimpanan luar. Karena merupakan sebuah stream, operasi yang

berlaku pada stream berlaku juga untuk file.

Page 42: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 42

Tulis coding dengan bahasa C++ kemudian Compile & Run coding

tersebut dengan memilih Execute lalu Compile & Run.

Untuk mengaplikasikan perintah stream masukkan coding seperti dibawah

ini.

Output Program :

Berikut merupakan tampilan hasil dari output programC++ menampilkan

data karyawan PT. Cplusplus

Page 43: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 43

5.1 Tujuan Praktikum

Setelah menyelesaikan modul ini, mahasiswa diharapkan mampu :

1. Mahasiswa mengenal dan memahami penggunaan pointer dalam listing

program

2. Mahasiswa mampu membuat program sederhana dengan menerapkan

konsep pointer

5.2 Tinjauan Pustaka

A. Pointer

Pointer (penunjuk) adalah sebuah variabel yang digunakan sebagai

penunjuk alamat dari variabel lain. Pointer disini berfungsi menyimpan alamat

dari sebuah variabel dan dapat mengakses nilai yang ada di alamat tersebut,

pointer dapat mengubah nilai, menampilkan nilai atau menampilkan alamat dari

variabel yang disimpannya. Manusia menggunakan pointer pada dunia nyatasetiap

saat. Mari kita lihat contohnya:

Pada saat seorang dosen mengatakan, “Kerjakan tugas di buku,” telah

terjadi penugasankepada mahasiswa secara tidak langsung.

Indeks yang terdapat pada akhir buku, merupakan petunjuk untuk

menemukan penjelasanlengkap mengenai topik tertentu.

Alamat merupakan sebuah pointer. Alamat menunjukkan tempat tinggal

seseorang.

Sebuah URL (Uniform Resource Locator), seperti http://www.google.com

juga sebuah pointer.URL tersebut memberitahukan lokasi halaman web

tersebut. Jika halaman web pindah, makaURL tidak berlaku lagi dan

menunjuk ke halaman yang sudah tidak ada. Pada C++ sebuah pointer

adalah sebuah objek yang menyimpan sebuah alamat (contohnya

lokasimemori) dimana terdapat data lain yang disimpan. Alamat memori

MODUL V

POINTER

Page 44: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 44

merupakan integer, jadi sebuahpointer biasanya direpresentasikan dengan

(unsigned) int. Yang membuat pointer lebih dari integer yangbiasa adalah

kita dapat mengakses data yang ditunjuk oleh pointer tersebut.Sebuah

aggregate adalah sekumpulan objek yang disimpan dalam satu unit. Array

merupakanmekanisme dasar untuk menyimpan sekumpulan objek dengan

tipe yang sama. Berbeda denganaggregate yang dapat menyimpan

sekumpulan objek dengan tipe yang tidak sama. Sebagai

contoh,bayangkan tata letak sebuah apartemen. Masing-masing lantai

mempunyai lima kamar tidur, lobi, duakamar mandi. Dengan demikian,

masing-masing lantai disimpan sebagai struktur dan bangunan adalahlantai

dalam array.

Deklarasi Pointer

Sama seperti variabel, pointer juga harus dideklarasikan dahulu

sebelumdigunakan. Bentuk umum deklarasi pointer adalah sebagi berikut :

Tipe variabel sama dengan tipe yang dikenal oleh variabel biasa, misalnya

int, float, char dan sebagainya. Nama variabel pointer juga mengikuti ketentuan

nama variabel biasa. Yang membedakan variabel pointer dengan variabel biasa

dengan menggunakan tanda asterisk (*) didepan nama varibel pada waktu

deklarasi

Kegunaan Pointer Di C++

Kegunaan pointer yang utama adalah untuk menyimpan alamat memori

dari sebuah variabel (data type atau object dari class). Selain menyimpan alamat

dari variabel, pointer juga dapat digunakan untuk menyimpan alamat dari sebuah

fungsi (function pointer).

Function pointer telah digunakan sejak dikenalkannya bahasa C,dan

banyak digunakan untuk sebuah fungsi callback atau untuk meningkatkan

readability dari sebuah code

Anda dapat memperlakukan function pointer seperti pointer biasa (pointer

ke datatype/object), anda dapat menyimpan,mengirimkan, merubah address, atau

Type_data*nama_pointer;

Page 45: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 45

meng-evaluasi address dari pointer ke fungsi ini dengan sifat tambahan anda dapat

memanggil fungsi yang ditunjuk oleh function pointer.

Pointer bisa juga berguna untuk

1. Mengirimkan “Parameter yang berupa variabel” ke dalam fungsi, artinya

nilai variabel bisa diubah di dalam fungsi.

2. Untuk membuat variabel DINAMIS (Bukan variabel Statis)

penggunaan function pointer pada C++ dibatasi, yaitu function pointer tidak boleh

menunjuk pada function yang berada dalam sebuah class (class member function)

kecuali function tersebut berjenis static.

Tipe Data Pointer :

Dimana Tipe_data merupakan tipe dari data yang ditunjuk, bukan tipe dari

pointer-nya. Contoh :

1. Mensubstitusikan address sebuah variabel ke pointer dengan memakai address

operator &

int x;

int *ptr;

ptr = &x;

2. Mensubstitusikan address awal sebuah array ke pointer

char t[5];

char *ptr;

ptr = t;

3. Mensubstitusikan address salah satu elemen array dengan address operator

char t[5] ;

char *ptr; ptr = &t[3];

4. Mensubstitusikan address awal character string ke pointer char

Char *ptr; ptr = "jakarta"

5.Mensubstitusikan NULL pada pointer. NULL ada pointer kosong, menunjukkan

suatu status dimana pointer itu belum diinisialisasikan dengan sebuah

address tertentu.

6.Memakai fungsi MALLOC.mengembalikan pointer kesejumlah n byte ruang

memori yang belum di inisialisasi. Apabila tidak terpenuhi akan

mengembalikan ke nilai NULL.

Page 46: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 46

B. Operator pada pointer

Operator pada pointer terbagi menjadi dua, yaitu :

a. Operator * (Reference)

Operator ini biasa disebut value pointed by. Dengan menggunakan

operator ini akan dihasilkan nilai yang berada pada suatu alamat memori.

Operator * merupakan operator reference. Dengan menggunakan pointer, kita

dapat mengakses nilai yang tersimpan secara langsung dengan memberikan

awalan operator asterisk (*) pada identifier pointer, yang berarti “value pointed

by”. Contoh : tif = *ub; penulisan tersebut berarti nilai variabel tif sama dengan

nilai yang ditunjuk oleh variabel ub.

Reference (*) merupakan suatu operator yang berfungsi menyatakan suatu

variabel adalah variabel pointer. Sama halnya dengan operator deference,

peletakan simbol operator reference diletakan diawal variabel. Operator reference

ini akan membuat suatu variabel pointer untuk menampung alamat.

Contoh Program menggunakan Pointer Reference :

b. Operator & (Deference)

Operator Dereference (&) yaitu operator yang berfungsi mendeklarasikan

sebuah variabel didalam penggantian memori. operator ini biasa disebut dengan

"address of". Jadi seandainya ingin mengetahui dimana variabel akan disimpan

Page 47: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 47

(untuk mengetahui letak / alamat penyimpanan variabel di memori), dapat

memberikan tanda "&" (ampersand sign) didepan variabel, yang berarti "address

of". Karena dengan menggunakan operator dereference (&) ini, sebuah variabel

akan menghasilkan alamat lokasi penyimpanannya di memori.

Contoh Program menggunakan Pointer Dereference :

C. Keunggulan menggunakan Pointer:

1. Penanganan terhadap array dan string akan lebih singkat, dan efisien.

2. Memungkinkan suatu fungsi untuk menghasulkan lebih dari satu nilai.

3. Memiliki kemampuan untuk mengirimkan alamat suatu fungsi ke fungsi

yang lain.

4. Kemampuan berkerja dengan memori yang telah dialokasikan secara

dinamik.

5. Memungkinkan untuk berhubungan langsung ke hardware.

6. Untuk menciptakan data structure yang kompleks.

7. Memungkinkan untuk berhubungan langsung dengan parameter command

D. Kelemahan Pointer

Kelemahan yang mungkin ada dengan pointer sebagai moniker: memory

leak, double delete, invalid memory access. Semuanya dapat dihindari

dengan ownership analysis yang bagus (pada setiap saat, harus diketahui

pihak mana yang bertanggung jawab mendelete sebuah object). Jika hal ini

Page 48: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 48

sulit dilakukan, misalnya karena shared ownership, anda dapat

menggunakan smart pointer atau garbage collector

Kelemahan yang mungkin ada dengan pointer sebagai iterator: array out of

bound. Salah satu carayang efektif menghindari hal ini adalah dengan

menggunakan standard algorithm.

5.3 Studi Kasus

5.3.1 Permasalahan

Sebuah toko bernama toko San Andreas yang menjual berbagai macam

kebutuhan elektronik ingin membuat suatu aplikasi menggunakan Bahasa

pemrograman C++ untuk mempermudah pelanggan memesan barangnya dengan

total harga yang langsung diketahui serta alamat memori yang digunakan untuk

melakukan konfirmasi pembayaran di Toko San Andreas. Maka buatlah

Algoritma Pemrograman nya !

5.3.2 Penyelesaian

Page 49: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 49

Output Program :

Page 50: PANDUAN PRAKTIKUM · PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 7 Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National

PRAKTIKUM PEMROGRAMAN KOMPUTER 2018 50

DAFTAR PUSTAKA

Frieyadie. 2006. “Panduan Pemrogramman C++”. Yogyakarta :Penerbit Andi

Purwanto, Timur Dali.2013.” Pemrograman C++”.Palembang:Penerbit Timur

.