Senin, 14 Mei 2012

C++ program Deret Fibbonacci dan Aritmatika

#include <cstdlib>
#include <iostream>

using namespace std;
class madis{
public:
           void pilih();
           void arit();
           void vibo();

           private:
            int q[100];
            };
           
            void madis::pilih(){
            int n;
            cout<<"\n1. Aritmatik !?\n2. Vibonacci !?\n";
            cout<<"\n\npilihan anda : ";
            cin>>n;
            if(n==1)arit();
            if(n==2)vibo();
            else cout<<"\n\n***selesai***\n\n";
            }
          
            void madis::arit() {
            //system("cls");
            int n,s,a,jml=0;
            cout<<"\nMasukkan nilai awal :";cin>>s;
            cout<<"masukkan beda :";cin>>a;
            cout<<"masukkan batas (berapa kali diulang):";cin>>n;
            cout<<"\nMaka didapat deret aritmatik\n=>";
           
            for (int i=0;i<n;i++){
            q[i]=s+i*a;
            cout<<q[i]<<" ";
            jml=jml+q[i];
             }
             cout<<"\nJumlah dari deret adalah "<<jml;
             cout<<"\n\n";pilih();
             }
             void madis :: vibo(){
              // system ("cls");
              int i,a,s,d=0,n;
              cout<<"\nMasukan nilai awal :";cin>>a;
              cout<<"masukan batas nilai :";cin>>n;
              s=a;
              i=a;
              cout<<"\nMaka akan didapat deretan :\n"<<i<<" ";
              for (int i=0;i<n-1;i++){
              q[i]=s+a;
              s=a;
              a=q[i];
              cout<<q[i]<<" ";
              d=d+q[i];
              }
              cout<<"\nJumlah dari deret adalah "<<d+i;
              cout<<"\n\n"; pilih();
                            }
              int main()
              {
             madis z;
             z.pilih();
            
                    
                                             
    system("PAUSE");
    return 0;
}

Rabu, 09 Mei 2012

C++ untuk program menggeser ke kanan elemen array


#include <cstdlib>
#include <iostream>
#define maks5

using namespace std;

class array{
 friend ostream& operator<<(ostream&, const array&);
 friend istream& operator>>(istream&, array&);
public:
 array();
 void cetak();
 void geser_kanan();

private:
 char a[5];
 int posisi;
};

array::array(){
 for(int i=0;i<5;i++)
 a[i]='0';
}

void array::cetak(){
 for(int i=0;i<5;i++)
 cout<<a[i]<<" ";
}

ostream& operator<<(ostream& out, const array& keluar){
 for(int i=0;i<5;i++)
 out<<keluar.a[i]<<" ";
 out<<endl;
 return out;
}

istream& operator>>(istream& in, array& masuk){
 int posisi;
 for (int posisi=1; posisi<=5; posisi++){
 cout<<"Masukkan Nilai Array Posisi Ke-"<<posisi<<"= ";
 //in>>masuk.posisi;
 if(posisi >= 0 && posisi <= 5){
 //cout<<"masukkan elemen arraynya :";
 in>>masuk.a[posisi-1];
 }
 }
 return in;
}

void array::geser_kanan(){
 int n=5;
 int temp=a[n-1];
 for(int i=n-1;i>=0;i--)
 a[i+1]=a[i];
 a[0]=temp;
}


int main(int argc, char *argv[])
{
 array X;
 cout<<"Program Array Geser Kanan\n\n";
 cout<<"Array Masih Kosong : "<<X;
 cin>>X;
 cout<<"Isi Array Saat Ini : "<<X;
 X.geser_kanan();
 cout<<"Isi Array Setelah Digeser Kanan : "<<X<<endl;
 cout<<endl;
 system("PAUSE");
 return EXIT_SUCCESS;
}

C++ untuk program menggerser ke kiri elemen array


#include <cstdlib>
#include <iostream>
#define maks5

using namespace std;

class array{
 friend ostream& operator<<(ostream&, const array&);
 friend istream& operator>>(istream&, array&);
public:
 array();
 void cetak();
 void geser_kiri();

private:
 char a[5];
 int posisi;
};

array::array(){
 for(int i=0;i<5;i++)
 a[i]='O';
}

void array::cetak(){
 for(int i=0;i<5;i++)
 cout<<a[i]<<" ";
}

ostream& operator<<(ostream& out, const array& keluar){
 for(int i=0;i<5;i++)
 out<<keluar.a[i]<<" ";
 out<<endl;
 return out;
}

istream& operator>>(istream& in, array& masuk){
 int posisi;
 for (int posisi=1; posisi<=5; posisi++){
 cout<<"masukkan nilai array posisi ke-"<<posisi<<"= ";
 //in>>masuk.posisi;
 if(posisi >= 0 && posisi <= 5){
 //cout<<"masukkan elemen arraynya :";
 in>>masuk.a[posisi-1];
 }
 }
 return in;
}


void array::geser_kiri(){
 int n=5;
 int temp=a[0];
 for(int i=0;i<n;i++)
 a[i]=a[i+1];
 a[n-1]=temp;
}


int main(int argc, char *argv[])
{
 array X;
 cout<<"Array masih kosong : "<<X;
 cin>>X;

 cout<<"Isi Array saat ini : "<<X;
 X.geser_kiri();
 cout<<"Isi Array setelah di geser kiri : "<<X;

 system("PAUSE");
 return EXIT_SUCCESS;
}