• Senin, 11 Juli 2011

      Buble Sort

      <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="5,6,8,5,12,4,8,4,20">
      <br>
      <br>
      <input type=button value="urutkan" onClick="Urutkan(this.form)">
      <br>
      <br>
      <br>
      Hasil Pengurutan :
      <hr>
      <input type=text name=Hasil size=30>
      </form>
      </center>
      </body>
      </html>

      Praktikum Dijkstra

      <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+')');
      }
      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>

      Presentasi Dijkstra

      <html>
      <head><title>Sistem Pemetaan Pom Bensin Kab. Karawang</title>


      </head>


      <body >
      <script language = "javascript">
      <!--
      var nilaiacuan = 10000;
      var takterdefinisi = -1;
      var namaverteks = new Array('Lampu_Merah_Tanjungpura','SPBU_Tanjungpura','SPBU Kharisma','Lampu Merah By Pass','SPBU SMAN 4','SPBU Alam Sari','SPBU R.S Cito','Gerbang Perumnas','Bundaran Galuh Mas','SPBU Galuh Mas','Alun-alun Kota','Pertigaan Mal Karawang','Perum Bintang Alam','SPBU Telukjambe','SPBU Johar','Lampu Merah Johar','SPBU Lamaran','SPBU Warungbambu 1','SPBU Warung Bambu 2','Lampu Merah Jalan Baru','SPBU Klari','Lampu Merah Klari','SPBU Kosambi','Pasar Kosambi');


      var matriks = new Array();


      function init()
      {
      var x = '~';
      matriks[0]=new Array(0,0.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x);
      matriks[1]=new Array(0.8,0,1.9,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x);
      matriks[2]=new Array(x,1.9,0,1.5,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x);
      matriks[3]=new Array(x,x,1.5,0,0.7,1.5,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x);
      matriks[4]=new Array(x,x,x,0.7,0,x,x,x,x,x,x,1.4,x,x,x,x,x,x,x,x,x,x,x,x);
      matriks[5]=new Array(x,x,x,1.5,x,0,0.9,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x);
      matriks[6]=new Array(x,x,x,x,x,0.9,0,3.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x);
      matriks[7]=new Array(x,x,x,x,x,x,3.8,0,2.6,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x);
      matriks[8]=new Array(x,x,x,x,x,x,x,2.6,0,0.2,x,x,3.8,x,x,x,x,x,x,x,x,x,x,x);
      matriks[9]=new Array(x,x,x,x,x,x,x,x,0.2,0,2.1,x,x,x,x,x,x,x,x,x,x,x,x,x);
      matriks[10]=new Array(x,x,x,x,x,x,x,x,x,2.1,0,x,x,x,x,x,x,x,x,x,x,x,x,x);
      matriks[11]=new Array(x,x,x,x,1.4,x,x,x,x,x,1.6,0,x,x,x,1.4,x,x,x,x,x,x,x,x);
      matriks[12]=new Array(x,x,x,x,x,x,x,x,2.8,x,x,x,0,0.3,x,x,x,x,x,x,x,x,x,x);
      matriks[13]=new Array(x,x,x,x,x,x,x,x,x,x,x,x,0.3,0,1.6,x,x,x,x,x,x,x,x,x);
      matriks[14]=new Array(x,x,x,x,x,x,x,x,x,x,x,x,x,1.6,0,0.5,x,x,x,x,x,x,x,x);
      matriks[15]=new Array(x,x,x,x,x,x,x,x,x,x,x,1.4,x,x,0.5,0,1.2,0.6,x,x,x,x,x,x);
      matriks[16]=new Array(x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,1.2,0,x,x,x,x,x,x,x);
      matriks[17]=new Array(x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,0.6,x,0,0.6,x,x,x,x,x);
      matriks[18]=new Array(x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,0.6,0,2.5,x,x,x,x);
      matriks[19]=new Array(x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,2.5,0,0.8,x,x,x);
      matriks[20]=new Array(x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,0.8,0,1.4,x,x);
      matriks[21]=new Array(x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,1.4,0,3.2,x);
      matriks[22]=new Array(x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,3.2,0,0.8);
      matriks[23]=new Array(x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,0.8,0);
      }


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


      function fungsi(list, list2)
      {
      var dari = parseInt(list);
      var ke = parseInt(list2);


      jumlahverteks = matriks.length;
      awal = dari;
      d = ke;


      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;
      var 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 ("Jalur terpendek dari " +namaverteks[dari]+ " ke " +namaverteks[d]+ " : " + posisi[i] + " km \n(" + lintasan + ")");
      }
      else
      {
      alert ("Gk Ada jalur mas Bro!!!!");
      }
      }


      init();


      //-->


      </script>






      <table border="4" cellpadding="10" cellspacing="10" bgcolor="#99FFFF" align="center">


      <tr>
      <td colspan="2" align="center"><img src="file/header.jpg" height="125" width="1200" bgcolor="#66FFFF"></td>
      </tr>


      <tr >
      <td colspan="0" bgcolor="#66FFFF" widht="400">
      <font size="6" color="purple"><marquee>
      Menentukan Rute Terpendek Dengan Menggunakan Algoritma Dijkstra
      </font></marquee>
      </td>
      <td align="center" bgcolor="#66FFFF" >
      <a href="script.html"><img src="file/script.png"></a>
      <a href="data.html"><img src="file/peta.png" ></a>
      <a href="index.html"><img src="file/home1.png" ></a>


      <a href="script.html"></a>
      </td>
      </tr>


      <tr>
      <td colspan="0" width="800" height="500" align="center" bgcolor="#66FFFF">
      <img src="file/peta spbu.jpg" width="700" height="470" border="5">
      </td>


      <td colspan="0" width="350" height="100" valign="top" align="center" bgcolor="#66FFFF">
      <form><font size="5">
      <img src="file/pertamina.jpg" alt="Karawang Map" width="250" height="200" border="5" align="center">
      <p align="left">
      Posisi Anda :
      <br><select name="Dari">
      <option value="0">Lampu Merah Tanjungpura</option>
      <option value="3">Lampu Merah By Pass</option>
      <option value="7">Gerbang Perumnas</option>
      <option value="8">Bunderan Galuh Mas</option>
      <option value="7">Gerbang Perumnas</option>
      <option value="8">Bunderan Galuh Mas</option>
      <option value="7">Gerbang Perumnas</option>
      <option value="8">Bunderan Galuh Mas</option>
      <option value="7">Gerbang Perumnas</option>
      <option value="8">Bunderan Galuh Mas</option>
      <option value="10">Alun-alun Kota</option>
      <option value="11">Pertigaan Mal Karawang</option>
      <option value="12">Perum Bintang Alam</option>
      <option value="21">Lampu Merah Klari</option>
      <option value="23">Pasar Kosambi</option>
      <option value="19">Lampu Merah Jalan Baru</option>
      <option value="19">Lampu Merah Jalan Baru</option>
      <option>-----------------------------------</option>
      <option value="1">[ 34 - 41301 ] SPBU Tanjungpura</option>
      <option value="2">[ 34 - 41344 ] SPBU Kharisma</option>
      <option value="4">[ 34 - 41349 ] SPBU SMAN 4</option>
      <option value="5">[ 34 - 41310 ] SPBU Alam Sari</option>
      <option value="6">[ 34 - 41328 ] SPBU R.S Cito</option>
      <option value="9">[ 34 - 41339 ] SPBU Galuh Mas</option>
      <option value="13">[ 34 - 41323 ] SPBU Telukjambe</option>
      <option value="14">[ 34 - 41348 ] SPBU Johar</option>
      <option value="15">Lampu Merah Johar</option>
      <option value="16">[ 34 - 41324 ] SPBU Lamaran</option>
      <option value="17">[ 34 - 41371 ] SPBU Warungbambu 1</option>
      <option value="18">[ 34 - 41352 ] SPBU Warungbambu 2</option>
      <option value="19">Lampu Merah Jalan Baru</option>
      <option value="20">[ 34 - 41341 ] SPBU Klari</option>
      <option value="22">[ 34 - 41315 ] SPBU Kosambi</option>


      </select></br>


      <p align="left">
      Hendak Ke :
      <br><select name="Ke">
      <option value="0">Lampu Merah Tanjungpura</option>
      <option value="3">Lampu Merah By Pass</option>
      <option value="7">Gerbang Perumnas</option>
      <option value="8">Bunderan Galuh Mas</option>
      <option value="7">Gerbang Perumnas</option>
      <option value="8">Bunderan Galuh Mas</option>
      <option value="7">Gerbang Perumnas</option>
      <option value="8">Bunderan Galuh Mas</option>
      <option value="7">Gerbang Perumnas</option>
      <option value="8">Bunderan Galuh Mas</option>
      <option value="10">Alun-alun Kota</option>
      <option value="11">Pertigaan Mal Karawang</option>
      <option value="12">Perum Bintang Alam</option>
      <option value="21">Lampu Merah Klari</option>
      <option value="23">Pasar Kosambi</option>
      <option value="19">Lampu Merah Jalan Baru</option>
      <option value="19">Lampu Merah Jalan Baru</option>
      <option>-----------------------------------</option>
      <option value="1">[ 34 - 41301 ] SPBU Tanjungpura</option>
      <option value="2">[ 34 - 41344 ] SPBU Kharisma</option>
      <option value="4">[ 34 - 41349 ] SPBU SMAN 4</option>
      <option value="5">[ 34 - 41310 ] SPBU Alam Sari</option>
      <option value="6">[ 34 - 41328 ] SPBU R.S Cito</option>
      <option value="9">[ 34 - 41339 ] SPBU Galuh Mas</option>
      <option value="13">[ 34 - 41323 ] SPBU Telukjambe</option>
      <option value="14">[ 34 - 41348 ] SPBU Johar</option>
      <option value="15">Lampu Merah Johar</option>
      <option value="16">[ 34 - 41324 ] SPBU Lamaran</option>
      <option value="17">[ 34 - 41371 ] SPBU Warungbambu 1</option>
      <option value="18">[ 34 - 41352 ] SPBU Warungbambu 2</option>
      <option value="19">Lampu Merah Jalan Baru</option>
      <option value="20">[ 34 - 41341 ] SPBU Klari</option>
      <option value="22">[ 34 - 41315 ] SPBU Kosambi</option>
      </select></br>
      </p>
      <p align="center">
      <input type="button" value="Tampilkan jalur terpendek" onclick ='fungsi(Dari.value, Ke.value)'>
      </p>


      </font>


      </form>
      </td>
      </tr>
      </table>
      <p align="center">Copyright Teknik Informatika 2010</p>
      </body>
      </html>

      Senin, 30 Mei 2011

      PRAKTEK LINKED LIST


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

      //Membuat Metode Untuk Menambah Data kedalam List
      Tambah: function (data)
      {
      //Membuat Node List
      var node = { data: data, next: null }, NodeTanda;
      //Periksa Isi List
      if (this._kepala === null)
      {
      this._kepala = node;
      }
      else
      {
      NodeTanda = this._kepala;
      while (NodeTanda.next)
      {
      NodeTanda = NodeTanda.next;
      }
      NodeTanda.next = node;
      }
      this._panjang++;
      },
      //Membuat Metode Untuk Menunjuk Item Data
      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;
      }
      },
      //Membuat Metode Untuk Membuang Elemen List
      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--;
      return NodeTanda.data;
      }
      else
      {
      return null;
      }
      },
      //Membuat Metode Untuk Mengetahui Jumlah Elemen List
      Ukuran: function()
      {
      return this._panjang;
      },
      //Membuat Metode Untuk Membentuk Array
      toArray: function()
      {
      var result = [],
      NodeTanda = this._kepala;
      while(NodeTanda){
      result.push(NodeTanda.data);
      NodeTanda = NodeTanda.next;
      }
      return result;
      },
      //Membuat Metode Untuk Konversi ke String
      toString: function()
      {
      return this.toArray().toString();
      }
      };
      var list = new LinkedList();
      list.Tambah("Teknik Informatika");
      list.Tambah("Teknik Komputer");
      list.Tambah("Komputerisasi Akuntansi");
      list.Tambah("Computer Networking");
      document.write("Isi LinkedList <br>");
      document.write("--------------- <br>");
      for (i=0; i<4; i++)
      {
      document.write(list.Item(i) + "<br>") ;
      }
      document.write("--------------- <br>");
      alert("Isi LinkedList Awal =" + list.Item(1));
      alert("Item 1 pada Linked list dibuang, yaitu = " +list.Item(1));
      list.Buang(1);
      document.write("Isi LinkedList Terakhir <br>");
      document.write("--------------- <br>");
      for (i=0; i<4; i++)
      {
      document.write(list.Item(i) + "<br>") ;
      }
      document.write("--------------- <br>");
      //-->
      </script>
      </body>
      </html>

       hasilnya

      gambar-1

      gambar-2


      gambar-3

      Senin, 23 Mei 2011

      Minggu, 01 Mei 2011

      STRUKTUR DATA

      1. Deret Fibonacci

      <html>
      <head>
      <title>Deret Fibonacci</title>
      </head>
      <body bgcolor=yellow>
      <script language="JavaScript">
      <!--
          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>
      </body>
      </html>




      2.  Parameter Array


      <HTML>

      <HEAD>

      <TITLE>PARAMETER ARRAY</TITLE>

      </HEAD>

      <BODY bgcolor=yellow>

      <SCRIPT LANGUAGE = "JavaScript">

      <!--

          alert("PARAMETER ARRAY");

          alert("Semoga Berhasil");

         

          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 Arrray ("+n+") =" +tempat[n] +"<BR>");

          }

         

      //-->

      </SCRIPT>

      </BODY>

      </HTML>



      3. Membuat Rekaman Objek pada mahasiswa (Record-1)

      <html>
      </head><title >Membuat Rekaman Objek</title></head>
      <body>
      <script language = "JavaScript">
      <!--
          var Record = new Array();
          function Mahasiswa(npm, nama, prodi, jenjang,kelas) {
          // Properti
          this.npm = npm;
          this.nama = nama;
          this.prodi = prodi;
          this.jenjang = jenjang;
          this.kelas = kelas;
          //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>");
          document.write("<td>" + this.kelas + "</td>");
          }
          //mengisi data
          Record[0]= new Mahasiswa("43E001","Dani","TI","S1","Malam");
          Record[1]= new Mahasiswa("43E001","Doni","TI","S1","Malam");
          Record[2]= new Mahasiswa("43E001","Dina","TI","S1","Malam");
          Record[3]= new Mahasiswa("43E001","Dini","TI","S1","Malam");
         
          //menampilkan data
          document.write("<table border = '1'>");
          document.write("<th>NPM</th> <th>Nama</th>");
          document.write("<th>Prodi</th><th>Jenjang</th> <br> ");
          document.write("<th>Kelas</th>");
          for (i=0; i < Record.length; i++)
          {
          document.write("<tr>");
          Record[i].LihatRecordMahasiswa();
          document.write("</tr>");
          }
          document.write("</table>");
      //-->
      //-->
      </script>
      </body>
      </html>



      4. Belajar Array (Senang-senang)


      <HTML>
      <HEAD>
      <TITLE>BELAJAR ARRAY</TITLE>
      </HEAD>
      <BODY bgcolor=gold>
      <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>


      5. Stack

      <html>
      <head>
      <title>Struktur Data stack</title>
      <script language = "JavaScript">
      var stack = new Array();
      function Input_ke_Stack(data) {
      stack.push(data);
      }
      function Ambil_dari_Stack() {
      var data_dari_stack = stack.pop();
      if (data_dari_stack == undefined)
      return "Stack Sudah Kosong";
      else
      return data_dari_stack;
      }
      function TampilkanStack(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>
      <form>
      <input type=text name=textSimpan>
      <input type=button value="Masukan ke Stack"
      onClick='Input_ke_Stack(textSimpan.value);
      textSimpan.value="";
      TampilkanStack(mediaList);'>
      <select name="mediaList" size=12>
      <option>Tampilan data....
      </select>
      <input type=text name=textAmbil size=20>
      <input type=button value="Ambil dari Stack"
      onClick="textAmbil.value = Ambil_dari_Stack();
      TampilkanStack(mediaList);">
      </form>
      </body>
      </html>

      PARAMETET ARRAY


      6. Record Mahasiswa (Prompt)


      <html>
      </head><title >Membuat Record Mahasiswa</title></head>
      <script language = "JavaScript">
      <!--
      alert("Berikut adalah program data mahasiswa STMIK KHARISMA 92");
      //-->
      </script>
      <script language  = "JavaScript">
      var Record = new Array();
      function Mahasiswa(Fields_npm,Fields_nama,Fields_prodi,Fields_jenjang,Fields_kelas)
      {
      // Properti
      this.npm = Fields_npm;
      this.nama = Fields_nama;
      this.prodi = Fields_prodi;
      this.jenjang = Fields_jenjang;
      this.kelas = Fields_kelas;
      }
      //function inputMahasiswa()
      {
      var nama,prodi,jenjang,kelas;
      while (npm = window.prompt("Ketikan NPM (Nomor Pokok Mahasiswa)\n\n Click 'cancel' untuk Berhenti !!." ))
      {
      nama    = window.prompt( "nama :" ) ;
      prodi   = window.prompt( "prodi :" ) ;
      jenjang = window.prompt("jenjang :");
      kelas   = window.prompt("kelas :");
      Record[Record.length] = new Mahasiswa(npm,nama,prodi,jenjang,kelas);
      }
      //menampilkan Mahasiswa()
      }
      //function menampilkan Mahasiswa()
      {
      document.write("DATA MAHASISWA STMIK KHARISMA 92 <br>");
      document.write("<table border = '1'>");
      document.write("<th>NPM</th> <th>NAMA</th>");
      document.write("<th>PRODI</th><th>JENJANG</th> <th>KELAS</th> <br> ");
      for (i=0; i < Record.length; i++)

      document.write("<tr>");
      document.write("<td>" + Record[i].npm + "</td>"+"<td>" + Record[i].nama + "</td>" +"<td align='right'>" + Record[i].prodi + "</td>");
      document.write("<td align='right'>" + Record[i].jenjang + "</td>" +"<td align='right'>" + Record[i].kelas + "</td>");
      document.write("</tr>");
      }
      document.write("</table>");
      }
      //-->
      </script>
      <body onload="inputPegawai();">
      </body>
      </html>



      Minggu, 13 Maret 2011

      PRAKTIKUM STRUKTUR DATA

      Latihan 1 (Pertambahan & Perkalian 2 Bilangan)


      <em>Ampersands & angle brackets need to be encoded.</em>
      <HTML>

      <HEAD>

      <TITLE> Type Bilangan</TITLE>

      </HEAD>

      <BODY bgcolor=yellow>

      <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>

      hasilnya




      Latihan 2 (Konversi Bilangan)


      <HTML>

      <HEAD>

      <TITLE> konversi antar sistem bilangan</TITLE>

      </HEAD>

      <BODY bgcolor=yellow>

      <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>



      hasilnya




      Latihan 3 (Jumlah Sistem Bilangan Matematika)

      <HTML>

      <HEAD>

      <TITLE> konversi antar sistem bilangan</TITLE>

      </HEAD>

      <BODY bgcolor=yellow>

      <SCRIPT LANGUAGE = "JavaScript">

      <!--
         
          function jumlah (x,y) {
             
          var hasil = x + y;

             
             
          return(hasil);
         
      }

          var a = parseInt (prompt("ketika bilangan A = \n ingat jangan string"));
         
      var b = parseInt (prompt("ketika bilangann B = \n ingat jangan string"));
         
      var z = jumlah (a,b);

      document.write(z);

         
      document.write("<BR>");
         
      document.write("<hr>");

          document.write("tipe data nya adalah =" + typeof(z));

             


      //-->

      </SCRIPT>

      </BODY>

      </HTML>


      hasilnya

      gbr-1



      gbr-2





      gbr-3



      Sabtu, 05 Maret 2011

      Sejarah Bahasa Pemrograman C

      SEJARAH BAHASA PEMROGRAMAN C Bahasa pemrograman C merupakan salah satu bahasa pemrograman komputer. Dibuat pada tahun 1972 oleh Dennis M. Ritchie seorang ahli dalam berbagai bidang pemrograman untuk Sistem Operasi Unix di Bell Telephone Laboratories (USA). Pada tahun 1978 Dennis M. Ritchie dan Brian W. Kernighan mengeluarkan buku berjudul “The C Programming Language” yag selanjutnya buku tersebut digunakan sebagai acuan berbagai versi bahasa C. Beberapa versi yang diciptakan dan dirancang untuk dioperasikan pada system operasi yang lain (selain UNIX) seperti pada PC-DOS atau MS-DOS. Meskipun C dibuat untuk memprogram sistem dan jaringan komputer namun bahasa ini juga sering digunakan dalam mengembangkan software aplikasi. C juga banyak dipakai oleh berbagai jenis platform sistem operasi dan arsitektur komputer, bahkan terdapat beberepa compiler yang sangat populer telah tersedia. C secara luar biasa mempengaruhi bahasa populer lainnya, terutama C++ yang merupakan extensi dari C. RUANG LINGKUP BAHASA PEMROGRAMAN C Masalah kompleks yang harus diselesaikan komputer semakin besar dan kompleks. Pemrogram bertanggung jawab atas implementasi solusi. Pembuatan program menjadi lebih sederhana jika masalah dipecah menjadi submasalah-submasalah. Penyelesaian masalah dengan komputer berhadapan dengan 4 (empat) hal, yaitu : 1. Pemahaman secara menyeluruh keterhubungan elemen-elemen data yang relevan terhadap solusi masalah. 2. Pembuatan keputusan operasi-operasi yang dilakukan terhadap elemen-elemen data. 3. Perancangan metode representasi elemen-elemen data di memori, sehingga memenuhi kriteria sebagai berikut : a. Memenuhi keterhubungan logika antara elemen-elemen data; b. Operasi-operasi terhadap elemen-elemen data dapat dilakukan secara mudah dan efisien; 4. Pembuatan keputusan bahasa pemrograman terbaik untuk menterjemahkan solusi masalah menjadi program. Bahasa Pemrograman C merupakan bahasa yang biasa dipakai untuk keperluan pemrograman sistem, antara lain untuk membuat : a. Assembler b. Interpreter c. Program Paket d. Sistem Operasi Bahasa C merupakan bahasa pemrograman yang serbaguna . Pemakaian bahasa C tidak terbatas untuk pemrograman system, melainkan juga bisa digunakan untuk berbagai program aplikasi, misalnya untuk aplikasi bisnis, matematika dan games. Bahkan ada juga yang menerapkannya untuk menyusun program artificial intelegence. BAHASA C SEBAGAI BAHASA TINGKAT MENENGAH Dalam beberapa literatur , Bahasa C digolongkan sebagai bahasa tingkat menengah (medium lavel languge). Penggolongan ini bukan berarti menyatakan bahwa Bahasa C kurang baik atau lebih sulit dibandingkan dengan bahasa tingkat tinggi (hight lavel language) melainkan menegaskan bahwa bahasa C bukanlah bahasa yang berorientasi pada mesin (yang merupakan ciri dari bahasa tingkat rendah). Pada kenyataannya bahasa C mengkombinasikan bahasa tingkat tinggi dan bahas tingkat rendah. Kemudahan dalam membuat program diambil dari bahasa tinggkat tinggi dan kecepatan eksekusi diambil dari bahasa tingkat rendah yang merupakan tujuan dari dibuatnya bahasa C. KELEBIHAN DAN KELEMAHAN BAHASA C Beberapa kelebihan Bahasa C, diantaranya : 1. Bahasa C tersedia hampir di semua jenis computer; 2. Banyak memiliki operator untuk menipulasi data; 3. Bahasa C hanya menyediakan sedikit kata-kata kunci (hanya terdapat 32 kata kunci); 4. Proses executable program bahasa C lebih cepat; 5. Dukungan pustaka yang banyak. 6. Berbagai struktur data dan pengendalian proses disediakan, sehingga bahasa C adalah bahasa yang terstruktur (yaitu bahasa yang mudah untuk dipahami dan dikembangkan); 7. Bahasa C termasuk bahasa tingkat menengah penempatan ini hanya menegaskan bahwa bahasa C bukan bahasa pemrograman yang berorientasi pada mesin. yang merupakan ciri bahasa tingkat rendah, melainkan berorientasi pada obyek tetapi dapat dinterprestasikan oleh mesin dengan cepat secepat bahasa mesin. inilah salah satu kelebihan bahasa C yaitu memiliki kemudahan dalam menyusun programnya semudah bahasa tingkat tinggi namun dalam mengesekusi program secepat bahasa tingkat rendah. Adapun Kelemahan/Kekurangan Bahasa C adalah : 1. Banyaknya operator serta fleksibilitas penulisan program kadang-kadang membingungkan pemakai. Kalau tidak dikuasai akan menimbulkan masalah; 2. Bagi para pemrogram pemula dengan bahasa C, pada umumnya akan kesulitan menggunakan pointer karena tidak terbiasa menggunakannya. KOMPILER DALAM BAHASA C Agar suatu program dalam bahasa pemrograman dapat dimengerti oleh komputer, maka program tersebut haruslah diterjemahkan terlebih dahulu ke dalam kode mesin. Adapun jenis penterjemah yang digunakan adalah kompiler. Suatu source program C baru dapat dijalankan setelah melalui tahap kompilasi dan penggabungan. Tahap kompilasi dimaksudkan untuk memeriksa source-program sesuai dengan kaidah-kaidah yang berlaku di dalam bahasa pemrograman C. Tahap kompilasi akan menghasilkan relocatable object file. File-file objek tersebut kemudian digabung dengan perpustakaan fungsi yang sesuai untuk menghasilkan suatu executable program (program yang dapat dieksekusi secara langsung). Adapun proses kompilasi dalam bahasa pemrograman C dapat dilihat dalam gambar sebagai berikut : 
       
       

      Kamis, 10 Februari 2011

      TUGAS FISIKA KUMPULAN SOAL 5 DAN SOAL 9
























      Minggu, 06 Februari 2011

      TUGAS FISIKA (MEDAN LISTRIK)

      Rabu, 27 Oktober 2010

      TUGAS 1 FISIKA DASAR

      HUKUM COULOMB

      Charles Coulomb

      Charles-Augustin de Coulomb
      Charles-Augustin de Coulomb
      Charles-Augustin de Coulomb (14 Juni 173623 Agustus 1806) adalah seorang ilmuwan Perancis yang diabadikan namanya untuk satuan listrik untuk menghormati penelitian penting yang telah dilakukan oleh ilmuwan ini.
      Coulomb berasal dari keluarga bangsawan yang berpengaruh hingga pendidikannya terjamin. Ia berbakat besar dalam bidang matematika dan belajar teknik untuk menjadi Korps Ahli Teknik Kerajaan. Setelah bertugas di Martinique selama beberapa tahun, ia kembali ke Paris dan di tahun 1779 terpilih menjadi anggota Akademi Ilmiah di tahun 1781. Pada waktu Revolusi Perancis pecah, ia terpaksa meninggalkan Paris tinggal di Blois dengan sahabatnya yang juga ilmuwan, Jean-Charles de Borda (1733-1799). Ia meneruskan berbagai percobaannya dan akhirnya diangkat menjadi inspektur pendidikan di tahun 1802.
      Percobaan awal Coulomb meliputi tekanan yang bisa memecahkan suatu benda (1773) dan ini adalah awal ilmu modern tentang kekuatan benda-benda. Karyanya di bidang listrik dan magnet yang membuatnya begitu terkenal, baru diterbitkan dalam serangkaian makalah antara tahun 1785 dan 1789.
      Melakukan percobaan dengan magnet kompas, ia langsung melihat bahwa gesekan pada sumbu jarum menyebabkan kesalahan. Ia membuat kompas dengan jarum tergantung pada benang lembut. Dan ia menarik kesimpulan; besarnya puntiran pada benang haruslah sama dengan kekuatan yang mengenai jarum dari medan magnetik bumi. Ini mengawali penemuan Timbangan Puntir, untuk menimbang benda-benda yang sangat ringan. (Geolog Inggris John Michell secara terpisah juga menemukan timbangan puntir di tahun 1750, tetapi ia gagal menggunakannya untuk mengukur medan daya tarik bumi).
      Timbangan puntir tadi membawa Coulomb ke penemuannya yang paling penting. Dengan menggerakkan dua bulatan bermuatan listrik di dekat timbangan puntir, ia menunjukkan bahwa kekuatan di antara kedua benda itu berbeda-beda jika kedua benda itu saling menjauh. Ia mempelajari akibat gesekan pada mesin-mesin dan menampilkan teori tentang pelumasan. Semua ini, bersama pandangannya tentang magnet, diterbitkan di Teori tentang Mesin Sederhana pada tahun 1779.
      Dari tahun 1784 sampai 1789, saat bekerja di berbagai departemen pemerintah, ia terus meneliti elektrostatika dan magnet. Tahun 1785 keluarlah hukum Coulomb; daya tarik dan daya tolak kelistrikan antara dua benda yang bermuatan listrik adalah perkalian muatannya dengan kuadrat terbalik dari jaraknya. Rumus ini sangat mirip dengan hukum gravitasi Newton.
      Di Blois, Coulomb meneliti sifat muatan listrik pada benda dan diketemukannya bahwa muatan tersebut hanya ada pada permukaan benda. Didapatkannya pula bahwa daya magnet juga mengikuti hukum kuadrat terbalik seperti daya listrik statis. Beberapa karyanya ditemukan juga oleh Henry Cavendish tetapi karya Cavendish baru terbit tahun pada tahun 1879. Penemuan Coulomb yang memastikan adanya hubungan antara kelistrikan dan magnetisme kelak dibuktikan oleh Hans Christian Ørsted serta Siméon Poisson. Dan ini menjadi dasar penelitian elektrodinamika oleh Andre-Marie Ampere. Semua karyanya menunjukkan orisinalitas dan penelitian yang teliti serta tekun

      Hukum Coulomb
      Hukum Coulomb adalah hukum yang menjelaskan hubungan antara gaya yang timbul antara dua titik muatan, yang terpisahkan jarak tertentu, dengan nilai muatan dan jarak pisah keduanya.
      gambar-1
      [1] Hukum ini menyatakan apabila terdapat dua buah titik muatan maka akan timbul gaya di antara keduanya, yang besarnya sebanding dengan perkalian nilai kedua muatan dan berbanding terbalik dengan kuadrat jarak antar keduanya .
      [2] Interaksi antara benda-benda bermuatan (tidak hanya titik muatan) terjadi melalui gaya tak-kontak yang bekerja melampaui jarak separasi.
      [3] Adapun hal lain yang perlu diperhatikan adalah bahwa arah gaya pada masing-masing muatan terletak selalu sepanjang garis yang menghubungkan kedua muatan tersebut. Gaya yang timbul dapat membuat kedua titik muatan saling tarik-menarik atau saling tolak-menolak, tergantung nilai dari masing-masing muatan. Muatan sejenis (bertanda sama) akan saling tolak-menolak, sedangkan muatan berbeda jenis akan saling tarik-menarik.


      Notasi Vektor
      Dalam notasi vektor, hukum Coloumb dapat dituliskan sebagai:
      gambar-hk-2
      yang dibaca sebagai gaya yang dialami oleh muatan q1 akibat adanya muatan q2. Untuk gaya yang dialami oleh muatan q2 akibat adanya muatan q1 dituliskan dengan menukarkan indeks 1 \leftrightarrow 2, atau melalui hukum ketiga Newton dapat dituliskan :
      hk-3




      Konsep Dasar Listrik Statis
      Listrik statis (electrostatic) membahas muatan listrik yang berada dalam keadaan diam (statis). Listrik statis dapat menjelaskan bagaimana sebuah penggaris yang telah digosok-gosokkan ke rambut dapat menarik potongan-potongan kecil kertas. Gejala tarik menarik antara dua buah benda seperti penggaris plastik dan potongan kecil kertas dapat dijelaskan menggunakan konsep muatan listrik.
      Berdasarkan konsep muatan listrik, ada dua macam muatan listrik, yaitu muatan positif dan muatan negatif. Muatan listrik timbul karena adanya elektron yang dapat berpindah dari satu benda ke benda yang lain. Benda yang kekurangan elektron dikatakan bermuatan positif, sedangkan benda yang kelebihan elektron dikatakan bermuatan negatif. Elektron merupakan muatan dasar yang menentukan sifat listrik suatu benda.
      Dua buah benda yang memiliki muatan sejenis akan saling tolak menolak ketika didekatkan satu sama lain. Adapun dua buah benda dengan muatan yang berbeda (tidak sejenis) akan saling tarik menarik saat didekatkan satu sama lain. Tarik menarik atau tolak menolak antara dua buah benda bermuatan listrik adalah bentuk dari gaya listrik yang dikenal juga sebagai gaya coulomb.


      Gaya Coulomb
      Gaya coulomb atau gaya listrik yang timbul antara benda-benda yang bermuatan listrik dipengaruhi oleh dua faktor, yaitu sebanding besar muatan listrik dari tiap-tiap benda dan berbanding terbalik dengan kuadrat jarak antara benda-benda bermuatan listrik tersebut.
      gaya coulomb antara dua benda bermuatan listrik
      gaya coulomb antara dua benda bermuatan listrik
      Jika benda A memiliki muatan q1 dan benda B memiliki muatan q2 dan benda A dan benda B berjarak r satu sama lain, gaya listrik yang timbul di antara kedua muatan tersebut dapat dituliskan sebagai berikut
      listrik01
      Dimana
      F adalah gaya listrik atau gaya coulomb dalam satuan newton k adalah konstanta kesebandingan yang besarnya 9 x 109 N m2 C–2 muatan q dihitung dalam satuan coulomb (C)
      konstanta k juga dapat ditulis dalam bentuk
      listrik02
      dengan ε0 adalah permitivitas ruang hampa yang besarnya 8,85 x 10–12 C2 N–1 m–2
      Gaya listrik merupakan besaran vektor sehingga operasi penjumlahan antara dua gaya atau lebih harus menggunakan konsep vektor, yaitu sesuai dengan arah dari masing-masing gaya. Secara umum, penjumlahan vektor atau resultan dari dua gaya listrik F1 dan F2 adalah sebagai berikut.
      1. untuk dua gaya yang searah maka resultan gaya sama dengan penjumlahan dari kedua gaya tersebut. Adapun, untuk dua gaya yang saling berlawanan, resultan gaya sama dengan selisih dari kedua gaya
      (gambar)
      R = F1 + F2 dan R = F1F2
      2. untuk dua gaya yang saling tegak lurus, besar resultan gayanya adalah
      listrik03 (gambar)
      3 untuk dua gaya yang membentuk sudut θ satu sama lain, resultan gayanya dituliskan sebagai berikut
      listrik04
      (gambar)
      Untuk penjumlahan lebih dari dua gaya, perhitungannya dapat menggunakan metode analitis (lihat pembahasan tentang analisis vektor).


      Medan Listrik
      Sebuah muatan listrik dikatakan memiliki medan listrik di sekitarnya. Medan listrik adalah daerah di sekitar benda bermuatan listrik yang masih mengalami gaya listrik. Jika muatan lain berada di dalam medan listrik dari sebuah benda bermuatan listrik, muatan tersebut akan mengalami gaya listrik berupa gaya tarik atau gaya tolak.
      Arah medan listrik dari suatu benda bermuatan listrik dapat digambarkan menggunakan garis-garis gaya listrik. Sebuah muatan positif memiliki garis gaya listrik dengan arah keluar dari muatan tersebut. Adapun, sebuah muatan negatif memiliki garis gaya listrik dengan arah masuk ke muatan tersebut.
      Gambar
      Besar medan listrik dari sebuah benda bermuatan listrik dinamakan kuat medan listrik. Jika sebuah muatan uji q’ diletakkan di dalam medan listrik dari sebuah benda bermuatan, kuat medan listrik E benda tersebut adalah besar gaya listrik F yang timbul di antara keduanya dibagi besar muatan uji. Jadi, dituliskan
      listrik052dan F = E q’
      Adapun kuat medan listrik dari sebuah benda bermuatan listrik q di suatu titik yang berjarak r dari benda tersebut dapat dituliskan sebagai berikut
      listrik062Di sini kuat medan listrik dituliskan dalam satuan N/C.
      Kuat medan listrik juga merupakan besaran vektor karena memiliki arah, maka penjumlahan antara dua medan listrik atau lebih harus menggunakan penjumlahan vektor. Arah medan listrik dari sebuah muatan positif di suatu titik adalah keluar atau meninggalkan muatan tersebut. Adapun, arah medan listrik dari sebuah muatan negatif di suatu titik adalah masuk atau menuju ke muatan tersebut.
      Gambar
      Dua plat sejajar yang bermuatan listrik dapat menyimpan energi listrik karena medan listrik timbul di antara dua plat tersebut. Kuat medan listrik di dalam dua plat sejajar yang bermuatan listrik adalah
      listrik071Dimana
      σ adalah rapat muatan dari plat yang memiliki satuan C/m2
      ε0 adalah permitivitas ruang hampa
      (gambar) (gambar)
      Kita juga dapat menghitung kuat medan listrik dari sebuah bola konduktor berongga yang bermuatan listrik, yaitu sebagai berikut.
      Di dalam bola (r < R), E = 0
      Di kulit atau di luar rongga (r > R),
      listrik081

      Hukum coulumb berbunyi sebagai berikut : " Gaya tarik atau gaya tolak dua benda yang bermuatan listrik berbanding terbalik dengan kuadrat jaraknyadan berbanding lurus dengan besar masing-masing muatan".

      Definisi Hukum coulumb sebagai berikut: “ hukum yang menyatakan bahwa gaya tarik-menarik atau tolak-menolak antara dua muatan listrik berbanding lurus dengan muatannya dan berbanding terbalik dengan kuadrat jarak antara muatan seperti bergantung pada medium muatan itu”.







      Subscribe To RSS

      Sign up to receive latest news