Tuesday, March 28, 2017

Latihan bab 4

Pada postingan kali ini saya akan membagikan jawaban dari soal" latihan yang ada di bab 4.
pada postingan ini hanya ada lanjutan jawaban dari jawaban-jawaban yang sudah ada pada teman-teman kelompok saya
Nomor 1-3 di blog :http://irfanafandi09.blogspot.co.id/2017/03/latihan-bab-4.html
Nomor 4-6 di blog :http://fadlioei.blogspot.co.id/

sedangkan saya akan membagikan jawaban no 7 sampai 9

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.

1 lembar uang 100rb
1 lembar uang 20rb
1 lembar uang 5rb
1 lembar uang 2rb
1 keping uang 500
1 keping uang 50
1 keping uang 25
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 
ju; integer
rr;    real
lpr;    real
dpr;    real
pr;    real
lr;    real
dr;    real
sr;    real
ratusan;    real
lrs;   real
srs;    real
pln;    real
stn;    real
sisa;    real

Deskripsi:
read(ju)
    rr=ju/100000;
    sisa=ju%100000;
   
    lpr=sisa/50000;
    sisa=sisa%50000;
   
    dpr=sisa/20000;
    sisa=sisa%20000;
   
    pr=sisa/10000;
    sisa=sisa%10000;
   
    lr=sisa/5000;
    sisa=sisa%5000;
   
    sr=sisa/1000;
    sisa=sisa%1000;
   
    lrs=sisa/500;
    sisa=sisa%500;
    
    drs=sisa/200;
    sisa=sisa%200;
    
    srs=sisa/100;
    sisa=sisa%100;
    
    lpn=sisa/50;
    sisa=sisa%50;
    
    dln=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.
Perhitungan secara manual :
 
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:

C++


Sekian Postingan kali ini semoga bermanfaat
Wassalamualaikum Wr.Wb

Evaluasi diri minggu ke 4

Assalamualaikum wr. wb.

Tidak terasa ini sudah memasuki akhir minggu keempat pada mata kuliah alpro dan akan memasuki minggu kelima , sebelum menutup akhir minggu keempat seperti  biasa saya akan memposting evaluasi diri di minggu kempat yang membahas tentang "Pemilihan atau kontrol program" .

Pada minggu kempat ini waktu belajar saya untuk mata kuliah Alpro lagi-lagi melebihi batas yang telah di tentukan yaitu 820 menit, dikarenakan tugas yang bertambah banyak tiap minggunya banyaknya  dan banyaknya materi yang harus saya pelajari kembali agar lebih memahami materi pada bab 4 . Pada minggu keempat ini tugas yang diberikan oleh dosen tidak kunjung berkurang sedikitpun tetapi malah bertambah makin banyak itu sempat membuat saya kewalahan karena banyaknya juga tugas yang didapatkan dari mata kuliah lain . Oleh sebab itu tugas alpro tidak dapat saya selesaikan secepatnya tetapi  alhamdulillah tugas yang diberikan oleh dosen dapat saya kerjakan semaksimal mungkin dengan kelompok kerja saya alhasil tugas yang diberikan tidak melewati batas waktu yang diberikan .
Selanjutnya ini dia kalkulasi berapa menit dalam seminggu yang telah saya habiskan buat mata kuliah Alpro
ALPRO KUY
Tabel menit belajar Alpro
noNama kegiatanWaktuTotal menit 
1.Persiapan kuliah1x50 menit50 menit
2.Kuliah Teori2x50 menit100 menit
3.Persiapan praktikum1x 50 menit50 menit
4.Praktikum3x60 menit180 menit
5.Diskusi kelompok (membuat tugas workshop)4 x 60 menit240 menit
6.Belajar mandiri (membuat tugas kasus)4 x 60 menit240 menit
Total menit selama seminggu860 menit

Jadi dari total menit yang telah dihabiskan untuk mata kuliah alpro sendiri sudah melewati batas yaitu 820 menit . Meskipun ada batasan bukan berarti kita hanya berhenti di batasan itu saja jika kita mau dan ada niat kita bisa melebihi dari batas menit yang di dalam diktat guna untuk memperdalam dan memperbanyak ilmu dan pengetahuan kita sendiri. Cukup sekian postinga Evaluasi diri saya pada minggu ketiga , see you gaes pada postingan" selanjutnya .
Wassalamualaikum wr, wb.

Latihan Kasus bab 4

Kasus 4.1
Tentukanlah bilangan terbesar antara dua bilangan bulat.
Analisis
Menentukan bilangan terbesar dari dua buah bilangan dapat diperoleh dengan operetor ">" atau biasa dikenal "Lebih besar dari" simol ini dipakai apabila kita ingin mencari nilai terbesar contoh :
X>Y= nilai X lebih besar dari nilai Y atau Y>X= nilai Y lebih besar dari X
uji coba manual : X=69, Y=96 -> 96>69 -> maka nilai Y lebih besar dari X
Algoritma 4.1 
Algoritma Nilai_terbesar
{Menentukan nilai terebesar dari dua buah inputan (X,Y) dengan operator ">"}
Deklarasi
X,Y : integer  {angka yang dijadikan pembanding nilai terbesar}
Deskripsi
read (X,Y)
if (X>Y) the write ("Bilangan terbesar adalah = " X)
else write ("Bilanga terbesar adalah = "Y)
endif
Raptor





C++



Kasus 4.2
Tentukanlah bilangan terbesar antara 3 bilangan bulat.
Analisis
Untuk menetukan bilangan terbesar antara 3 bilangan bulat cukup dengan melakukan perbandingan bilangan bulat yang pertama dan kedua lalu bilangan yang terbesar dari dua bilangan tersebut di bandingkan dengan bilangan ketiga barulah diperoleh bilangan terbesar dari tiga bilangan
Algoritma 4.2.a
Algoritma Nilai_paling_besar
{program membaca 3 buah bilangan bulat yang di inputkan, kemudian program membaca perintah yang dimasukkan dalam program lalu menentukan bilangan terbesar dari tiga buah bilangan tersebut dan menampilkannya ke layar }
Deklarasi
x,y,z : integer
Deskripsi
Read (x,y,z)
if (x>y) and (x>z) then write ("Biangan terbesar adalah = " x)
else if (y>x) and (y>z) then write ("Biangan terbesar adalah = " y)
else write ("Biangan terbesar adalah = " z)
end if

Raptor [a]





C++[a]



Algoritma 4.2.b
Algoritma Nilai_maks
{program membaca 3 buah bilangan bulat yang di inputkan, kemudian program membaca perintah yang dimasukkan dalam program lalu menentukan bilangan terbesar dari tiga buah bilangan tersebut dan menampilkannya ke layar }
Deklarasi
x,y,z : 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
Raptor [b]


C++[b]



Kasus 4.3
Carilah akar-akar persamaan kuadrat .Carilah akar-akar persamaan kuadrat.
Analisis :Persamaan kuadrat adalah persamaan dengan bentuk umum Ax+ Bx + c = 0,
dan tentu saja dengan A tidak sama dengan 0. Akar persamaan kuadrat diperoleh dengan rumus : 


Algoritma 4.3.

Algoritma:  Persamaan_Kuadrat
{Menghitung akar-akar persamaan kuadrat Ax^2+Bx+C = 0}
Deklarasi
A, B, C : integer {koefisien-koefisien persamaan}
disk : longint {nilai diskriminan}
x1, x: real {nilai-nilai akar untuk disk>=0}
Deskripsi
read (A, B, C)
disk Ã… B*B – 4*A*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
write (x1,x2)  
Raptor:

C++:

Kasus 4.4.
Konversikan nilai angka menjadi nilai huruf dengan ketentuan sebagai berikut :Nilai Angka Nilai huruf0 – 20 E
21 – 40 D
41 – 60 C
61 – 80 B
81 – 100 A
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}

Deklarasi
nilai : integer
nilai_huruf : char

Deskripsiread (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)
  
Raptor :
 
C++ :


Kasus 4.5 
Buatlah algoritma, flowchart, dan program untuk mengkonversi hari ke-1 adalah
hari Senin sampai dengan hari ke-7 adalah Minggu. Misalkan dimasukkan nilai 5,
outputnya adalah hari Jum’at.
 
Analisis
Program membutuhkan 1 buah inputan kemudian di cek inputannya jika inputan 1 maka hari senin begitu seterusnya sampai hari ke 7.
Algoritma 4.5 
Algoritma menentukan_hari
{ masukan integer 1 sampai 7, akan ditentukan hari apa yang sesuai }
Deklarasihari_ke : integer;
hari : string;
Deskripsiread(hari_ke);
case (hari_ke) of
1 : hari =
 'Senin'
2 : hari =
 'Selasa';
3 : hari =
 'Rabu';
4 : hari =
 'Kamis';
5 : hari =
 'Jum''at';
6 : hari =
 'Sabtu';
7 : hari =
 'Minggu';
else : hari = 'not found'
endcase
write(hari)
  

Raptor :

C++ :




Tuesday, March 21, 2017

Evaluasi diri minggu ke 3

Assalamualaikum wr. wb.

Tidak terasa ini sudah memasuki akhir minggu ketiga pada mata kuliah alpro dan akan memasuki minggu keempat , sebelum menutup akhir minggu ketiga seperti  biasa saya akan memposting evaluasi diri di minggu ketiga pada matakuliah Alpro .

Pada minggu ketiga ini waktu belajar saya untuk mata kuliah Alpro melebihi batas yang telah di tentukan yaitu 820 menit, kenapa bisa melebihi? jawabannya dikarenakan banyaknya tugas dan banyaknya materi yang harus saya pelajari kembali agar lebih memahami materi yang telah diberikan dosen dan yang ada di diktat . Pada minggu ketiga ini tugas yang diberikan oleh dosen tidaklah sedikit tapi itu tidak membuat saya putus asa dan menyerah . Karena sifat pantang menyerah yang saya miliki alhamdulillah tugas yang diberikan oleh dosen dapat saya kerjakan secepat dan semaksimal mungkin dengan kelompok kerja saya alhasil tugas yang diberikan dapat dikerjakan dalam beberapa hari.
Selanjutnya ini dia kalkulasi berapa menit dalam seminggu yang telah saya habiskan buat mata kuliah Alpro
ALPRO KUY
Tabel menit belajar Alpro
noNama kegiatan Waktu Total menit
1.Persiapan kuliah 1x50 menit50 menit
2.Kuliah Teori 2x50 menit100 menit
3.Persiapan praktikum 1x 50 menit 50 menit
4.Praktikum 3x60 menit180 menit
5.Diskusi kelompok (membuat tugas workshop) 5 x 60 menit300 menit
6.Belajar mandiri (membuat tugas kasus) 5 x 60 menit300 menit
Total menit selama seminggu 980 menit

Jadi dari total menit yang telah dihabiskan untuk mata kuliah alpro sendiri sudah melewati batas yaitu 820 menit , meskipun ada terdapat hambatan yaitu di menejemen waktu yang mengakibatkan saya kurang tidur tapi saya tetap semangat untuk menyelesaikan tugas yang telah diberikan. Meskipun ada batasan bukan berarti kita hanya berhenti di batasan itu saja jika kita mau dan ada niat kita bisa melebihi dari batas menit yang di dalam diktat guna untuk memperdalam dan memperbanyak ilmu dan pengetahuan kita sendiri. Cukup sekian postinga Evaluasi diri saya pada minggu ketiga , see you gaes pada postingan" selanjutnya .
Wassalamualaikum wr, wb.

Sunday, March 19, 2017

Workshop Bab 3 (Alpro)

Assalamualaikum gaes pada postingan kali ini saya akan membagikan postingan yang berisi program-program untuk menjawab soal pada Bab 3 SEKUEN.
Pada postingan ini saya akan menjawab no 10, 11 dan 12 karena nomor sebelumnya telah dijawab dan dikerjakan oleh teman satu kelompok saya .

No 2,3,4 dan 5 ada di link ini http://fadlioei.blogspot.co.id/2017/03/tugas-workshop-algoritma-dan-class-bab-3.html
No 6,7,8 dan 9 ada di link ini  http://irfanafandi09.blogspot.co.id/2017/03/workshop-bab-3.html

selanjutnya saya akan menjawab no :

10. Buatlah analisi dan algoritma untuk mengkonversi bilangan biner 4 digit menjadi bilangan desimal. Operator Overloading input mencegah user untuk memasukkan bilangan selain 0 dan 1> Deklarasi variabel input dan output adalah bertipe integer.
Konversikan 1011 ke desimal :
Percobaan manual  :
1011 (biner) = ........(desimal)
1011 = 1x2^3  + 0x2^2 + 1x2^1 + 1x2^0
1011 = 8 +0 +2+1 =11
jadi 1011(biner)=11(desimal)

Algoritma: Konversi bilangan biner ke desimal
{Membuat program dengan 4 kali inputan dan hanya bilangan 1 dan 0 yang boleh diiputkan.
lalu menkonversikan dengan mengunakan rumus biner ke desimal dan menaruh output akhir desimal untuk menampilkan angka yang telah di konversikan ke desimal}
Deklarasi :
d1 : real {digit kesatu}
d2 : real {digit kedua}
d3 : real {digit ketiga}
d4 : real {digit keempat}
dec: real {bilangan desimal}
Deskripsi :
read (d1)
read (d2)
read (d3)
read (d4)
dec = d1*2^3+d2*2^2+d3*2^1+d4*2^0
write(dec)

Flowchart





C++



11.Buatlah analisis dan algoritma untuk menjumlah dua bilangan  scientific berbentuk aEb dengan 0<a<10 dan 0<=b<=4
Hitung 2.1E2 + 3.31E1 = secara manual lebih dahulu
Hitung manual 
2.1E2 +3.31E1 = 5.41E3

Algoritma : Penjumlahan bilangan scientific 
{membuatkan program penjumlahan dua buah bilangan scientfic dengan dua inputan (a,b) lalu di outputkan dalam bilangan scientific berbentuk aEb dan kemudian dijumlahkan dengan output dalam bilangan scientific   }
Deklarasi 
a1,b1,a2,b2: float {input}
a,b,s :float {output}
Deskripsi
read (a1,b1,a2,b2)   
a=a1+a2 {mendapatkan nilai a}
b=b1+b2 {mendapatkan nilai b}
s=a<<"E"<<b; {output bilangan scientific}
write (a,b,s)

Raptor 

 C++





12.Buatlah analisis dan algoritma untuk menghitung jumlah dari dua tanggal yang dimasukkan user. Misalnya, berapa hari dari 6/9//90 sampai 8/3/92? anggap satu satu tahun 365 hari dan anggap semua komponen tanggal pertama selalu lebih kecil dari komponen tanggal kedua

hitung secara manual kasus dalam soal
Rumus yang digunakan
Berapa hari dari 6/1/90 sampai 8/3/92 =jumlah  hari dari 6/1/90 sampai 8/3/92
perbedaan tahun 90 sampai 92 = 2 tahun *365  = 730 hari
perbedaan bulan 1 sampai 3 = 2 bulan * 30 = 60 hari
perbedaan tanggal 6 sampa 8 = 2 hari
Total jumlah hari antara kedua tanggal 792 hari

Algoritma : Penjumlahan dari dua buah tanggal
{membuatkan program penjumlahan dua tanggal yang berbeda dimana komponen  tanggal pertama selalu lebih kecil dari komponen tanggal kedua   dan di outputkan dalam bentuk hari }
Deklarasi 
t1,b1,h1,t2,b2,h2: integer {input}
integer {output}
Deskripsi
read (t1,b1,h1,t2,b2,h2)   
 tg=tg2-tg1
bln=(bln2-bln1)*30
th=(th2-th1)*3600
total=tg+bln+th
write(total)
Raptor :


C++:
semoga postingan kali ini bermanfaat

  sekian terima kasih

akhir kata Wassalamualaikum wr.wb

Saturday, March 18, 2017

Posttes praktikum minggu kedua 2 (Alpro)

Postes prak minggu kedua

1.Algoritma menghitung luas yang di arsir antara persegi dan lingkaran
Algoritma :{Membaca data yang dimasukkan kemudian di olah dengan rumus yang diperlukan (rumus lingkaran dan rumus persegi ) kemudian dari hasil tersebut luas persegi di kurangkan luas lingkaran  agar memperoleh  luas yang di arsir}
Deklarasi :
float r;
float persegi;
float lingkaran ;
float arsir ;
Deskripsi :
read(r)
Lingkaran=phi*r*r
Persegi =s*s ((r*2)*(r*2)
s=r*2
Arsir =Persegi-lingkaran

C++




Raptor




2.Algoritma mencari luas yang di arsir antara tabung dan bola

Algoritma :
 {Membaca data yang dimasukkan yaitu cukup dengan dua inputan (r,t) kemudian di olah dengan rumus volume bola dan rumus volume tabung dimana bola harus lebih volume kecil dari volume tabung lalu untuk mendapatkan luas yang di arsir arsir=volume tabung - volume bola}
Deklarasi :
float r,t : {input}
float vtabung,vbola,varsir : {output}
Deskripsi
read (r,t)
vtabung = 4/3*3.14*r^3
vbola=3.14*r^2*t
varsir=vtabung-vbola {write}

Raptor 



C++