[BAB 3] Latihan

Kasus 3.1 : Hitunglah jumlah dari 3 buah bulat!
Analisis : Untuk menjumlahkan 3 buah bilangan bulat, operator yang tepat adalah opertaor pnejumlahan (+).
Algoritma : 
Mencari jumlah 3 bilangan bulat
{menghitung jumlah 3 bilangan bulat, algoritma menerima masukan 3 buah bilangan bulat, menjumlahkan, lalu mencetak hasil penjumlahannya}
Deklerasi :
 a, b, c: integer {input}
jumlah : integer {output}
Deskripsi :
read (a,b,c)
jumlah <-a+b+c
write(jumlah)

C++


Flowchart:


Kasus 3.2 : Buat algoritma dan program untuk mencari hasil kali dari dua buah bilangan !
Algoritma : hasil kali
{mencari hasil kali dari dua buah bilangan bulat, algoritma menerima masukan nilai bilangan 1 dan bilangan2, lalu mengalikan kedua bilangan tersebut, dan mencetak hasil kalinya }
Deklarasi :
a,b : integer (input)
hasil : integer (output)
Deskripsi :
read (a,b)
hasil <- a*b
write(hasil)

C++



Flowchart:


Kasus 3.3 : Buat algoritma dan program untuk menghitung konversi dari m ke cm dan inchi !
Analaisis : Konversi satuan jarak di tentukan sebagai berikut :
                  1 meter = 100 cm
                  1 inch = 2.54cm
                  1 meter = 39.37 m
Algoritma 3.3 : Konversi jarak
{mengkonversi satuan jarak dari meter ke centimeter dan inch,masukkan m lalu konversi ke cm, dan konversi ke inch }
Deklarasi : 
-m : real (input)
-cm : real (output)
inch : real (output)
Deskripsi :
-read (m)
-cm <- m*100
-inch <- m*100/2.54
-write(cm)
-write(inch)

C++
Raptor:


Kasus 3.4 : carilah keliling dan luas lingkaran yang telah diketahui jari-jarinya

Analisis : untuk mencari keliling dan luas lingkaran dibutuhkan rumus :
 -keliling = 2*phi*r
-luas = phi*r^2
 dengan ketentuan phi= 3.14 dan r adalah jari-jari lingkaran

Algoritma :  Lingkaran
{mencari keliling dan luas lingkaran yang telah diketahui jari-jarinya }.
Deklarasi:
Konstanta : - phi = 3.14
                   - r : integer {input}
                   - keliling, luas : real (output)
Deskripsi :
 read (r)
keliing = 2*phi*r
luas=phi*r*r
write(keliling,luas)


C++ 

Raptor:

Kasus 3.5 : program pengkonversi suhu dari Celcius menjadi Reamur,Fahrenheit dan Kelvin
Analisis : Rumus konversi dari Celcius menjadi Reamur,Fahrenheit dan Kelvin adalah :
 -Reamur = 4/5.celcius
-Fahrenheit = 9/5.celcius+32
-Kelvin = celcius+273
 Algoritma 3.5 : 
Konversi suhu
{Membaca integer derajat Celcius(C), menghitung ekivalensi dalam derajat Reamur (R),
Fahrenheit(F), dan Kelvin (K) dan menampilkannya di layar}.
Deklarasi
C    : integer {derajat Celcius}
R    :real      {derajat Reamur}
F     :real {derajat fahrenheit}
K    :real {derajat Kelvin}
Deskripsi :
read (C)
R= 4/5*C 
F=9/5*C+32
K=C+273
write (R,F,K)
C++ : 
Raptor:


                           
Kasus 3.6 : Setiap bilangan bulat selalu  bisa ditulis dalam bentuk : m=q.n+r
dengan n < m,q adalah kousen dan r adalah residu(sisa). Buatlah algoritma untuk merepresentasikan m dan dalam bentuk m=q.n+r sebagai contoh:
integer m = 73 dan n=7 dapat ditulis sebagai 73=yaitu r=3.
Analisis 
Input : n dan m (n<m),
Kousen q dapat diperoleh dengan pembagian integer. Operator yang tepat untuk itu adalah div, sedangkan r dapat diperoleh dengan operasi modulo. output q dan r dalam bentuk m=q.n+r.
Algoritma Aljabar
{ membaca masukan nilai n dan m dengan n<m kemudian menuliskan outputnya berbentuk m= q.n+r }
Deklarasi
m,n :integer {input}
q,r: integer {output}
Deskripsi 
read (m,n)       (n<m)
q = m div n    {mendapatkan nilai q}
r = m mod n    {mendapatkan nilai r}
write (q,r)
C++
Raptor:
Kasus 3.7: Buatlah Algoritma menghitung luas segitiga
Analisis
Input: t(tinggi) dan a(alas)
Algoritma 3.7
Algoritma Menghitung_luas_segitiga
{membaca data real berupa panjang alas segitiga(a) dan tinggi segitiga(t) dan menghitung luasnya dengan panjang alas dan tinggi tertentu.Luas segitiga dihiting dengan rumus L = 1/2 at
Nilai L dicetak sebagai output ke piranti keluaran
Deklarasi
a: real {panjang alas segitiga,dalam satuan cm}
t: real{tinggi segitiga dalam satuan cm}
L: real{luas segitiga dalam satuan cm kuadrat}
Deskripsi
read(t)
read(a)
L<- (a*t)/2
write(L)
C++
Raptor:
Sekian Postingan saya hari ini silahkan juga kunjungi blog partner saya 
gemahariadi.blogspot.com
arfian-alpro.blogspot.com
Trimakasih Kepada teman teman juga yang membantu saya
Wassalamualaikum Wr.Wb

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:

Komentar

Postingan Populer