Pages

Kamis, 14 Juli 2011

Array

Array merupakan tipe data terstruktur yang berguna untuk menyimpan sejumlah data yang bertipe sama. Bagian yang menyusun array disebut elemen array, yang masing-masing elemen dapat diakses tersendiri melalui indeks array.

contoh penggunaan Array :

Koversi dar array 1 ke array 2

Algoritma Array 1 ke 2 dimensi
{ Algoritma untuk mengkonversikan dari array 1 ke array 2}
Deklarasi
A[0...9][0...9]    :        integer array satu dimensi
B[0...9][0...9]    :        interger array dua dmensi
N                          :        interger
Kolom, baris    :        interger
Deskripsi
Read(n)
For i <-- 0 to n do
      Read(A[i])
End for
For i <-- 0 to n do
      Write(A[i])
End for
Read(kolom, baris)
Temp <-- 0
For i <-- 0 to baris do
For j <-- 0 to kolom do
B[i][j] <-- A[temp]
                   Temp <-- temp + 1
          End for
End for
For i <-- 0 to baris do
          For j <-- 0 to kolom do
                   Write(B[i][j])
          End for
End for

Program c++

#include <cstdlib>
#include <iostream>

using namespace std;
      class Array{
            public:
                   Array(){
                          cout<<"program untuk mengkonfersi array 1 menjadi 2";
                          cout<<endl<<endl;
                          }
                   void input();
                   void cetak();
                   void conver();
                   void cetak2();
            private:
                    int n;
                    int A[100];
                    int B[100][100];
                    int kolom, baris;
            };

            void Aray::input(){
                 cout<<"masukkan jumlah data : ";
                 cin>>n;
                
                 for(int i=0; i<n; i++){
                 cout<<"data ke - "<<i+1<<" : ";
                 cin>>A[i];
                             }
                 }
            void Array::cetak(){
                 cout<<"data array 1 dimensi diatas adalah : ";
                 for(int i=0; i<n; i++){
                 cout<<A[i]<<" ";
                 }
                 cout<<endl;
                 }
            void Array::conver(){
                 cout<<"masukkan jumlah baris : ";
                 cin>>baris;
                 cout<<"masukkan jumlah kolom : ";
                 cin>>kolom;
                 int temp;
                 temp=0;
                 for(int i=0; i<baris; i++){
                         for(int j=0; j<kolom; j++){
                                 B[i][j]=A[temp];
                                 temp++;
                                 }
                         }
                 }
            void Array::cetak2(){
                 cout<<"data array 2 dimensi diatas adalah : "<<endl;
                 for(int i=0; i<baris; i++){
                      cout<<endl;        
                         for(int j=0; j<kolom; j++){
                                 cout<<B[i][j];
                                 }
                         }
                 cout<<endl;
                 }
int main(int argc, char *argv[])
{
    Array a;
    a.input();
    a.cetak();
    a.conver();
    a.cetak2();
    system("PAUSE");
    return EXIT_SUCCESS;
}


 
Algoritma Array 2 ke 1 dimensi
{ Algoritma untuk mengkonversikan dari array 2 ke array 1}
Deklarasi
A[0...9][0...9]    :        integer array satu dimensi
B[0...9][0...9]    :        interger array dua dmensi
N                         :        interger
Kolom, baris    :        interger
Deskripsi
Read(kolom, baris)
For i <-- 0 to baris do
          For j <-- 0 to kolom do
                   read(B[i][j])
          End for
End for
For i <-- 0 to baris do
          For j <-- 0 to kolom do
                   Write(B[i][j])
          End for
End for

Temp<-- 0
For i <--0 to baris do
For j <-- 0 to kolom do
A[temp] <-- B[i][j]
                   Temp <-- temp + 1
          End for
End for
For i <-- 0 to n do                                         
      Write(A[i])
End for


program c++

#include <cstdlib>
#include <iostream>

using namespace std;
 class Array{
            public:
                   Array(){
                          cout<<"program untuk mengkonfersi array 2 menjadi 1";
                          cout<<endl<<endl;
                          }
                   void input();
                   void cetak();
                   void conver();
                   void cetak2();
            private:
                    int n;
                    int A[100];
                    int B[100][100];
                    int kolom, baris;
            };
           
           void Array::input(){
                 cout<<"sebelum diconversi ke array 1 dimensi"<<endl;
                 cout<<"masukkan jumlah baris : ";
             cin>>baris;
             cout<<"masukkan jumlah kolom : ";
             cin>>kolom;
             for(int i=0; i<baris; i++){
                     for(int j=0; j<kolom; j++){
                         cout<<"data ke - "<<"[ "<<i<<" , "<<j<<" ]"<<" : ";
                         cin>>B[i][j];
                             }
                     }
               }
              
          void Array :: cetak(){
            
             for(int i=0; i<baris; i++){
                     for(int j=0; j<kolom; j++){
                         cout<<B[i][j]<<" ";
                             }
                         cout<<endl;
                     }
            
               cout<<endl;
                 }
                
          void Array :: conver(){
            n = baris * kolom;
            int temp;
            temp=0;
            for(int i=0; i<baris; i++){
                    for(int j=0; j<kolom; j++ ){
                             A[temp]=B[i][j];
                                 temp++;
                         }
             } 
 }      

 void Array::cetak2(){
     
      cout<<"array 1 dimensinya adalah = ";
      for(int i = 0; i< n; i++){
              cout<<A[i]<<" ";
              }
      cout<<endl;
      }
int main(int argc, char *argv[])
{
    Array vhye;
    vhye.input();
    vhye.cetak();
    vhye.conver();
    vhye.cetak2();
   
    system("PAUSE");
    return EXIT_SUCCESS;
}