Sabtu, 09 April 2016

bab 6 (facktorial, kombinasu,persegi dan segitiga)





bab 6 (permutasi)

#include <iostream>
#include <cstdlib>
using namespace std;
class permutasi{
      private:
              int a,b,c,n,r,hasil;
      public:
             void masukan();
             void proses();
             void keluaran();
             };

void permutasi::masukan(){
     cout<<"Program Menghitung Permutasi"<<endl<<endl;
     cout<<"masukan n : ";
     cin>>n;
     cout<<"masukan r : ";
     cin>>r;
     if(n<r){cout<<"masukan salah n harus lebih besar dari r, silahkan coba kembali. "<<endl;
     masukan();}
     else{proses();}
     }
   
void permutasi::proses(){
     a=1;
     for(int i=1;i<=n;i++){
             a=a*i;}
     b=n-r;
     c=1;
     for(int i=1;i<=b;i++){
             c=c*i;
             }
     hasil=a/c;keluaran();
     }
void permutasi::keluaran(){
     cout<<"hasil permutasi adalah : "<<hasil<<endl;
     }

int main(int argc, char *argv[])
{
    permutasi a;
    a.masukan();
    system("PAUSE");
    return EXIT_SUCCESS;
}

diktat bab 6 (nilai tukar, nilai terbesar dan facktorial)





diktat bab 6 (hitungan benda)

#include <cstdlib>
#include <iostream>
#include <conio.h>
using namespace std;
void luas(int p,int l){
    int hasil;
    hasil=p*l;
    cout<<"Luas Persegi Panjang : "<<hasil<<endl;
}
void kel(int p,int l){
    int hasil;
    hasil=2*(p+l);
    cout<<"Keliling persegi panjang : "<<hasil<<endl;
}
void luas(int r){
    int hasil,phi;
    phi=3,14;
    hasil=phi*r*r;
    cout<<"Hasil luas lingkaran : "<<hasil<<endl;
}
void kel(int r){
    int hasil,phi;
    phi=3,14;
    hasil=2*phi*r;
    cout<<"Keliling lingkaran : "<<hasil<<endl;
}
int main(int argc, char *argv[])
{
    int a,b;
    cout<<"|========================|\n";
    cout<<"|  Mencari Luas Persegi  |\n";
    cout<<"|         Panjang        |\n";
    cout<<"|========================|\n";
    cout<<"Masukkan Panjang : ";cin>>a;
    cout<<"Masukkan Lebar \t: ";cin>>b;
    luas(a,b);
        int c,d;
    cout<<"|==========================|\n";
    cout<<"| Mencari Keliling Persegi |\n";
    cout<<"|         Panjang          |\n";
    cout<<"|==========================|\n";
    cout<<"Masukkan lebar persegi \t: ";cin>>c;
    cout<<"Masukkan panjang persegi :  ";cin>>d;
    kel(c,d);
        int r;
    cout<<"|=========================|\n";
    cout<<"| Program Menghitung Luas               |\n";
    cout<<"|        Lingkaran        |\n";
    cout<<"|=========================|\n";
    cout<<"Masukkan jari-jari : ";cin>>r;
    luas(r);
        int s;
    cout<<"|=============================|\n";
    cout<<"| Program Menghitung Keliling |\n";
    cout<<"|          Lingkaran          |\n";
    cout<<"|=============================|\n";
    cout<<"Masukkan jari-jari : ";cin>>s;
    kel(s);
    system("pause");
    return 0;
}

diktat bab 5 (interatif dan rekursif)

#include <iostream>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int interatif (int x){
    int c,n,first = 0, second = 1, next;
    cout <<"Masukan Nilai =";cin>>n;cout<<endl;

    for (c=0;c < n ; c++ )
   {
      if (c<=1)
         next = c;
      else
      {
         next = first + second;
         first = second;
         second = next;
      }
         cout<<next<<endl;
   }
} int rekursif (int x){
    int n,next,first=0,second=1;
    cout <<"\nMasukan Nilai =";cin>>n;cout<<endl;

    for (x=0;x<n;x++){
    if (x<=1)
        next=x;
    else{
        next = first + second;
        first=second;
        second=next;
    }
    cout<<next<<endl;
}
}

int main(int argc, char** argv) {
   int x;
   cout<<"Interatif ="<<interatif(x);cout<<endl;
   cout<<"Recurtif  ="<<rekursif (x);cout<<endl;

  
    return 0;
}

diktat bab 5 (campur)

1. iteratif dan rekursif
 2. bilangan desimal
3. pembalikan kata

bab 4 (algoritma latihan-nya)



1.      1.  Algoritma menentukan_bilangan_terbesar
            {mencari bilangan terbesar dari 3 bilangan yang diinput}
Deklarasi
            Integer a,b,c,terbesar;
Deskripsi
            Write(“Masukkan Bilangan Pertama : ”);
            Read(a);
            Write(“Masukkan Bilangan Kedua : ”);
            Read(b);
            Write(“Masukkan Bilangan Ketiga : ”);
            Read(c);
            if (a>b) then
                        if (a>c)
                                    then write(“Terbesar = ”,a);
                                    else wrie(“Terbesar = ”,c);
                        endif
            else if (b>c)
                        then write(“Terbesar = ”,b);
                        else write(“Terbesar = ”,c);
            endif
            endif

2.      Algoritma Menghitung akar-akar persamaan kuadrat

{Input: a,b,c, mencari akar-akar persamaan kuadrat dan mencari akar-akar persamaan kuadrat}

Deklarasi:
a,b,c : integer{Input}
disk : longint{output}
x1,x2 : real{output}
Deskripsi:
read(a,b,c)
disk<--b*b-4a*c
if (a=0) then write('Bukan persamaan kuadrat')
else if disk>0 then
  x1<---(-b)+sqrt(disk)/2*a
  x2<---(-b)-sqrt(disk)/2*a
else if disk=0 then
  x1<---(-b)/2*a
  x2<---x1
else write('Akar Imajiner')
end if
write(x1,x2)
3.      Algoritma konversi nilai
{dibaca nilai angka kemudian di konversi ke nilai huruf}
Deklarasi :
nilai   : integer
nilai_huruf : char
Deskripsi
read(nilai)
if (nilai>0) and (nilai <=20) then nilai_huruf <- E
else if (nilai > 21) and (nilai<=40)then nilai_huruf <-  D
else if (nilai > 41) and (nilai<=60)then nilai_huruf <-  C
else if (nilai > 61) and (nilai<=80)then nilai_huruf <-  B
else nilai_huruf <- A
end if
write(nilai_huruf)
4.      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)
5.      Algoritma menentukan hari dalam satu bulan
{ input bulan dan tahun kemudian output jumlah hari dalam satu bulan
Deklarasi
   AngkaBulan : integer;           { 1 . . 12 }
   Tahun      : integer;          { > 0 }
   JumlahHari : integer;
Deskripsi
begin
     write('Bulan (1-12) = ');
     write('Tahun = ');
     case AngkaBulan of
          1, 3, 5, 7, 8, 10, 12   : JumlahHari:=31;
           4, 6, 9, 11            : JumlahHari:=30;
           2                      : if Tahun mod 4 = 0 then
                                        JumlahHari:=29
                                    else
                                        JumlahHari:=28;
                                   {endif}
    end;
      
       writeln('Jumlah hari dalam bulan ',AngkaBulan,' adalah ',JumlahHari);

end.

6.      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 )
7.      Algoritma konversi nilai
{dibaca nilai angka kemudian di konversi ke nilai huruf}
Deklarasi :
nilai   : integer
nilai_huruf : char
Deskripsi
read(nilai)
if (nilai>0) and (nilai <=60) then nilai_huruf <- E
else if (nilai > 61) and (nilai<=70)then nilai_huruf <-  D
else if (nilai > 71) and (nilai<=80)then nilai_huruf <-  C
else if (nilai > 81) and (nilai<=90)then nilai_huruf <-  B
else nilai_huruf <- A
end if
write(nilai_huruf)
8.      Algoritma membaca nilai bilangan dengan Pangkat
{Diberikan masukan x dan y, dihitung nilai dari x pangkat y}
Deklarasi
x, y, i : integer { input }
pangkat : integer { output }
Deskripsi
read (x,y)
pangkat ß 1
for i ß 1 to y do
pangkat ß pangkat * x
enfor
write (pangkat)
9.      Algoritma menghitung Gaji Pegawai
Deklarasi
NIK, Nama : String
Jhk, tunj.jabatan, tunj.makan, tunj.transport, gaji_kotor, pajak, gaji_bersih : Real
Deskripsi
READ (NIK, Nama, gaji_pokok, tunj.jabatan, Jhk)
tunj.makan = 10000 * Jhk
tunj.transport = 5000 * Jhk
gaji_kotor = (gaji_pokok + tunj.jabatan + tunj.makan + tunj.transport)
pajak = 0.1 * gaji_kotor
gaji_bersih = (gaji_kotor – pajak)

write (tunj.makan, tunj.transport, gaji_kotor, pajak, gaji_bersih)
end

bab 4 (algoritma-Nya)



4.1
Algoritma Maksimum
{Menentukan nilai terbesar antara dua bilangan bulat}
Deklarasi:
                A,B : integer
Deskripsi:
                Read(A,B)
                If(A>B) then write (‘Bilangan terbesar adalah = ‘A)
                Else write (‘Bilangan terbesar adalah = ‘B)
Endif
4.2 a
Algoritma Nilai_Maksimum
{Membaca tiga buah bilangan bulat, menentukan bilangan terbesar diantara tiga buah bilangan tersebut dan menampilkannya kelayar}
Deklarasi:
                X,y,z : iteger
Deskripsi:
                Read(x,y,z)
                If(x>y) and (x>z) then write (‘Bilangan terbesar adalah = ‘x)
                Else if(y>z) and (y>z) then write (‘Bilangan terbesar adalah = ‘y)
                Else write (‘Bilangan tersebar adalah = ‘z)
                End if
4.2 b
Algoritma Nilai_Maksimum
{ Membaca tiga buah bilangan bulat, menentukan bilangan terbesar diantara tiga buah bilangan tersebut dan menampilkannya kelayar}
Deklarasi:
                X,y,z : iteger
                Maks : iteger
Deskripsi:
                Read(x,y,z)
                Maks ß x
                If (y > maks) then maks ß y end if
                If (z > maks) then maks (z end if
                Write (‘Bilangan terbesar adalah = ‘maks)
4.3
Algoritma Persamaan_Kuadrat
{Menghitung akar-akar persamaan kuadrat Ax^2+Bx+C=0}
Deklarasi:
                A,B,C : integer
                Disk : logint
                X1,x2 : real
Deskripsi:
                Read (A,B,C)
                Disk ß B*B-4*A*C
                If(A=0) then write (‘Bukan persamaan kuadrat’)
                Else if disk >0 then
                                X1 (-B+ sqrt (disk)/2*A
                                X1 (-B- sqrt (disk)/2*A
                Else if disk = 0 then
                                X1 (-B/2*A
                                X2(x1
                Else write (‘Akar Imajiner’)
End if
Write(x1,x2)

4.4
Algoritma Konversi_Nilai
{Mengkonversikan nilai angka menjadi nila huruf}
Deklarasi:
                Nilai : iteger
                Nilai_huruf : char
Deskripsi:
                Read (nilai)
                If(nilai>0) and (nilai <= 20 ) then nilai_huruf ß ‘E’
                Else if (nilai > 20) and (nilai <=40) then nilai_huruf ß ‘D’
                Else if (nilai > 40) and (nilai <=60) then nilai_huruf ß ‘C’
                Else if (nilai > 60) and (nilai <=80) then nilai_huruf ß ‘B’
                Else nilai_huruf ß ‘A’
                Endif
                Write (nilai_huruf)
4.5
Algoritma menentukan_hari
{Masukkan integer 1 sampai 7, akan ditentukan hari apa yang sesuai}
Deklarasi
                Hari_ke : iteger
                Hari : string
Deskripsi:
                Read(hari_ke);
                Case (hari_ke)of
                                1 : hari ß ‘Senin’;
                                2 : hari ß ‘Selasa’;
                                3 : hari ß ‘Rabu’;
                                4 : hari ß ‘Kamis’;
                                5 : hari ß ‘Jumat’;
                                6 : hari ß ‘Sabtu’;
Else hari ß’Minggu’;
                End case
                Write (hari)