Selasa, 25 Mei 2010

Linked List(sisip)

<html>
<head>
<title>Linked List</title></head>
<body>
<script language = "JavaScript">
<!--
function LinkedList()
 {
  this._panjang = 0;
  this._kepala = null;
 }

 LinkedList.prototype =
 {
  constructor : LinkedList,

   tambah : function(data)
    {
     var node = {data : data, next:null};
     var NodeTanda;

     if (this._kepala === null)
     {
      this._kepala = node;
     } else
      {
       NodeTanda = this._kepala;
       while (NodeTanda.next)
       {
         NodeTanda = NodeTanda.next;
       }
       NodeTanda.next = node;
      }
      this._panjang++;
    },

  Item : function(index)
   {
    if (index > -1 && index < this._panjang)
     {
      var NodeTanda = this._kepala,
      i=0;
      while (i++ < index)
      {
       NodeTanda = NodeTanda.next;
      }
      return NodeTanda.data;
     } else
      {
       return null;
      }
   },


 Buang : function(index)
  {
   if( index > -1 && index < this._panjang)
    {
     var NodeTanda = this._kepala,previous, i=0;
     if (index === 0)
     {
      this._kepala = NodeTanda.next;
     } else
      {
       while(i++ < index)
       {
        previous = NodeTanda;
        NodeTanda = NodeTanda.next;
       }
       previous.next = NodeTanda.next;
      }
      this._panjang--;
    } else
     {
      return null;
     }
  },

 sisip : function(index,data)
  {
    var node = {data : data, next:null};
    var temp = "";
    if( index > -1 && index < this._panjang)
    {
      var NodeTanda = this._kepala, i=0;
      this.tambah("x");

      //posisi index
      while(i++ < index)
      {
        NodeTanda = NodeTanda.next;
      }
      while(index++ < this._panjang)
      {
        temp = NodeTanda.data;
        NodeTanda.data = data;
        NodeTanda = NodeTanda.next;
        data = temp;
      }
   }
   this._panjang++;
  }, 

 Ukuran : function()
 {
  return this._panjang;
 },

 toArray : function()
  {
   var result = [],
   NodeTanda = this._kepala;
   while (NodeTanda)
   {
    result.push(NodeTanda.data);
    NodeTanda = NodeTanda.next;
   }
   return result;
  },

 toString : function()
  {
   return this.toArray().toSring();
  }

 }

  var list = new LinkedList();
  list.tambah("Teknik Informatika");
  list.tambah("Teknik Komputer");
  list.tambah("Komputer Akutansi");
  list.tambah("Computer Nerworking");
  list.tambah("Sistem Informasi");
  list.tambah("Management Informatika");
  document.write("Isi LinkedList <br>");
  document.write("--------------- <br>");
  for (i=0;i<6;i++)
   {
     document.write(list.Item(i) + "<br>");
   }
   document.write("----------------<br>");
   alert("Isi LinkedList awal = " + list.Item(0));
   alert("Item 1 pada LinkedList dibuang, yaitu = " + list.Item(1));

 list.Buang(1);
   document.write("<br><br>");
   document.write("Isi LinkedList Terakhir <br>");
   document.write("--------------- <br>");
   for (i=0;i<6;i++)
   {
    if (list.Item(i) == null)
    {
     document.write("--");
    } else {
     document.write(list.Item(i) + "<br>");
     }
   }
   document.write("--------------- <br>");
   document.write("<br>");
   document.write("--------------- <br>");
   document.write("Isi Link list disisipkan lagi <br>");
   document.write("--------------- <br>");
   list.sisip(2,"Teknik Komputer ");
    for (i=0;i<6;i++)
  {
  document.write(list.Item(i) + "<br>");
  }
  document.write("----------------<br>");
  alert("setelah disisipkan");
//-->
</script>


</body>
</html>



Selasa, 18 Mei 2010

Visualisasi Stack

<html>
<head>
<title>Penggunaan Struktur Data Stack (Tumpukan)</title>
<script language="javascript">
<!--
    var stack = new Array();

    function input_ke_stack(data)
    {
     stack.push(data);
    }

    function ambil_dari_stack()
    {
     var yang_ambil_dari_stack = stack.pop();
     if (stack.length == 0)
        return (yang_ambil_dari_stack + " -> stack sudah kosong");
     else
        return yang_ambil_dari_stack;
    }

    function dalam_antrian(list)
    {
     list.options.length = 0;
     for (var i = 0; i < stack.length; i++)
     {
      var data = new Option(stack[i]);
      list.options[list.options.length] = data;
     }
    }

//-->
</script>
</head>

<body>
    <font color=#992811>Visualisasi stack (Tumpukan)</font>
    <form>
    <input type=text name=textSimpan>
    <input type=button value="Masuk Tumpukan" onClick = 'input_ke_stack(textSimpan.value);
                         textSimpan.value = "";
                         dalam_antrian(visualisasi);'>
    <select name="visualisasi" size=12>
    <option>Isi antrian....
    </select>
    <br>
    <input type=text name=textAmbil size=20>
    <input type=button value="Keluar Dari Tumpukan" onClick='textAmbil.value = ambil_dari_stack();
                           dalam_antrian(visualisasi);'>
    </form>
</body>
</html>


visualisasi queue

<html>
<head>
<title>Penggunaan Queue</title>
<script language="javascript">
<!--
    var queue = new Array();

    function masuk_antrian(data)
     {
      queue.unshift(data);
     }

    function keluar_antrian()
     {
      var yang_keluar_antrian = queue.pop();
      if (queue.length == 0)
        return (yang_keluar_antrian + " -> Queue sudah kosong");
      else
        return yang_keluar_antrian;
     }

    function dalam_antrian(list)
     {
      list.options.length = 0;
      for (var i = 0; i < queue.length; i++)
     {
      var data = new Option(queue[i]);
      list.options[list.options.length] = data;
     }
    }

//-->
</script>
</head>

<body>
    <font color=#992811>Visualisasi Queue (Antrian)</font>
    <form>
    <input type=text name=textSimpan>
    <input type=button value="Masuk Antrian"
                        onClick = 'masuk_antrian(textSimpan.value);
                        textSimpan.value = "";
                        dalam_antrian(visualisasi);'>
    <select name="visualisasi" size=12>
    <option>Isi antrian....
    </select>
    <br>
    <input type=text name=textAmbil size=20>
    <input type=button value="Keluar Antrian"
                        onClick='textAmbil.value = keluar_antrian();
                         dalam_antrian(visualisasi);'>
    </form>
</body>
</html>


Sabtu, 24 April 2010

Luas Segitiga

Kode html:
<html>
<head><title>luas segitiga</title></head>
<body>
<script language="JavaScript">
 <!--
    var alas=parseInt(prompt("MAsukan Nilai Alas"));
    var tinggi=parseInt(prompt("Masukan Nilai Tinggi"));

    hasil=0.5*alas*tinggi;
    document.write("Alas   ="+alas+"<br>");
    document.write("Tinggi ="+tinggi);
    document.write("<hr>");
    document.write("Luas Segitiga ="+hasil);
 //-->
</script>
</body>
</html>


Hasil Program:

Selasa, 20 April 2010

Deret Fibonacci

kode html:
<html>
<head>
<script>
<!--
 function fibonacci (n) {
    var i;
    var array_fib = new Array ();   
    array_fib.push(0);
    array_fib.push(1);


    for (i=0; i<n; i++){
        array_fib.push(array_fib[0] + array_fib[1]);
        array_fib.shift();
    }
 return array_fib[0];
 }
 for(i=0; i<=20; i++)

    document.write("Fibonacci(" + i + ") = " + fibonacci(i) + "<br>");

//-->
</script>
</head>

<body>
</body>
</html>

hasilnya:


Senin, 19 April 2010

Rakaman Objek

kode html:
<html>

<head>
<title>Membuat Rekaman Objek</title>
</head>

<body>

<script language="JavaScript">

<!--

    var Record = new Array();

    function Mahasiswa (npm,nama,prodi,jenjang){

    //Properti

    this.npm        = npm;

    this.nama        = nama;

    this.prodi        = prodi;

    this.jenjang        = jenjang;

   

    // Metode


   

    this.LihatRecordMahasiswa = LihatRecordMahasiswa;

    }

   

    function LihatRecordMahasiswa(){

    document.write("<td>" + this.npm + "</td>");

    document.write("<td>" + this.nama + "</td>");

    document.write("<td>" + this.prodi + "</td>");

    document.write("<td>" + this.jenjang + "</td>");

    }

    //mengisi data

    Record[0] = new Mahasiswa("43E001", "Dani", "TI", "SI");

    Record[1] = new Mahasiswa("43E001", "Doni", "TI", "SI");

    Record[2] = new Mahasiswa("43E001", "Dina", "TI", "SI");

    Record[3] = new Mahasiswa("43E001", "Dini", "TI", "SI");

    //menampilkan data

    document.write("<table border = '3'>");

    document.write("<th>npm</th> <th>nama</th>");

    document.write("<th>prodi</th> <th>jenjang</th> <br>");

   

    for (i=0; i<Record.length; i++)

    {

        document.write("<tr>");

        Record[i].LihatRecordMahasiswa();

        document.write("</tr>");

    }

        document.write("</table> <br>");

    document.write("<table border = '1'>");

    document.write("<th>npm</th> <th>nama</th>");

    document.write("<th>prodi</th> <th>jenjang</th> <br>");

   

    for (i=0; i<Record.length; i++)

    {

        document.write("<tr>");

        Record[i].npm   

        document.write("</tr>");

    }

        document.write("</table>");

//-->

</script>

</body>

</html>  



   

Parameter Array

Kode HTML nya:

<html>
<head>
<title>Parameter Array</title>
</head>
<body>
<script language="JavaScript">
<!--


    var tempat = ([]);

    var data = prompt ("Ketik Jumlah maksimum Array :");   
    for (m=1; m<=data; m++)
    {
        var bil=prompt("Masukan Bilangan:")
        tempat[m]=bil;
    }
        for (n=1; n<=data; n++)
    {
     document.write("Elemen Array ("+n+") =" +tempat[n] + "<BR>");
    }
//-->
</script>
</body>
</html>

tampilannya adalah:

Dan setelah masukan angka,maka tampilannya adalah: