BBP 15103 Pengaturcaraan Komputer 3
3. Seorang jurujual meninggalkan rumah setiap hari Ahad dan balik semula ke
rumahnya pada hari Jumaat. Dia melakukan perjalanan tersebut menggunakan
kenderaan syarikat. Setiap hari jurujual tersebut merekod jumlah liter petrol yang
diisi dalam kenderaan tersebut . Bacaan Odometer pada hari jurujual tersebut
bertolak ialah 68723 manakala bacaan Odometer selepas kembali pada hari
Jumaat ialah 71289. Sampel data adalah seperti dalam Rajah 3. Tuliskan
algoritma dalam bentuk kod pseudo untuk mengira purata jarak perjalanan untuk
setiap liter petrol yang diisi.
15.75 16.30 10.95 20.65 30.00
Rajah 3
Pseducode:
1. Start
2. Identify jarak,odometer akhir-odometer awal
3. Kira jumlah liter petrol,purata jarak perliter Total jarak/Total perliter
4. Print ouput purata setiap petrol
5. End
Oleh : Marlina Mohamad Sem II 2016/2017
BBP 15103_Pengaturcaraan Komputer 1
Latihan Amali 3
1. Tuliskan aturcara C++ yang melakukan arahan seperti di bawah:
a. Minta pengguna masukkan 5 nombor decimal
b. Cetak 5 nombor decimal tersebut
c. Tukar setiap nombor decimal tersebut kepada integer
d. Tambah 5 nombor integer tersebut
e. Cetak jumlah hasil tambah dan purata 5 nombor integer tersebut
2. Berdasarkan data di dalam carta IPO di bawah.
a. Tulis satu aturcara C++ untuk masalah tersebut
b. Masukkan komen yang bersesuaian untuk menerangkan aturcara
c. Uji atucara dengan menggunakan input 45.50 dan 57.40 untuk jualan
karipap dan nasi lemak, dan 0.05 untuk kadar komisyen (jawapannya ialah
5.145).
d. Uji atucara dengan menggunakan input 300 dan 500 untuk jualan karipap
dan nasi lemak, dan 0.06 untuk kadar komisyen (jawapannya ialah 48)
Carta Maklumat IPO
Input:
jualan karipap
jualan nasi lemak
kadar komisyen
proses:
jumlah jualan
kira komisyen
output:
komisyen
algoritma:
1. Masukkan jualan karipap, jualan nasi lemak dan kadar
komisyen
2. Kira jumlah jualan dengan menambahkan jualan karipap dan
jualan nasi lemak
3. Kira komisyen dengan mendarabkan jumlah jualan dengan
kadar komisyen
4. Cetak jumlah jualan dan komisyen
Oleh: Marlina Mohamad Sem 2 2016 2017
BBP 15103_Pengaturcaraan Komputer 2
3. Tulis satu aturcara C++ yang meminta pengguna memasukkan maklumat peribadi
dan memaparkan semula seperti contoh output dalam rajah di bawah. Perkataan
yang bergaris adalah contoh input yang dimasukkan oleh pengguna.
Sila masukkan maklumat peribadi seperti di bawah.
Nama : Hamid bin Salim
Tempat pengajian : UTHM
Tahun pengajian : 1
CGPA: 3.98
*******************************************
Sila semak butiran yang telah anda masukkan seperti di bawah.
Nama : Hamid bin Salim
Tempat pengajian : UTHM
Tahun pengajian : 1
CGPA: 3.98
Hamid bin Salim,
Permohonan anda akan diproses, anda akan dimaklumkan status permohonan dalam
masa 1 minggu.
TERIMA KASIH KERANA MEMOHON BIASISWA KPM
*******************************************
4. Tulis satu aturcara C++ yang meminta pengguna memasukkan jumlah gaji kasar
setahun. Kira jumlah gaji bersih dan cetak purata gaji bersih sebulan. Jumlah gaji
bersih dikira dengan gaji kasar tolak cukai pendapatan. Jumlah cukai pendapatan
yang perlu dibayar ialah 12% setahun (8% untuk RM 45,000 yang pertama dan
4% selebihnya).
Oleh: Marlina Mohamad Sem 2 2016 2017
BBP15103-Pengaturcaraan Komputer 1
Latihan Amali 4: Pengoperasi dan Ungkapan
1. Tuliskan satu aturcara C++ untuk menukar jumlah masa dalam saat ke dalam
bentuk jam, minit dan saat. Contohnya, jumlah 9630 saat adalah 2 : 40: 30.
2. Puan Suraya menjalankan perniagaan menjual kuih tradisional seperti karipap,
donut dan kuih keria. Beliau ingin mengira hasil keuntungan yang diperolehi pada
setiap bulan hasil dari perniagaan tersebut. Anda dikehendaki menuliskan satu
aturcara lengkap C++ untuk mengira keuntungan bulanan Puan Suraya. Beliau
perlu memasukkan harga jual dan harga modal setiap kuih serta jumlah jualan
sebulan setiap kuih. Aturcara mestilah mengira jumlah keuntungan bagi setiap
kuih yang dijual. Output perlu dipaparkan dalam bentuk jadual seperti dalam
Rajah 2.
Masukkan harga modal sebiji karipap: 0.07
Masukkan harga jual sebiji karipap:0.25
Berapa biji karipap yang dijual bulan ini?: 600
Masukkan harga modal sebiji donut: 0.05
Masukkan harga jual sebiji donut:0.25
Berapa biji karipap yang dijual bulan ini?: 570
Masukkan harga modal sebiji keria: 0.06
Masukkan harga jual sebiji keria:0.25
Berapa biji karipap yang dijual bulan ini?: 490
JADULA KEUNTUNGAN BULANAN
--------------------------------------------------------
Nama Kuih Harga jual Harga modal Kuantiti Untung
Karipap 0.25 0.07 600 RM108.00
Donut 0.25 0.05 570 RM114.00
Keria 0.25 0.06 490 RM93.10
Rajah 2
Oleh : Marlina Mohamad Sem II/2016 2017
BBP15103-Pengaturcaraan Komputer 2
3. Bangunkan satu kalkulator untuk mengira mengira jumlah ansuran bulanan bagi
membeli sebuah kereta untuk tempoh 5,6,7,8 dan 9 tahun pinjaman. Pengguna
perlu memasukkan harga kereta, jumlah bayaran pendahuluan dan juga kadar
faedah yang dikenakan oleh bank. Bundarkan output kepada dua tempat
perpuluhan. Contoh output adalah seperti dalam Rajah 2.
Rajah 2 : Contoh Output Kalkulator Pengiraan Ansuran Bulanan Kereta
Bagaimana cara untuk bundarkan kepada dua tempat perpuluhan?
Gunakan manipulator setprecision untuk membundarkan kepada jumlah
tempat perpuluhan yang dikehendaki. Sintaks untuk setprecision
manipulator ialah:
setprecision(n), dimana n ialah jumlah titik perpuluhan.
setprecision manipulator biasanya digunakan bersama dengan fixed
manipulator. Contoh sintaks adalah cout<<fixed<<setprecision(2);.
Code ini membundarkan output kepada 2 tempat perpuluhan.
untuk menggunakan manipulator setprecision dan fixed, arahan
prapemproses #include <iomanip> perlu digunakan.
Oleh : Marlina Mohamad Sem II/2016 2017
BBP15103-Pengaturcaraan Komputer 3
Aturcara 1 (tanpa menggunakan setprecision)
Rajah 2.1 : Contoh Output Aturcara 1
Aturcara 2 (menggunakan setprecision)
Rajah 2.2 : Contoh Output Aturcara 2
Oleh : Marlina Mohamad Sem II/2016 2017
BBP15103-Pengaturcaraan Komputer 1
Latihan Amali 5: Struktur Kawalan Pilihan (Selection)
Contoh
Tuliskan satu aturcara C++ yang meminta pengguna memasukkan satu nombor integer.
Aturcara kemudian mestilah mencetak nombor integer yang dimasukkan dan mencetak
sama ada nombor yang dimasukkan, positif, negatif atau kosong.
Oleh : Marlina Mohamad Sem II 2016/2017
BBP15103-Pengaturcaraan Komputer 2
1) Tuliskan satu aturcara C++ yang meminta pengguna memasukkan tiga nombor.
Cetak semula nombor yang dimasukkan tersebut dalam susunan menaik.
2) Tulis sebuah aturcara untuk menentukan status berat badan seseorang berdasarkan
jadual dibawah. Input mestilah diperolehi dari pengguna iaitu berat (kg) dan
tinggi(meter):
Formula BMI= berat .
(tinggi x tinggi)
Indeks berat badan Status berat badan
<18.5 Rendah
Normal/ideal
18.5 – 2.5 Melebihi berat badan
2.5 – 30 Obes
> 30
3) Tuliskan satu aturcara lengkap untuk membangunkan satu program yang
menyerupai mesin kira (calculator). Program tersebut perlu menerima input 2
nombor integer dan operator yang terlibat untuk operasi yang ingin dilaksanakan.
Kemudian program tersebut perlu mengeluarkan output nombor integer, operator
dan hasil operasi tersebut seperti dalam Rajah S3. Jika operasi bahagi dipilih dan
salah satu nombor integer yang dimasukkan ialah 0, keluarkan mesej output yang
sesuai. Gunakan struktur kawalan if…else.
Masukkan 2 nombor integer: 13 5
Masukkan operator: *
13 * 5 = 65
Rajah S3
Oleh : Marlina Mohamad Sem II 2016/2017
BBP15103-Pengaturcaraan Komputer 3
4) Tuliskan satu aturcara C++ yang akan memaparkan mesej ”Tahniah, anda
cemerlang” jika gred yang dimasukkan oleh pengguna ialah a atau A,jika gred
selainnya, mesej ”Usaha lagi” akan dipaparkan. Contoh output adalah seperti
dalam Rajah S4
Masukkan gred anda : A Jika input A atau
Tahniah, anda cemerlang a
Masukkan gred anda : d Jika input d
Usaha lagi
Rajah S4
Oleh : Marlina Mohamad Sem II 2016/2017
BBP15103-Pengaturcaraan Komputer 1
Latihan Amali 6 : Struktur Kawalan Ulangan
1. Tulikan aturcara untuk membaca 10 nombor integer, kemudian kira hasil tambah
nombor genap dan nombor ganjil yang telah dimasukkan. Paparkan hasil tambah
nombor genap dan nombor ganjil tersebut.
2. Tuliskan satu atucara untuk membaca nama dan markah 5 orang pelajar. Aturcara
ini mestilah menggunakan struktur kawalan gelung (while, do while dan
for). Berdasarkan markah yang dimasukkan tentukan gred pelajar tersebut.
Paparkan nama, markah dan gred pelajar tersebut seperti output dalam Rajah 1.
Rajah 1: Contoh sebahagian output
3. Tuliskan aturcara untuk mengeluarkan output seperti dalam Rajah 2 dengan
menggunakan gelung for.
******
Rajah 2
4. Tuliskan aturcara untuk mengeluarkan output seperti dalam Rajah 3 dengan
menggunakan gelung for
******
*****
****
***
**
*
Rajah 3
Oleh : Marlina Mohamad Sem II 2016/ 2017
BBP 15103 1
Latihan Amali (Fungsi)
1. Tuliskan satu aturcara lengkap C++ yang membaca markah kursus dan tentukan gred
melalui markah yang dimasukkan. Aturcara ini mempunyai 3 fungsi iaitu fungsi
main, fungsi masukMarkah dan cetakGred seperti berikut:
a) main
i. Panggilan fungsi masukMarkah
ii. Panggilan fungsi cetakGred
b) masukMarkah
i. meminta pengguna memasukkan markah
ii. dapatkan markah
iii. papar markah
c) cetakGred (klassifikasikan mengikut kesesuaian, contohnya >90&<=100,
gred A)
i. tentukan gred
ii. cetak gred
Oleh : Marlina Mohamad Sem 2 2016/2017
BBP 15103 2
2. Anda dikehendaki mengira nilai Body Mass Index (BMI) apabila pengguna
memasukkan nilai berat dalam kilogram (kg) dan nilai tinggi mereka dalam
sentimeter (cm). Intepretasi bagi nilai BMI akan dikeluarkan berdasarkan formula
yang diberikan dan kriteria seperti dalam Jadual 1 di bawah. Tuliskan aturcara C++
bagi masalah di atas dengan menggunakan fungsi untuk mengira BMI. Takrifkan 3
fungsi:
a) Fungsi void bmi – untuk memanggil fungsi kira_bmi dan fungsi
status_bmi. Pengguna perlu masukkan berat dan tinggi semasa panggilan
fungsi ini.
b) Fungsi kira_bmi - untuk mengira bmi berdasarkan berat dan tinggi yang telah
dimasukkan
c) Fungsi status_bmi – untuk menentukan kategori bmi pengguna
Aturcara perlu menggunakan gelung untuk membenarkan pengguna mengira BMI untuk
lebih dari seorang.
Weight (kg)
BMI = Height Height (m2)
BMI Jadual 1
18.5 Category
18.5 - 24.9
25 - 29.9 Underweight
30 Ideal Weight
Lain-lain Overweight
Obesity
Wrong score
Oleh : Marlina Mohamad Sem 2 2016/2017
BBP 15103 3
Contoh output:
Oleh : Marlina Mohamad Sem 2 2016/2017
BBP 15103 1
Latihan Amali (Tatasusunan)
1. Tuliskan satu aturcara C++ yang meminta pengguna untuk memasukkan 10 integer
ke dalam sebuah tatasusunan. Aturcara ini kemudian mengira dan mencetak berapa
banyak bilangan integer yang lebih besar daripada atau sama dengan 10.
2. Tuliskan satu aturcara C++ yang meminta pengguna untuk memasukkan 10 markah
ke dalam sebuah tatasusunan. Aturcara ini kemudian menentukan gred untuk
markah tersebut berdasarkan Jadual 2. Cetak markah dan gred diperolehi.
Markah Jadual 2
80-100
65-79 Gred
50-64 A
40-49 B
1-39 C
D
E
3. Berdasarkan soalan 2, tuliskan satu aturcara C++ yang meminta pengguna untuk
memasukkan 10 nama pelajar dan 10 markah ke dalam sebuah tatasusunan.
Aturcara ini kemudian menentukan gred untuk markah tersebut berdasarkan
Jadual 4. Kemudian cetak nama, markah dan gred diperolehi. Rujuk contoh output
dalam Rajah 3.
Rajah 3: Contoh Output
Oleh : Marlina Mohamad Sem 1 2016/2017
BBP15103 1
Tugasan Berkumpulan (4 orang satu kumpulan)
Selesaikan masalah pengaturcaraan di bawah dan bentangkan di dalam kelas kaedah
penyelesaian yang telah dilaksanakan meliputi carta input output, algoritma (bagi soalan
1 dan 2) dan aturcara lengkap.
Penilaian :
2% - untuk kreativiti
4% - penyelesaian masalah
4% - meliputi kemahiran berkomunikasi dalam menjelaskan proses penyelesaian masalah
1. Tuliskan satu aturcara untuk mengeluarkan output seperti di bawah dengan
menggunakan gelung tersarang do..while dan for
Input mestilah
dimasukkan oleh
pengguna
2. Tuliskan satu aturcara C++ dengan menggunakan gelung do while yang meminta
pengguna memasukkan tiga nombor sebanyak 3 kali. Cetak semula nombor yang
dimasukkan tersebut dalam susunan menaik.
3. Tuliskan satu aturcara lengkap C++ menggunakan gelung for berdasarkan
algoritma dalam Rajah 1. Masukkan komen yang bersesuaian dalam atucara.
Aturcara tesebut akan memaparkan output nombor yang berikut; 20 40 60 80 100
120 140 160 180
1. Mula
2. Berikan nilai awal 10 kepada pembolehubah
pembilang berjenis int
3. Jika pembilang <100
a. Paparkan nilai pembilang yang didarabkan
dengan 2
4. Tambah 10 kepada pembilang
5. Tamat
Rajah 1
Oleh : Marlina Mohamad