Sunday 30 October 2011

Array Multi Dimensi Java, C# dan C++

Tidak jauh berbeda dengan array satu dimensi, Array 2 dimensi Juga menyimpan data yang bertipe sama Tapi mempunyai 2 index,,Biasanya digunakan Dalam matrik,pengolahan Citra Dll . . .

Untuk struktur pendeklarasiannya

pada Csharp
     tipedata [jumlahElemen1,jumlahElemen2] namaVariabel = new namaVariabel [jumlahElemen1,jumlahElemen2];
pada Java
     tipedata [jumlahElemen1][jumlahElemen2] namaVariabel = new namaVariabel [jumlahElemen1][jumlahElemen2];

kalo di C++
     tipedata namaVariabel [jumlahElemen1][jumlahElemen2];


ini contoh Code Programnya



"Csharp"
namespace Array2Dimensi
{
 class Program
 {
  public byte i1; //property
  public byte i2; //property
  public static void Main(string[] args)
  {
   Arr2 arre = new Arr2(); //deklarasi Class Arr2
   arre.Masuk(); //panggil method Masuk dr Class Arr2
   
   Console.WriteLine();
   Console.Write("Press any key to continue . . . ");
   Console.ReadKey(true);
  }
 }
 class Arr2
 {
  public void Masuk()
  {
   Program pro = new Program(); //deklarasi Class Program
   
   Console.Write("Jumlah Baris = ");
   pro.i1 = Convert.ToByte(Console.ReadLine()); //input menggunakan property Class Program
   Console.Write("Jumlah Kolom = ");
   pro.i2 = Convert.ToByte(Console.ReadLine()); //input menggunakan property Class Program
   
   byte [,] matrik = new byte[pro.i1,pro.i2]; //deklarasi Array & inisialisasi
   
   //mengisi Array
   for (byte i = 0; i<pro.i1; i++)
   {
    for (byte j = 0; j<pro.i2; j++)
    {
     Console.Write("Nilai matrik ke [{0},{1}] = ",i,j);
     matrik[i,j] = Convert.ToByte(Console.ReadLine());
    }
   }
   
   //menampilkan Array
   for (byte i = 0; i<pro.i1; i++)
   {
    for (byte j = 0; j<pro.i2; j++)
    {
     Console.WriteLine("isi matrik [{0},{1}] adalah = {2}",i,j,matrik[i,j]);
    }
   }
  }
 }
}  

Hasilnya



"Java"
package array2dimensi;

import java.util.Scanner;

public class Program 
{
 public byte i1; //property
 public byte i2; //property
 public static void main(String[] args) 
 {
  Arr2 arre = new Arr2(); //deklarasi Class Arr2
  arre.Masuk(); //panggil method Masuk dr Class Arr2
 }

}
class Arr2
{
 public void Masuk()
 {
  Scanner baca = new Scanner(System.in);
  
  Program pro = new Program(); //deklarasi Class Program
  
  System.out.print("jumlah baris = ");
  pro.i1 = baca.nextByte();    //input menggunakan property Class Program
  System.out.print("jumlah kolom = ");
  pro.i2 = baca.nextByte();    //input menggunakan property Class Program
  
  byte [][] matrik = new byte [pro.i1][pro.i2]; //deklarasi Array & inisialisasi
  
  //mengisi Array
  for (byte i = 0; i<pro.i1; i++)
  {
   for (byte j = 0; j<pro.i2; j++)
   {
    System.out.print("Nilai matrik ke ["+i+","+j+"] = ");
    matrik[i][j] = baca.nextByte();
   }
  }
  
  //menampilkan Array
  for (byte i = 0; i<pro.i1; i++)
  {
   for (byte j = 0; j<pro.i2; j++)
   {
    System.out.print("Isi matrik ke ["+i+","+j+"] adalah = "+matrik[i][j]+"\n");
   }
  }
 }
}
  

Hasilnya


"C++"

#include <cstdlib>
#include <iostream>

using namespace std;

class Arr2
{
      private : int i1,i2; //property
      public : void Masuk()
      {
          cout<<"Jumlah Baris = ";
          cin>>i1;
          cout<<"Jumlah Kolom = ";
          cin>>i2;
          cout<<endl;
          
          int matrik [i1][i2]; //deklarasi dan inisialisasi array
          
          //mengisi array
          for(int i = 0; i<i1; i++)
          {
                  for(int j = 0; j<i2; j++)
                  {
                          cout<<"Nilai matrik ke ["<<i<<","<<j<<"] = ";
                          cin>>matrik [i][j];
                  }
          }
          cout<<endl;
          //menampilkan isi matrik
          for(int i = 0; i<i1; i++)
          {
                  for(int j = 0; j<i2; j++)
                  {
                          cout<<"Isi matrik ke ["<<i<<","<<j<<"] adalah "<<matrik [i][j]<<endl;
                  }
          }
      }
};

int main(int argc, char *argv[])
{
   Arr2 arre;    //deklarasi Class Arr2
   arre.Masuk();   //panggil Method Masuk dari Class Arr2
    
    cout<<endl;
    cout<<endl;
    system("PAUSE");
    return EXIT_SUCCESS;
}
  
Hasilnya