Gerakan Digital

Jumat, 08 April 2016

BAB 5 (Diktat)

Kasus-Kasus:
Program menggunakan Dev c++ dan Flow chart

Kasus 5.1:
Dev:
#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 n, c, first = 0, second = 1, next;
    cout <<"Masukan Nilai =";cin>>n;cout<<endl;
    cout <<"first =" <<n<< " fibonacci:- " <<endl;
    for (c=0;c < n ; c++ )
   {
      if (c<=1)
         next = c;
      else
      {
         next = first + second;
         first = second;
         second = next;
      }
         cout<<next<<endl;
   }
}
int main(int argc, char** argv) {
   int x;
   interatif(x);

  
    return 0;
}

Kasus 5.2:
#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;
}

Kasus 5.3:

#include <iostream>
#include <math.h>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char** argv) {
    int a,b,i,jumlah=0;
    cout<<"Menghitung Perkalian dengan Penjumlahan"<<endl;
    cout<<"Masukan Nilai pertama = ";cin>>a;
    cout<<"Masukan Nilai Kedua   = ";cin>>b;
    if (a>0 && a<0 || b>0){
    for(i=1;i<=b;i++)
        jumlah+=a;
        cout<<a<<"x"<<b<<"="<<jumlah;
    }else if(b<0 && a<0){
        for(i=0;i>a;i--)
        jumlah-=b;
        cout<<a<<"x"<<b<<"="<<jumlah;          
    }else{
        for(i=1;i<=a;i++)
        jumlah+=b;
        cout<<a<<"x"<<b<<"="<<jumlah;
    }
    return 0;
}

Kasus 5.4:

#include <iostream>
#include <math.h>
using namespace std;
int rekursif (int x){
    int a,b,i,jumlah=0;
    cout<<"Menghitung Perkalian dengan Penjumlahan"<<endl;
    cout<<"Masukan Nilai pertama = ";cin>>a;
    cout<<"Masukan Nilai Kedua   = ";cin>>b;
    if (a>0 && a<0 || b>0){
    for(i=1;i<=b;i++)
        jumlah+=a;
        cout<<a<<"x"<<b<<"="<<jumlah;
    }else if(b<0 && a<0){
        for(i=0;i>a;i--)
        jumlah-=b;
        cout<<a<<"x"<<b<<"="<<jumlah;          
    }else{
        for(i=1;i<=a;i++)
        jumlah+=b;
        cout<<a<<"x"<<b<<"="<<jumlah;
    }
}
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char** argv) {
    int x;
    rekursif(x);
    return 0;
}

Kasus 5.5:

#include <iostream>
#include <conio.h>
using namespace std;
int iteratif(int x){
for(int i=10; i>=0; i--){
cout<<i<<endl;;
}
}
int rekursif(int x){
    x=10;
    int i;
if(x>=0){
rekursif(x-1);
i--;
cout<<x;
}
}
int main(){
int x;
cout<<"\nIteratif : ";
iteratif(x);
cout<<"\nRekursif : ";
rekursif(x);
getch();
return 0;
}

Kasus 5.8:

#include <iostream>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char** argv) {
    int x,y,i;
    cout<<"Kasir Supermarket"<<endl;
    cout<<"Masukan Seberapa Banyak ";
    for (i=0;i<=x;i++)
    return 0;
}

Latihan:
1. Algoritma:


.{Bilangan (1-4 menggunakan dewonto) algoritma cetak angka}



Deklarasi



i         : integer



Deskripsi



For i 4 to 0 do



Write (i)



Endfor 

Dev:
#include <iostream>
using namespace std;
int iteratif (int suku, int a, int b, int c)  { a=0, b=1; a = 0; b = 1;
if (suku == 1) return b;
if (suku == 0) return a;
else{ for(int i=2; i<=suku; i++){
c = a + b;  a = b;  b = c;  }
return c;
 } }
int main()
 { int suku, a, b,c;
cout<<"Masukkan nilai suku ke-: ";
cin>>suku; 
cout<<"\nBilangan fibonaccinya untuk "<<suku<<" adalah ";
cout<< iteratif ( suku,  a,  b,  c);
return 0;  }
 
Flow:
 2. Algoritma:


.{menentukan int 1 sampai 7, menentukan hari yang sesuai }
Deklarasi
Hari_ke      :int;
Hari  :string;      
Deskripsi
          Read (hari_ke)
          Pilih(hari_ke)untuk
1 : hari |senin|;
2: hari |selasa|;
3: hari |Rabu|;
4: hari |Kamis|;
5: hari |Jumat|;
6: hari |Sabtu|;
7: hari |Minggu|;
End{pilih}
Write{hari}

Dev:

#include <stdio.h>
#include <conio.h>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;
int fibonacci(int n);
void main()
{
int bil,urfib,ulangi;
do
{
clrscr();
printf("Bilangan fibonacci urutan ke? ");
scanf("%d",&bil);
urfib=fibonacci(bil);
printf("\nUrutan fibonacci ke %d, adalah %d",bil,urfib);
printf("\n\nApakah anda ingin mengulangi?");
printf("\n1. YA");
printf("\n2. TIDAK (keluar) ");
scanf("%d",&ulangi);
}while(ulangi==1);
}
int fibonacci(int n)
{
int fibonac;
if(n==0)
{
return 0;
}
else if(n==1)
{
return 1;
}
else
fibonac=fibonacci(n-1)+fibonacci(n-2);
return (fibonac);

Flow:

2a. Dev:
#include <iostream>
#include <conio.h>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;
int fibo( int i )
{
if ( i ==0)
return 0;
else if ( i ==1)
return 1;
else
//fungsi rekursif
return fibo( i -1)+fibo( i-2);
}
int main()
{
int bil;
cout<< "\tFungsi Rekursif Bilangan Fibonacci" <<endl;
cout<< "\t=================================="<<endl;
cout<< "\nMasukkan bilangan : " ;
cin>>bil;
//pemanggilan fungsi
cout<< "Fibonacci(" <<bil<< ") = " <<fibo(bil);
_getche();
return 0;
}

2.b
Dev:
     #include <iostream>
    #include <string>

    using namespace std;
    int main()
    {
    int i;

    i =0;
    while (!(i>100))
    {
    if (i % 3==1 && i % 5==1)
    {
    }
    else
    {
    cout << i << endl; }
    i =i+15;
}
    return 0;
    }


 

3. Algoritma:
{Membaca i (bilangan 1 sampai dengan 100), kemudian menentukan bilangan yang habis dibagi 3 dan 5}

Deklarasi
i           : integer           {bilangan 1 sampai dengan 100}
Deskripsi
Read i
I ß 1 sampai dengan 100
for (int i=1; i<=100; i++)
if (i mod 3==0)
Write i
Else (i mod 5==0)
Write i
 

Dev:
#include <cstdlib>
#include <iostream>
using namespace std;
class bilangan{
friend ostream& operator<<(ostream&, bilangan&);
friend istream& operator>>(istream&, bilangan&);
public:
bilangan(){};
void proses(){
i =0;
while (!(i>100))
{ if (i % 3==1 && i % 5==1){
}
else
{
cout << i << endl; }
i =i+15;
}
}
private:
int i;
};
istream& operator>>(istream& in, bilangan& masukkan){
cout<<"Bilangan Yang Habis Dibagi 3 & 5 = "<<endl;
in >>masukkan.i;
return in;
}
ostream& operator<<(ostream& out, bilangan& keluaran){
cout<<"Bilangannya adalah "<<keluaran.i<<endl;
return out;
}
int main(int argc, char *argv[])
{
bilangan bil;
cin >> bil;
bil.proses();
cout<< bil;
cout<< endl;
system("PAUSE");
return 0;
}

Flow:

No 3 hal 120.
Dev:
#include <iostream>
#include <math.h>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char** argv) {
    int a,b,i,jumlah=0;
    cout<<"Menghitung Perkalian dengan Penjumlahan"<<endl;
    cout<<"Masukan Nilai pertama = ";cin>>a;
    cout<<"Masukan Nilai Kedua   = ";cin>>b;
    if (a>0 && a<0 || b>0){
    for(i=1;i<=b;i++)
        jumlah+=a;
        cout<<a<<"x"<<b<<"="<<jumlah;
    }else if(b<0 && a<0){
        for(i=0;i>a;i--)
        jumlah-=b;
        cout<<a<<"x"<<b<<"="<<jumlah;          
    }else{
        for(i=1;i<=a;i++)
        jumlah+=b;
        cout<<a<<"x"<<b<<"="<<jumlah;
    }
    return 0;
}

4.Dev:

#include <iostream>
#include<conio.h>
   using namespace std;
  
    class hitung
    {
    public:
           void input();
           int proses();
    private:
            int n;
            float rumus,jumlah,total;
            };
  
    void hitung::input(){
    cin>>n;
    cout<<endl;}
  
    int hitung::proses(){
    jumlah=0;
    total=0;
    rumus=-1;
    for(int j=1; j<=n; j++){
    rumus=(rumus*(-1));
    total=rumus/j;
    jumlah+=total;
    if(j==1)
    cout<<"("<<total<<")";
    if(j>1)
    cout<<"+("<<total<<")";
    }
  
    cout<<endl<<endl<<"hasil penjumlahan deret = "<<jumlah;
    return jumlah;
    }
  
    int main()
    {
    cout<<"menghitung jumlah dari rumus 1-(1/2)+(1/3)-(1/4)+...+(1/n)"<<endl<<endl;
    cout<<"nilai n : ";
    hitung deret;
    deret.input();
    deret.proses();
  
    getch();
    return 0;
    }

5. Algoritma:
{Menghitung nilai permutasi dan kombinasi n buah bola yang diambil r bola}

 Deklarasi
          hasil,n,k : integer
          proses[2],yesno[2]; character
. Deskripsi
          Read(n,k)
          if(n<k)
          then write("Nilai n tidak boleh lebih kecil dari k")
          else
          write"(Pilih P (permutasi) atau C (kombinasi))"
          if(proses[0]=='p' || proses[0]=='P')
          hasil = faktorial(n)/faktorial(n-k);
          then write("\n \n")
          then write(n,"P",k," : ",hasil)
         
          else if (proses[0]=='c' || proses[0]=='C')
          hasil = faktorial(n)/(faktorial(k) * faktorial(n-k));
          then write("\n \n")
          then write(n,"C",k," : ",hasil)
         
          else
          then write("\n\tAnda tidak memilih P atau C")
          then write("\n\tIngin mengulang? <y/n> ")
          Read(yesno[0])
          if (yesno[0]=='Y'||yesno[0]=='y')
          Y=1
          else if (yesno[0]=='N'||yesno[0]=='n'||yesno[0]!='Y'||yesno[0]!='y')
          Y=0
Dev:

#include <iostream>
#include <stdio.h>
#include <conio.h>
using namespace std;

long int fak (long int x);
main()
{
int n,r, Prts,pilihan,p;
char ulang;
do
{

cout<<"(c) Created 2010 by esa d’suryanta.Inc"<<endl<<endl;
cout<<"PERHITUNGAN KOMBINASI DAN PERMUTASI"<<endl;
cout<<"1. KOMBINASI"<<endl;
cout<<"2. PERMUTASI"<<endl;
cout<<"3. EXIT"<<endl;
cout<<endl<<endl;
cout<<"Pilihan Anda : ";cin>>pilihan;
switch (pilihan)
{
case 1 :
cout<<" Program Menghitung Kombinasi(nCr)";
cout<<endl;
cout<<" Masukkan Nilai n : "; cin>>n;
cout<<endl;
cout<<" Masukkan Nilai r : "; cin>>r;
cout<<endl;
if (n>r){
Prts = fak(n)/(fak(n-r)*fak (r));
cout<<endl;
printf(" Kombinasinya adalah: %d",Prts);
cout<<endl; }
else if (n<r){
cout<<"data tak valid";}
cout<<endl ;
break;
case 2 :
cout<<" Program Menghitung Permutasi(nPr)";
cout<<endl;
cout<<" Masukkan Nilai n : "; cin>>n;
cout<<endl;
cout<<" Masukkan Nilai r : "; cin>>r;
cout<<endl;
if (n>r){
Prts = fak (n)/fak(n-r);
cout<<endl;
printf(" Permutasinya adalah: %d",Prts);
cout<<endl; }
else if (n<r){
cout<<"data tak valid";}
cout<<endl ;
break;
case 3 :
cout<<"Exit"<<endl;
break;
default:
cout<<"Menu tidak tersedia"<<endl;
break;
}
cout<<"Kembali ke Menu Utama (y/n)?";cin>>ulang;
}
while (ulang == 'y');

getch();
}
long int fak (long int n)
{
int f;
if (n<=1)
{
f=1;
}
else
{
f=n*fak(n-1);
}
return (f);
}

6. Algoritma:
Deklarasi

          desimal, pembagi, bit : long
          pembagi=1073741824

 Deskripsi
          Read(desimal)
          while(pembagi>desimal)pembagi/=2

          do
          bit=desimal/pembagi
          then write(bit)
          desimal=desimal%pembagi
          pembagi/=2;

          while(pembagi>=1)
          write("\n")
Dev:

#include <iostream>
using namespace std;


int main(int argc, char** argv) {
   
    long desimal, pembagi, bit;
    pembagi=1073741824;
   
    cout<<"\t\t Program Konversi Bilangan Desimal ke Biner"<<endl<<endl;
    cout<<" Masukan bilangan  desimal : ";
    cin>>desimal;
   
    while(pembagi>desimal)pembagi/=2;
    do{
        bit=desimal/pembagi;
        cout<<bit;
        desimal=desimal%pembagi;
        pembagi/=2;
    }
    while(pembagi>=1);
    cout<<"\n";
    return 0;
}

No 7 hal 110.
Dev:
#include <iostream>
#include <string.h>
#include <conio.h>
#include <stdio.h>
using namespace std;
void masuk(char a[50]);
void keluar(char b[50]);
void identitas();

int main()
 {
  char kata[50];
      masuk(kata);
      keluar(kata);;
  getch();
 }

void masuk(char a[50]){
   cout<<"\nMasukkan Kata           : ";
  gets(a);
  cout<<endl;

      }

void keluar(char b[50]){
cout<<"\nHasil Pembalikkan kata  :";
  for(int a=strlen(b);a>=0;a--)
   {
    cout<<b[a]
;
   }
      cout<<endl;

      }

Tidak ada komentar:

Posting Komentar

Translate

Popular Posts

Postingan Populer

Recent Posts