WORKSHOP MINGGU KE-3
NO 1
Buatlah analisis dan algoritma untuk mencari titik tengah sebuah garis yang ujung titiknya adalah A(x1,y1) dan B(x2,y2).
NO 2
Buatlah algoritma untuk mencari isi bola bila diketahui jari-jari bola.(isi bola : 4/3*phi*r*r)
Algoritma :
C++:
Algoritma :
- user diminta meginputkan jari jari
- lalu akan di proses sesuai rumus yang ada di raptor
- hasil akan sesuai dengan rumus yang diminta di soal
- lalu generate ke C++
- edit agar bisa d compile
- edit ke class
- lalu compile
- dan proses akan sama seperti di raptor
NO 3
Buatlah
analisis dan algoritma untuk mencari hipotenusa dari segitiga
Pythagoras bila diketahui sisi siku-sikunya. (Petunjuk : gunakan fungsi
sqrt yang menyatakan akar dari).
Tulis rumusnya lebih dulu :sqrt((a*a)+(b*b))
Tulis rumusnya lebih dulu :sqrt((a*a)+(b*b))
Algoritma:
- user diminta memasukkan alas dan tinggi
- lalu akan diproses sesuai dengan di raptor
- dan hasil akan sama dengan rumus yang diminta soal
- lalu generate ke C++
- edit agar bisa d compile
- edit ke class
- lalu compile
- dan proses akan sama seperti di raptor
C++:
NO 4
Buatlah analisis dan algoritma untuk
menghitung konversi detik menjadi format jam:menit:detik Buat contoh
kasus, misalnya konversikan 1230 detik menjadi … jam … menit … detik.
- di raptornya memakai sub yaitu dengan intermediate.
- user diminta memasukkan jumlah detik yang akan di konversi
- lalu akan di proses sesuai dengan rumus
- disini saya memakai 2 rumus yaitu dengan tanpa sisa atau dengan sisa yang berperan sebagai penympan sementara
- rumus yang tanpa sisa yaitu saat konversi hasil keluar satu satu
- contoh : jumlah detik = 3600 hasil= 1 jam 60 menit 3600 detik
- rumus yang dengan sisa yaitu langsung di konversi dengan sistem modulus atau sisa contoh:jumlah detik: 3600 hasil = 1 jam 0 menit 0 detik
- setelah itu generate ke C++ dan menggukan clas
- cara kerja sama dengan yang di raptor
Flowchart:

C++:

NO 5
Buatlah analisis dan algoritma untuk menghitung konversi dari jam:menit:detik ke detik Buat contoh kasus, misalnya konversikan 2 jam 13 menit 43 detik menjadi … detik.
Algoritma :
1.Masukan Jam
2.MasukkanMenit
3. Masukkan Detik
4. dan Rumus (Jam*3600)(menit*60)(detik)
5. Selesai dan akan menampilkan output dengan format Detik Keseluruhan.
Flowchart:
C++
NO 6
Buatlah
analisis dan algoritma untuk menghitung selisih 2 waktu. Output
ditampilkan dalam bentuk jam:menit:detik. Asumsikan menggunakan sistem
jam 24-an. Buat contoh kasus, misalnya berapa selisih waktu antara jam
3.45 sore dengan jam 10.23 malam. Selesaikan secara manual lebih dulu.
Algoritma:
- user diminta memasukkan waktu ke satu dan kedua yang berisikan jam , menit, dan detik
- lalu akan diproses sesuai dengan di raptor dan hasil akan sama dengan rumus yang diminta soal
- lalu generate ke C++
- edit agar bisa d compile
- edit ke class
- lalu compile dan proses akan sama seperti di raptor
Fowchart:

C++ :

NO 7
Buatlah analisis dan algoritma untuk menghitung jumlah komponen sejumlah uang menjadi pecahan-pecahannya. Misalkan Rp 188.875,- menjadi : 1 seratus ribuan, 1 lima puluh ribuan, 1 dua puluh ribuan, 1 puluhan ribu, 1 lima ribuan, 3 ribuan, 1 lima ratusan,1 dua ratusan, 1 ratusan, 1 lima puluhan, 1 dua puluh limaan.
NO 8
[Pengamatan] Buatlah analisis dan algoritma untuk menghitung luas sebuah plat CD.
Rumus : (3.14*(r1*r1))-(3.14*(r2*r2))
Algoritma menghitung sebuah luas plat cd
{memasukkan nilai diameter lingkaran dalam dan memasukkan nilai diameter lingkaran luar, algoritma menerima nilai tersebut, mengitung dengan rumus yang ada, lalu menampilkannya}
Deklarasi
r1, r2, l1, l2, hasil : floating (output)
d1, d2 : integer (input)
Deskripsi
read(d1,d2)
r1<-d1/2
r2<-d2/2
l1<-3.14*(r1*r1)
l2<-3.14*(r2*r2)
hasil<-l1-l2
c++ :

NO 9
Buatlah analisis dan algoritma untuk menghitung operasi bilangan rasional : penjumlahan, pengurangan, perkalian, pembagian dan kebalikan. Buat contoh kasus, misalnya dua bilangan rasional 2/3 dan 4/7.
Masalah :
Menghitung operasi bilangan rasional:penjumlahan, pengurangan, perkalian, pembagian
rumus : -k=b1*b2
-l=a1*b2
-j=a2*b1
-jum1=l+j
-kur1=l-j
-bagi1=a1*b2
-bagi11=b1*a2
-kali1=a1*a2
-kali11=b1*b2
Algoritma :
mengitung operasi bilangan rasional
{memasukkan bilangan rasional pertama dan kedua, algoritma menerima masukkan, menghitung menggunakan rumus yang ada, lalu menampilkan hasilnya}
Deklarasi:
a1, b1, a2, b2, k, l, j, jum1, kur1, bagi1, bagi11, kali1, kali11 : integer(input dan output)
Deskripsi :
read(a1,b1,a2,b2)
k<-b1*b2
l<-a1*b2
j<-a2*b1
jum1<-l+j
kur1<-l-j
bagi1<-a1*b2
bagi11<-b1*a2
kali1<-a1*a2
kali11<-b1*b2
write(jum1,kur1,bagi1,bagi11,kali1,kali11)
C++ :


Flowchart :

NO 10
Buatlah analisis 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.

Flowchart :

NO 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 dulu.

Flowchart :

NO 12
Buatlah analisis dan algoritma untuk menghitung jumlah komponen sejumlah uang menjadi pecahan-pecahannya. Misalkan Rp 188.875,- menjadi : 1 seratus ribuan, 1 lima puluh ribuan, 1 dua puluh ribuan, 1 puluhan ribu, 1 lima ribuan, 3 ribuan, 1 lima ratusan,1 dua ratusan, 1 ratusan, 1 lima puluhan, 1 dua puluh limaan.
Masalah : menghitung sejumlah uang menjadi pecahan-pecahannya
Algortima :
menghitung uang menjadi pecahan{memasukkan nominal uang, algoritma
menerima masukkan, menghitung sesuai dengan rumus yang ada, lalu
menampilkannya}
Deklarasi :
uang, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22 = Integer (input dan output)
Deskripsi
read(uang)
p1<-uang/100000
p2<-uang%100000
p3<-p2/50000
p4<-p2%50000
p5<-p4/20000
p6<-p4%20000
p7<-p6/10000
p8<-p6%10000
p9<-p8/5000
p10<-p8%5000
p11<-p10/1000
p12<-p10%1000
p13<-p12/500
p14<-p12%500
p15<-p14/200
p16<-p14%200
p17<-p16/100
p18<-p16%100
p19<-p18/50
p20<-p18%50
p21<-p20/25
p22<-p20%25
write(p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12,p13,p14,p15,p16,p17,p18,p19,p20,p21,p22)
C++ :


uang, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22 = Integer (input dan output)
Deskripsi
read(uang)
p1<-uang/100000
p2<-uang%100000
p3<-p2/50000
p4<-p2%50000
p5<-p4/20000
p6<-p4%20000
p7<-p6/10000
p8<-p6%10000
p9<-p8/5000
p10<-p8%5000
p11<-p10/1000
p12<-p10%1000
p13<-p12/500
p14<-p12%500
p15<-p14/200
p16<-p14%200
p17<-p16/100
p18<-p16%100
p19<-p18/50
p20<-p18%50
p21<-p20/25
p22<-p20%25
write(p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12,p13,p14,p15,p16,p17,p18,p19,p20,p21,p22)
C++ :


NO 8
[Pengamatan] Buatlah analisis dan algoritma untuk menghitung luas sebuah plat CD.
Diameter lingkaran luar = …. cm.
Diameter lingkaran dalam = …. cm.
Masalah : Menghitung sebuah luas plat cdRumus : (3.14*(r1*r1))-(3.14*(r2*r2))
Algoritma menghitung sebuah luas plat cd
{memasukkan nilai diameter lingkaran dalam dan memasukkan nilai diameter lingkaran luar, algoritma menerima nilai tersebut, mengitung dengan rumus yang ada, lalu menampilkannya}
Deklarasi
r1, r2, l1, l2, hasil : floating (output)
d1, d2 : integer (input)
Deskripsi
read(d1,d2)
r1<-d1/2
r2<-d2/2
l1<-3.14*(r1*r1)
l2<-3.14*(r2*r2)
hasil<-l1-l2
c++ :

NO 9
Buatlah analisis dan algoritma untuk menghitung operasi bilangan rasional : penjumlahan, pengurangan, perkalian, pembagian dan kebalikan. Buat contoh kasus, misalnya dua bilangan rasional 2/3 dan 4/7.
Masalah :
Menghitung operasi bilangan rasional:penjumlahan, pengurangan, perkalian, pembagian
rumus : -k=b1*b2
-l=a1*b2
-j=a2*b1
-jum1=l+j
-kur1=l-j
-bagi1=a1*b2
-bagi11=b1*a2
-kali1=a1*a2
-kali11=b1*b2
Algoritma :
mengitung operasi bilangan rasional
{memasukkan bilangan rasional pertama dan kedua, algoritma menerima masukkan, menghitung menggunakan rumus yang ada, lalu menampilkan hasilnya}
Deklarasi:
a1, b1, a2, b2, k, l, j, jum1, kur1, bagi1, bagi11, kali1, kali11 : integer(input dan output)
Deskripsi :
read(a1,b1,a2,b2)
k<-b1*b2
l<-a1*b2
j<-a2*b1
jum1<-l+j
kur1<-l-j
bagi1<-a1*b2
bagi11<-b1*a2
kali1<-a1*a2
kali11<-b1*b2
write(jum1,kur1,bagi1,bagi11,kali1,kali11)
C++ :


Flowchart :

NO 10
Buatlah analisis 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.
Algoritma:
- user diminta memasukkan 4 bilangan biner
- memakai percabangan.
- contoh if = 1000,1001,1010,1011,1100,1101,1110,1111 maka akan keluar 8-15
- yang selain dari angka biner itu akan eror
- lalu generate ke C++
- edit agar bisa d compile
- edit ke class
- compile
- proses akan sama seperti di raptor

Flowchart :

NO 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 dulu.
Algoritma:
- user diminta memasukkan angka scientific
- program menggunakan percabangan yang mana jika a tidak lebih dari 9 dan b tidak lebih dari 4 (dari soal) dan jika lebih dari angka itu akan error
- lalu generate ke C++
- edit agar bisa d compile
- edit ke class lalu compile dan proses akan sama seperti di raptor

Flowchart :

NO 12
Buatlah analisis dan algoritma untuk
menghitung jumlah dari dari dua tanggal yang dimasukkan user. Misalnya,
berapa hari dari 6/1/90 sampai 8/3/92 ? Anggap satu tahun 365 hari dan
anggap semua komponen tanggal pertama
SELALU LEBIH KECIL dari komponen tanggal kedua. Hitung secara manual kasus dalam soal.
(hasil3 =hasil2*360+hasil1*30+hasil)
Algoritma:
- user diminta memasukkan 2 tanggal yang berisikan tahun, bulan , dan tanggal
- diproses sesuai dengan di raptor
- hasil akan sama dengan rumus yang diminta soa
- generate ke C++
- edit agar bisa d compile
- edit ke class
- compile
- proses akan sama seperti di rapto
Flowchart:
C++ :


Komentar
Posting Komentar