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

Jumat, 24 Maret 2017

EVALUASI DIRI MINGGU KE 4

Assalamualaikum Warrohmatullahi Wabbarokatuh ! Pada blog kali ini saya akan memposting mengenai Evaluasi diri di mata kuliah Algoritma Pemrograman pertemuan ke 4, Pada pertemuan ke 4 sesuai kontrak belajar kita melakukan tes atau uji kopetensi. Pada ujian pertama ALPRO jujur saja saya kurang puas dengan pelaksanaan dan prosedur yang ditetapkan terutama pada masalah waktu.Menurut saya waktu yang diberikan untuk ujian masih kurang karena memang kalo berbicara mengenai kodingan itu susah-susah gampang.belum lagi kita harus mengapload dan proses algoritma dan analisis harus difoto dan waktu tersebut termaksud dengan pengirimannya. Jadi hasilnya kurang memuaskan itu terbukti dengan banyak sekali yang tidak terkirim sesuai dengan waktu yang tetap.Untuk mengatasi hal itu saya harap pada ujian kopetensi selanjutnya waktunya dimaksimalkan, akan ujiannya berjalan dengan lancar. Mungkin hanya itu saja postingan mengenai Evaluasi Diri pada minggu Ke 4. Wassalamualaikum Warrohmatullahi Wabbarokatuh !

Rabu, 22 Maret 2017

WORKSHOP 4 ALPRO

Assalamualaikum Warrohmatullahi Wabbarokatuh.

        Hallo sahabat Blogger, kali ini saya akan memposting tugas workshop 4 Algoritma Pemrograman. Pada workshop kali ini ada tiga sub soal yang harus kami kerjakan yang pertama adalah mengerjakan soal Kasus 4.1 sampai Kasus  4.5,dan yang kedua mengerjakan Soal latihan 1 sampai 9, dan yang terakhir soal tugas 1 sampai 6. prosedur pengerjaannyaa masih sama seperti workshop-workshop yang sebelimnya yaitu mengerjakan secara kelompok dan soalnya dibagi,kemudian mengerjakan dengan RAPTOR dan C++.
            Baik langsung saja pada hasil pekerjaannya.
1. Soal Kasus.

Kasus 4.1.  
Tentukanlah bilangan terbesar antara dua bilangan bulat.
Analisis :
   Input : misalkan A dan B, keduanya integer
                               jika  A terbesar = (output)
                               Sebaliknya jika B terbesar = (output)
  Proses : bandingkan A dan B
Algoritma :(menentukan nilai terbesar antara dua bilangan bulat)
Deklarasi : A=Intejer
        B=Intejer
Deskripsi : read (A,B)
        if (A>B)
Write : (bilangan terbesar adalah=A)
     (bilangan terbesar adalah=B)        

Menggunakan Raptor.
 Menggunakan C++.
kasus 4.2 
Analisis :

Input : misalkan x, y dan z, semua integer.
Proses : kita harus membandingkan ketiga bilangan tersebut.
Output : bilangan terbesar.
Algoritma : (Menentukan bilangan terbesar antara tiga bilangan bulat)
Deklarasi :x,y,z =Intejer
Deskripsi : read (x,y,z,)
        if (x>y) and (x>z)
       else if (y>x) and (y>z)
write : (bilangan terbesar adalah=x)
     (bilangan terbesar adalah=y)
     (bilangan terbesar adalah=z)

Menggunakan Rapror.




 OUTPUT.
Menggunakan C++








OUTPUT.
 -Kasus 4.3 - 4.4 : Amrullahahmad1600018014.blogspot.com
 -Kasus 4.4 - 4.5 : Ardaris.blogspot.com

soal latihan tugas 1-9  
- latihan soal 1 - 4 :Ardaris.blogspot.com


4.membuat algoritma, flowchart dan program untuk mengecek apakah pemakai memasukan bilangan bulat atau bilangan real. 


  Algoritma_menentukan_bil_bulat/bil_real
{menentukan bilangan bulat atau real dari input yang di masukan}  
deklarasi
a    =float
b   = integer
bil  = char
deskripsi
 b=a
read(a)
if(a=b) then bil <-- 'adalah bil bulat'
else bil<-- 'adalah bi real'
endif
write(bil)ss

program:
· input RAPTOR:

                   -OUTPUT RAPTOR:
Program :
                  -input C++:
                          -Output C++:
  -Latihan soal 5 : Amrullahahmad1600018014.blogspot.com

6.membuat algoritma, flowchart dan program untuk mengecek apakah karakter yang dimasukkan itu merupakan huruf besar, huruf kecil atau digit (bilangan). Gunakan fungsi ORD(char) untuk menyatakan nomor urut dalam tabel ASCII.

     Algoritma : (mengecek karakter yang dimasukkan termasuk huruf kapital, huruf kecil atau digit.)

{input karakter kemudian di cek apakah huruf besar, kecil atau digit}
Deklarasi
karakter : string {input, output}
Deskripsi
Read(karakter)
if(karakter>=’A’ && karakter<=’Z’) ß Huruf kapital
else if(karakter>=’a’ && karakter<=’z’) ß huruf kecil
else(karakter>=’0’ && karakter<=’9’) ß digit
endif
write : (karakter )

program:
· input RAPTOR:
     -Output RAPTOR :


      -Input C++ :
     -Output C++ :





7.   Seorang dosen ingin mengkonversikan nilai angka hasil ujian mahasiswa menjadi nilai huruf dengan ketentuan :Nilai antara Nilai Huruf 
0-60:F
61-70:D 
71-80:C 
81-90:B 
91-100:A

Algoritma : (konversi nilai angka hasil ujian mahasiswa menjadi nilai huruf)
Deklarasi : Nilai = Integer
                   Nilai_huruf = char
Deskripsi : read (nilai)
                   if (nilai>0) (nilai<=60) then nilai_huruf=F
                   else if (nilai >60) and (nilai<=70) then nilai_huruf=D
                   else if (nilai>70) and (nilai<=80) then nilai_huruf=C
                   else if (nilai>80) and (nilai<=90) then nilai_huruf=B
                   else nilai huruf=A
                    end if
write (nilai_huruf)

programnya:
· input RAPTOR :
       -output RAPTOR :


    -input C++ :
        -Output C++ :

 -Latihan soal 6-9 : Amrullahahmad1600018014.blogspot.com



Latihan tugas 6 soal.

    -Latihan tugas 1-3 : Amirullahahmad1600018014.blogspot.com
    -Latihan tugas 3-5 : Ardaris.blogspot.com

4."Dibaca koefisien persamaan kuadart ax2 + bx + c = 0, kemudian menampilkan akar persamaan kuadratnya dan jenisnya".Oke mari kita selesaikan dengan Program Flowchart dan Program C++.
Algoritma :
· Masukkan koefisien pangkat 2, koefisien pangkat 1, dan koefisien pangkat 0
· Kemudian nanti akan diproses
· Maska hasil akhir nya akan keluar

Program 
           - RAPTOR :




          
          - C++ :
      


     

 6.Dibaca tiga bilangan sebagai panjang segmen garis. Tampilkan hasilnya apakah bisa dibentuk segitiga atau tidak.

   Program 
           -RAPTOR :

        - C++ :

#include<iostream>
using namespace std;

main(){
    cout<<"3 segmen garis yg dapat membentuk segitiga"<<endl<<endl;
    int a,b,c;
cout<<"masukan panjang segmen pertama : "; cin>>a;
cout<<"masukan panja
if(a-b<c or a+b<c)
{cout<<"dapat membentuk segitiga";
}
else {
cout<<"tidak dapat membentuk segitiga";   
}    
return 0;
}