Modul Praktikum Algoritma Dan Pemograman 1

Unduh sebagai pdf atau txt
Unduh sebagai pdf atau txt
Anda di halaman 1dari 78

Oleh Tim Dosen UNU Blitar

Modul Praktikum
Algoritma dan
Pemograman 1

Cover

UNU BLITAR
MODUL 1
Pengenalan Bahasa C++, Algoritma
Pemrograman, Integrated Development
Equipment (IDE) Visual C++ dan Dasar
Dasar Bahasa C++

Modul Praktikum
C++
Algoritma dan Pemograman 1
MODUL 1
PENGENALAN BAHASA C++ ,ALGORITMA
PEMROGRAMAN,INTEGRATED DEVELOPMENT EQUIPMENT
(IDE) VISUAL C++ dan DASAR-DASAR BAHASA C++

A. Tujuan
Setelah mempelajari bab ini diharapkan mahasiswa akan mampu :

▪ Memahami sejarah perkembangan bahasa C++.


▪ Mengenal dan memahami algoritma program dengan flowchart.
▪ Mengenal dan menggunakan IDE C++ dengan baik.
▪ Mengenal dan memahami penggunaan Identifier, tipe data, variable,
assignment, komentar, dan konstanta.
▪ Membuat program sederhana menggunakan bahasa C++.

B. Dasar Teori
Sejarah Perkembangan Bahasa C++

C++ adalah bahasa pemrograman komputer yang di buat oleh Bjarne


Stroustrup, yang merupakan perkembangan dari bahasa C dikembangkan
di Bong Labs (Dennis Ritchie) pada awal tahun 1970-an, Bahasa itu diturunkan
dari bahasa sebelumnya, yaitu B, Pada awalnya, bahasa tersebut dirancang
sebagai bahasa pemrograman yang dijalankan pada sistem Unix, Pada
perkembangannya, versi ANSI (American National Standart Institute). Bahasa
pemrograman C menjadi versi dominan, Meskipun versi tersebut sekarang jarang
dipakai dalam pengembangan sistem dan jaringan maupun untuk sistem
embedded, Bjarne Stroustrup pada Bel labs pertama kali mengembangkan C++
pada awal 1980-an. Untuk mendukung fitur-fitur pada C++, dibangun efisiensi dan
sistem support untuk pemrograman tingkat rendah (low level coding). Pada C++
ditambahkan konsep-konsep baru seperti class dengan sifat-sifatnya seperti
inheritance dan overloading. Salah satu perbedaan yang paling mendasar dengan
bahasa C adalah dukungan terhadap konsep pemrograman berorientasi objek
(Object Oriented Programming).
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.

Gambar 1.1 Bagan Struktur Program


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.

Gambar 1.2 Mekanisme Eksekusi Program


Flowchart

Flowchart atau diagram alir merupakan sebuah diagram dengan simbol-


simbol grafis yang menyatakan aliran algoritma atau proses yang menampilkan
langkah-langkah, secara berurutan dengan menghubungkan masing masing
langkah tersebut menggunakan tanda panah. Diagram ini bisa memberi solusi
selangkah demi selangkah untuk penyelesaian masalah yang ada di dalam
proses atau algoritma tersebut.

Gambar 1.3 Simbol-simbol flowchart

Berikut ini adalah contoh flowchart program sederhana :


Gambar 1.4 Contoh flowchat program sederhana

Mengenal IDE ( Integrated Development Equipment) MinGW Developer Studio

IDE (Integrated Development Equipment) adalah program komputer yang


memiliki beberapa fasilitas yang diperlukan dalam pembangunan perangkat
lunak. Tujuan dari IDE adalah untuk menyediakan semua utilitas yang diperlukan
dalam membangun perangkat lunak. IDE pada MinGW Developer Studio terbagi
menjadi lima bagian yaitu
Menu Toolbar
Toolbar

File View Window Code Editor Window

Message Window

Gambar 1.5 Tampilan IDE MinGW Developer Studio

a) Menu Toolbar
Menu utama yang terdiri dari ; File,Edit,View,Project, Build,Debug ,Tools
,Windows dan Help.
b) Toolbar
Menampilkan beberapa tool dari menu toolbar maupun sub menu-nya.
c) Code Editor Window
Tempat dituliskannya kode program.
d) Message Window
Menampilkan pesan-pesan pada proses kompilasi dan link program.
e) File View Window
Menampilkan program yang sedang dibuka dan dikerjakan.
Pengoperasian MinGW Developer Studio

1. Membuka aplikasi MinGW

Gambar 1.6 Tampilan awal MinGW


2. Membuat Project baru
Klik menu File dan pilih new (Ctrl + N)

Gambar 1.7 Tampilan membuat project baru


Pilih tab “Projects” dan pilih “Win32Console..” . Beri nama project pada
Project name dan pilih letak penyimpanan project tersebut di Location. Klik
OK.

3. Membuat File baru


Klik menu File dan pilih new (Ctrl + N)
Gambar 1.8 Tampilan membuat file baru

Pilih tab “Files” dan pilih “C/C++ Source File” . Beri nama file pada File name
dan pilih letak penyimpanan file tersebut di Location. Klik OK.

4. Membuat program sederhana

Gambar 1.9 Program Sederhana

5. Mengcompile dan eksekusi file


Klik tombol “compile” pada toolbar atau Ctrl + F7.

Gambar 1.10 Message Window

Pastikan tidak ada peringatan error atau warning yang membuat program
tidak dapat di jalankan. Kemudian kik tombol “execute program” atau Ctrl +
F5.

Gambar 1.11 Compile dan Execute


6. Hasilnya

Gambar 1.12 Output program

Struktur Sederhana Program C++

Header File

Deklarasi Fungsi Utama

Baris Program

Gambar 1.13 Stuktur sederhana program C/C++

Komponen Bahasa C++

1. Header

File Header adalah file yang berisi deklarasi untuk berbagai fungsi yang
dibutuhkan oleh program baik itu sebagai standar Input/Output maupun
sebagai syntax. File Header dalam C++ digunakan untuk memanggil library-
library yang ada sehingga suatu fungsi dapat digunakan secara baik dan benar.
Beberapa contoh file header di dalam C++ sebagi berikut :
Gambar 1.14 Contoh file header

2. Fungsi Utama

Setiap program yang ditulis dengan menggunakan bahasa C harus


mempunyai fungsi utama, fungsi tersebut bernama main(). Fungsi inilah yang
akan dipanggil pertama kali pada saat eksekusi program. Apabila ada fungsi
lain yang dibuat, maka fungsi tersebut akan dijankan ketika dipanggil di fungsi
utama. Hal ini karena bahasa C/C++ merupakan bahasa procedural yang
menerapkan konsep runtutan (program dieksekusi baris-perbaris dari atas ke
bawah secara berurutan).

3. Identifier / Pengenal
Identifier adalah suatu nama yang biasa dipakai dalam pemrograman
untuk menyatakan variabel, konstanta, tipe data, dan fungsi. Aturan untuk
penulisan identifier antara lain:
1. Tidak boleh dimulai dengan karakter non huruf
2. Tidak boleh ada spasi
3. Tidak boleh menggunakan karakter-karakter ~ ! @ # $ % ^ & * ( ) + ` - = { }
[]:";'<>?,./|
4. Tidak boleh menggunakan reserved words yang ada dalam C/C++.
Reserved Word atau Keyword merupakan kata-kata yang telah ada/
didefinisikan oleh bahasa pemrograman yang bersangkutan. Kata-kata
tersebut telah memiliki definisi yang sudah tetap dan tidak dapat diubah.
Karena telah memiliki definisi tertentu, maka kata-kata ini tidak dapat
digunakan sebagai identifier.

Gambar 1.15 Reserved Words C/C++

4. Tipe Data
Tipe Data adalah jenis nilai yang dapat ditampung oleh suatu variabel.
Berikut ini tipe data yang terdapat dalam C++ :

Gambar 1.16 Jenis – jenis tipe data

5. Deklarasi Variabel
Variabel merupakan suatu tempat untuk menampung data atau konstanta
di memori yang mempunyai nilai atau data yang dapat berubah – ubah selama
proses program. Seperti halnya Pascal, variabel yang digunakan dalam
program harus dideklarasikan terlebih dahulu. Pengertian deklarasi di sini yaitu
mengenalkan variabel ke program dan menentukan tipe datanya. Berikut ini
contoh pendeklarasian variabel:

int jumlah;
float harga_satuan, variabel1;
char saya, kamu;

6. Assigment
Proses assignment adalah proses pemberian nilai kepada suatu
variabel yang telah dideklarasikan. Berikut adalah contoh assignment:
Jumlah = 10;
Harga_satuan = 23.456;
Saya = ‘B’;
Kamu = ‘2’;
Berikut ini contoh program yang menggambarkan deklarasi variabel
dan assignment:

Contoh 1 :

Gambar 1.17 Contoh deklarasi variable dan assignment

Contoh 2 :
Gambar 1.18 Contoh deklarasi variable dan assignment

7. Konstanta
Konstanta adalah identifier yang terkait nilai tidak bisa biasanya diubah
oleh program selama pelaksanaannya. Untuk pendeklarasian konstanta dalam
C++ mirip dengan Pascal. Contoh penulisan kode program (sintaks) adalah
seperti berikut :
const tipe_data nama_konstanta = value;
const int mhs = 20;

8. Komentar
Komentar digunakan untuk memberikan penjelasan pada program dan
tidak akan dieksekusi dalam program. Contoh penulisan komentar dalam
program adalah sebagai berikut:

Gambar 1.19 Contoh komentar

LATIHAN
1. Tuliskan kembali kode program di bawah ini dan identifikasi
(header,variable,assignment dsb ) ?
A.

B.

2. Buatlah program sederhana untuk menghitung luas lingkaran !


3. Tuliskan kembali program di bawah ini dan simpan dengan ekstensi :
a. Ekstensi .cpp
b. Ekstensi .c
4. Adakah perbedaan output kedua program pada no 3 ? Jelaskan !
TUGAS PRAKTIKUM

1. Identifikasi kode program di bawah ini.

2. Identifikasi kesalahan kode program di bawah ini. Kemudian tulislah kembali


dengan kode program yang benar.
TUGAS RUMAH

1. Buatlah program konversi suhu sederhana dari Celcius di ubah menjadi


Fahrenheit, Kelvin dan Reamur dengan tampilan program di bawah ini :

Keterangan Program

Inputan dari keyboard

Hasil konversi
MODUL 2

Operator

Modul Praktikum
C++
Algoritma dan Pemograman 1
MODUL 2
OPERATOR
A. Tujuan
Setelah mempelajari bab ini diharapkan mahasiswa akan mampu :
▪ Menjelaskan tentang jenis-jenis operator.
▪ Menjelaskan masing-masing fungsi operator.
▪ Memahami cara penggunaan masing-masing operator.
▪ Membuat program dengan mengaplikasikan operator.
▪ Mengevaluasi kesalahan pada program.

B. Dasar Teori
1. Pendahuluan
Operator merupakan simbol atau karakter yang biasa dilibatkan dalam
program untuk melakukan sesuatu operasi atau manipulasi. Contohnya
Penjumlahan, pengurangan, pembagian dan lain-lain.
Operator mempunyai sifat:
Unary
Sifat unary pada operator hanya melibatkan sebuah operand pada suatu
operasi aritmatik. Contoh : -5
Binary
Sifat binary pada operator melibatkan dua buah operand pada suatu operasi
aritmatik. Contoh : 4 + 8
Ternary
Sifat tenary pada operator melibatkan tiga buah operand pada suatu operasi
aritmatik. Contoh : (10 % 3) + 4 + 2
2. Jenis-jenis operator
2.1 Operator Aritmatika
Operator untuk operasi aritmatika yang tergolong sebagai binary adalah:
Tabel 2.1.1 Operator Aritmatika

Tabel 2.1.2 Operator Unary

2.1.1 Hierarki Operator Aritmatika


Di dalam suatu akspresi arotmatika dapat kita jumpai beberapa
operator aritmatika yang berbeda secara bersamaan. Urutan operator
aritmatika adalah sebagai berikut:
Tabel 2.1.3 Tabel Hierarki Operator Aritmatika

Contoh:
A=8+2*3/6
Langkah perhitungannya :
A = 8 + 6/6 dimana 6/6 = 1
A=8+1
A=9
Tingkatan operator ini dapat diabaikan dengan penggunaan tanda
kurung ( dan )
Contoh:
A = (8 + 2) * 3 / 6
Langkah perhitungannya :
A = 10 * 3/6 dimana 8 + 2 = 10
A = 30 / 6
A=5
2.2 Operator Penugasan
Operator penugasan (Assignment operator) dalam bahasa C++ berupa
tanda sama dengan (“=”).
Contoh :
nilai = 80; A = x * y;
Penjelasan :
variable “nilai” diisi dengan 80 dan variable “A” diisi dengan hasil
perkalian antara x dan y.
2.3 Operator Increment & Decrement
Pada pemrograman C++, menyediakan operator penambah dan
pengurang Increment & Decrement).
Tabel 1.4 Operator Increment & Decrement

A = A + 1 atau A = A – 1; dapat disederhanakan menjadi A + = 1 atau


A-=1
Dan dapat disederhanakan menjadi A++ atau A--. Notasi ++ atau --
dapat diletakkan di depan atau di belakang variabel.
Contoh: A-- atau --A atau ++ A atau A++
Kedua bentuk penulisan di atas mempunyai arti yang berbeda:
• Jika diletakkan di depan variabel. Maka proses penambahan atau
pengurangan akan dilakukan sesaat sebelum atau langsung pada saat
menjumpai ekspresi ini sehingga nilai variabel tadi akan langsung
berubah begitu ekspresi ini di temukan.
• Jika diletakkan di belakang variabel. Maka proses penambahan atau
pengurangan akan dilakukan setelah ekspresi ini di jumpai atau nilai
variabel akan tetap pada saat ekspresi ini ditemukan

2.4 Operasi Relasi (Perbandingan)


Operator relasi ini digunakan untuk membandingkan dua buah nilai.
Hasil dari perbandingan operator ini menghasilkan nilai numeric 1
(True) atau 0 (False).
Tabel 1.5. Operator relasi (Perbandingan)

2.5 Operator Logika


Operator logika digunakan untuk menghubungkan dua atau lebih
ungkapan menjadi sebuah ungkapan berkondisi.
Tabel 1.6 Operator Relasi Logika

2.6 Operator Bitwise


Operator Bitwise digunakan untuk memanipulasi data dalam bentuk bit
Tabel 1.7 Operator Bitwise

2.6.1 Operator Bitwise << (Shift Left)


Operator Bitwise Shift Left digunakan untuk menggeser sejumlah bit
ke kiri
Contoh : 0001 0101 = 21 jika di geser kekiri 1 bit 0010 1 010 = 42
2.6.2 Operator Bitwise >> Shift Right
Operator Bitwise >> Shift Right digunakan untuk menggeser
sejumlah bit ke kanan
Contoh : 0001 0010 = 18 jika digeser ke kanan 2 bit 0000 0100 = 4
2.6.3 Operator Bitwise & (AND)
Operator Bitwise & (AND) digunakan untuk membandingkan bit dari
dua operand. Akan bernilai benar (1) jika semua operand yang
digabungkan bernilai benar (1).
Tabel 1.8 Operator Bitwise & (AND)

Contoh :
0001 0101
0001 0001 = AND
0001 0001

2.6.4 Operator Bitwise | (OR)


Operator Bitwise | (OR) digunakan untuk membandingkan bit dari
dua buah operand. Akan bernilain benar jika ada salah satu operand
yang digabungkan ada yang bernilai benar (1).
Tabel 1.9 Operator Bitwise | (OR)

Contoh :
0001 0101
0001 0001 = OR
0001 0101
2.6.5 Operator Bitwise ^ (XOR)
Operator Bitwise ^ (XOR) digunakan untuk membandingkan bit dari
dua buah operand. Akan bernilain benar (1) jika ada salah dua bit
operand yang dibandingkan hanya sebuah bernilai benar (1).
Tabel 1.1 Operator Bitwise ^ (XOR)

Contoh :
0001 0101
0001 0001 = XOR
0000 0100

Latihan
1. Latihan 1
Tuliskan kode program di bawah ini dengan menggunakan program MinGW
Developer Studio, kemudian compile dan simpan dengan nama Lat1, execute
kode program tersebut., jika ada error perbaiki program tersebut. Jelaskan &
simpulkan hasil execute program Lat1!

2. Latihan 2
Tuliskan kode program di bawah ini dengan menggunakan program MinGW
Developer Studio, kemudian compile dan simpan dengan nama Lat2, execute
kode program tersebut., jika ada error perbaiki program tersebut. Jelaskan &
simpulkan hasil execute program Lat2!

3. Latihan 3
Tuliskan kode program di bawah ini dengan menggunakan program MinGW
Developer Studio, kemudian compile dan simpan dengan nama Lat3, execute
kode program tersebut., jika ada error perbaiki program tersebut. Jelaskan &
simpulkan hasil execute program Lat3!
4. Latihan 4
Tuliskan kode program di bawah ini dengan menggunakan program MinGW
Developer Studio, kemudian compile dan simpan dengan nama Lat4, execute
kode program tersebut., jika ada error perbaiki program tersebut. Jelaskan &
simpulkan hasil execute program Lat4!

5. Latihan 5
a. Tuliskan kode program di bawah ini dengan menggunakan program MinGW
Developer Studio, kemudian compile dan simpan dengan nama Lat5a,
execute kode program tersebut., jika ada error perbaiki program tersebut.
Jelaskan & simpulkan hasil execute program Lat5a!

b. Tuliskan kode program di bawah ini dengan menggunakan program MinGW


Developer Studio, kemudian compile dan simpan dengan nama Lat5b,
execute kode program tersebut., jika ada error perbaiki program tersebut.
Jelaskan & simpulkan hasil execute program Lat5b!
6. Latihan 6
Tuliskan kode program di bawah ini dengan menggunakan program MinGW
Developer Studio, kemudian compile dan simpan dengan nama Lat6, execute
kode program tersebut., jika ada error perbaiki program tersebut. Jelaskan &
simpulkan hasil execute program Lat6!

7. Latihan 7
Tuliskan kode program di bawah ini dengan menggunakan program MinGW
Developer Studio, kemudian compile dan simpan dengan nama Lat7, execute
kode program tersebut., jika ada error perbaiki program tersebut. Jelaskan &
simpulkan hasil execute program Lat7!

Tugas Rumah
Buat suatu program yang menghasilkan data seperti di bawah ini !
MODUL 3

Operasi Kondisi

Modul Praktikum
C++
Algoritma dan Pemograman 1
MODUL 3
OPERASI KONDISI
A. Tujuan
Setelah mempelajari bab ini diharapkan mahasiswa akan mampu :
▪ Menjelaskan tentang fungsi operasi kondisi.
▪ Menjelaskan tentang fungsi if, if else, if else bertingkat, dan switch case.

B. Petunjuk
▪ Awali setiap aktivitas anda dengan doa, agar anda lancar dalam belajar.
▪ Pahami tujuan, dasar teori, dan latihan-latihan praktikum dengan baik.
▪ Kerjakan tugas-tugas praktikum dengan baik, jujur, dan sabar.
▪ Tanyakan kepada instruktur apabila ada hal-hal yang kurang jelas.

C. Alat & Bahan


▪ PC/ laptop yang memenuhi kapabilitas untuk pemrograman bahasa
C++.
▪ Perangkat lunak pemrograman C++.
▪ Modul yang akan dipraktekkan.

D. Dasar Teori
Pernyataan percabangan pada pemrograman digunakan untuk memecahkan
persoalan untuk mengambil suatu keputusan diantara sekian pernyataan yang
ada, dimana sebuah instruksi (pernyataan) akan dilaksanakan jika sebuah
kondisi/persyaratan terpenuhi.
1. Pernyataan If
Pernyataan if mempunyai pengertian” jika kondisi bernilai benar, maka
pernyataan akan dikerjakan dan jika tidak memenuhi syarat maka
program akan mengabaikan pernyataan ”. Dari pengertian tersebut
diatas maka dapat dilihat diagram alir seperti pada gambar 1.

Gambar 1. Diagram Alir If

Bentuk umum dari pernyataan if adalah:

if (kondisi)
Pernyataan;
Penulisan kondisi harus di dalam kurung (……) dan berupa ekspresi
boolean (hasil logika true atau false, dan pernyataan dapat berupa
sebuah pernyataan tunggal, pernyataan majemuk atau pernyataan
kosong.

Jika pemakaian if diikuti dengan pernyataan majemuk, bentuk


penulisannya sebagai berikut:

if (kondisi) {
Pernyataan1;
Pernyataan2;
...;
}

2. Pernyataan If – Else
Pernyataan if mempunyai pengertian, “ jika kondisi bernilai benar, maka
pernyataan-1 yang akan dieksekusi dan jika tidak memenuhi syarat
maka akan dieksekusi pernyataan-2”. Dari pengertian tersebut dapat
dilihat di diagram alir pada gambar 2.

Gambar 2. Diagram Alir If-Else

Bentuk umum dari pernyataan if-else adalah:

if (kondisi)
Pernyataan-1;
else
Pernyataan-2;

Pada Gambar 2, diagram alir if-else pernyataan-1 dan pernyataan-2


dapat berupa sebuah pernyataan tunggal, pernyataan majemuk atau
pernyataan kosong. Jika if- else diikuti dengan pernyataan majemuk,
bentuk penulisannya adalah:
if (kondisi) {
Pernyataan1;
...;
} else {
Pernyataan2;
...;
}

3. If – Else Bertingkat
Bentuk If-Else dapat digunakan secara bertingkat. Ada beberapa bentuk
If-Else bertingkat, antara lain nested if dan if – else if.

i. Nested If
Nested if merupakan bentuk pernyataan if yang ada di dalam
pernyataan if yang lain. Disebut juga if bersarang. Eksekusinya
memperhatikan pernyataan if yang mewadahi pernyataan if
yang ada.
Bentuk umum dari pernyataan ini adalah:

if (kondisi1)
if (kondisi2)
Pernyataan;
else //untuk kondisi1
Pernyataan;
else //untuk kondisi2
Pernyataan;

ii. If – Else If
Bentuk ini merupakan penggunaan bentuk if else secara
majemuk. Pernyataan if pada else if akan dieksekusi jika hasil
pernyataan if sebelumnya bernilai false.
Bentuk umum dari pernyataan ini adalah:

if (kondisi1) {
Pernyataan...;
...;
}
else if (kondisi2) {
Pernyataan...;
...;
}
else {
Pernyataan...;
...;
}
4. Pernyataan Switch – Case
Bentuk switch – case merupakan pernyataan yang dirancang khusus
untuk menanggani pengambilan keputusan yang melibatkan sejumlah
atau banyak alternatif. Pernyataan switch – case ini memiliki kegunaan
yang sama seperti if – else bertingkat, tetapi dengan kondisi yang bertipe
karakter atau integer.

Bentuk umum dari pernyataan ini adalah sbb.

switch (ekspresi) {
case konstanta1:
pernyataan1;
break;
case konstanta2:
pernyataan2;
break;
case konstanta3:
pernyataan3;
break;
...
case konstanta-n:
pernyataan-n;
break;
default:
pernyataan-umum;
}

Setiap cabang akan dijalankan jika syarat nilai konstanta terpenuhi dan
default akan dijalankan jika semua cabang diatasnya tidak terpenuhi.
Pernyataan break menunjukkan setelah eksekusi pernyataan, maka
program akan keluar dari switch. jika pernyataan ini tidak ada, maka
program akan diteruskan ke cabang-cabang yang lainnya.
E. Tugas Latihan
1. Latihan 1

2. Latihan 2

using namespace
std;

3. Latihan 3
4. Latihan 4
using namespace
std;

5. Latihan 5
6. Latihan 6
F. Tugas Praktikum
1. Masalah 1
Sebuah toko dengan nama ”BERKAH SEJAHTERA” dalam melayani
pembeli, mempunyai ketentuan dalam memberikan potongan harga.
Besarnya potongan harga dari pembelian barang adalah sebagai
berikut:
1. jika total pembelian barang kurang dari Rp75.000, maka
potongan yang diterima sebesar 10% dari total pembelian.
2. jika total pembelian barang lebih atau sama dengan
Rp75.000 – Rp100.000, maka potongan yang diterima
sebesar 20% dari total pembelian.
3. jika total pembelian barang lebih dari Rp100.000, maka
potongan yang diterima sebesar 30% dari total pembelian.
4. konsumen ingin anda membuatkan program dengan
mencantumkan juga label toko, nama kasir dan pembeli.

Buatlah program untuk menyelesaikan masalah di atas!

2. Masalah 2
Suatu Perusahaan dengan nama ”PT. MAKMUR SUKSES JAYA”
memberikan komisi kepada para salesmannya dengan ketentuan
sebagai berikut:
1. bila salesman dapat menjual barang hingga Rp60.000,
maka akan diberikan uang jasa sebesar Rp15.000 ditambah
dengan komisi 15% dari pendapatan yang diperoleh hari itu.
2. bila salesman dapat menjual barang diatas Rp60.000, maka
akan diberikan uang jasa sebesar Rp30.000, ditambah
dengan uang komisi 20% dari pendapatan yang diperoleh
pada hari itu.
3. bila salesman dapat menjual barang diatas Rp100.000,
maka akan diberikan uang jasa sebesar Rp50.000,
ditambah dengan uang komisi 30% dari pendapatan yang
diperoleh pada hari itu.
4. perusahaan itu ingin anda membuatkan program dengan
mencantumkan juga label nama perusahaan, nama kasir
dan salesman.
Buatlah program untuk menyelesaikan masalah di atas!
G. Tugas Rumah
1. Tugas 1
Buatlah program untuk membantu seorang dosen Teknik Elektro UM
dalam menentukan nilai akhir mahasiswa. Jangan lupa sertakan
diagram alir (flowchart)nya. Hal yang harus dilakukan adalah sebagai
berikut :
i. Ketentuan pengambilan nilai :
a) Nilai Murni Keaktifan = nilai keatifan dikalikan 20 %
b) Nilai Murni Tugas = nilai tugas dikalikan 30%
c) Nilai Murni Ujian = nilai ujian dikalikan 50%
d) Nilai Akhir = Nilai Murni Ujian + Nilai Murni Tugas + Nilai
Murni Keaktifan.
ii. Melakukan konversi Nilai angka ke nilai Huruf dengan rentang
nilai sebagai berikut:
1) 0 s.d. 44 =E
2) 45 s.d. 55 =D
3) 56 s.d. 65 =C
4) 66 s.d. 75 = B-
5) 76 s.d. 80 =B
6) 81 s.d. 85 = B+
7) 86 s.d. 90 = A-
8) 91 s.d. 100 =A
iii. Memberikan motivasi kepada mahasiswa dalam bentuk
kalimat-kalimat sebagai berikut:
✓ Antara 0 s.d. 55 menampilkan kalimat, “Maaf, Anda belum
dapat diluluskan. Tingkatkan terus belajar Anda.”
✓ Antara 56 s.d. 65 menampilkan kalimat, “Anda lulus,
tingkatkan lagi pencapaian Anda.”
✓ Antara 66 s.d. 85 menampilkan kalimat, “Anda lulus
dengan baik, tingkatkan terus prestasi Anda.”
✓ Antara 86 s.d. 100 menampilkan kalimat, “Selamat! Anda
lulus dengan nilai yang EXCELLENT!”
2. Tugas 2
Buatlah program dengan menggunakan logika percabangan Switch-
Case untuk melakukan pemilihan menu penghitungan rumus-rumus :
• Rumus Menghitung Luas Permukaan Bola;
• Rumus Menghitung Luas Permukaan Kubus;
• Rumus Menghitung Luas Permukaan Balok:
• Rumus Menghitung Luas Permukaan Tabung;
• Rumus Menghitung Luas Permukaan Kerucut;
• Rumus Menghitung Luas Permukaan Limas Segiempat;
• Rumus untuk mengetahui tahun kabisat.
Jangan lupa sertakan diagram alir (flowchart)nya!
Selamat mengerjakan :)
MODUL 4
Perulangan (Looping)

Modul Praktikum
C++
Pemrograman Dasar
MODUL 4
PERULANGAN (LOOPING)
A. Tujuan
Setelah mempelajari bab ini diharapkan mahasiswa akan mampu :
▪ Mengenal dan memahami penggunaan statement perulangan.
▪ Membuat program sederhana dengan menerapkan konsep perulangan.

B. Dasar Teori
1. Definsi Perulangan
Dalam bahasa C++ tersedia suatu fasilitas yang digunakan untuk melakukan
proses yang berulang-ulang sebanyak keinginan kita. Misalnya saja, bila kita ingin
menginput dan mencetak bilangan dari 1 sampai 100 bahkan 1000, tentunya kita akan
merasa kesulitan. Namun dengan struktur perulangan proses, kita tidak perlu
menuliskan perintah sampai 100 atau 1000 kali, cukup dengan beberapa perintah
saja.
Struktur perulangan dalam bahasa C mempunyai bentuk yang bermacam-
macam. Sebuah/kelompok instruksi diulang untuk jumlah pengulangan tertentu. Baik
yang terdifinisikan sebelumnya ataupun tidak. Struktur pengulangan terdiri atas dua
bagian :
(1). Kondisi pengulangan yaitu ekspresi boolean yang harus dipenuhi untuk
melaksanakan pengulangan;
(2). Isi atau badan pengulangan yaitu satu atau lebih pernyataan (aksi) yang akan
diulang.
1. Statement For
Struktur perulangan for biasa digunakan untuk mengulang suatu proses yang telah
diketahui jumlah perulangannya. Dari segi penulisannya, struktur perulangan for
tampaknya lebih efisien karena susunannya lebih simpel dan sederhana.
Pernyataan for digunakan untuk melakukan looping. Pada umumnya looping yang
dilakukan oleh for telah diketahui batas awal, syarat looping dan perubahannya.
Selama kondisi terpenuhi, maka pernyataan akan terus dieksekusi.
Bentuk umum perulangan for adalah sebagai berikut :

For ( inisialisasiNilai; SyaratPerulangan;


PerubahanNilai )
{
Statement yang diulang;
Ungkapan1 merupakan statement awal (inisialisasi)
• Ungkapan2 merupakan kondisi/syarat perulangan dilakukan
• Ungkapan3 merupakan statement control untuk perulangan
• Statement merupakan pernyataan/perintah yang dijalankan jika syarat terpenuhi.
for(a=1;a<=5;a++) {
cout<<”Hello World! \n”
}
Perintah diatas menampilkan kalimat “Hello World!” sebanyak 5 baris.

Tanda “a=1” adalah nilai awal variabel


a. Tanda “a<=5” syarat pengulangan.
Tanda “a++” kondisi pengulangan.

for(huruf=‟Z‟;huruf>=‟A‟;huruf--)
{
Cout<<Abjad ”<<huruf<<”\n”;
}
Perintah diatas menampilkan abjad Z – A.

Perhatikan perintah operator --, operator – digunakan untuk decrement

Contoh lain :
for (angka = 1; angka <= 6; angka+=2)
{
cout << “Isi dari angka = “ << angka << endl;
}
Perintah di atas akan menampilkan angka 1, 3, 5.
Mengapa terjadi demikian? Perhatikan perintah
angka+=2 !

Di bawah ini adalah program untuk mencetak bilangan genap yang kurang dari n
(n diperoleh dari input).
#include <iostream.h>
#include <conio.h>
void main(){
int bil, n;
cout << “Masukkan n = “;
cin >> n;
for (bil = 0; bil < n; bil++)
{
if (bil % 2 == 0) cout << bil << “ ”;
}
}

2. Statement While
Perulangan WHILE banyak digunakan pada program yang terstruktur. Perulangan
ini banyak digunakan bila jumlah perulangannya belum diketahui. Proses perulangan
akan terus berlanjut selama kondisinya bernilai benar (≠0) dan akan berhenti bila
kondisinya bernilai salah (=0).
Berikut gambaran umumnya:

while (syarat pengulangan)


{
statement yang dijalankan;
statement control:
}

Dua perintah di bawah ini adalah identik.

a = 1;
for (a = 1; a <= 5; a++) while (a <= 5){
{ cout << “Hello world \n”;
cout << “Hello world \n”; a++;
} }

Contoh program di bawah ini digunakan untuk menjumlahkan sejumlah data angka.
Angka yang akan dijumlahkan diinputkan satu-persatu. Proses pemasukan data
angka akan berhenti ketika dimasukkan angka –1. Setelah itu tampil hasil
penjumlahannya.
#include <iostream.h>
#include <conio.h>
void main()
{
int data, jumlah,cacah;
jumlah = 0;
data = 0;
cacah = 0;
while (data != -1)
{
cout << “Masukkan data angka : “;
cin >> data; jumlah += data; cacah++;
}
cout << “Jumlah data adalah : “ << jumlah” << endl;
cout << “Rata-rata : ” << jumlah/cacah;
}

Kondisi dalam WHILE juga dapat menggunakan operator logika. Misalnya:

while((kondisi 1) && (kondisi2))


{
Blok Pernyataan;
}

3. Statement Do-While
Perintah DO ... WHILE hampir sama dengan WHILE sebelumnya. Gambaran secara
umum:

do
{
Blok Pernyataan;
}
while(kondisi);

Perbedaan dengan WHILE sebelumnya yaitu bahwa pada DO WHILE statement


perulangannya dilakukan terlebih dahulu baru kemudian di cek kondisinya.Sedangkan
WHILE kondisi dicek dulu baru kemudia statement perulangannya dijalankan. Akibat
dari hal ini adalah dalam DO WHILE minimal terdapat 1x perulangan. Sedangkan
WHILE dimungkinkan perulangan tidak pernah terjadi yaitu ketika kondisinya
langsung bernilai FALSE.
Contoh:
a = 1;
do
{
cout << “Hello world \n”;
a++;
}
while(a==0);

Perintah di atas akan muncul satu buah Hello World. Bandingkan dengan yang berikut
ini:

a = 1;
while(a==0)
{
cout << “Hello world \n”;
a++;
}

Perintah di atas sama sekali tidak menampilkan Hello World, karena kondisinya
langsung FALSE.
Latihan Praktikum
1. Latihan 1
Buatlah program untuk menampilkan bilangan bulat 1 s/d 10

2. Latihan 2
Buatlah program untuk menampilkan bilangan genap dari besar ke kecil dengan
batas awal dan batas akhir bilangan dengan menggunakan perulangan WHILE.

3. Latihan 3
Buatlah program untuk menampilkan bentuk segitiga seperti output dibawah ini
dengan memasukkan tinggi segitiga dan menggunakan perulangan FOR.
4. Latihan 4
Buatlah simulasi menu program seperti output dibawah ini dengan
menggunakan DO WHILE.
Tugas Praktikum
1. Tugas Praktikum 1
Buatlah program untuk mencetak kata seperti dibawah ini dengan menggunakan
perulangan WHILE atau FOR.

2. Tugas Praktikum 2
Menampilkan konversi suhu dari Celcius ke Fahrenheit, Reamur, dan Kelvin
menggunakan bentuk perulangan, seperti contoh dibawah ini :
oC oF oR oK

10 ?? ?? ??
20 ?? ?? ??
... ... ... ...
... ... ... ...
100 ?? ?? ??
3. Tugas Praktikum 3
Buatlah program untuk menampilkan * seperti output dibawah ini.

Tugas Rumah
1. Tugas Rumah 1
Buatlah program untuk menampilkan semua penyelesaian persamaan a + b =
c, dimana c adalah 20, dengan ketentuan bilangan a, b, dan c adalah bilangan
bulat >=0 seperti contoh output dibawah ini :
A B C
0 20 20
1 19 20
2 18 20
.... ... ... dan seterusnya.

2. Tugas Rumah 2
Buatlah program untuk menghitung KOMBINASI dalam matematika dengan
memasukkan nilai n dan r, seperti output dibawah ini :

3. Tugas Rumah 3
Seseorang mempunyai rekening tabungan dibank sebesar Rp. 100.000,-
(saldo awal), selanjutnya dia dapat menyetorkan ataupun mengambil uang
ditabungannya. Buatlah program untuk keperluan transaksi dibank tersebut.
Setiap terdapat transaksi (menyetorkan / mengambil uang) maka nilai saldo
akan selalu berubah dan Bank membuat kebijakan bahwa saldo minimum yang
harus disisakan dalan rekening adalah Rp. 50.000,-.

Tampilan menu utamanya seperti dibawah ini :


BANK INDONESIA JAYA
Saldo : 100000
Menu Transaksi :
1. Setor Tabungan
2. Ambil Tabungan
3. Keluar
Pilihan Menu Transaksi (1/2/3) : ...
MODUL 5

Array (Larik)

Modul Praktikum
C++
Algoritma dan Pemograman 1
MODUL 5
ARRAY
A. Tujuan
Setelah mempelajari bab ini diharapkan mahasiswa akan mampu :
▪ Mengenal dan memahami penggunaan array dalam listing program.
▪ Membuat program sederhana dengan menerapkan konsep array.

B. Dasar Teori
Array adalah kumpulan dari nilai-nilai data bertipe sama dalam urutan
tertentu yang menggunakan sebuah nama yang sama. Nilai-nilai data di suatu
array disebut dengan elemen-elemen array. Letak urutan dari elemen-elemen
array ditunjukkan oleh suatu subscript atau indeks. Pada saat pendeklarasian
array, kompiler mengalokasikan memori yang cukup untuk menampung semua
elemen sesuai dengan yang dideklarasikan. Adapun array dibedakan menjadi
tiga macam, yaitu array berdimensi satu, array berdimensi dua, dan array
berdimensi banyak.
1. Array Dimensi Satu
Banyak array yang hanya memiliki satu dimensi, seperti sejumlah orang
dari setiap umur. Satu-satunya persyaratan untuk menentukan elemen
adalah usia.

tipe_elemen_array nama_array[jumlah_elemen_array];

misal: float suhu[5];


Setelah suatu array didefinisikan, elemen array dapat diakses dengan
bentuk: nama_array[indeks_array].
Sebagai pemrogram, Anda harus mengusahakan agar tidak terjadi
pengaksesan elemen di luar jumlah elemen yang didefinisikan. Misalnya,
didefinisikan:
int suhu[4];
harus dipastikan bahwa tidak ada pengaksesan elemen suhu bernomor di
luar 0 sampai dengan 3, karena dapat menyebabkan data dari variabel atau
array lain berubah. Perlu diketahui, C++ tidak akan memberikan pesan
kesalahan kalau Anda melakukan pengaksesan dengan nilai indeks yang
berada di luar nilai yang telah didefinisikan.
2. Array Dimensi Dua
Ada beberapa array dua dimensi, seperti jumlah kantor di setiap lantai di
setiap gedung kampus. Elemen yang dibutuhkan adalah elemen bangunan
dan jumlah lantai.
tipe_elemen_array nama_array[jumlah_baris_array][jumlah_kolom_array];

misal: int data_lulus[4][3];

3. Array Dimensi Tiga


Beberapa array memiliki tiga dimensi, seperti nilai dalam tiga dimensi
ruang, seperti koordinat x, y, dan z dalam koordinat ruang.
tipe_elemen_array nama_array[ukuran1][ukuran2]...[ukuranN];
misal: double data_angka[2][3][4];
C. Latihan Praktikum
1. Latihan 1

2. Latihan 2
3. Latihan 3

4. Latihan 4
D. Tugas Praktikum
1. Buatlah program untuk membalik kata, misalnya kata “kursi” akan
menjadi “isruk” dengan menggunakan array of char. Tambahkan sebuah
kondisi yang menampilkan pernyataan jika kata yang dimasukkan tidak
mempunyai balikan kata yang berbeda.
2. Buatlah tabel harga fotokopi dari 1-100 lembar, dimana harga per lembar
adalah 80 rupiah! Tambahkan sebuah kondisi dan perulangan dimana
setiap kelipatan 20 lembar mempunyai harga 60 rupiah per lembar!

E. Tugas Rumah
1. Buatlah program untuk menganalisa sebuah inputan kalimat yang
menampilkan:
a. Jumlah karakter yang berupa karakter vokal, konsonan, dan karakter
lainnya.
b. Jumlah kata yang mengandung huruf ‘ng’.
2. Buatlah program dengan perulangan untuk menampilkan hasil seperti
berikut!

3. Buatlah program untuk menampilkan bilangan Fibonacci pada deret ke-


n! Tambahkan juga sebuah pernyataan yang menampilkan apakah
bilangan tersebut merupakan bilangan prima atau bukan! Bilangan
Fibonacci adalah bilangan seperti: 1 1 2 3 5 8 13 ... dst. Jadi, jika inputan
n = 7, maka hasilnya adalah 13 dan muncul pernyataan bahwa bilangan
tersebut adalah bilangan prima.
MODUL 6

Fungsi (Function)

Modul Praktikum
C++
Algoritma dan Pemograman 1
MODUL 6
FUNGSI
A. Tujuan
Setelah mempelajari bab ini diharapkan mahasiswa akan mampu :
▪ Memahami Fungsi.
▪ Mendeklarasikan dan mendefinisikan fungsi.
▪ Menyelesaikan masalah menggunakan fungsi.
▪ Memahami metode pemanggilan fungsi.
▪ Membuat fungsi rekursif.

B. Dasar Teori

Dalam pembuatan program diatas terdapat suatu rumus permutasi. Agar


program lebih efisien dipisahkan antara rumus dengan program utama,
sehingga dalam program uatam hanya ada perintah memanggil rumus untuk
memproses suatu variable. Hal ini dalam pemrograman disebut sebagai
fungsi.Fungsi merupakan blok dari kode yang dirancang untuk melakukan
tugas khusus. Tujuan pembuatan fungsi adalah:
• Program menjadi terstruktur
• Dapat mengurangi duplikasi kode
• Fungsi dapat di panggil dari program atau fungsi yang lain

Pada umumnya fungsi memerlukan masukan yang disebut parameter atau


argument. Hasil akhir fungsi akan berupa nilai(nilai balik fungsi). Bentuk umum
sebuah fungsi adalah:
TypeFungsi berfungsi untuk menentukan tipe keluaran fungsi yang dapat
berupa salah satu tipe data C++ yang berlaku misalnya char atau int. Default
tipeyang tidak disebutkan dianggap sebagai int.

Contoh:
Ckali() {
return (0);

PROTOTYPE FUNCTION
Sebuah program C++ dapat terdiri dari banyak fungsi. Salah satu fungsi
tersebut harus bernama main(). Jika fungsi yang lain di tuliskan setelah
fungsi main(), sebelum fungsi main harus ditambahkan prototype function
agar fungsi tersebut dapat dikenal. Hal tersebut tidak berlaku jika
penulisannya dilakukan sebelum fungsi main(). Misal:
Call by Value vs Call by Reference
Ada dua cara pemanggilan fungsi yaitu: (1) Call by Value (2) Call by
Reference
(1) Call By Value
Pemanggilan fungsi dengaan melewatkan nilai parameter variable
dalam definisi fungsi. Fungsi tersebut akan mengolah nilai yang
dikirimkan kepadanya. Misalnya:

(2) Call By Reference


Pemanggilan dengan refernsi merupakan suatu usaha melewatkan
alamat dari suatu variable ke dalam fungsi. Dengan pengubahan
dialkukan di dalam fungsi untuk mengubah varaibel diluar fungsi. Misal:
Selanjutnya nilai X dan Y diproses tetapi nilai A dan B akan tetap( tidak
berubah). Metode Call By Reference menggunakan operator pointer ”&”
dan ”*” untuk mengirimkan alamat variable ke suatau fungsi.
Fungsi Rekursif
Fungsi rekursif adalah fungsi yang memanggil dirinya sendiri artinya fungsi
tersebut dipanggil di dalam tubuh fungsi itu sendiri. Parameter yang
dilewatkan berubah sebanyak fungsi itu dipanggil.
C. Latihan Praktikum
1. Latihan 1
Jelaskan maksud dari program berikut ini:
2. Latihan 2
Mencari nilai terbesar dari suatu data

3. Latihan 3
Menentukan pajak pembelian

4. Latihan 4
Membedakan program call by reference dan call by value
5. Latihan 5
Program menghitung factorial dengan fungsi rekursif

D. Tugas Praktikum
1. Program fungsi untuk menampilkan kombinasi nCr

2. Buat sebuah program untuk menghitung luas permukaan, selimut,


volume tabung seperti berikut ini:
E. Tugas Rumah
1. Buatlah sebuah program untuk mencari nilai terbesar dan nilai terkecil
dari data-data yang telah diinputkan oleh user. Berikut contoh tampilan
program.

2. Buatlah sebuah program untuk mencari rata-rata dan simpangan baku


(standar deviasi) dari data-data yang telah diinputkan. Berikut contoh
tampilan program.
3. Buatlah sebuah program untuk menampilkan data yang sering
diinputkan oleh user sebanyak beberapa kali. Berikut contoh tampilan
program.
MODUL 7

Pointer

Modul Praktikum
C++
Algoritma dan Pemograman 1
MODUL 7
POINTER
A. Tujuan
Setelah mempelajari bab ini diharapkan mahasiswa akan mampu :
▪ Mengetahui arti dan fungsi pointer dalam pemrograman.
▪ Memahami penggunaan pointer dalam listing program.
▪ Mengetahui keunggulan pointer pada suatu program.
▪ Membuat program sederhana dengan menerapkan konsep pointer.

B. Dasar Teori
1. Pointer dan Pendefinisian
Pointer adalah sebuah variabel yang berisikan alamat memori (bukan
nilai) atau dengan kata lain dapat dikatakan bahwa pointer adalah suatu
variabel penunjuk ke lamat memori tertentu. Cara pendeklarasian pointer
dalam bahasa C adalah dengan menambakan tanda asterisk (*) didepan
nama pointer, seperti berikut:
Tipe_data *nama_pointer; atau Tipe_data* nama_pointer;
Keterangan:
Tipe_data dapat berupa sembarang tipe seperti halnya pendefinisian
variabel.
Nama_pointer adalah nama variabel pointer yang akan digunakan.
* adalah operator memori untuk mengembalikan nilai variabel pada
alamatnya yang ditentukan oleh operand.
Contoh:
int *pint; atau int* pint;
char *pchr; atau char* pchr;
2. Mengisi Variabel dan Mengakses Nilai Variabel Pointer
Suatu variabel pointer dapat menunjuk ke variabel lain. Contohnya adalah:

Hasil dari program di atas adalah :


Dari hasil tersebut membuktikan bahwa suatu variabel pointer dapat
menunjuk alamat dari suatu variabel. Selain itu, variabel pointer juga dapat
untuk mengakses isi dari suatu variabel. Berikut contohnya:

Dari kedua contoh tersebut terdapat kesimpulan bahwa operator


pointer ada dua, yaitu :
a. Operator & (Operator Diference)
Operator deference (&) yaitu mendeklarasikan suatu variabel
didalam penggantian memori. Operator ini biasa disebut dengan
“address of”.
b. Operator * (Operator Reference)
Operator Reference (*) yaitu dapat mengakses secara langsung nilai
yang terdapat didalam variabel yang berpointer, hal ini dapat
dilakukan dengan menambahkan identifier asterisk (*). Operator ini
biasa disebut dengan “value pointed by”.
3. Pointer Void
Pointer void adalah pointer yang dapat menunjuk ke sembarang
tipe data. Jadi satu pointer dapat menunjuk ke tipe data integer, tipe data
float, dan lain sebagainya.
Berikut ini contoh dari pointer void:

4. Pointer dan Array


Pointer dan array merupakan hal yang hampir sama, karena
sama-sama menunjuk pada suatu alamat. Karena hal tersebut pada
pointer yang menunjuk ke array tidak menggunakan tambahan operator
& di depan nama variabel array.
5. Pointer dan String
Pointer juga dapat menunjuk ke sebuah String. Contoh hubungan
antara pointer dengan string, adalah:

6. Pointer menunjuk Pointer


Pointer dapat menunjuk ke pointer lain. Hal tersebut ditandai
dengan adanya dua tanda asterisk (*) sebelum nama variabel pointer.
Berikut contohnya:

7. Pointer dan Fungsi


Pointer juga dapat digunakan sebagai argumen maupun keluaran
bagi fungsi. Pointer sebagai argumen maka nilai argumen dapat diubah
di dalam fungsi. Suatu fungsi dapat dibuat agar keluarannya berupa
pointer. Dalam hal tersebut terkadang difungsikan juga array di dalam
fungsi tersebut.
8. Keuntungan menggunakan pointer
a. Untuk menciptakan data struktur yang kompleks.
b. Memungkinkan suatu fungsi untuk menghasilkan lebih dari satu nilai.
c. Memiliki kemampuan untuk mengirimkan alamat suatu fungsi ke
fungsi yang lain.
d. Penanganan terhadap array dan string akan lebih singkat dan efisien.
e. Memungkinkan untuk berhubungan langsung ke hardware.
f. Memungkinkan untuk berhubungan langsung dengan parameter
command line.
g. Kemampuan bekerja dengan memori yang telah dialokasikan secara
dinamik.
C. Latihan Praktikum
1. Latihan 1

2. Latihan 2

3. Latihan 3
4. Latihan 4

5. Latihan 5

D. Tugas Praktikum
1. Buatlah program untuk membalik kata dalam suatu kalimat seperti di
bawah ini:

2. Buatlah function yang akan menampilkan nama hari sesuai dengan


angka yang dimasukkan menggunakan fasilitas pointer, seperti tampilan
berikut:

3. Buatlah program untuk menjawab pertanyaan di bawah ini dengan


menggunakan fungsi pointer.
E. Tugas Rumah
1. Buatlah sebuah function untuk membuat setiap huruf pertama dari string
yang diberikan menjadi huruf besar dengan fasilitas pointer.
2. Buatlah program pointer yang melewatkan 4 variabel, yaitu variabel w,
x, y, dan z ke fungsi yang tidak memiliki nilai balikan. Lalu buat keluaran
nilai variabel setelahnya menjadi 3 kali lipat dari nilai sebelumnya.
3. Gunakan fasilitas pointer untuk membuat fungsi yang dapat digunakan
untuk menghitung jumlah kata dari masukan string oleh user.
4. Gunakan fasilitas array pointer untuk membuat tampilan nama-nama
bulan secara urut dari bulan Januari sampai dengan Desember.

Anda mungkin juga menyukai