Diktat
(Workshop Pemrograman)
1. Buatlah flowchart dan translasi program dari algoritma 3.2.b. di atas.
Algoritma menentukan_bilangan_terbesar
{mencari bilangan terbesar dari 3 bilangan yang diinput}
Deklarasi :
Integer a,b,c,terbesar;
Deskripsi :
Write(“Masukkan Bilangan Pertama : ”);
Read(a);
Write(“Masukkan Bilangan Kedua : ”);
Read(b);
Write(“Masukkan Bilangan Ketiga : ”);
Read(c);
if (a>b) then
if (a>c)
then write(“Terbesar = ”,a);
else wrie(“Terbesar = ”,c);
endif
else if (b>c)
then write(“Terbesar = ”,b);
else write(“Terbesar = ”,c);
endif
endif
{mencari bilangan terbesar dari 3 bilangan yang diinput}
Deklarasi :
Integer a,b,c,terbesar;
Deskripsi :
Write(“Masukkan Bilangan Pertama : ”);
Read(a);
Write(“Masukkan Bilangan Kedua : ”);
Read(b);
Write(“Masukkan Bilangan Ketiga : ”);
Read(c);
if (a>b) then
if (a>c)
then write(“Terbesar = ”,a);
else wrie(“Terbesar = ”,c);
endif
else if (b>c)
then write(“Terbesar = ”,b);
else write(“Terbesar = ”,c);
endif
endif
C++ :
Inilah Programnya :
Inilah Programnya :
2.
Sempurnakan
algoritma 3.3. dengan akar imajiner berbentuk : a + bi dengan
a dan b bilangan real dan bila harga b2 4ac 0 . Perhatikan
bahwa nilai a dan b dihitung terpisah.
Rumus
menghitung nilai a :
Rumus
menghitung nilai b :
Operator
Overloading untuk output :
Algoritma :
{Input: a,b,c mencari akar-akar persamaan kuadrat dan mencari akar-akar persamaan kuadrat}
Inilah Programnya :
Inilah Outputnya :
Raptor :
Inilah Programnya :
Inilah Outputnya :
Algoritma :
{Input: a,b,c mencari akar-akar persamaan kuadrat dan mencari akar-akar persamaan kuadrat}
Deklarasi:
a,b,c
: integer{Input}
disk
: longint{output}
x1,x2
: real{output}
Deskripsi:
read(a,b,c)
disk<--b*b-4a*c
if (a=0) then write('Bukan persamaan kuadrat')
else if disk>0 then
x1<---(-b)+sqrt(disk)/2*a
x2<---(-b)-sqrt(disk)/2*a
else if disk=0 then
x1<---(-b)/2*a
x2<---x1
else write('Akar Imajiner')
end if
else if disk>0 then
x1<---(-b)+sqrt(disk)/2*a
x2<---(-b)-sqrt(disk)/2*a
else if disk=0 then
x1<---(-b)/2*a
x2<---x1
else write('Akar Imajiner')
end if
write(x1,x2)
C++ :Inilah Programnya :
Inilah Outputnya :
Raptor :
Inilah Programnya :
Inilah Outputnya :
3.
Buatlah
program dari algoritma 3.4. menggunakan case … of .
Inilah Programnya :
Inilah Outputnya :
Algoritma
konversi nilai
{ dibaca nilai angka kemudian di konversi ke nilai
huruf}
Deklarasi :
nilai : integer
nilai_huruf : char
Deskripsi
read(nilai)
if (nilai>0) and (nilai <=20) then
nilai_huruf <- E
else if (nilai > 21) and (nilai<=40)then nilai_huruf <- D
else if (nilai > 41) and (nilai<=60)then nilai_huruf <- C
else if (nilai > 61) and (nilai<=80)then nilai_huruf <- B
else nilai_huruf <- A
end if
write(nilai_huruf)
C++:Inilah Programnya :
Inilah Outputnya :
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
:
Algoritma
:
Algoritma_menentukan_bil_bulat/bil_real
{menentukan bilangan bulat atau real dari input yang di masukan}
Deklarasi :
a =float
b = integer
bil = char
Deskripsi :
b=a
read(a)
if(a=b) then bil <-- 'adalah bil bulat'
else bil<-- 'adalah bi real'
endif
write(bil)
Algoritma_menentukan_bil_bulat/bil_real
{menentukan bilangan bulat atau real dari input yang di masukan}
Deklarasi :
a =float
b = integer
bil = char
Deskripsi :
b=a
read(a)
if(a=b) then bil <-- 'adalah bil bulat'
else bil<-- 'adalah bi real'
endif
write(bil)
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.
6.
Buatlah algoritma, flowchart dan program untuk mengecek apakah karakter yang
Algoritma menentukan hari dalam satu bulan
{ input
bulan dan tahun kemudian output jumlah hari dalam satu bulan
Deklarasi :
AngkaBulan :
integer; { 1 . . 12
}
Tahun :
integer; { > 0 }
JumlahHari : integer;
Deskripsi :
begin
write('Bulan (1-12) = ');
write('Tahun = ');
case AngkaBulan of
1, 3, 5, 7, 8, 10, 12 : JumlahHari:=31;
4, 6, 9,
11 :
JumlahHari:=30;
2
: if Tahun mod 4 = 0 then
JumlahHari:=29
else
JumlahHari:=28;
{endif}
end;
writeln('Jumlah hari dalam bulan ',AngkaBulan,' adalah ',JumlahHari);
end.
dimasukkan
itu merupakan huruf besar, huruf kecil atau digit (bilangan).
Gunakan
fungsi ORD(char) untuk menyatakan nomor urut dalam tabel ASCII.
Algoritma
:
7.
Seorang dosen ingin mengkonversikan nilai angka hasil ujian mahasiswa menjadi
nilai huruf dengan ketentuan :
Algoritma mengecek karakter yang
dimasukkan termasuk huruf kapital, huruf kecil atau digit
{input
karakter kemudian di cek apakah huruf besar, kecil atau digit}
Deklarasi :
karakter : string {input, output}
Deskripsi :
Read(karakter)
if(karakter>=’A’ &&
karakter<=’Z’) ß Huruf kapital
else if(karakter>=’a’ &&
karakter<=’z’) ß huruf kecil
else(karakter>=’0’ &&
karakter<=’9’) ß digit
endif
write(karakter
)
Nilai
antara Nilai Huruf
0-60
F
61-70
D
71-80
C
81-90
B
91-100
A
Algoritma
konversi nilai
{dibaca nilai angka kemudian di konversi ke nilai
huruf}
Deklarasi :
nilai : integer
nilai_huruf : char
Deskripsi
read(nilai)
if (nilai>0) and (nilai <=60) then
nilai_huruf <- E
else if (nilai > 61) and (nilai<=70)then nilai_huruf <- D
else if (nilai > 71) and (nilai<=80)then nilai_huruf <- C
else if (nilai > 81) and (nilai<=90)then nilai_huruf <- B
else nilai_huruf <- A
end if
write(nilai_huruf)
Misalkan
dimasukkan nilai uang 127.675 rupiah. Cobalah memecah secara
manual
nilai uang di atas.
Algoritma
:
Algoritma membaca
nilai bilangan dengan Pangkat
{Diberikan
masukan x dan y, dihitung nilai dari x pangkat y}
Deklarasi :
Deklarasi :
x,
y, i : integer { input }
pangkat
: integer { output }
Deskripsi :
Deskripsi :
read
(x,y)
pangkat
ß
1
for
i ß
1 to y do
pangkat ß
pangkat * x
enfor
write (pangkat)
Inilah Programnya :
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.
Perhitungan
secara manual :
Algoritma menghitung Gaji Pegawai
Algoritma menghitung Gaji Pegawai
Deklarasi
NIK,
Nama : String
Jhk,
tunj.jabatan, tunj.makan, tunj.transport, gaji_kotor, pajak, gaji_bersih : Real
Deskripsi
READ
(NIK, Nama, gaji_pokok, tunj.jabatan, Jhk)
tunj.makan
= 10000 * Jhk
tunj.transport
= 5000 * Jhk
gaji_kotor
= (gaji_pokok + tunj.jabatan + tunj.makan + tunj.transport)
pajak
= 0.1 * gaji_kotor
gaji_bersih
= (gaji_kotor – pajak)
write (tunj.makan, tunj.transport,
gaji_kotor, pajak, gaji_bersih)
end
Inilah Programnya :
Tidak ada komentar:
Posting Komentar