WORKSHOP ALGORITMA DAN CLASS (MINGGU KE 3 ALPRO)

Assalamualaikum wr.wb
    Selamat malam teman-teman kembali lagi bersama saya, hari ini saya akan membuat artikle yang berjudul  WORKSHOP ALGORITMA DAN CLASS (MINGGU KE 3 ALPRO).
Langsung saja kita bahas dan jawab soal soal yang ada di workshop.

2.  Buatlah algoritma untuk mencari isi bola  bila diketahui jari-jari bola.
  • ANALISIS : mencari isi bola atau biasa disebut volume bola bisa dicari menggunakan rumus volumebola=4/3*r*r*r
  • ALGORITMA : mencari volume bola dengan menginputkan jari-jari
  •  DEKLARASI : r = integer (input) {jari-jari}
  •                            vol=float (ouput)
  • DESKRIPSI : read(r)
  •                        vol←4/3*r*r*r
  •                        write(vol)          
RAPTOR/FLOWCHART
 gambar diatas adalah gambar jawaban dari soal nomer 2 menggunakan raptor

C++ nomer 2
gambar diatas adalah program nomer 2 menggunakan c++

            

3. Buatlah analisis dan algoritma untuk mencari hipotenusa dari segitiga Pythagoras bila diketahui sisi siku-sikunya. (Petunjuk : gunakan fungsi sqrt yang menyatakan akar dari)
JAWABAN DAN PENJELASAN :
  •   Analisis : Untuk mencari hipotenusa bisa menggunakan rumus pythagoras yaitu c^2=a^2+b^2 dengan ketentuan C = hipotenusa atau garis miring pada segitiga pythagoras.
  • Algoritma : Mencari panjang hipotenusa dari segitiga Pythagoras user memasukkan panjang A dan B dengan menggunakan rumus C^2=A^2+B^2 . Jika panjang A diketahui dan Panjang B diketahui jadi kita bisa mencari panjang pytagoras
  • Deklarasi : a,b : integer 
  •                   hipotenusa : float
  •                   input (a,b)
  •                   output(a,b)
  •                   output(luas)
  • Deskripsi : read(a) read(b) , 
  •                   luas <= sqrt((a*a)+(b*B)) 
  •                   write(luas).
RAPTOR  
gambar diatas adalah jawab nomer 2 menggunakan raptor.
C++
gambar di atas adalah jawaban soal nomer 3 yang dikerjaan di c++ menggunakan class dan menggunakan model OOP.

4.  Buatlah analisis dan algoritma untuk menghitung konversi detik menjadi format jam:menit:detik.
Buat contoh kasus, misalnya konversi 1230 detik menjadi ...jam...menit....detik.
  •   Analisis : menghitung konversi detik menjadi format jam:menit:detik
          pertama kita masukkan dulu berapa detik yang mau kita konversikan ke dalm bentuk jam:menit detik. Untuk mencari bentuk jam kita menggunakan rumus detik di bagi 3600, dan untuk mencari menit kita menggunakan rumus  menit = (detik-3600)/60. dan untuk mencari detiknya kita menggunakan rumus (detik-3600)-60*menit.
  • Algoritma : menghitung konversi detik menjadi format jam:menit:detik
  • Deklarasi : detik, jam, menit, detik1 = integer .
  •                   input(detik, jam, menit, detik1)
  •                   output(detik, jam, menit, detik1)
  • Deskripsi : read(detik), read(jam), read(menit), read(detik1) .. 
  •                   : jam<=(detik/3600) 
  •                   menit<=detik-3600)/60
  •                   detik1<=detik-3600)-60*menit.
  •                   write(jam), write(menit), write(detik).
RAPTOR

C++
gambar di atas adalah kodingan dari soal nomer 4
gambar diatas adalah kodingan dan gambar output dari soal nomer 4.



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).
 RAPTOR
gambar di atas adalah raptor dari soal nomer 5.
 
C++
gambar diatas adalah kodingan dari soal nomer 5 yang dikerjakan menggunakan c++


6. Buatlah analisis dan algoritma untuk menghitung selisih 2 waktu. Outputnya ditampilkan dalam bentuk jam:menit:detik. Asumsikan menggunakan sistem jam 24-an.
Buatlah contoh kasus, misalkan berapa selisih waktu antara jam 3.45 sore dengan jam 10.23 malam.
  •   Analisis : menghitung selisih waktu.
          yang pertama kita deklarasikan dulu variable yang kita butuhkan, jika sudah kita masukkan jam sekrang dan jam nanti untuk kita cari selisihnya, kemudian masukkan untuk menit sekrang dan menit nanti untuk kita cari selisihnya juga, dan juga untuk detik kita masukkan detik yang sekarang dan detik nanti untuk kita selisihkan juga. dan yang terakhir kita jari selisihnya untuk sistem jam 24-an.
  • Algoritma : menghitung selisih pukul sekarang dan pukul nanti.
  • Deklarasi : sistemjam, sistemmenit, sistemdetik, selisihjam, selisihmenit, selisihdetik = integer.
  •                    detik, menit, jam, detik1, menit1, jam1.
  • Deskripsi :read(sistemjam), read(sistemmenit), read(sistemdetik), read(selisih jam).
  •                   read(selisihmenit), read(selisihdetik), read(detik), read(jam), read(menit).
  •                   read(detik1), read(menit1), read(jam1).
  •                   input(jam, menit, detik, jam1, menit1, detik1)
  •                   output(jam, menit, detik, jam1, menit1, detik1, selisihjam, selisihmenit, selisihdetik)
  •                    selisihjam<=jam1-jam;
  •                   selisihmenit<=menit1-menit
  •                   selisihdetik<=detik1-detik.
  •                  write(selisihjam, selisihmenit, selisih detik)
RAPTOR
gambar diatas adalah jawaban dari soal nomer 6 menggunakan raptor.



C++



gambar diatas adalah kodingan soal nomer 6 menggunakan c++.
gambar diatas adalah ouput dari kodingan dari soal nomer 6 menggunakan c++

   

7. Buatlah analisis dan algoritma untuk menghitung jumlah komponen sejumlah uang menjadi pecahan-pecahannya. 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).
     RAPTOR
     




gambar diatas adalah jawaban dari soal nomer 7 menggunakan raptor

C++


gambar diatas adalah kodingan dan jawaban dari soal nomer 7.
 gambar diatas adalah ouput dari kodingan soal nomer 7.

8.  [Pengamatan] Buatlah analisis dan algoritma untuk menghitung luas sebuah plat CD.
Diameter lingkaran luar        =.... cm
Diameter Lingkarang dalam =.... cm

Analisis : menghitung plat cd.
          untuk menghitung plat cd karena yang diinputkan diamter dan rumus luas lingkaran itu menggunakan jari, jadi diamter itu kita bagi dua, dan rumus platnya itu luas lingkaran luar- luar lingkaran dalam.
  • Algoritma : menghitung luas plat CD.
  • Deklarasi :dluar, ddalam = inteeger.
  •                  :luasluar, luasdalam, platcd=float.
  •                  : input(dluar, ddalam)
  •                  : output(luasluar, luasdalam, platcd).
  • Deskripsi : read(dluar, ddalam, platcd, luasluar, luasdalam)
  •                 :write(platcd, luasluar, luasdalam).
RAPTOR
gambar diatas adalah jawaban dari soal nomer 8 yang dikerjakan di RAPTOR

C++

gambar diatas adalah jawaban dari soal nomer 8 yang dikerjakan di c++


9.  buatlah analisis dan algoritma untuk menghitung operasi bilangan rasional : penjumlahan, pengurangan, perkalian, pembagian dan kebalikan. buatlah contoh kasuss, misalnya dua bilangan rasional 2/3 dan 4/7.
  • Analisis : untuk menghitung bilangan rasional kita terutama di penjumlahan dan pengurangan penyebut nya harus kita samakan ,
  • Algoritma  : menghitung dua bilangan rasional.
  • Deklarasi : pem1,pen1,pem2,pen2 = integer.
  •                    pertambahan, pengurangan, perkalian, pembagian = float
  •                   input = (pem1,pen1,pem2,pen2)
  •                   output= (pertambahan, pengurangan, perkalian, pembagian) 
  • Deskripsi: read(pem1,pem2,pen1,pen2) 
  •                    pertambahan=(pem1/pen1)+(pem2/pen2)
  •                    pengurangan=(pem1/pen1)-(pem2/pen2)
  •                    perkalian=(pem1/pen1)*(pem2/pen2)
  •                    pembagian=(pem1/pen1)/(pem2/pen2)
  •                    write(pertambahan,pengurangan,perkalian,pembagian)
 RAPTOR
gambar diatas adalah jawaban dari soal nomer 9 yang dikerjakan menggunakan raptor

C++ 


gambar diatas adalah jawaban dari soal nomer 9 yang dikerjakan menggunakan c++

10. buatlah analisis dan algoritma untuk mengkonversi bilangan biner 4 digit mejadi bilangan desimal. operator overloading mencegah user untuk memasukkan bilangan selain 0 dan 1. Deklarasi variable input dan output adalah bertipe integer. 
konversikan 1011 ke desimal:

  • Analisis : untuk mengubah bilangan biner menjadi bilangan desimal bisa kita menggunakan rumus setiap digit pertama bilangan biner itu di kali 2 pangkat banyak bilangan dikurangi satu, dan begitu juga untuk digit selanjutnya dan menjumlahkan semua hasilnya.
  • Algoritma : mengkonversikan bilangan biner ke bilangan desimal.
  • Deklarasi :  bin1,bin2,bin3,bin4,desimal = int.
  •                    input(bin1,bin2,bin3,bin4 )
  • Deskripsi :
  •                 desimal=(bin1*2*2*2)+(bin2*2*2)+(bin3*2)+(bin4*1+(2*0))
  •                 read(bin1,bin2,bin3,bin4)
  •                write(desimal)
RAPTOR
gambar diatas adalah jawaban dari soal nomer 10 menggunakan RAPTOR

C++


 gambar diatas adalah jawaban dari soal nomer 10 yang dikerjakan di C++.




 

 


 










 

 





                

Komentar