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;
}

Selasa, 17 April 2012

Flowchart Array 1 Dimensi

Flowchart Menentukan Modus dari n Buah Data



Flowchart Menentukan nilai maksimum & minimum dari n bilangan



Flowchart Menentukan nilai maksimum & minimum dari n bilangan dari nilai deviasi standar


Flowchart Mencari Nilai Deviasi Standar dari N buah data


Flowchart Mencari Rata-Rata dari N BilBul

Flowchart,,,

C++ Deret dengan Iteratif


#include <iostream.h>
class hitung{
friend istream& operator>>(istream&, hitung&);
friend ostream& operator<<(ostream&, hitung&);
public:
int proses();
void input();
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<<”program sederhana menghitung jumlah dari rumus 1-(1/2)+(1/3)-(1/4)+…+(1/n)”<<endl<<endl;
cout<<”tentukan nilai n : “;
hitung deret;
deret.input();
deret.proses();
system (“Pause”);
return EXIT_SUCCESS;
}

Tentang Rekursif

Moshi-moshi...
ane mau share nii...
lngsung aja deh,,,,




Rekursif adalah sub program yang dapat memanggil dirinya sendiri selama kondisi pemanggilannya masih terpenuhi. Karena sifatnya ini, maka rekursif harus memiliki :
1. kondisi yang menyebabkan pemanggilan dirinya berhenti (disebut kondisi khusus atau special condition)
2. pemanggilan diri sub program (yaitu bila kondisi khusus tidak dipenuhi)
Secara umum bentuk dari sub program rekursif memiliki statemen kondisional ( if – else )  –>
if kondisi khusus tak dipenuhi
then panggil diri-sendiri dengan parameter yang sesuai
else lakukan instruksi yang akan dieksekusi bila kondisi khusus dipenuhi
Sub program rekursif umumnya dipakai untuk permasalahan yang memiliki langkah penyelesaian yang terpola atau langkah-langkah yang teratur.
Contoh perhitungan factorial dengan rekursif :
Fungsi factorial dari bilangan bulat positif n didefinisikan sebagai berikut:
n!= n.(n-1)! , jika n>1
n!= 1          , jika n=0, 1
contoh :
3!= 3. 2!
3!= 3. 2. 1!
3!= 3. 2. 1
3!= 6
jika diubah ke dalam c++ maka
int Faktorial(int n)
 {
     if ((n == 0) || (n == 1 ))
     return (1);
     else
     return (n * Faktorial(n-1));
}
 (n==0) nilai n dicek sama dengan 0 atau 1,
jika ya, maka fungsi mengembalikan nilai 1 (return(1)),
jika tidak, fungsi mengembalikan nilai n * Faktorial (n -1)
disinilah letak proses rekursif itu, perhatikan fungsi factorial ini memanggil dirinya sendiri tetapi dengan parameter (n-1)

Menghitung Nilai X Pangkat Y Dengan X Bilangan Real dan Y Bilangan Bulat Secara Rekursif

Flowchart,,,

Program C++ Menghitung Nilai X Pangkat Y Dengan X Bilangan Real dan Y Bilangan Bulat

Program dgn Dev C++,,,

#include <iostream>
#include <string>

using namespace std;

class pangkat{
      friend ostream& operator<<(ostream&, pangkat&);
      friend istream& operator>>(istream&, pangkat&);
      public:
pangkat(){};
             void hasil();
      private:
float x,p;
int y,i;
};
istream& operator>>(istream&in,pangkat&masuk){
cout<<"MasukkanAngka : ";
         in>>masuk.x;
cout<<"\nMasukkanPangkat : ";
         in>>masuk.y;
         return in;
         }
ostream& operator<<(ostream&out,pangkat&keluar){
cout<<keluar.x<<" pangkat "<<keluar.y<<" : "<<keluar.p;
cout<<endl;
         return out;
         }
void pangkat::hasil(){
p=1;
     for(i=1;i<=y;i++){
p=p*x;
cout<<p<<endl;
                       }
cout<<endl;
     }

int main()
{
pangkat y;
cin>>y;
y.hasil();
cout<<y;
system("pause");
return 0;
}

Flowchart Mencari Hasil Pangkat

Flowchart,,,

(flowchart dgn raptor)
Misalkan inputan x=2, y=3...
maka outputnya,,,

(output)

Senin, 16 April 2012

Menentukan bangun persegi atau persegi panjang

Program dengan Dev C++,,,,,

(program dgn Dev c++)

Maka output,,,


(output)

Flowchart Menentukan Bulan dengan Inputan Angka

Flowchart.nya,,,,,

(flowchart dgn raptor)


Jika inputan adlah 5,,,maka outputnya,,,
(output)



Pertemuan KeTujuh ALPRO


"Today is Thursday,, mean is Alpro Day"

hahaha,,, sudh tdk asing lg kann...^_^


yuuppp,,,kali ini pertemuan trakhir sbelum UTS,,yaitu prtemuan Ke-7...
karena kisi – kisi sudah dijelaskan minggu lalu, maka pertemuan ke-7 ini hanya mengulang tentang rekursif seperti minggu lalu dan membahas tentang array, lebih tepatnya melakukan diskusi dengan tim tentang array di kehidupan sehari – hari. Mengenai rekursif, alhamdulillah sudah mulai paham. Memang benar yg dikatakan bapak dosen, kebanyakan mahasiswa hanya bisa amati dan tiru, modifikasi ?? hanya beberapa yang mampu .. :D 
Semoga, uts besok bisa mengerjakan soal dengan maksimal, memanfaatkan bonus yg diberikan, belajar jangan lupa !!!! plus berdoa .. :D
skian dlu yaa minnasan,,
GANBATTE !!!

Mencetak Bilangan yang Habis Dibagi 5 & 7 antara 1 sampai 100 secara Iteratif

Flowchartnya niihh,,,,

(flowchart dgn raptor)


Outputnya,,,,

(output dgn raptor)

Kalo pake dev c++,,,

void Bagi::iteratifs(){
a =1;
while (!(a>100)){
if (a % 5==0 && a % 7==0){
cout << a << endl;
}else{}
a =a+1;
}
}

Output.nya,,,,

(output dgn dev c++)


Mencetak Bilangan yang Habis Dibagi 5 & 7 antara 1 sampai 100 secara Rekursif

Flowchartnya niihh,,,,

(flowchart dgn raptor)

(flowchart dgn raptor)

Output.nya adlah,,,,,

(output)
 

Kalo pake C++,,sintaks.nya adlah..,,,

int Bagi::rekursif (int a){
if (a>100){
}else
{
if (a % 5==0 && a % 7==0)
{
cout << a << endl; }
else
{}bagi(a+1);
}}
 
Output,,,,
(output dgn dev c++)

Program Membalik Kata dengan Iteratif

Flowchartnya niih gan,,,,

(flowchart dgn Raptor)

misal inputan kata.nya adlah "junior",,
maka outputnya sbb:
(output)

Program Raptor Memmbalik Kata dengan Rekursif

Flowchart.nya nii,,,......
(flowchart dgn Raptor)

(flowchart dgn Raptor)

misalkan yg d inputin itu kata,"YOSHIOKA",,,,
maka output.nya adlah.....

(output dgn Raptor)


 

Program Menghitung Deret dengan Iteratif


#include <iostream.h>
class hitung{
friend istream& operator>>(istream&, hitung&);
friend ostream& operator<<(ostream&, hitung&);
public:
int proses();
void input();
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<<”program sederhana menghitung jumlah dari rumus 1-(1/2)+(1/3)-(1/4)+…+(1/n)”<<endl<<endl;
cout<<”tentukan nilai n : “;
hitung deret;
deret.input();
deret.proses();
system (“Pause”);
return EXIT_SUCCESS;
}