Sabtu, 18 Maret 2017

WORKSHOP ALGORITMA DAN CLASS

Assalamualaikum Wr.Wb.
Kali ini saya akan menguplod tentang Workshop Algoritma dan class


1.Buatlah analisis dan algoritma untuk mecari titik tengah sebuah garis yang ujung titiknya adalah A(x1,y1) dan B(x2,y2) ;
Algoritma :
Membaca data yang dimasukkan (x1,y1,x2,y2) kemudian di olah dengan rumus xt =(x1+x2)/2
dan yt=(y1+y2)/2
Deklarasi:
float x1,x2,y1,y2;
float xt,yt
Deskripsi:
read(x1,x2,y1,y2)
xt =(x1+x2)/2
yt=(y1+y2)/2
Program C++



Raptornya :


2.Buatlah algoritma untuk mencari isi bola bila diketahui jari-jari bola.

 Algoritma :
membaca data berupa jari-jari bola (r), dan menghitung volumenya . Volume bola dihitung dengan rumus V=4/3 * 3.14*r*r*r. 
Deklarasi:
  float vol,r;
Deskripsi:
 Baca (r)
 vol=4/3 * 3.14*r*r*r. 
 write(vol)

C++:
Raptor:


3. Buatlah analisis dan algoritma untuk mencari hipotenusa dari segitiga Pythagoras bila
diketahui sisi siku-sikunya. (Petunjuk : gunakan fungsi sqrt yang menyatakan akar
dari).
Algoritma:
Membaca data berupa sisi alas dan tinggi(a,b)menghitung hipotenusa menggunakan c=sqrt(a*a+b*b)
Deklarasi:
float a,b,c
Deskripsi:
Baca(a,b)
c=sqrt(a*a+b*b)
write(c)

C++
Raptor:

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;
detik=(sekon-3600)-60*menit;
total= jam+menit+detik
write(total)


C++
Raptor:
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:
Membaca inputan(jam,menit,detik) kemudian menjadikannya detik dengan cara jam=jam*3600 menit=menit*60 ,kemudian menjumlahkan total=jam+menit+detik
Deklarasi:
int jam,menit,detik,total
Deskripsi:
Baca(jam,menit,detik)
jam=jam*3600
menit=menit*60
detik=detik
total=jam+menit+detik
write(detik)
C++
Raptor:
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)

 C++

Raptor:




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
Algoritma
Membaca(uang) kemudian mencari pecahannya dengan cara
u100rb=uang/100000;
sisa=uang%100000;
 
 u50rb=sisa/50000;
 sisa=sisa%50000;
 
 u20rb=sisa/20000;
 sisa=sisa%20000;
 
 u10rb=sisa/10000;
 sisa=sisa%10000;
 
 u5rb=sisa/5000;
 sisa=sisa%5000;
   
  u1rb=sisa/1000;
  sisa=sisa%1000;
 
  u5ratus=sisa/500;
  sisa=sisa%500;
   
   u2ratus=sisa/200;
  sisa=sisa%200;
   
   u1ratus=sisa/100;
  sisa=sisa%100;
   
   u5puluhan=sisa/50;
   sisa=sisa%50;
   
    u25an=sisa/25;
    sisa=sisa%25;
   Kemudian mengoutputkannya sesuai urutannya
Deklarasi:
   int uang;
   int u100rb,u50rb,u20rb,u10rb,u5rb;
    int u1rb,u5ratus,u2ratus,u1ratus,u5puluhan,u25an;
Deskripsi:
Baca (uang)
Hitung (sesuai int)
write(sesuai INT)

C++


Raptor:
8. Buatlah analisis dan algoritma untuk menghitung luas sebuah plat CD.
    Diameter lingkaran luar = …. cm.
    Diameter lingkaran dalam = …. cm.

Algoritma:
membaca (d1,d2) kemudian menghitung luas lingkaran luar=3.14*(d1/2)*(d1/2) dan dalam=3.14*(d2/2)*(d2/2) kemudian menggurangkan luas luar dengan dalam (cd=luar-dalam)
Deklarasi:
float d1,d2,cd,luar,dalam
Deskripsi:
Baca(d1,d2)
luar=3.14*(d1/2)*(d1/2)
dalam=3.14*(d2/2)*(d2/2)
cd=luar-dalam
write(cd)

C++
Raptor
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.

  Algoritma:
Membaca (pem1,pen1,pem2,pen2) ,kemudian memprosesnya dengan cara 
pertambahan=(pem1/pen1)+(pem2/pen2)
pengurangan=(pem1/pen1)-(pem2/pen2)
perkalian=(pem1/pen1)*(pem2/pen2)
pembagian=(pem1/pen1)/(pem2/pen2)
kemudian di outputkan dengan memanggil tipe datanya
Deklarasi:
float pem1,pen1,pem2,pen2,pertambahan,perkalian,pengurangan,pembagian;
Deskripsi:
Baca(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)

C++
Raptor:



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:
Menerima input(bin1,bin2,bin3,bin4) kemudian menjadikan menggunakan rumus desimal=(bin1*2*2*2)+(bin2*2*2)+(bin3*2)+(bin4*1+(2*0)),kemudian mengoutputkannya
Deklarasi:
int bin1,bin2,bin3,bin4,desimal
Deskripsi:
Baca(bin1,bin2,bin3,bin4)
desimal=(bin1*2*2*2)+(bin2*2*2)+(bin3*2)+(bin4*1+(2*0))
write(desimal)

C++
Raptor:

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.
(confuse)



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.
Algoritma:
Membaca(tg1,bln1,th1,tg2,bln2,th2) kemudian mencari selisih hari kedua waktu tg=tg2-tg1,
bln=(bln2-bln1)*30,th=(th2-th1)*3600,kemudian menjumlahkannya total=tg+bln+th agar mendapatkan hasil jarak dari 2 waktu tersebut
Deklarasi:
int tg1,bln1,th1,tg2,bln2,th2,tg,bln,th
Deskripsi:
Baca(tg1,bln1,th1,tg2,bln2,th2)
 tg=tg2-tg1
bln=(bln2-bln1)*30
th=(th2-th1)*3600
total=tg+bln+th
write(total)

C++

Raptor:


Sekian postingan dari saya mohon maaf bila ada kesalahan dan kurang rapi dalam penulisan
Wassalamualaikum wr.wb





Tidak ada komentar:

Posting Komentar