Kamis, 24 Juni 2010

Sort-Discending

<html>
<head>
<script LANGUAGE = "Javascript">

function Urutkan (form)
 {
    DataKosong= false;
    DataInputan = form.Data.value;
    inputData = DataInputan.split (",");
    for (var i = 0; i<inputData.length; i++)
    {
        inputData [i] = parseInt (inputData[i], 10);
    if (isNaN (inputData [i]) )
    {
      DataKosong = true;
      break;
    }
    }

inputData = bubbleSort (inputData, 0, inputData.length-1);
if (DataKosong)
 {
   alert ("Silakan Entri Dulu Data, Pisahkan dengan tanda Koma");
   form.Data.focus();
 }
   else
   form.Hasil.value = DataString (inputData,0);
 }


function DataString (ArrayData, Angka)
 {
   if ( (ArrayData.length - 1) >= Angka)
   return (ArrayData[Angka] + "," + DataString (ArrayData, (Angka + 1) ) );
   else
   return "";
 }

function bubbleSort (ArrayData, Mulai, MulaiBaru)
 {
   for (var i=MulaiBaru-1; i>=Mulai; i--)
   {
          for (var j=Mulai; j<=i; j++)
         {
        if (ArrayData[j+1] > ArrayData [j] )
        {
           var DataTemporer = ArrayData [j];
           ArrayData [j] = ArrayData [j+1];
           ArrayData[j+1] = DataTemporer;
          }
       }
   }

return ArrayData;
}
</script>
</head>

<body>
<center>
<form>
  Masukan Deretan Angka, Pisahkan denga Koma :
  <hr>
  <input type = text name=Data size=30 Value="">
  <br>
  <input type=button value="Urutkan" onClick="Urutkan (this.form)">
  <br>
    <br>
    Hasil Pengurutan :
    <hr>
    <input type=text name=Hasil size=30>
    </form>
</center>
</body>
</html>

Sort-Ascending

<html>
<head>
<script LANGUAGE = "Javascript">

function Urutkan (form)
 {
    DataKosong= false;
    DataInputan = form.Data.value;
    inputData = DataInputan.split (",");
    for (var i = 0; i<inputData.length; i++)
    {
        inputData [i] = parseInt (inputData[i],10);
    if (isNaN (inputData [i]) )
    {
      DataKosong = true;
      break;
    }
    }

inputData = bubbleSort (inputData, 0, inputData.length-1);
if (DataKosong)
 {
   alert ("Silakan Entri Dulu Data, Pisahkan dengan tanda Koma");
   form.Data.focus();
 }
   else
   form.Hasil.value = DataString (inputData,0);
 }


function DataString (ArrayData, Angka)
 {
   if ( (ArrayData.length - 1) >= Angka)
   return (ArrayData[Angka] + "," + DataString (ArrayData, (Angka + 1) ) );
   else
   return "";
 }

function bubbleSort (ArrayData, Mulai, MulaiBaru)
 {
   for (var i=MulaiBaru-1; i>=Mulai; i--)
   {
          for (var j=Mulai; j<=i; j++)
         {
        if (ArrayData[j+1] < ArrayData [j] )
        {
           var DataTemporer = ArrayData [j];
           ArrayData [j] = ArrayData [j+1];
           ArrayData[j+1] = DataTemporer;
          }
       }
   }

return ArrayData;
}
</script>
</head>

<body>
<center>
<form>
  Masukan Deretan Angka "," Pisahkan dengan Koma :
  <hr>
  <input type = text name=Data size=30 Value="">
  <br>
  <input type=button value="Urutkan" onClick="Urutkan (this.form)">
  <br>
    <br>
    Hasil Pengurutan :
    <hr>
    <input type=text name=Hasil size=30>
    </form>
</center>
</body>
</html>

Djikstra-Algorithm

<html>
<head>
<title>Dijkstra Algorithms</title>
</head>
<body>
<script language = "javascript">
<!--
var nilaiacuan = 10000;
var takterdefinisi = -1;
var namaverteks = new Array("A","B","C","D","E","F");
var matriks = new Array(6);

function bobot(a,b)
{
return matriks[a][b];
}

function dijkstra(jumlahverteks,awal,d)
{
var posisi = new Array(jumlahverteks);
var i;
var kunjungan = new Array(jumlahverteks);
var sebelum = new Array(jumlahverteks);
for(i=0;i<jumlahverteks;i++)
{
posisi[i] = nilaiacuan;
sebelum[i] = takterdefinisi;
kunjungan[i] = false;
}
posisi[awal]=0;
var verteks;
for(verteks=0;verteks<jumlahverteks;verteks++)
{
var jarakterpendek = nilaiacuan,
berhenti = -1;
for(i=0;i<jumlahverteks;i++)
{
if(!kunjungan[i])
{
if(posisi[i] <= jarakterpendek)
{
jarakterpendek = posisi[i];
berhenti = i;
}
}
}
kunjungan[berhenti] = true;
for(i=0;i<jumlahverteks;i++)
{
if(!kunjungan[i])
{
var w = bobot(berhenti,i);
if(posisi[berhenti]+w < posisi[i])
{
posisi[i] = posisi[berhenti] + w;
sebelum[i] = berhenti;
}
}
}
}
i=d;
if(posisi[i] < nilaiacuan)
{
var lintasan = namaverteks[i];
var verteks = i;
while(verteks>0)
{
verteks = sebelum[verteks];
if(verteks>=0)
lintasan = namaverteks[verteks] + '->' + lintasan;
}
alert("Jarak : "+posisi[i]+' ('+lintasan+')'+'<br>');
}
else
{
alert("Tidak ada jalur");
}
}

function init()
{
var x = nilaiacuan;
document.write('<pre>');
document.write('<br>');
document.write(matriks[0] = new Array(0,2,3,x,x,x));
document.write('<br>');
document.write(matriks[1] = new Array(2,0,3,6,x,x));
document.write('<br>');
document.write(matriks[2] = new Array(3,3,0,3,5,x));
document.write('<br>');
document.write(matriks[3] = new Array(x,6,3,0,1,3));
document.write('<br>');
document.write(matriks[4] = new Array(x,x,5,1,0,1));
document.write('<br>');
document.write(matriks[5] = new Array(x,x,x,3,1,0));
document.write('<br>');
document.write('</pre>');

var awal='<pre>';
document.write(awal+'A--2-B--6--D--3-F'+'<br>');
document.write(' \\ | / | / '+'<br>');
document.write(' 3 3 3 1 1 '+'<br>');
document.write(' \\ | / | / '+'<br>');
document.write(' \\|/ |/'+'<br>');
document.write(' C--5--E'+'<br>');
document.write('</pre>');
}

init();
var dari=0;
var ke=5;
dijkstra(matriks.length,dari,ke);

//-->
</script>
</body>
</html> 


           

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:


Rabu, 14 April 2010

Lat.Array04

Kode HTML:
<html>
<head>
<title>Belajar Array</title>
</head>
<body><body bgcolor=blue><font color=green>
<script language = "javascript">
<!--
   
    var a = new Array("Senin","Selasa","Rabu","Kamis","Jumat","Sabtu","Minggu");
    var b = prompt("Silahkan ketik angka 0 - 6 untuk menampilkan hari");
   

        document.write(a[b] +"<br>");
   
//-->
</script>
</body>
</html>


Tampilannya:
Apabila kita ketikan angka 0,maka akan tampila hari Senin.
Tampilannya adalah:



Lat.Array03

Kode HTML:

<html>
<head>
<title>Belajar Array</title>
</head>
<body><body bgcolor=black><font color=green>
<script language = "javascript">
<!--
   
    var data_ku = new Array ("Senin","Selasa","Rabu","Kamis","Jumat","Sabtu");
   
    for (i=0; i<6; i++)
    {
        document.write(data_ku[i] +"<br>");
    }
   
    alert ("Belajar Array");
   
//-->
</script>
</body>
</html>


Tampilannya:


Lat.Array02

Kode HTML:
<html>
<head>
<title>Belajar Array</title>
</head>
<body><body bgcolor=pink><font color=black>
<script language = "javascript">
<!--
  
    var data_ku = new Array ("Saya","Sedang","Senang","senang");
  
    for (i=0; i<4; i++)
    {
        document.write(data_ku[i] +"<br>");
    }
  
    alert ("Selamat Belajar Struktur Data");
    alert ("Semoga Memperoleh Ilmu yang Bermanfaat");
  
//-->
</script>
</body>
</html>

Tampilannya:

Lat.Array01

Kode HTML:
<html>
<head>
<title>Belajar Array</title>
</head>
<body><body bgcolor=brown><font color=white>
<script language = "javascript">
<!--

var data_ku = new Array ("Saya","Sedang","Senang");



for (i=0; i<3; i++)
{
document.write(data_ku[i] +"<br>");
}

alert ("Selamat Belajar Struktur Data");
alert ("Semoga Memperoleh Ilmu yang Bermanfaat");

//-->
</script>
</body>
</html>

Tampilannya:

Kamis, 25 Februari 2010

latihan & evaluasi 02

Kode HTML nya adalah:
<HTML>
<HEAD>
<TITLE>hanya entri integer</TITLE>
</HEAD>
<BODY><body bgcolor=grey><font color=black>
<SCRIPT LANGUAGE = "JavaScript">
<!--


var a = parseInt(prompt("ketikkan suatu bilangan = \n "));

if (isNaN(a))
{
alert(" yang anda masukan bukan integer salah");
} else
{
document.write(a);
/*document.write(""lt;BR"gt;");*/
document.write("<HR>");
document.write("tipe datanya adalah="+typeof(a));
}

//-->
</SCRIPT>
</BODY>
</HTML>
Tampilan di browser:

Latihan & Evaluasi 01_Struktur Data

Kode HTML nya adalah:
<html>
<head>
<title>Mencari persamaan kuadrat</title>
</head>
<body><body bgcolor=grey><font color=black>
<script language="JavaScript">
<!--
function akar(a,b,c)
{
var hasil = (b*b)-(4*a*c);
return(hasil);
}


var a=parseInt(prompt("Menghitung akar persamaan kuadrat \n masukan nilai A:\n"));
var b=parseInt(prompt("Menghitung akar persamaan kuadrat \n masukan nilai B:\n"));
var c=parseInt(prompt("Menghitung akat persamaan kuadrat \n masukan nilai C:\n"));

var z=akar(a,b,c);

document.write("Nilai akar kuadrat =" +z+"<BR>");
document.write("<HR>");
document.write("<BR>");


if (z>0)
{
var x1= (-b - Math.sqrt(z))/(2*a);
var x2= (-b + Math.sqrt(z))/(2*a);

document.write("Nilai x1=" + x1 + "<BR>");
document.write("Nilai x2=" + x2 + "<BR>");
document.write("<BR>");
document.write("<HR>");
alert("Succesfull");
} else

if (z==0)
{
document.write("No root real");
alert("Try Again?");
}
if (z<0)

{
document.write("No root real");
alert("Try again?");
}

//-->
</script>
</body>
</html>

Tampilan di Browser:

Selasa, 23 Februari 2010

Lat01_Struktur Data

Kode HTML nya adalah:
<html>
<head>
<title>Type Bilangan<?title>
    <script language=javascript>
     <!--
        alert('Assalamualaikum');
     //-->
    </script>
</HEAD>


<body><body bgcolor=black><font color=white>
<script language = "JavaScript">
<!--
    var a = 15;
        b = 14;
       
    tambah = a + b;
    kali = a * b;
   
    document.write("Penambahan (" +a+ " + " +b+ ") = " + tambah);
    document.write("<br>");
    document.write("Perkalian (" +a+ " X " +b+ ") = " + kali);
    document.write("<br>");
   
//-->
</script>
</body>
</html>

Hasil di Browser:

lat02_Struktur Data

Kode HTML nya adalah:
<html>
<head>
<title>Konversi Antar Sistem Bilangan</title>
        <script language="javascript">
        <!--
         alert('Silahkan Klik OK');
        //-->
        </script>
</head>


<body><body bgcolor=black><font color=white>
<script language="JavaScript">
<!--
    var bil = new Number(25);
    document.write("Bilangan Desimal: " +bil+ "<BR>");
    document.write("<HR>");
   
    document.write("Biner : " + bil.toString(2) + "<BR>");
    document.write("Oktal : " + bil.toString(8) + "<BR>");
    document.write("Heksa : " + bil.toString(16) +"<BR>") ;
   
//-->
</script>
</body>
</html>

Hasil di Browser:

Senin, 22 Februari 2010

Lat.03_Struktur Data

Kode HTML nya adalah:
<HTML>
<HEAD>
<TITLE>Membuat Fungsi Matematika dengan Java Script</TITTLE>
    <script language=javascript>
     <!--
      alert('Assalamualaikum');
     //-->
     </script>


</HEAD>
<BODY><body bgcolor=black><font color=white>
<SCRIPT LANGUAGE = "JavaScript">
<!--
    function jumlah(x,y) {
    var hasil = x + y;

    return(hasil);
    }
var a = parseInt(prompt("Ketikan Bilangan A = \n Ingat Jangan String"));
var b = parseInt(prompt("Ketikan Bilangan B = \n Ingat Jangan String"));
var z = jumlah(a,b);

document.write(z);
document.write("<BR>");
document.write("<hr>");
document.write("Tipe Datanya Adalah = " + typeof(z));
//-->

</SCRIPT>
</BODY>
</HTML>

Hasil di Browser: