Contoh Soal Dan Jawaban Pemrograman Terstruktur Percabangan
1. Buatlah algoritma untuk
menentukan bilangan yang di inputkan adalah bilangan genap, ganjil
dan Nol.
Jawab:
#include <iostream>
#include <conio.h>
using namespace std;
main()
{
int bil;
cout<<"PROGRAM MENENTUKAN BILANGAN GENAP,
GANJIL, DAN NOL";
cout<<"\n Masukkan Bilangan Anda : "
;cin>>bil;
if(bil==0)
{
cout<<"Bilangan Yang Anda Masukkan adalah
Bilangan Nol";
}
else if(bil%2==0)
{cout<<"Bilangan Yang Anda Masukkan adalah
Bilangan Genap";
}
else
{cout<<"Bilangan Yang Anda Masukkan adalah
Bilangan Ganjil";
}
getch();
}
2. Tulis algoritma yang membaca
dua buah bilangan bulat dari piranti masukan, lalu tentukan
bilangan terbesar dari kedua
bilangan tersebut.
Jawab:
#include <iostream>
#include <conio.h>
using namespace std;
main()
{
int
A,B;
cout<<"Masukkan Bilangan Pertama: ";
cin>>A;
cout<<"Masukkan Bilangan Kedua: ";
cin>>B;
if(A>B)
{ cout<<"Bilangan
terbesar: "<<A;
} else
{ cout<<"Bilangan terbesar:
"<<B;
}
getch();
}
3. Program Menghitung Total
Harga Barang
• Jika Jumlah barang yang
dibeli < 100 buah, maka harga perbarang yang
dibeli adalah Rp 10.000,-
• Jika jumlah barang yang
dibeli lebih besar dari atau sama dengan 100 dan
kurang daari 150, maka harga
perbarang adalah Rp 9.500
• Jika jumlah barang yang
dibeli lebih dari atau sama dengan 150, maka
harga perbarang adalah RP
9.000,-
Masukan dari program ini adalah
jumlah barang yang dibeli, Keluarannya adalah harga yang harus
Dibayar
Jawab:
#include <iostream>
#include <conio.h>
using namespace std;
main()
{
int
jumlah, harga, total;
cout<<"Masukan Jumlah Barang: "; cin>>jumlah;
if
(jumlah<100)
{
harga= 10000;
}
else if
((jumlah>=100) && (jumlah<150))
{
harga= 9500;
}
else if
(jumlah>=150)
{
harga= 9000;
}
total=
harga*jumlah;
cout<<"Harga yang Harus Anda Bayarkan adalah :
"<<total;
getch();
}
4. Untuk matakuliah Logika dan
Algortima untuk penilaiannya sebagai berikut :
MID 30 %, Tugas 30 % dan UAS 40
%, sehingga total nilai yang di dapatkan adalah
(MID*0.3)+(tugas*0.3)+(UAS*0.4),
Akan bernilai A jika total nilainya lebih besar atau sama dengan
85, bernilai B jika total
nilainya lebih dari atau sama dengan 70 s.d kurang dari 85, bernilai C jika
total nainya lebih besar atau
sama dengan 55 dan kurang dari 70 dan bernilai D jika kurang dari 55,
buatlah programnya .
Jawab:
#include <iostream>
#include <conio.h>
using namespace std;
main()
{
int
Tnilai, Nmid, Ntgs, Nuas;
Tnilai=
((Nmid*0.3)+(Ntgs*0.3)+(Nuas*0.4));
cout<<"Inputkan Nilai MID: ";cin>>Nmid;
cout<<"Inputkan Nilai Tugas: ";cin>>Ntgs;
cout<<"Inputkan Nilai UAS: ";cin>>Nuas;
if
(Tnilai>=85)
{
cout<<"Nilai Anda A";
}
else if
((Tnilai>=70) && (Tnilai<80))
{
cout<<"Nilai Anda B";
}
else if
((Tnilai>=55) && (Tnilai<70))
{
cout<<"Nilai Anda C";
}
else if
(Tnilai<55)
{
cout<<"Nilai Anda D";
}
getch();
}
5. Gaji Karyawan Mingguan
Sebuah perusahaan swasta
menggaji karyawannya secara mingguan dengan hitungan sebagai berikut :
golongan 1 dengan upah per jam
3.000 rupiah
golongan 2 dengan upah per jam
3.500 rupiah
golongan 3 dengan upah per jam
4.000 rupiah
golongan 4 dengan upah per jam
5.000 rupiah
Bila seorang karyawan bekerja
kurang atau sama dengan 40 jam per minggu, akan dihitung dengan upah per jam
seperti di atas, tetapi apabila bekerja lebih dari 40 jam, maka lebihnya akan
dihitung sebagai lembur dengan upah per jam 1½ kali upah biasa.
Tulis algoritma untuk
menghitung gaji mingguan karyawan, bila golongandan jam kerjayang
diinputkan.
Jawab:
#include <iostream>
#include <conio.h>
#include <stdio.h>
using namespace std;
main()
{
int gol, jam, upah, gaji;
cout<<"----------------------------------------------------------------\n";
cout<<"--------------Menghitung
Gaji Karyawan Mingguan-----------------\n";
cout<<"----------------------------------------------------------------\n";
cout<<"\n Inputkan Jumlah Jam Kerja: " ;cin>>jam;
cout<<"\n Inputkan Golongan Karyawan[1/2/3/4]: " ;cin>>gol;
switch (gol)
{case 1: upah=
3000; break;
case 2: upah=
3500; break;
case 3: upah=
4000; break;
case 4: upah=
5000; break;
default:
cout<<"inputan salah";
}
if (jam>40)
{
gaji=40*upah+((jam-40)*1.5*upah);
}
else
{
gaji= jam*upah;
}
cout<<"\n
--------------------------HASIL-------------------------------\n";
cout<<"\n Gaji Mingguan Karyawan : Rp
"<<gaji<<endl;
getch();
}
6. Algoritma menghitung berapa
harga setelah didiskon.
Program akan menerima masukan
berupa kode, jenis dan harga, dengan
jenis adalah "A",
"B", dan "C". Untuk setiap jenis, masing-masing akan
diberikan diskon sebesar 10% untuk A,15% untuk B, dan 20% untuk C.
Algoritma akan menghitung
berapa harga setelah didiskon.
Contoh masukan :
kode = 10
Jenis = B
harga = 10000
Contoh keluaran :
Jenis barang B mendapat
diskon = 15%, Harga setelah didiskon = 8500
Jawab:
#include <iostream>
#include <conio.h>
#include <stdio.h>
using namespace std;
main()
{
int
kode, diskon;
char jenis;
long int
harga, Hdiskon;
cout<<"----------------------------------------------------------------\n";
cout<<"--------------Menghitung Harga Setelah
Didiskon-----------------\n";
cout<<"----------------------------------------------------------------\n";
cout<<"\n Inputkan Jenis Barang (A,B,C): ";
cin>>jenis;
cout<<"\n Inputkan Kode Barang: ";
cin>>kode;
cout<<"\n Inputkan Harga Barang: ";
cin>>harga;
switch (jenis)
{case 'A':
diskon=10;
Hdiskon=harga-(0.10*harga);
break;
case 'B':
diskon=15;
Hdiskon=harga-(0.15*harga);
break;
case 'C':
diskon=20;
Hdiskon=harga-(0.20*harga);
break;
default:
cout<<"inputan
salah";
}
cout<<"\n
---------------------------HASIL-------------------------------\n";
cout<<"\n Jenis Barang: "<<jenis;
cout<<"\n Diskon dalam persen (%): "<<diskon;
cout<<"\n Harga Setelah Diskon: "<<Hdiskon;
getch();
}
7. Pembayaran air minum PDAM
PDAM menerapkan pembayaran air
minum perumahan dengan cara perhitungan sebagai berikut :
-Tarif per m3 untuk 10 m3
pertama (1-10) adalah Rp 2.000
-Tarif per m3 untuk 10 m3 kedua
(11-20) adalah Rp 3.000
-Tarif per m3 untuk 10 m3
ketiga (21-30) adalah Rp 4.000
-Tarif per m3 untuk 10 m3
selanjutnya (31 ke atas) adalah Rp 5.000
-Pemakaian air dihitung minimal
10 m3 (kurang dari 10 m3 dianggap 10 m3)
-Biaya administrasi bulanan
sebesar Rp10.000
Bagaimana membuat algoritma
untuk menghitung biaya tersebut?
8. Tunjangan Anak
Pemerintah hanya memberikan
tunjangan anak dari PNS maksimal sampai 3 anak saja. Setiap anak diberikan
tunjangan sebesar 10% dari gaji pokok.
Tulis program untuk menghitung
total tunjangan anak, bila gaji pokok dan jumlah anak diinput oleh user.
Contoh Masukan dan
Keluaran:
Jumlah anak
|
Gaji Pokok
|
Tunjangan Anak
|
0
|
1.000.000
|
0
|
1
|
1.000.000
|
100.000
|
3
|
1.000.000
|
300.000
|
5
|
1.000.000
|
300.000
|
Jawab:
include <iostream>
using namespace std;
main()
{
int
pakai, a, b, c, d, biaya;
cout<<"----------------------------------------------------------------\n";
cout<<"-----------------Pembayaran Pemakaian Air
PDAM------------------\n";
cout<<"----------------------------------------------------------------\n";
cout<<"\n Inputkan Pemakaian air dalam M3 :
";cin>>pakai;
a=10;
b=0;
c=0;
d=0;
if
(pakai>30)
{ b=10; c=10; d=pakai-30; }
else if
(pakai>20)
{ b=10; c=pakai-20; }
else if
(pakai>10)
{ b=pakai-10; }
biaya=
((a*2000)+(b*3000)+(c*4000)+(d*5000)+10000);
cout<<"\n Biaya Pembayaran : "<<biaya<<endl;
return 0;
}
Komentar
Posting Komentar