Minggu, 03 Juli 2011

Program C++ Menghitung Rata-rata Array 2 Dimensi

#include <iostream.h>
#include <conio.h>

class penjualan{
public:
friend ostream& operator<<(ostream&, penjualan&);
void cetak_nama();
void masuk_data();
void hitung();
penjualan();
private:
char a[50],b[50],c[50],d[50],e[50];
int data[100][100];
int total[50],jumlah[50];
double rata[50];
};

penjualan::penjualan(){
cout<<"Data Sales"<<endl;
}

void penjualan::cetak_nama(){
int k=1;
cout<<"Masukkan Nama "<<k<<"=";cin>>a;
cout<<"Masukkan Nama "<<k+1<<"=";cin>>b;
cout<<"Masukkan Nama "<<k+2<<"=";cin>>c;
cout<<"Masukkan Nama "<<k+3<<"=";cin>>d;
cout<<"Masukkan Nama "<<k+4<<"=";cin>>e;
}

void penjualan::masuk_data(){
for(int i=0; i<5; i++)
for(int j=0; j<5; j++){
cout<<"Masukkan data ke ["<<i+1<<"] ["<<j+1<<"] :";
cin>>data[i][j];

}
}

void penjualan::hitung(){
for(int i=0; i<5; i++){
total[i]=0;
jumlah[i]=0;
for(int j=0; j<5; j++){
total[i]=total[i]+data[i][j];
jumlah[i]=jumlah[i]+data[j][i];
}}
rata[0]=0;
jumlah[5]=0;
for(int i=0; i<5; i++){
rata[i]=(rata[i]+(jumlah[i]/5));
jumlah[5]=jumlah[5]+jumlah[i];
}
}

ostream& operator<<(ostream& out,penjualan& m){
out<<"No\tNama\tJan\tFeb\tMar\tApr\tMei\tTotal"<<endl;
out<<"1.";
out<<"\t";
for(int i=0; i<strlen(m.a); i++){
out<<m.a[i];
}
out<<"\t";
for(int i=0; i<5; i++){
out<<m.data[0][i]<<"\t";
}
out<<m.total[0];
out<<endl;
out<<"2.";
out<<"\t";
for(int i=0; i<strlen(m.b); i++){
out<<m.b[i];
}
out<<"\t";
for(int i=0; i<5; i++){
out<<m.data[1][i]<<"\t";
}
out<<m.total[1];
out<<endl;
out<<"3.";
out<<"\t";
for(int i=0; i<strlen(m.c); i++){
out<<m.c[i];
}
out<<"\t";
for(int i=0; i<5; i++){
out<<m.data[2][i]<<"\t";
}
out<<m.total[2];
out<<endl;
out<<"4.";
out<<"\t";
for(int i=0; i<strlen(m.d); i++){
out<<m.d[i];
}
out<<"\t";
for(int i=0; i<5; i++){
out<<m.data[3][i]<<"\t";
}
out<<m.total[3];
out<<endl;
out<<"5.";
out<<"\t";
for(int i=0; i<strlen(m.e); i++){
out<<m.e[i];
}
out<<"\t";
for(int i=0; i<5; i++){
out<<m.data[4][i]<<"\t";
}
out<<m.total[4];
out<<endl;
out<<"\ttotal\t";
for(int i=0; i<5; i++){
out<<m.jumlah[i]<<"\t";
}
out<<m.jumlah[5];
out<<endl;
out<<"\trata2\t";
for(int i=0; i<5; i++){
out<<m.rata[i]<<"\t";
}
out<<"Tot Penj 5 Bln";
out<<endl;
}
int main()
{
penjualan z;
z.cetak_nama();
z.masuk_data();
z.hitung();
cout<<z;

system("PAUSE");
return EXIT_SUCCESS;
}


Array dua dimensi yang menghitung jumlah data, menghitung rata-rata dan kemudian membuat tampilan seperti tabel menggunakan array dua dimensi.
Program di atas adalah program dua-dimensi array fungsi menghitung jumlah data dan rata-rata

Program C++ Pointer

Algoritma :
Deklarasi
data : integer
*berikut : pointer

Deklarasi
read(data)
node*baru
baru=new node
baru->data=5
baru->berikut=NULL
write (baru->data)
//untuk menyisipkan data selanjutnya

 programnya :

#include <iostream.h>
#include <conio.h>

class node{
public:
int data;
node*berikut;
};

void main()
{
//langkah 1
node*baru;
baru=new node;
baru->data=5;
baru->berikut=NULL;
cout << "isi data node baru adalah "<<baru->data<<endl;

//langkah 2
node*lain;
lain=new node;
lain->data=6;
lain->berikut=NULL;
cout << "isi data node lain adalah "<<lain->data<<endl;

//langkah 3
baru->berikut=lain;
cout << "isi node lain dicetak dari node baru adalah ";
cout << baru->berikut->data<<endl;

//langkah 4
node*kepala=baru;
cout << "mencetak node pertama dari pointer kepala ";
cout << kepala->data<<endl;
cout << "mencetak node kedua dari pointer kepala : ";
cout << kepala->berikut->data<<endl;

//lagkah 5: jalankan pointer
cout << "menggunakan perulangan untuk mencetak setiap data pada rantai\n";
node*jalan=kepala;
int i=1;
while(jalan!=NULL)
{
cout << "data ke"<<i<<">"<<jalan->data<<endl;
i++;
jalan=jalan->berikut;
}
//langkah 6: bukti bahwa pointer kepala tidak kehilangan data
cout << "mencetak node pertama dari pointer kepala : ";
cout << kepala->data<<endl;
cout << "mencetak node kedua dari pointer kepala : ";
cout << kepala->berikut->data<<endl;
}


Dengan menggunakan pointer  Dengan menggunakan pointer, variabel dapat dibuat atau dihapus selama eksekusi program, variabel (objek) secara dinamis.
implementasi dari pointer dalam program ini kita menyisipkan data baru di depan, belakang atau di tengah. .

Sabtu, 04 Juni 2011

Program Deret Fibonacci

Program Deret Fibonacci

#include <iostream.h>
#include <conio.h>

main()
{
int s0, s1, s2, fib, nsuku;

clrscr();
printf("Masukkan Suku ke: ");
scanf("%d", &nsuku);

if (nsuku<=1)
fib=nsuku;
else
{
s0=0;
s1=1;
s2=2;
while (s2<=nsuku)
{
fib=s0+s1;
s0=s1;
s1=fib;
s2++;
}
}
printf("Bilangan Fibonacci ke-%d adalah %d\n", nsuku, fib);
getch();
}