Sabtu, 09 Juli 2011

pointer matematika c++


Suatu variabel pointer hanya dapat dilakukan operasi aritmatika dengan nilai integer
saja. Operasi yang biasa dilakukan adalah operasi penambahan dan pengurangan.
Operasi penambahan dengan suatu nilai menunjukkan lokasi data berikutnya (index
selanjutnya) dalam memori. Begitu juga operasi pengurangan.
//Contoh9_3
#include <iostream.h>
#include <conio.h>
void main()
{ int nilai[3], *penunjuk;
clrscr();
nilai[0] = 125;
nilai[1] = 345;
nilai[2] = 750;
penunjuk = &nilai[0];
cout<<"Nilai "<<*penunjuk <<" ada di alamat memori " <<penunjuk<<"\n";
cout<<"Nilai "<<*(penunjuk+1) <<" ada di alamat memori " <<penunjuk+1<<"\n";
cout<<"Nilai "<<*(penunjuk+2) <<" ada di alamat memori " <<penunjuk+2<<"\n";
getch();
}

jika anda masih kurang paham anda dapat mengirimkan email atau dapat bertanya jika saya sedang online, melalui chat box yang sudah saya sediakan, terimakasih

pointet C++

Pointer (variabel penunjuk) adalah suatu variabel yang berisi alamat memori dari suatu
variabel lain. Alamat ini merupakan lokasi dari obyek lain (biasanya variabel lain) di dalam
memori. Contoh, jika sebuah variabel berisi alamat dari variabel lain, variabel pertama
dikatakan menunjuk ke variabel kedua
Operator Pointer ada dua, yaitu :
 Operator &
Operator & bersifat unary (hanya memerlukan satu operand saja).
Operator & menghasilkan alamat dari operandnya.
             Operator *
Operator * bersifat unary (hanya memerlukan satu operand saja).
Operator * menghasilkan nilai yang berada pada sebuah alamat.
Seperti halnya variabel yang lain, variabel pointer juga harus dideklarasikan terlebih dahulu sebelum digunakan.
Bentuk Umum :

Tipe_data *nama_pointer;


Contoh Program :

#include “IOSTREAM.h”
#include “conio.h”
int main()
{ int x, y; /* x dan y bertipe int */
int *px; /* px pointer yang menunjuk objek */
clrscr();
x = 87;
px = &x; /* px berisi alamat dari x */
y = *px; /* y berisi nilai yang ditunjuk px */
cout<<“Alamat x =”<<&x <<\n”;
cout<<“Isi px = \n”, px);
cout<<“Isi x = \n”, x);
cout<<“Nilai yang ditunjuk oleh px = \n”, *px);
cout<<“Nilai y = \n”, y);
getch();
}

jika anda masih kurang paham anda dapat mengirimkan email atau dapat bertanya jika saya sedang online, melalui chat box yang sudah saya sediakan, terimakasih

Jumat, 08 Juli 2011

Melakukan kombinasi data dengan array 1 dimensi C++


Ini adalah program untuk mengkombinasikan suatu data, yang dimana bisa berpasang pasangan setiap data, sebagai contoh:
Kita punya data a={a,b,c}, b={1,2}, jika kedua data kita kombinasikan maka hasilnya adalah:
{(a,1),(a,2),(b,1),(b,2),(c,1),(c,2)}
Nah dalam program ini juga berfungsi seperti itu:
Ini program dalam C++:

#include <cstdlib>
#include <iostream>

using namespace std;
class combinasi {
      private:
              int n1,n2;
              char a[100],b[100];
      public:
             void masukan();
             void proses();
            
};

void combinasi::masukan(){
     cout<<"jumlah data pertama : ";
     cin>>n1;
     cout<<"masukan data pertama : "<<endl;
     for(int i=0;i<n1;i++){
             cout<<"data ke -"<<i<<" : ";
             cin>>a[i];
             }
     cout<<"jumlah data kedua : ";
     cin>>n2;
     cout<<"masukan data kedua : "<<endl;
     for(int i=0;i<n1;i++){
             cout<<"data ke -"<<i<<" : ";
             cin>>b[i];
             }
            
}

void combinasi::proses(){
     cout<<"hasil combinasi data : "<<endl;
    
     for(int i=0;i<n1;i++){cout<<"{ ";
             for(int j=0;j<n2;j++){
                     cout<<"("<<a[i]<<","<<b[j]<<")";} cout<<"}";}
}


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


jika anda masih kurang paham anda dapat mengirimkan email atau dapat bertanya jika saya sedang online, melalui chat box yang sudah saya sediakan, terimakasih

Konfersi bilangan decimal ke biner C++


Bilangan biner biasanya digunakan dalam bidang study system digital, meskipun program ini cukup rumit smga berguna dimasa akan datang. Mungkin program ini dapat membantu dalam belajar konversi bilangan digital dan belajar dalam pemrograman C++
#include <cstdlib>
#include <iostream>

using namespace std;
class biner{
      private:
              int data[100],c,n;
             
      public:
             void masukan();
             void proses();
             void keluar();
};


void biner::masukan(){
     cout<<"masukan desimal :";
     cin>>n;
}


void biner::proses(){
     int i;
    
     i=0;c=0;
    while(n!=1){
                data[i]=n%2;
                n=n/2;i=i+1;c=c+1;
               
                }

}

void biner::keluar(){
     cout<<"hasil biner adalah : "<<1;
     for(int i=c-1;i>=0;i--){
             cout<<data[i];}
      
    
}    
    
int main(int argc, char *argv[])
{
    biner a;
    a.masukan();
    a.proses();
    a.keluar();
    cout<<endl;
    system("PAUSE");
    return EXIT_SUCCESS;
}

Jika dalam program ini masih ada yang kurang paham silahkan komentar atau bertanya melalui chat box yang saya sediakan terimaksih

shorting arrai 1 dimensi dengan cara buble short c++

Sorting adalah suatu proses pengurutan data yang sebelumnya disusun secara acak atau tidak teratur menjadi urut dan teratur menurut suatu aturan tertentu. Sorting dapat dibedakan menjadi dua jenis yaitu ascending dan descending. Ascending adalah pengurutan data dari kecil ke besar, sedangkan descending adalah pengurutan data dari besar ke kecil.
Dalam sorting ini membutuhkan array, shorting yang ini menggunakan array 1 dimensi dan menggunakan metode buble short. Proses ini adalah penukaran dimana jika nilai didepannya lebih besar maka ditukar dengan nilai sebelumnya, dan pengecekan ini akan di ulang sampai benar-benar betul dalam isi programnya
Ini program menggunakan C++nya :
#include <cstdlib>
#include <iostream>

using namespace std;
class urut{
      private:
              int data[100],data2[100],a,b,c,n;
      public:
             void masukan();
             void proses();
             void keluar();
};


void urut::masukan(){
     cout<<"banyak data :";
     cin>>n;
     for(int i=0;i<n;i++){
             cout<<"data ke - "<<i<<" : ";
             cin>>data[i];
             }
}


void urut::proses(){
    for(int i=0;i<n;i++){
     for(int i=0;i<n;i++){
             if(data[i]>data[i+1]){b=data[i];data[i]=data[i+1];data[i+1]=b;}
             }}

}

void urut::keluar(){
     cout<<"hasil sorting adalah : ";
      
     for(int i=0;i<n;i++){
             cout<<data[i];
             }    
}    
    
int main(int argc, char *argv[])
{
    urut a;
    a.masukan();
    a.proses();
    a.keluar();
   
    system("PAUSE");
    return EXIT_SUCCESS;
}

jika anda masih kurang paham anda dapat mengirimkan email atau dapat bertanya jika saya sedang online, melalui chat box yang sudah saya sediakan, terimakasih

pemilahan bilangan terbesar dengan array c++

Dalam pemilihan ini saya gunakan array biar  lebih mudah dalam menyimpan data yang kita masukan, dan kita dapan menyeleksi satu persatu setelah kita memasukan semua data. Dalam penyeleksian kita gunakan for untuk pembacaan data di dalam array, teruskita gunakan if, jika data lebih besat dari temp maka kita ganti temp tersebut dengan data yang lebih besar tersebut, dan proses pun berlanjut sampai sebanyak array yang kita masukan tadi
Sebagai contoh :
1
5
6
2
3
4
0
1
2
3
4
5
Sebelum kita masuk proses, sebaiknya kita masukan temp adalah 0, selanjutnya kita msuk proses dan seleksi data pertama, karena data pertama adalah 1 dan lebih besar dari temp, karena temp adalah 0, maka kita simpan data kedalam temp, dan lanjut ke proses ke 2, jika lebih besar dari satu maka disimpan dalm temp kembali.
Dan ini adalah programnya dalam C++:
#include <cstdlib>
#include <iostream>

using namespace std;
class pil{
      private:
              int a[100],b,c,d;
      public:
             void masukan();
             void proses();
             void output();
};


void pil::masukan(){
     cout<<"masukan banyak data : ";
     cin>>b;
     for(int i=0;i<b;i++){
             cout<<"data ke : "<<1+i<<" : ";
             cin>>a[i];
             }
}

void pil::proses(){
     c=0;
     for(int i=0;i<b;i++){
             if(a[i]>c){c=a[i];}
             
             }
}

void pil::output(){
     cout<<"bilangan terbesar adalah : "<<c<<endl;
     }
    
int main(int argc, char *argv[])
{
    pil a;
    a.masukan();
    a.proses();
    a.output();
    system("PAUSE");
    return EXIT_SUCCESS;
}

jika anda masih kurang paham anda dapat mengirimkan email atau dapat bertanya jika saya sedang online, melalui chat box yang sudah saya sediakan, terimakasih