Senin, 20 Maret 2017

Workshop minggu ke-3,NO 4, 5, 6

Pada kesempatan kali ini saya mendapat bagian mengerjakan soal No.4, 5, 6,7, dan 8 
Nomor 1-4 dikerjakan oleh M.Ridho Hidayat 
Nomor 9-12 dikerjakan oleh M.Sahlan Rabul 


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.
Algoritma:
Membaca data berupa inputan (sekon) kemudian mencari detik dari jam dengan cara jam=(sekon/3600) kemudian menit=(sekon-3600)/60 detik=(sekon-3600)-60*menit.kemudian menjumlahkannya (total= jam+menit+detik)
Deklarasi:
int jam,menit,detik,total,sekon;
Deskripsi:
Baca(sekon,jam,menit,detik)
jam=(sekon/3600);
menit=(sekon-3600)/60;a
detik=(sekon-3600)-60*menit;
total= jam+menit+detik
write(total)
Menggunakan RAPTOR 
 
Menggunakan C++ 
 



 
 


5. Buatlah analisis dan algoritma untuk menghitung konversi dari jam:menit:detik ke detik.
   Buat contoh kasus, misal konversikan 2 jam 13 menit 43 detik menjadi ... detik.
  •   Analisis : menghitung konversi  dari jam:menit:detik ke bentuk detik 
          Rumus yang digunakan untuk soal diatas adalah untuk jam1=jam*3600 dan untuk menit1=menit*60 dan untuk detik digunakan rumus detik1=detik. Dan untuk rumas akhir supaya bisa mendapatkan konversi ke detik adalah jumlahdetik=jam1+menit1+detik1.
  • Algoritma : menghitung konversi jam:menit:detik menjadi format detik
  • Deklarasi :detik, jam, menit, jam1, menit1, detik1, jumlahdetik = integer
  • Deskripsi : read(detik), read(jam), read(menit), read(jam1), read(menit1), read(detik1), read(jumlahdetik)
  • input(detik, jam, menit, jam1, menit1, detik1, jumlahdetik)
  • output(jam, menit, detik, jumlahdetik)
  •  jam1<=(jam*3600) 
  •  menit1<=menit*60
  •  detik1<=detik;
  • jumlahdetik<=jam1+menit1+detik1
  •  write(jam1), write(menit1), write(detik1), write(jumlahdetik).  


Menggunakan RAPTOR

Menggunakan C++





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.
    Algoritma
    Membaca (jam1,menit1,detik1,jam2,menit2.detik2 ),kemudian mengurangkannya dengan cara jam=jam2-        jam1,menit=menit2-menit1,detik=detik2-detik1 kemudian menampilkannya dengan format jam menit detik,
    Deklarasi
int jam1,jam2,menit1,menit2,detik1,detik2,jam,menit,detik;
Deskripsi:
Baca(jam1,menit1,detik1,jam2,menit2.detik2)
jam=jam2-jam1
menit=menit2-menit1,
detik=detik2-detik1
write(jam,menit,detik)
Menggunakan Raptor 
 
 
Menggunakan C++ 
 
 
 


7. Buatlah analisis dan algoritma untuk menghitung jumlah komponen sejumlah uang menjadi pecahan-              zpecahannya. Misalkan Rp 188.875 menjadi : 1 ratusan ribuan, 1 lima puluh ribuan, 1 dua puluh ribuan, 1 puluhan ribu, 1 lima ribuan, 3 ribuan, 1 lima ratusan, 1 dua ratusan, 1 puluhan, 1 puluhan limaan.
  •   Analisis : menghitung sejumlah uang menjadi pecahan-pecahan.
         untuk mengubah sejumlah uang menjadi pecahan-pecahan sedikit sulit, tetapi intinya kita menggunakan tipe data integer supaya ketika membagi sejumlah bilangan masih bisa ada sisanya.
  • Algoritma : mengubah sejumlah uang menjadi pecahan-pecahan.
  • Deklarasi : jumlahuang, ratusanribu, limapuluhanribu, duapuluhanribu, puluhanribu(integer)
                       limaribuan, duaribuan, ribuan,ratusan;limaratusan, rupiah, puluhan (integer).                            sisa, sisa1, sisa2, sisa3, sisa4.
  • Deskripsi :read(jumlahuang), read(ratusanribu), read(limapuluhanribu), read(puluhanribu).
  • read(limaribuan), read(duaribuan), read(ribuan), read(ratusan), read(rupia).
  • read(sisa), read(sisa1), read(sisa2), read(sisa3, sisa4).
  • input(jumlahuang).
  •  output(ratusanribu, limapuluhanribu, ribuan, limaratusan, puluhan)
  • ratusanribu<=jumlahuang/100000;
    • sisa<=jumlahuang-(ratusanribu*100000);
    •  limapuluhanribu<=sisa/50000;
    • sisa1<=sisa-(limapuluhanribu*50000);
    • duapuluhanribu<=(sisa1/20000);
    • sisa2<=sisa1-(duapuluhanribu*20000);
    • ribuan<=(sisa2/1000);
    • sisa3<=sisa2-(ribuan*1000);
    • limaratusan<=(sisa3/500);
    • sisa4<=sisa3-(limaratusan*500);
    • puluhan<=(sisa4/10).

0 komentar:

Posting Komentar