Senin, 10 April 2017

EVALUASI DIRI MINGGU KE 6

EVALUASI DIRI MINGGU KE-6

     Pada kesempatan kali ini saya ingin menyampaikan evaluasi diri pada minggu ke 6 pada matakuliah Algoritma Pemrograman,pada minggu keenam ini kami mempelajari tentang Rekursif

1.Apa saja macam kegiatan belajar  
   Dosen mejelaskan apa itu Rekursif ,kemudian kami mengerjakan latihan dan juga kasus-kasus yang terdapat didalam diktat .

2.Berapa Menit total belajar selama 1 minggu  
    biasanya 1 kali pertemuan dalam 1 minggu sekitar 3 jam dan ditambah praktikum dan juga belajar kelompok sekitar 3 jam kemudian ditambah belajar secara individu dirumah masing-masing.

3.Rencana tindak lanjut  bila skenario belum sepenuhnya dijalani
 saya akan membahas bersama kelompok jika ada yang tidak dimengertiatau menanyakan kepada teman saya yang lebih paham mengenai materi yang kami pelajari.

WORKSHOP BAB 6 Latihan 1-10









 Latihan No 1,2,4
Dikerjakan oleh : amrullahahmad1600018013

Latihan N0 3.
        Hitunglah keliling persegi panjang.

  Analisis :
   Menerima masukkan P dan L, menghitung Luasnya dengan rumus 2*(P + L), kemudian menuliskan hasilny. 
 
Algoritma : {Menghitung Keliling Persegi Panjang}
Deklarasi :
                    P, L = Integer
                    keliling = Double
Deskripsi :
                   Read(P)
                   Read(L)
                   Keliling<-- 2*(P + L)
Write  : (Keliling)
RAPTOR :

                                                                 
C++  :
#include <iostream>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;
class persegi {
public :
persegi ();
void input();
void proses();

private :
int p;
int l;
int hasil;
};
persegi::persegi(){
cout<<"=================================\n";
cout<<"Menghitung Keliling Persegi Panjang\n";
cout<<"=================================\n";
}

void persegi::input (){
cout<<"Masukkan Panjang : ";
cin>>p;
cout<<"Masukkan Lebar : ";
cin>>l;

}

void persegi::proses(){
hasil = 2*(p+l);
cout<<"Keiling : "<<hasil;
}

int main(int argc, char** argv) {
persegi Prsg;
Prsg.input();
Prsg.proses();
return 0;
}
OUTPUT :
                                                                    
Latihan No 5.
         Hitunglah keliling lingkaran.

Analisis :
-Input : jari-jari / r
-proses : keliling 2*3.14*r
              Luas 3.14*r*r
-Output : Luas lingkaran
                  & keliling lingkaran

 Algoritma  : {Menghitung keliling lingkaran }
Deklarasi :
                  R : integer
                  Volume : float
Deskripsi :
                   Read (r) → untuk input
                   Keliling ← 2*(22/(float)7)*r
Write : {Menampilkan hasil keliling lingkaran}


RAPTOR  :
                              
                                         
C++  :
#include <iostream>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;
class lingkaran {
public :
lingkaran ();
void input();
void proses();

private :
int r;
float keliling;
};

lingkaran::lingkaran(){
cout<<"=================================\n";
cout<<"Menghitung Keliling Lingkaran\n";
cout<<"=================================\n";
}

void lingkaran::input (){
cout<<"Masukkan Jari-Jari : ";
cin>>r;
}

void lingkaran::proses(){
keliling=2*(22/(float)7)*r;
cout<<"Keliling : "<<keliling;
}
int main(int argc, char** argv) {
lingkaran Lkrn;
Lkrn.input();
Lkrn.proses();
return 0;
}
OUTPUT :
                                                                 
Latihan No 6.
                        Hitunglah Luas Segitiga.
 Analisis :
-Input : jari-jari / r
-proses : keliling sisi*sisi*sisi
              Luas 1/2*A*T
-Output : Luas segitiga
                  & keliling segitiga
 Algoritma  : { Menghitung Luas Segitiga }
Deklarasi :
A : integer
T : integer
Hasil : integer
Deskripsi :
Read (a) → untuk input
Read (t) → untuk input
Hasil ← a*t/2
Write  : {Menampilkan hasil Luas segitiga}

RAPTOR :
                                                                
C++  :
 #include <iostream>
using namespace std;
class segitiga {
public :
segitiga ();
void input();
void proses();

private :
int a;
int t;
int hasil;
};
segitiga::segitiga(){
cout<<"=================================\n";
cout<<"\n\nLuas Segitiga Siku-siku : \n"<<endl;
cout<<"=================================\n";
}
void segitiga::input (){
cout<<"Masukkan Alas : ";
cin>>a;
cout<<"Masukkan Tinggi : ";
cin>>t;
}
void segitiga::proses(){
hasil = (a*t)/2;
cout<<"Luas : "<<hasil;
}
main ()
{
 segitiga Sgtg;
Sgtg.input();
Sgtg.proses();
return 0;
}
OUTPUT :
                                                                 
Latihan No 8,9,10
Dikerjakan oleh : ardaris.blogspot.com

EVALUASI DIRI MINGGU KE 5

 Assalamualaikum Warrohmatullahi Wabbarokatuh !!

Hay Sahabat Blogger, kembali lagi di blog sederhana saya. Kali ini saya akan membuat artikel mengenai Evaluasi diri pada minggu ke 5.

“ Saya akan menjelaskan tentang apa saja evaluasi diri saya pada minggu ke 5 dalam Matkuliah Algoritma  Pemrograman.”

1. Apa saja macam kegiatan belajar kalian?
  Kegiatan belajar yang saya lakukan ialah. Masih membiasakan mengetik 10 jari dan target saya sudah terpenuhi akan tetapi saya ingin melampaui terget saya sebelumnya.di minggu ke 5 ini Saya juga belajar (Materi LOOPING), serta belajar juga cara analisis serta menyususn algoritmanya dengan baik dan benar.

2. Berapa menit total belajar dalam seminggu
   Total belajar saya dalam seminggu ini yaitu kurang lebih 820 menit Walaupun minggu ini belum juga di mulai mentoring yang telah di sepakati di awal dalam matkuliah {Algoritma Pemrograman}.

3.Rencana tindak lanjut bila skenario belum sepenuhnya dijalani 
     untuk minggu ini sekenario sudah sepenuhnya di jalani. Akan tetapi saya masih merasa kurang dalam memahami Analisis dan juga membuat algoritmanya. Untuk itu saya masih belajar untuk membuat Analisis dan Algoritma dengan baik dari contoh program” yang sudah di sediakan.

Cukup sekian Evaluasi Diri Saya Pada Minggu #5.

WORKSHOP 5 ALPRO Soal Latihan 1-7

LATIHAN 1-7

Latihan No 1-3
Dikerjakan oleh :amrullahahmad1600018014.blogspot.com

Latiahn No 4. 
 Hitunglah nilai dari :
 




 Analisis : menghitung operasi pecahan dengan menggunakan operasi penjumlahan.
 Algoritma : {mencari jumlah deret penjumlahan pecahan yang diinputkan ke piranti keluaran }
Deklarasi
n,p : integer
total,a,hasil,bil : float
Deskripsi
read (n)
bil <- 1
write (bil)
total <- 0
hasil <- 0
p <- 1
while (!(p>n))do
if (p % 2==0)then
hasil <- -1*(bil/p)
endif
if (a>n)then
read (a)
total <- total+hasil
p <- p+1
a <- a+1
read (total)
endwhile

RAPTOR :
                         
                                                                       
C++   :
#include <iostream>
#include <string>
using namespace std;
class deret{
private:
string raptor_prompt_variable_zzyz;
float total,a,hasil,bil;
int n,p;
public:
deret(){
a =2;
raptor_prompt_variable_zzyz =”Masukan nilai n : “;
cout << raptor_prompt_variable_zzyz << endl;
cin >> n;
bil =1;
cout << bil;
p =1;
total =0;
hasil =0;
}
void output();
};
void deret::output(){
while (!(p>n))
{
if (p % 2==0)
{
hasil =-1*(bil/p);
if (a>n)
{
}
else
{
cout << “+1/ “<<a;         }
}
else
{
hasil =bil/p;
if (a>n)
{
}
else
{
cout << “-1/”<<a;         }
}
total =total+hasil;
p =p+1;
a =a+1;
}
cout << “=”<<total << endl;
}
int main()
{
deret t;
t.output();
return 0;
}
 OUTPUT :
                                                                  
Latihan No.5
Buatlah algoritma dan program untuk menghitung nilai dari permutasi dan kombinasi n buah bola yang diambil r bola.
Petunjuk : Rumus permutasi dan kombinasi adalah sebagai berikut :

                       
Analisis  :
                 Mencari permutasi dan kombinasi jika belum diketahui  n bola dan yang akan diambil n buah bola.
  contoh :
   permutasi :  P =  5       =  5  = 5x4x3x2x1
                             (5-2)       3             3x2x1
                                                          = 20
   kombinasi : K =  5      =  5x4x3x2x1   = 20   =10
                              2(3)       2x1 (3x2x1)     2
Algoritma : {menghitung nilai dari permutasi dan kombinasi n bola yang diambil r bola}
Deklarasi
n,r : integer
i,a,hasil,faktorial : float
Deskripsi
faktorial <- 1
i <- 1
read (n,r,a)
while (!(i>n))do
faktorial <- faktorial*i
i <- i+1
if (a==1)then
hasil <- faktorial*(n)/faktorial*(n-r)
if (a==2)then
hasil <- faktorial*(n)/(faktorial*(r)+faktorial*(n-r))
write (hasil)
endif
endwhile

RAPTOR :
                                  

C++   :
#include <iostream>
#include <string>
using namespace std;
class Komb{
private:
string raptor_prompt_variable_zzyz;
int r,n;
float i,a,hasil,faktorial;
public:
Komb(){
faktorial =1;
i =1;
raptor_prompt_variable_zzyz =”Masukan nilai n : “;
cout << raptor_prompt_variable_zzyz << endl;
cin >> n;
raptor_prompt_variable_zzyz =”Masukan nilai r : “;
cout << raptor_prompt_variable_zzyz << endl;
cin >> r;
raptor_prompt_variable_zzyz =”Pilih : 1. Permutasi 2. Combinasi : “;
cout << raptor_prompt_variable_zzyz << endl;
cin >> a;
}
void output();
};
void Komb::output(){
while (!(i>n))
{
faktorial =faktorial*i;
i =i+1;
}
if (a==1)
{
hasil =faktorial*(n)/faktorial*(n-r);
cout << hasil << endl;   }
else
{
if (a==2)
{
hasil =faktorial*(n)/(faktorial*(r)+faktorial*(n-r));
cout <<“Hasil: ” <<hasil << endl;      }
else
{
cout << “Input yang anda masukan salah” << endl;      }
}
}
int main()
{
Komb o;
o.output();
return 0;
}
OUTPUT :
                                                        

SOAL LATIHAN NO 6-7
Dikerjakan oleh : ardaris.blogspot.com

WORKSHOP 5 ALPRO Soal Kasus 5.1-5.14

Kasus 5.1 sampai 5.5 dan 5.9 
Dikerjakan oleh : amrullahahmad1600018014.blogspot.com 

Kasus 5.6 : Carilah nilai dari n! (n faktorial) 

Analisis; mencari nilai faktorial dari bilangan yang diinputkan oleh pengguna denga cara menggunakan rumus factorial dengan memasukkan n terlebih dahulu. 

Algoritma: mencari _n_faktorial{mencari factorial dengan mengunakan rumus factorial dengan menginputkan n telebih dahulu lalu mengoutputkannya ke piranti output} 

 Deklarasi: I,n : integer (inputan) 
                 Factorial : longint (output) 
Deskripsi : Read(n) Factorial ß1 For iß1 to n do 
            Factorial ßfaktorial*i End for 
Write(factorial)
 Raptor : 

C++: :

Kasus 5.7
 Dengan menggunakan fungsi ln dan exp, buatlah fungsi untuk menghsilkan nilai x pangkat y. 

Analisis: menampilkan nilai x^y dengan sifat algoritma yang kita ketahui yaitu ln dan exp. Dengan menginputkan nilai x dan nilai y terlebih dahulu untuk di proses oleh computer. 

Algoritma: {menghitung nilai dari x pangkat y} 
Deklarasi: Read (x.y)
                 X, y : integer (inputan) 
              Hasil : integer (outputan) 
Deskripsi: Pangkat ß exp(y*ln(x)) 
Write    :  (hasil) 
Raptor :
 

 C++  :
Kasus 5.8
Menghitung nilai dari x pangkat y dengan x bilangan real yan y bilangan bulat. 

Analisis: menghitung nilai dari x pangkat y dengan x bilangan real dan y adalah bilangan bulat .dengan cara mengalikan x dengan y kali . 
 Algoritma: pangkat { memasukkan nilai x dan nilai y lalu menghitung y ada berapa untuk mengalikan x sebanyak y kali} 
Deklarasi: X,y,i : integer (inputan) 
             Pangkat : integer (outputan ) 
Deskripsi: Read (x,y) 
             Pangkat ß1 For iß 1 to y do Pangkat ßpangkat *x Enfor Write (pangkat) 
Raptor :
 

C++ :
 

Kasus 5.10
fungsi faktorial secara rekursif untuk mencari n!. 
Analisis :
  • Kasus penyetop (= nilai awal) n = 0 atau n = 1 yaitu bernilai konstan 1
  • Kasus rekursif : 
  • n * faktorial (n-1)
 RAPTOR :

Hasil gambar untuk raptor fungsi faktorial secara rekursif untuk mencari n

C++ :














Hasil gambar untuk raptor fungsi faktorial secara rekursif untuk mencari n

kasus 5.11 sampai 5.14
dikerjakan oleh : ardaris.blogspot,com