Latihan BAB 4
1. Buatlah flowchart dan translasi program dari algoritma 3.2.b. di atas.
Analisis 4.2.b
cout<<"Bulan Januari tahun "<<tahun<<" ada 31 hari."<<endl;
break;
case 2:
if (year % 4 == 0)
cout<<"Bulan Februari tahun "<<tahun<<" ada 29 hari."<<endl;
else
cout<<"Bulan Februari tahun "<<tahun<<" ada 28 hari."<<endl;
break;
case 3:
cout<<"Bulan Maret tahun "<<tahun<<" ada 31 hari."<<endl;
break;
case 4:
cout<<"Bulan April tahun "<<tahun<<" ada 30 hari."<<endl;
break;
case 5:
cout<<"Bulan Mei tahun "<<tahun<<" ada 31 hari."<<endl;
break;
case 6:
cout<<"Bulan Juni tahun "<<tahun<<" ada 30 hari."<<endl;
break;
case 7:
cout<<"Bulan Juli tahun "<<tahun<<" ada 31 hari."<<endl;
break;
case 8:
cout<<"Bulan Agustus tahun "<<tahun<<" ada 31 hari."<<endl;
break;
case 9:
cout<<"Bulan September tahun "<<tahun<<" ada 30 hari."<<endl;
break;
case 10:
cout<<"Bulan Oktober tahun "<<tahun<<" ada 31 hari."<<endl;
break;
case 11:
cout<<"Bulan November tahun "<<tahun<<" ada 30 hari."<<endl;
break;
case 12:
cout<<"Bulan Desember tahun "<<tahun<<" ada 31 hari."<<endl;
break;
write(Huruf Besar)
else if(karakter<="a"&& karakter<="z"){
write(Huruf Kecil)
else
write(Bilangan Bulat)
Analisis 4.2.b
Dibutuhkan 3 bilangan yang di inputkan kemudian ketiga bilangan tersebut
dibandingkan dengan operator pembanding agar diketahui bilangan yang
terbesar,akan tetapi bedanya dengan 4.2.a ,program ini menggunakan
variabel penampung untuk menoutputkan bilangan terbesar
Algoritma 4.2.b.
Algoritma Nilai_ Maksimum
{Membaca tiga buah bilangan bulat, menentukan bilangan terbesar di antara tiga buah
bilangan tersebut dan menampilkannya ke layar}
Algoritma Nilai_ Maksimum
{Membaca tiga buah bilangan bulat, menentukan bilangan terbesar di antara tiga buah
bilangan tersebut dan menampilkannya ke layar}
Deklarasi
x, y, z : integer
maks : integer
maks : integer
Deskripsi
read (x, y, z)
maks Ã… x
if (y > maks) then maks Ã… <== y end if
if (z > maks) then maks ( z end if
write (‘Bilangan terbesar adalah = ‘,maks)
maks Ã… x
if (y > maks) then maks Ã… <== y end if
if (z > maks) then maks ( z end if
write (‘Bilangan terbesar adalah = ‘,maks)
RAPTOR
C++
3. Buatlah program dari algoritma 3.4. menggunakan case … of .
Analisis
Program ini membutuhkan hanya 1 buah
inputan,kemudian iputan tersebut di cek apakah memenuhi suatu kondisi di
dalam program ini ,jika memenuhi salah satunya maka program ini akan
mengoutputkan sesuai dengan kondisinya
Algoritma 4.4.
Algoritma Konversi_Nilai
{Mengkonversikan nilai angka menjadi nilai huruf}
Algoritma Konversi_Nilai
{Mengkonversikan nilai angka menjadi nilai huruf}
Deklarasi
nilai : integer
nilai_huruf : char
nilai_huruf : char
Deskripsi
read (nilai)
if (nilai > 0) and (nilai <= 20) then nilai_huruf Ã… ‘E’
else if (nilai > 20) and (nilai <= 40) then nilai_huruf Ã… ‘D’
else if (nilai > 40) and (nilai <= 60) then nilai_huruf Ã… ‘C’
else if (nilai > 60) and (nilai <= 80) then nilai_huruf Ã… ‘B’
else nilai_huruf Ã… ‘A’
endif
write (nilai_huruf)
if (nilai > 0) and (nilai <= 20) then nilai_huruf Ã… ‘E’
else if (nilai > 20) and (nilai <= 40) then nilai_huruf Ã… ‘D’
else if (nilai > 40) and (nilai <= 60) then nilai_huruf Ã… ‘C’
else if (nilai > 60) and (nilai <= 80) then nilai_huruf Ã… ‘B’
else nilai_huruf Ã… ‘A’
endif
write (nilai_huruf)
C++
Raptor
4. Buatlah algoritma, flowchart dan program untuk mengecek apakah pemakai
memasukkan bilangan bulat atau bilangan real.
Lebih dulu, carilah perbedaan dari 1.0 dan 1 kemudian 1 dan 1.23.
Perbedaan :
memasukkan bilangan bulat atau bilangan real.
Lebih dulu, carilah perbedaan dari 1.0 dan 1 kemudian 1 dan 1.23.
Perbedaan :
Bilangan Real
Bilangan real adalah bilangan yang merupakan gabungan dari bilangan rasioanal dan bilangan
irrasioanal sendiri.
Bilangan Bulat
Bilangan bulat yaitu bilangan yang terdiri atas bilangan negatif, bilangan 0 (nol), dan bilangan postitif, yaitu : ..., -2, -1, 0, 1, 2, 3, ... , dan seterusnya.
Bilangan bulat yaitu bilangan yang terdiri atas bilangan negatif, bilangan 0 (nol), dan bilangan postitif, yaitu : ..., -2, -1, 0, 1, 2, 3, ... , dan seterusnya.
Analisis
Membutuhkan
1 inputan agar bisa mengecek apakah bilangan itu bilangan real atau
bulat,kemudian bilangan tersebut di bandingkan dengan bilangan dasarnya
agar tahu bilangan tersebut real atau bulat
Algoritma
Algoritma Bilangan bulat atau real
{Mengecek apakah bilangan tersebut bilangan bulat atau real dengan membandingkan bilangan asli dengan bilangan dasarnya}
Deklarasi
a : integer
Deskripsi
read (a)
if (a==floor(b)
if (a==floor(b)
write(bilangan bulat0
else
write(bilangan real)
Raptor
C++
5. Buatlah algoritma, flowchart dan program untuk menentukan banyaknya hari
dalam suatu bulan dan tahun yang diberikan. Pertimbangkan pula adanya tahun
kabisat di mana bulan Februari mempunyai jumlah 29 hari. Gunakan case .. of
dan if .. then .. else .. yang tepat untuk setiap kasus.
Analisis
Membutuhkan
2 inputan yaitu bulan dan tahun,kemudian di cek menggunakan switch case
bulannya agar tahu bulan apa itu ,dan mengoutputkan harinya,inputan
tahun hanya berlaku di bulan februari untuk menentukan tahun kabisat
atau bukan.
Algoritma
Algoritma Hari
{Mendapatkan 2 inputan kemudian mengeceknya menggunakan switch case dan if else sesuai dengan program yang akan dibuat}
Deklarasi
tahun,bln : integer
Deskripsi
read (tahun,bln)
case 1:cout<<"Bulan Januari tahun "<<tahun<<" ada 31 hari."<<endl;
break;
case 2:
if (year % 4 == 0)
cout<<"Bulan Februari tahun "<<tahun<<" ada 29 hari."<<endl;
else
cout<<"Bulan Februari tahun "<<tahun<<" ada 28 hari."<<endl;
break;
case 3:
cout<<"Bulan Maret tahun "<<tahun<<" ada 31 hari."<<endl;
break;
case 4:
cout<<"Bulan April tahun "<<tahun<<" ada 30 hari."<<endl;
break;
case 5:
cout<<"Bulan Mei tahun "<<tahun<<" ada 31 hari."<<endl;
break;
case 6:
cout<<"Bulan Juni tahun "<<tahun<<" ada 30 hari."<<endl;
break;
case 7:
cout<<"Bulan Juli tahun "<<tahun<<" ada 31 hari."<<endl;
break;
case 8:
cout<<"Bulan Agustus tahun "<<tahun<<" ada 31 hari."<<endl;
break;
case 9:
cout<<"Bulan September tahun "<<tahun<<" ada 30 hari."<<endl;
break;
case 10:
cout<<"Bulan Oktober tahun "<<tahun<<" ada 31 hari."<<endl;
break;
case 11:
cout<<"Bulan November tahun "<<tahun<<" ada 30 hari."<<endl;
break;
case 12:
cout<<"Bulan Desember tahun "<<tahun<<" ada 31 hari."<<endl;
break;
Raptor:
C++
6. Buatlah algoritma, flowchart dan program untuk mengecek apakah karakter yang
dimasukkan itu merupakan huruf besar, huruf kecil atau digit (bilangan).
Gunakan fungsi ORD(char) untuk menyatakan nomor urut dalam tabel ASCII.
Gunakan fungsi ORD(char) untuk menyatakan nomor urut dalam tabel ASCII.
Analisis;
Program mendapatkan satu buah inputan kemudian
inputan tersebut di cek apakah memenuhi suatu kondisi ,kemudian
mengoutputkan sesuai kondisi yang ia peroleh
Algoritma
Algoritma Hari
{Mendapatkan 1 inputan kemudian di cek menggunakan if else progra,}
Deklarasi:
karakter : char
Deskripsi:
read(karakter)
if(karakter<="A" && karakter<="Z"){write(Huruf Besar)
else if(karakter<="a"&& karakter<="z"){
write(Huruf Kecil)
else
write(Bilangan Bulat)
Raptor
C++
7. Seorang dosen ingin mengkonversikan nilai angka hasil ujian mahasiswa
menjadi nilai huruf dengan ketentuan :
Analisis:
Program Membutuhkan 1 buah inputan kemudian di cek menggunakan if else inputan tersebut masuk ke kondisi yang mana
Algoritma:
{Masukkan 1 buah bilangan kemudian proses di dalam if else,kemudian outputkan hasilnya}
Deklarasi
a ;integer
Deskripsi
Read(nilai)
if ((nilai >= 0) && (nilai <= 60))
write(F)
else if ((nilai >= 61) && (nilai <= 70))
write(D)
else if ((nilai >= 71) && (nilai <= 80))
write(C)
else if ((nilai >= 81) && (nilai <= 90))
write(B)
else if((nilai >= 91) && (nilai <= 100))
write(A)
Raptor:
C++
8. Diberikan ketentuan pecahan uang di Indonesia. User memasukkan sebuah
bilangan, program harus dapat memecahnya menjadi pecahan sesuai dengan
mata uang di Indonesia.
Misalkan dimasukkan nilai uang 127.675 rupiah. Cobalah memecah secara
manual nilai uang di atas.
bilangan, program harus dapat memecahnya menjadi pecahan sesuai dengan
mata uang di Indonesia.
Misalkan dimasukkan nilai uang 127.675 rupiah. Cobalah memecah secara
manual nilai uang di atas.
Analisis:
Mendapatkan satu buah inputan kemudian di cacah menjadi mata uang yang ada di indonesia;
Algoritma:
{Mendapatkan inputan kemudian di pecah menggunakan program sesuai mata uang indonesia kemudian meng outputkan hasilnya}
Deklarasi
int uang,sisa;
int u100rb,u50rb,u20rb,u10rb,u5rb;
int u1rb,u5ratus,u2ratus,u1ratus,u5puluhan,u25an
Deskripsi:
read(uang)
a100rb=uang/100000;
sisa=uang%100000;
b50rb=sisa/50000;
sisa=sisa%50000;
c20rb=sisa/20000;
sisa=sisa%20000;
d10rb=sisa/10000;
sisa=sisa%10000;
e5rb=sisa/5000;
sisa=sisa%5000;
f1rb=sisa/1000;
sisa=sisa%1000;
g500=sisa/500;
sisa=sisa%500;
h200=sisa/200;
sisa=sisa%200;
i100=sisa/100;
sisa=sisa%100;
j50=sisa/50;
sisa=sisa%50;
k25=sisa/25;
sisa=sisa%25;
write(pecahan pecahannya )
Raptor:
C++
9. Seorang pegawai bekerja selama 5 hari kerja, yaitu Senin sampai Jum’at. Setiap
hari dia masuk jam 08.00 dan pulang jam 16.00. Kecuali Jum’at dia pulang jam
11.00. Apabila dia bekerja lebih dari 30 jam per bulan maka setiap 5 jam akan
memperoleh uang lembur sebesar Rp 30.000,- bila kurang dari 5 jam maka akan
dihitung Rp 4.000,-/jam. Buat program dengan masukan bulan yang diinginkan,
dan outputnya berupa besarnya uang lembur pegawai tersebut.
hari dia masuk jam 08.00 dan pulang jam 16.00. Kecuali Jum’at dia pulang jam
11.00. Apabila dia bekerja lebih dari 30 jam per bulan maka setiap 5 jam akan
memperoleh uang lembur sebesar Rp 30.000,- bila kurang dari 5 jam maka akan
dihitung Rp 4.000,-/jam. Buat program dengan masukan bulan yang diinginkan,
dan outputnya berupa besarnya uang lembur pegawai tersebut.
Analisis:
Program ini membutuhkan 2 inputan yaitu jam kerja dari senin - kamis
yang selalu sama dan hari jumat yang beda sendiri,Untuk mencari gaji
dari pegawai tersebut maka menggunakan rumus di atas,
Algoritma:
{Masukkan jam senin sampai kamis dan hari jumat,kemudian setiap 5 jam
kerja terhitung lembur dan mendapat upah RP.30.000 dan sisa yang tidak
mencapai 5 jam di hitung per jam nya mendapat upah RP.4000}
Deklarasi:
sk : integer
j : integer
tot: integer
tam :integer
lembur : integer
biasa : integer
Deskripsi
Read(sk,j)
tot=(((sk*4)+j)*4);
tam=tot/5;
if(tot%5==0){
lembur=tam*30000;
write(lembur,tidak ada gaji biasa)
}
else{
biasa=((tot-(tot/5)*5))*4000;
write(lembur,biasa)
}
Raptor:
Percobaan 1;
Percobaan 2:
C++
Percobaan1:
Percobaan 2:
Komentar
Posting Komentar