Sejarah Internet

Sejarah internet

 

Internet berasal dari kata Interconnection Networking yang mempunyai arti hubungan komputer dengan berbagai tipe yang membentuk sistem jaringan yang mencakup seluruh dunia (jaringan komputer global) dengan melalui jalur telekomunikasi seperti telepon, radio link, satelit dan lainnya.

 

Sejarah Internet merupakan jaringan komputer yang dibentuk oleh Departemen Pertahanan Amerika Serikat di tahun 1969, melalui proyek ARPA yang disebut ARPANET (Advanced Research Project Agency Network), di mana mereka mendemonstrasikan bagaimana dengan hardware dan software komputer yang berbasis UNIX, kita bisa melakukan komunikasi dalam jarak yang tidak terhingga melalui saluran telepon. ARPANET adalah suatu badan penelitian yang dibentuk oleh DARPA, dan merupakan “grand-daddy of packet switching”. ARPANET merupakan awal dari internet. ARPANET menggunakan komunikasi 56Kbps tetapi karena perkembangan akhirnya tidak mampu mengatasi trafik jaringan yang berkembang tersebut. Proyek ARPANET merancang bentuk jaringan, kehandalan, seberapa besar informasi dapat dipindahkan, dan akhirnya semua standar yang mereka tentukan menjadi cikal bakal pembangunan protokol baru yang sekarang dikenal sebagai TCP/IP (Transmission Control Protocol/Internet Protocol).

Tujuan awal dibangunnya proyek itu adalah untuk keperluan militer. Pada saat itu Departemen Pertahanan Amerika Serikat (US Department of Defense) membuat sistem jaringan komputer yang tersebar dengan menghubungkan komputer di daerah-daerah vital untuk mengatasi masalah bila terjadi serangan nuklir dan untuk menghindari terjadinya informasi terpusat, yang apabila terjadi perang dapat mudah dihancurkan.

Pada mulanya ARPANET hanya menghubungkan 4 situs saja yaitu Stanford Research Institute, University of California, Santa Barbara, University of Utah, di mana mereka membentuk satu jaringan terpadu di tahun 1969, dan secara umum ARPANET diperkenalkan pada bulan Oktober 1972. Tidak lama kemudian proyek ini berkembang pesat di seluruh daerah, dan semua universitas di negara tersebut ingin bergabung, sehingga membuat ARPANET kesulitan untuk mengaturnya.

 

Sejarah Internet Oleh sebab itu ARPANET dipecah manjadi dua, yaitu “MILNET” untuk keperluan militer dan “ARPANET” baru yang lebih kecil untuk keperluan non-militer seperti, universitas-universitas. Gabungan kedua jaringan akhirnya dikenal dengan nama DARPA Internet, yang kemudian disederhanakan menjadi Internet.

1972 Sebuah kelompok kerja yang disebut dengan International Network Working Group (INWG) dibuat untuk meningkatkan teknologi jaringan komputer dan juga membuat standar-standar untuk jaringan komputer, termasuk di antaranya adalah Internet. Pembicara pertama dari organisasi ini adalah Vint Cerf, yang kemudian disebut sebagai “Bapak Internet

Untuk menyeragamkan alamat di jaringan komputer yang ada, maka pada tahun 1984 diperkenalkan sistem nama domain, yang kini kita kenal dengan DNS atau Domain Name System. Komputer yang tersambung dengan jaringan yang ada sudah melebihi 1000 komputer lebih. Pada 1987 jumlah komputer yang tersambung ke jaringan melonjak 10 kali lipat manjadi 10.000 lebih.

Tahun 1988, Jarko Oikarinen dari Finland menemukan dan sekaligus memperkenalkan IRC atau Internet Relay Chat. Setahun kemudian, jumlah komputer yang saling berhubungan kembali melonjak 10 kali lipat dalam setahun. Tak kurang dari 100.000 komputer kini membentuk sebuah jaringan. Tahun 1990 adalah tahun yang paling bersejarah, ketika Tim Berners Lee menemukan program editor dan browser yang bisa menjelajah antara satu komputer dengan komputer yang lainnya, yang membentuk jaringan itu. Program inilah yang disebut www, atau World Wide Web.

Tahun 1992, komputer yang saling tersambung membentuk jaringan sudah melampaui sejuta komputer, dan di tahun yang sama muncul istilah surfing the internet. Tahun 1994, situs internet telah tumbuh menjadi 3000 alamat halaman, dan untuk pertama kalinya virtual-shopping atau e-retail muncul di internet. Dunia langsung berubah. Di tahun yang sama Yahoo! didirikan, yang juga sekaligus kelahiran Netscape Navigator.

Sejarah internet Indonesia dimulai pada awal tahun 1990-an. Saat itu jaringan internet di Indonesia lebih dikenal sebagai paguyuban network, dimana semangat kerjasama, kekeluargaan & gotong royong sangat hangat dan terasa di antara para pelakunya. Agak berbeda dengan suasana Internet Indonesia pada perkembangannya kemudian yang terasa lebih komersial dan individual di sebagian aktivitasnya, terutama yang melibatkan perdagangan Internet. Sejak 1988, ada pengguna awal Internet di Indonesia yang memanfaatkan CIX (Compulink Information eXchange) salah satu dari penyedia layanan Internet pertama di Inggris dan Compuserve (AS) untuk mengakses internet. Berdasarkan catatan whois ARIN dan APNIC, protokol Internet (IP) pertama dari Indonesia, UI-NETLAB (192.41.206/24) didaftarkan oleh Universitas Indonesia pada 24 Juni 1988.

Dampak Negatif Internet

 Situs mesum, tidak sekedar hanya membuka situs mesum yang sangat bisa merusak moral generasi muda (bahkan tua). Pelaku yang tidak bertanggung jawab sangat bisa dan sangat mudah untuk sekaligus menjadi pelakunya, dengan mengunggah atau meng-upload foto atau video mesum melalui internet. Bahkan hal ini menjadi berita hangat yang biasa terdengar, “hei, ada video mesum baru ni” atau hal-hal semacam itu. Juga ketika beberapa waktu lalu, artis Indonesia papan atas yang tersandung kasus video mesum ini sampai memberikan dampak luas di kalangan masyarakat.  

Game online, permainan game memang bisa membuat hanyut para penggemarnya. Apalagi game online yang bisa berinteraksi dengan banyak orang dari seluruh belahan dunia. Sangat mengasikkan sekaligus membuat kecanduan, menjadi “lupa daratan tidak ingat lautan”, lupa waktu, lupa kesehatan, boros biaya, (terutama bagi pelajar) dan lebih jauhnya lagi, game online bisa menjadi sarana perjudian. 

Media sosial atau jejaring sosial seperti Facebook, Twitter, dan Friendster juga seperti game online. Bisa membuat kecanduan dan lupa, bahkan jejaring sosial Facebook sudah banyak menelan korban kejahatan dengan berbagai cara yang dilakukan pelakunya untuk menjerat korbannya. 

Penipuan lewat internet, ini juga yang paling banyak ditanyakan, marak terjadi dan banyak yang menjadi korban. Layanan online bisa menjadi sarana untuk pelaku tindak kejahatan apapun namanya, untuk menjerat sasaran penipuan.

Dan masih ada dampak negatif internet ini. Tetapi, ketika kita hanya berhenti di sini, berpikiran buruk dan negatif tentang internet, kita hanya akan tinggal diam dan tidak pernah beranjak dari tempat, tidak pernah “kemana-mana” dan tidak bisa mengambil manfaat internet dari segi positifnya. Berikut ini beberapa manfaat positif internet.

Dampak Positif Internet

Menambah wawasan dan pengetahuan dari berbagai bidang dari seluruh dunia. Bagi para pelajar juga sangat banyak manfaat yang bisa diambil, banyak informasi yang berkaitan dengan pelajaran yang bisa didapat di internet, dan tidak diperoleh di bangku sekolah karena keterbatasan waktu mengajar guru. Bukan sekedar prestasi di sekolah yang harus dikejar, hanya semata-mata mengejar nilai bagus di atas kertas, tanpa tahu harus bagaimana kedepannya. Dengan banyaknya wawasan yang didapat dari internet, akan membuka jalan pikiran yang lebih luas dan maju. 

Mendapatkan banyak ide baru yang segar dan mempunyai prospek yang bagus di masa depan. Melepaskan pola pikir yang terkukung dan terpaku. Melihat informasi kemajuan-kemajuan yang dicapai negara lain secara cepat, melihat kesuksesan orang lain, tips dan triknya, yang bisa menjadi pemacu semangat belajar dan berusaha. 

Sarana komunikasi, semakin canggihnya internet memungkinkan kita untuk saling berkomunikasi secara tak terbatas. Tidak terbatas ruang dan tempat, mungkin ini juga bisa dilakukan dengan handphone. Tentu saja, tetapi dengan jejaring sosial seperti Facebook di internet, memungkinkan kita untuk menemukan teman lama yang tidak pernah bertemu karena masalah tempat, menemukan teman-teman baru dari berbagai wilayah, bahkan menemukan informasi orang-orang kita ingin ketahui keberadaanya. Semua bisa dan mungkin dilakukan di jejaring sosial, dan tanpa harus beranjak tempat. 

Mencari uang di internet, sangat mungkin, bisa dan masuk akal. Sudah sangat banyak yang membuktikannya, bekerja online lewat internet bisa menjadi sumber penghasilan. Meskipun bekerja secara online sebagai internet marketing (misalnya) masih dipandang sebuah pekerjaan yang tidak umum oleh sebagian orang yang tidak paham. Bagaimana caranya, sangat panjang untuk dirinci secara detail, kita bisa menemukan banyak sekali jalan (secara benar) untuk mendapatkan penghasilan lewat internet. Dan untuk informasi mengenai cara mencari uang di internet bisa lewat pencarian google.

Sangat banyak manfaat internet yang bisa kita peroleh. Seperti juga sebuah pisau tajam, untuk apa? Tergantung kita untuk menggunakannya, selalu ada pilihan dari dua sisi yang berlawanan.  Dan ini juga berlaku hampir untuk semua hal di dunia. Semoga kita bisa mengambil yang terbaik dari kemajuan teknologi, sisi positif dari manfaat internet ini.

 Have Fun ^^

Packet Over Sonet (POS)

 PAPER JARINGAN KOMPUTER

 Protokol Komunikasi : Packet over SONET / SDH

 

 Nama Kelompok :

Lukman Hidayatulloh                                  (102410101068)

Mas Utomo Efendi                                           (102410101069)

Angga Ari Wijaya                                              (102410101070)

Risha Prasetyo                                                    (102410101076)

Rahmad Hidayat                                               (102410101078)

 

 Program Studi Sisitem Informasi

Universitas Jember

2011

 

PENDAHULUAN

 Seiring berkembangnya teknologi dibidang jaringan komunikasi dan informasi membawa kita menggunakan teknologi yang cukup untuk mengatasi peningkatan transfer data yang semakin padat dan kompleks. Beberapa teknologi paket transfer data yang ada terus berkembang untuk memenuhi keadaan saat ini.

Packet over SONET / SDH atau disingkat POS adalah protokol komunikasi untuk transmisi paket dalam bentuk Point to Point Protocol (PPP) over SDH atau SONET, yang keduanya protokol standar untuk mengkomunikasikan informasi digital menggunakan laser atau diode yang memancarkan cahaya (LED ) pada serat optik tingkat tinggi.

SONET/SDH menggunakan teknologi transfer data yang dinamakan Synchronous Transfer Mode (STM). Pada umumnya, SONET/SDH dapat diklasifikasikan menjadi beberapa kelas tergantung dari berapa jumlah Synchronous Transport Signal (STS) yang dipasang, semakin banyak STS yang dipasang maka semakin cepat data rate akan berjalan. Pada paper ini akan dibahas mengenai penjelasan mengenai SONET/SDH diantaranya, sejarah, cara kerja, frame yang dipakai oleh SONET/SDH, overhead dan pengaman, topologi jaringan ring SONET, serta contoh pemakaian SONET/SDH di Indonesia.

 Packet Over SONET

 Perkembangan Teknologi SONET

SONET dikembangkan di Amerika Serikat melalui komite ANSI T1X1.5 pada tahun 1985. Amerika serikat menginginkan data rate mendekati 50 Mbps, sedangkan Eropa menginginkan data rate mendekati 150 Mbps. Hal ini menghasilkan dua nama yang berbeda untuk nama yang sama yaitu SONET (Synchronous Optical Network) dan SDH (Synchronous Digital Hierarchy).

SONET hanya digunakan di US, Canada, dan Jepang. Sedangkan SDH digunakan di negara-negara sisanya. SDH dibuat beberapa tahun setelah SONET.

Jaringan Sonet

SONET adalah standar komunikasi digital yang baru untuk suatu sistem transmisi serat optik. Transport signal level-1 (STS-1) dengan frekuensi 51,840 Mbps dan multiplex SONET dibentuk dari sejumlah N kali sinyal dasar STS-1 sehingga lebih effisien dibandingkan hirarki yang lain. SONET juga dapat meningkatkan kapasitas bandwidth pada serat optik tanpa perlu melakukan penambahan kabel optik. Keandalan trafik pada SONET akan selalu terjaga pada topologi ring yang menggunakan wavelenght division multiplexing (WDM).

Jalur koneksi SONET-paket over-(atau paket-over-SDH) interface dapat berupa sebuah optik (yaitu serat optik) interface. Interface optik memungkinkan dua router untuk satu sama lain langsung terhubung dengan kabel serat (disebut dark fiber). Electrical interface, sementara ini, mungkin menjadi alternatif yang lebih murah, jika STM-1 atau OC-3 koneksi antara router- router harus multiplexed dengan SONET lain atau sambungan SDH oleh SONET collocated atau multiplexors SDH,  lapisan protokol datalink adalah HDLC dan protokol jaringannya berupa IP.

Jaringan SONET merupakan jaringan yang linear. Node dari SONET disebut Add Drop Multiplexers (ADM). Ada dua atau empat penghubung antara ADM yang satu dengan yang lainnya., dengan sepasang penghubung sebagai pelindung dan back-up, hal ini dapat dilihat di gambar 1.

Gambar 1. Node SONET

ADM adalah tempat di mana traffic dari data masuk dan keluar. Berikut tabel yang berisi tingkatan kecepatan dari SONET:

SONET/SDH Designations and bandwidths

SONET Optical Carrier Level

SONET Frame Format

SDH level and Frame Format

Payload bandwidth (kbit/s)

Line Rate (kbit/s)

OC-1 STS-1 STM-0

50,112

51,840

OC-3 STS-3 STM-1

150,336

155,520

OC-12 STS-12 STM-4

601,344

622,080

OC-24 STS-24

1,202,688

1,244,160

OC-48 STS-48 STM-16

2,405,376

2,488,320

OC-192 STS-192 STM-64

9,621,504

9,953,280

OC-768 STS-768 STM-256

38,486,016

39,813,120

Tabel 1. Bandwidth SONET/SDH

STM (Synchronous Transfer Mode)

Transfer data untuk kebutuhan voice dan video transfer tidak bisa disamakan dengan kebutuhan transfer data. Maka dari itu statitiscal multiplexing tidak dapat digunakan untuk kasus transfer voice dan video, hal ini dikarenakan adanya delay. TDM (Time Division Multiplexing) memanfaatkan adanya time slot, setiap jalur yang masuk dimultipleks secara urut berdasarkan urutan waktunya sebesar time slot.

Pada sistem digital time slot merepresentasikan 64 kbps channel. Untuk aplikasi yang membutuhkan bandwidth lebih dari 64 kbps, maka lebih dari satu time slot dapat digunakan. Kapasitas dari sistem transmisi ditentukan oleh jumlah pengguna dan ukuran dari time slot yang digunakan oleh setiap pengguna. Tipe transmisi ini seringkali disebut Synchronous Transfer Mode (STM).

Gambar 2. Multiplexing STM

Gambar diatas menunjukan STM multiplexing. Empat pengguna menjalankan berbagai aplikasi, dan keempat pengguna tersebut terhubung ke satu STM multiplexer, karena setiap time slot dari setiap user dikirimkan secara urut dan tetap dikirimkan walaupun tidak terisi, maka jika sebuah time slot beroperasi pada bandwidth 64 kbps maka output harus memiliki bandwidth minimum sebesar 256 kbps. Ciri utama dari sistem ini adalah waktu menunjukan alamat penerima, karena time slot dikirimkan secara urut.

Pada gambar diatas terdapat empat pengguna, pengguna pertama V yaitu voice connection, pengguna kedua P1 yaitu data connection, pengguna ke tiga kosong, dan pengguna ke-empat P2 data connection. Apabila STM multiplexer mengambil satu time slot setiap 125 µs maka output membutuhkan bandwidth yang cukup untuk membawa empat time slot setiap 125 µs walaupun ada time slot yang kosong.

Sistem multiplexing seperti ini hanya digunakan pada situasi dimana transfer data membutuhkan timing yang tepat seperti voice dan circuit emulation services. Pada situasi seperti ini kedua alat pengguna harus mengirim dan menerima data pada interval waktu yang konsatan, sehingga kedua alat menggunakan clock rate yang hampir sama.

Topologi Jaringan SONET

Pada umunya SONET menggunakan topologi ring. Ring SONET lebih dikenal sebagai self healing rings. Ring SONET menggunakan dua atau lebih jalur transmisi antar node, dan dan node dari SONET biasanya berupa Digital Cross-Connects (DCS) atau Add/Drop Multiplexers (ADM). Berikut tipe-tipe ring SONET:

• Two Fiber Unidirectional

Gambar 3. Two Fiber Unidirectional

 

Two Fiber Undirectional merupakan topologi ring SONET yang paling mudah diimplementasikan. Semua data dilewatkan jalur working ring, sedangkan standby ring yang digunnakan sebagai pengaman menunggu. Jika ada kegagalan pada jalur working ring maka kedua node yang aktif segera pindah ke jalur standby ring.

• Two Fiber Bidirectional

Gambar 4. Two Fiber Biidirectional

 

Pada topologi ini traffic data berjalan melalui kedua jalur, tetapi setiap jalur dibagi menjadi dua yaitu setengah untuk jalur data dan setengah untuk proteksi. Hal ini mengakibatkan kapasitas transfer data pada setiap jalur menjadi setengah. Jalur proteksi digunakan sebagai jalur alternatif apabila terjadi kegagalan pada jalur utama.

 

Data Over SONET

Peningkatan data traffic membutuhkan teknologi untuk menyalurkan Ethernet atau IP ke Physical Layer. Data Over SONET juga dapat disebut Ethernet over SONET (EoS) dan Paket over SONET (POS). Untuk PoS ada dua langkah untuk enkapsulasi:

  1. Pertama, IP Packets dienkapsulasi dengan sebuah Point-to-Point Protocol (PPP).
  2. Kedua, enkapsulasi ke frame yang mirip High-Data Layer Control.
    Frame ethernet dipetakan ke dalam frame yang dipetakan secara GFP kemudian dipetakan melalui rangkaian virtual ke dalam frame-frame SONET, hal ini dapat dilihat di gambar 10.

Gambar 6. Data Over SONET

 

Keuntungan-keuntungan dari SONET:

  1. 1.      High transmission rates
    Transmissin rate hingga 40 Gb/s dapat dicapai dengan teknologi SONET modern.
  2. 2.      Simplified add and drop function
    Channel dengan bit rate yang rendah dapat diekstrak lalu dimasukkan ke bit-streams yang bekecepatan tinggi di SONET tanpa perlu tambahan multiplexer dan demultiplexer.
  3. 3.      High availbility and capacity matching
    Dengan SONET network providers dapat dengan cepat mengontrol network para customer sesuai dengan keinginan customer. Network provider menggunakan network elements yang terstandardisasi.yang dapat dikontrol dari sentral menggunakan Telecommunication Management Network (TMN) system.
  4. 4.      Relibility
    Jaringan SONET modern dibuat dengan automatic back-up circuit dan mekanisme perbaikan yang berguna untuk mengatasi kegagalan sistem dan untuk memonitor sistem. Sehingga tidak ada kegagalan dari sebuah netrwork element link yang mengakibatkan seluruh network gagal.
  5. 5.      Future-proff platform for new services
    SONET dapat terhubung dengan berbagai platform dengan area yang luas seperti POTS, ISDN, mobile radio, dan data communications (LAN, WAN, dan lain-lainnya). SONET juga dapat mengatasi broadcasting video dan audio melalui ATM.

SONET/SDH Di Indonesia

SONET sudah digunakan pada berbagai macam bidang di Indonesia, sebagai contohnya Telkomsel telah menggunakan teknologi STM-1 untuk meningkatkan kapasitas jaringan Jawa-Makassar-Ambon-Papua dengan menggunakan transmisi Satelit IDR (Intermediate Data Rate) mengingat tidak adanya link transmisi Fiber Optic dan Terrestrial.

Program peningkatan tersebut dilakukan pada Juli 2008 hingga April 2009. Satu STM-1 setara dengan 63 E1 atau 155 Mbps sedangkan Telkomsel menambahkan STM-1 yang berjumlah 6 buah sehingga total peningkatan kapasitas yang dilakukan adalah setara dengan 378 E1 atau 980 Mbps.

Contoh yang lainnya adalah, Nokia Siemens Network (NSN) yang menawarkan sebuah solusi Dense Wavelength Division Multiplex (DWDM). Jaringan DWDM memberikan bandwidth optik yang lebih besar daripada jaringan serat optik di masa lalu. Serat fiber dibagi dalam kanal-kanal panjang gelombang, yang masing-masing membawa aliran data sendiri-sendiri. Teknologi DWDM dapat diterapkan pada berbagai area jaringan telekomunikasi contohnya LAN, Ethernet, dan SONET/SDH.

Tidak terlepas dari contoh-contoh diatas biasanya sebuah internet service provider biasanya menggunakan teknologi SONET/SDH pada jaringan transmisi data mereka untuk memperkuat jaringannya sehingga pelanggannya tetap dapat menikmati layanan yang terbaik. Hal ini seperti yang dilakukan oleh Telkomsel contoh di atas. Selain Telkomsel, ada provider lain yang menyediakan layanan Ethernet over SONET/SDH yaitu PT Kejora Gemilang Internusa.

Teknologi SONET/SDH yang berbasis pada fiber optik sangat besar peranannya dalam sebuah jaringan. Teknologi SONET/SDH dapat diubah menjadi teknologi DSLAM atau ADSL ataupun Ethernet sehingga teknologi SONET/SDH membuat sebuah jaringan menjadi sangat efisien dan fleksibel. Pengubahan tersebut dapat dilakukan dengan menggunakan alat yang dapat mensinkronkan frame dan informasi antara SONET dan ADSL. Dan keuntungan yang lain tentu saja dengan menggunakan SONET/SDH maka bandwidth yang dapat dipakai menjadi meningkat dan jaringan menjadi lebih stabil dan kuat.

Untuk pengguna, SONET/SDH lebih banyak dipakai oleh internet service provider dibandingkan oleh pelanggan. Hal ini dikarenakan bandwidth yang dibutuhkan pelanggan masih belum setinggi bandwidth minimum dari SONET/SDH. Maka dari itu teknologi SONET/SDH hanya dimanfaatkan oleh internet service provider yang membutuhkan bandwidth besar seperti Telkomsel.

KESIMPULAN

 

SONET/SDH memiliki banyak keunggulan, antara lain dengan topologi ring yang dimilikinya SONET/SDH memiliki tingkat keamanan yang cukup bagus, selain itu SONET/SDH juga masih dapat dikembangkan, hal ini dapat dilihat dari adanya overhead yang belum terpakai. Namun dalam penggunaanya di Indonesia, SONET/SDH masih jarang digunakkan untuk end user karena bandwidth yang dibutuhkan oleh pelanggan pada umumnya masih belum sebesar bandwidth minimum SONET/SDH. Dan diharapkan dengan berkembangnya jaman, SONET dapat berkembang dan dapat memenuhi kebutuhan.

 

Daftar Pustaka :

______, Packet over SONET/SDH, [online], (http://en.wikipedia.org/wiki/Packet_over_SONET/SDH, 13 september 2011)

 Novira Nadira, 2010,Network technologies typically used in IP-backbone networks”, hal.2-3

 _____, Packet Over Sonet (POS), [online], (http://blog.networking-scouts.com/packet-over-sonet-pos, 13 September 2011)

Method di Java

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package nilaiArrayPerBaris;

/**
*
* @author Angga
*/
public class nilaiArrayPerBaris {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
int array1[][] = {{1,2,3},{4,5,6}};
int array2[][] = {{1,2},{3},{4,5,6}};
System.out.println(“nilai array1 per baris :”);
cetakArray(array1); //displays array1 by row
System.out.println(“\nnilai array2 per baris :”);
cetakArray(array2); //displays array2 by row
} //end main

public static void cetakArray(int array[][] ){
//loop through array’s rows
for (int row = 0; row < array.length; row++){
//loop through columns of current row
for ( int column = 0; column < array[ row ].length; column++)
System.out.printf(“%2s” , array [ row ][ column ]);
System.out.println(); //start new line of output
}
}

}

Stack dengan Method di Java

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package thestack;
import java.util.Scanner;
/**
*
* @author unej
*/
public class thisIsStack {
static Scanner input=new Scanner(System.in);
static int top=-1;
static Object[] dataStack=new Object[6];

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here

push(36);
push(“test”);
push(“coba”);
push(“test lagi”);
peek();
push(“lho he ditest mane”);
push(“capek ah. . “);
push(“aduh pengen test lagi”);
push(false);

System.out.println(“Data diPOP : “+pop());
//         System.out.println(“Data diPOP : “+pop());
//         System.out.println(“Data diPOP : “+pop());
//         System.out.println(“Data diPOP : “+pop());
//         System.out.println(“Data diPOP : “+pop());
//         System.out.println(“Data diPOP : “+pop());
//         System.out.println(“Data diPOP : “+pop());
//         System.out.println(“Data diPOP : “+pop());
int test =dataStack.length-1;
System.out.println(“panjang : “+test);
System.out.println(“Data diPEEK : “+peek());

}
///////////////////////////////////////////////////////////
public static void push(Object data){
if(top < dataStack.length-1)
dataStack[++top]=data;
else
System.out.println(“Data Sudah Penuh”);
}
///////////////////////////////////////////////////////////

public static Object peek(){
if(top>-1)
return dataStack[top];
else
return “Item Sudah Habis”;
}

///////////////////////////////////////////////////////////

public static Object pop(){
Object sementara;
if(top>-1)
sementara=dataStack[top–];
else
sementara=”Data Habis”;

return sementara;

}
///////////////////////////////////////////////////////////

public static void clear(){
top=-1;
}
}

Queue di Java

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package thequeue;

/**
*
* @author ANGGA
*/
public class thisIsQueue {

static Object[] Queue=new Object[3];
static int front=0;
static int rear=-1;
static int item=0;

// push
public static void push(Object data){
if(rear<Queue.length-1){
Queue[++rear]=data;
item++;
}
else
System.out.println(“*Queue Penuh”);
}

// peekFront
public static Object peekFront(){
if(front==Queue.length){
front–;
Queue[front]=null;
}
return Queue[front];
}

//peekRear
public static Object peekRear(){
if(front==Queue.length){
Queue=new Object[3];
}
return Queue[rear];
}

// pop
public static Object pop(){
Object pop=0;
if(front<=Queue.length-1){
pop=Queue[front++];
item–;
}
else
System.out.println(“-Queue Sudah Kosong”);
return pop;
}

// cetak
public static void cetak(){
System.out.print(“[ “);
for(int i=front;i<=rear;i++){
System.out.print(Queue[i]+” “);
}
System.out.println(“]”);
}

// jumlahItem
public static int jumlahItem(){
return item;
}

// clear
public static void clear(){
front=0;
rear=-1;
item=0;
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here

// lakukan push
push(“Antrian 1”);
push(2);
push(“Ketiga”);
// cek jumlah item sekarang
System.out.println(“Jumlah Item : “+thisIsQueue.jumlahItem());
// hapus semua
clear();
// lakukan push
push(‘A’);
push(5);
push(666);
push(“Antrian Belakang”);
// cetak queue
cetak();
// lakukan peek
System.out.println(“Rear : “+peekRear());
System.out.println(“Front : “+peekFront());

// lakukan pop
System.out.println(“pop : “+pop());
System.out.println(“pop : “+pop());
System.out.println(“pop : “+pop());
pop();
// cek jumlah item
System.out.println(“Jumlah Item : “+jumlahItem());
System.out.println(peekRear());
System.out.println(peekFront());

}

}

Program Tahun Lahir Mahasiswa

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package tahunlahirmahasiswa;
import java.util.Scanner;
/**
*
* @author ANGGA
*/
public class Main {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// memasukkan jumlah mahasiswa
System.out.print(“Masukkan Jumlah Mahasiswa : “);
Scanner read=new Scanner(System.in);
int jmlMahasiswa=read.nextInt();
int arrayTahun[]=new int [jmlMahasiswa];

// memasukkan tahun lahir mahasiswa
for(int i=0;i<jmlMahasiswa;i++){
System.out.print(“Masukkan Tahun Lahir Mahasiswa “+(i+1)+” : “);
int tahun=read.nextInt();
arrayTahun[i]=tahun;
}

// menentukan umur tertua dan termuda
int umurTua=arrayTahun[0];
int umurMuda=arrayTahun[0];
for(int i=0;i<arrayTahun.length;i++){
if(umurTua>arrayTahun[i]){
umurTua=arrayTahun[i];
}
if(umurMuda<arrayTahun[i]){
umurMuda=arrayTahun[i];
}
}
System.out.println(“Umur tertua : “+umurTua);
System.out.println(“Umur termuda : “+umurMuda);

// menentukan selisih umur setiap mahasiswa
int selisih;
for(int i=0;i<arrayTahun.length;i++){
selisih=umurMuda-arrayTahun[i];
System.out.println(“Selisih umur mahasiswa “+(i+1)+” : “+selisih);
}

}
}

Stack di Java

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package stack;
import java.util.*;

/**
*
* @author ANGGA
*/
public class stack {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
Stack dataStack=new Stack();

Scanner input=new Scanner(System.in);

System.out.println(“STACK : PUSH,POP,PEEK\n============================================”);
System.out.print(“Masukkan Panjang Stack : “);
int panjang=input.nextInt();
for(int i=0;i<panjang;i++){
System.out.print(“Masukkan Nilai Stack index-“+i+” : “);
dataStack.push(input.next());
}
// mencetak stack
System.out.println(“============================================\nStack = “+dataStack+”\n============================================”);

System.out.println(“PILIHAN :\n1.PUSH\n2.POP\n3.PEEK\n4.Cari Nilai Stack Element Terakhir (lastElement)\n5.Cari Nilai Stack Element Pertama (firstElement)\n6.Cari Nilai Stack Pada Index Tertentu (elementAt)\n7.Cari Tahu Panjang Stack (size)\n8.Hapus Nilai Stack Pada Index Tertentu (removeElementAt)\n9.Memasukkan Nilai Stack Pada Index Tertentu (insertElementAt)\n10.Menambahakan Element Stack (addElement)\n11.Hapus Seluruh Isi Stack (Clear)\n12.Exit”);
int pilih;
do{
System.out.print(“——————-\nPILIH :”);
pilih=input.nextInt();

if(pilih==1){
System.out.print(“PUSH : “);
dataStack.push(input.next());
System.out.println(“Setelah PUSH : “+dataStack);
}

if(pilih==2){
System.out.println(“POP : dilakukan”);
dataStack.pop();
System.out.println(“Setelah POP : “+dataStack);
}

if(pilih==3){
System.out.println(“PEEK (TOP): “+dataStack.peek());
}

if(pilih==4){
System.out.println(“Element Terakhir : “+dataStack.lastElement());
}
if(pilih==5){
System.out.println(“Element Pertama : “+dataStack.firstElement());
}

if(pilih==6){
System.out.print(“Masukkan nilai Index Stack : “);
int cari=input.nextInt();
// mencetak nilai stack pada index tertentu
System.out.println(“Element ke-“+cari+” = “+dataStack.elementAt(cari));
}
if(pilih==7){
// mencetak panjang index stack
System.out.println(“Panjang Stack = “+dataStack.size());
}

if(pilih==8){
System.out.print(“Masukkan Index Stack Yang Akan diHapus : “);
int hapus=input.nextInt();
// menghapus nilai stack pada index tertentu
dataStack.removeElementAt(hapus);
System.out.println(“Setelah remove data ke-“+hapus+” = “+dataStack);
}

if(pilih==9){
System.out.print(“Masukkan Index yang Akan diSisipkan Element : “);
int IndexSisip=input.nextInt();
System.out.print(“Masukkan Element Yang Akan diSisipkan : “);
// menambahkan nilai stack pada index tertentu
String Sisip=input.next();
dataStack.insertElementAt(Sisip, IndexSisip);
System.out.println(“Setelah Insert \””+Sisip+”\” di Index ke-“+IndexSisip+”, Stack = “+dataStack);
}
if(pilih==10){
System.out.print(“Masukkan Element Yang Akan diInsert-kan : “);
String Insert=input.next();
// menambahkan nilai stack pada index teratas
dataStack.addElement(Insert);
System.out.println(“Stack = “+dataStack);

}
if(pilih==11){
System.out.println(“Hapus Semua “);
dataStack.clear();
System.out.println(dataStack);

}
if(pilih==12){
System.out.println(“PROGRAM SELESAI”);
}
if(pilih>12 || pilih<1){
System.err.println(“PILIHAN SALAH !!”);
}

}

while(pilih!=12);

}

}