Kamis, 10 Juni 2010

Entri Buku dan Validasinya

@html>
@head>
@title>Entri Data Buku@/title>
@meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
@Script type="text/JavaScript" src=ajax1mhs.js>@/script>

(di bawah ini script validasi!!!!)

@script language="javascript">
@!--
function trim(str)
{
return str.replace(/^\s+|\s+$/g,'');
}
function validasi()
{
var ckode_buku, cjudul;
with(window.document.fbuku)
{
ckode_buku = textkode_buku;
cjudul = textjudul;
}
if(trim(ckode_buku.value)=='')
{
alert('Silakan isi dulu kode buku');
ckode_buku.focus();
return false;
}
else
if(trim(cjudul.value)=='')
{
alert('Silakan isi terlebih dahulu judul buku');
cjudul.focus();
return false;
}
else
{
ckode_buku.value = trim(ckode_buku.value);
cjudul.value = trim(cjudul.value);
}
}
//-->

@/script>
@/head>
@/head>


@body>
@form name=fbuku onsubmit="validasi();" action= "simpan_buku.php" method= "POST">
@center>
@h3>ENTRI BUKU@/h3>
@table>
@tr>@td>Kode Buku@/td>@td>:@/td>
@td>@input type=text name="kode_buku" size=6 maxlength=6>@input type=button value=? OnClick='lihat_mahasiswa(kode_buku.value);'>@/td>
@/tr>

@tr>@td colspan=3> @div id=TEMPAT>@/div>@/td>@/tr>

@tr>@td>judul@/td>@td>:@/td>
@td>@input type=text name="judul" size=20 maxlength=20>@/td>
@/tr>
@tr>@td>@input type=submit value=simpan>@/td>@/tr>

@/table>
@/center>
@/form>
@/body>
@/html>

Koneksi

@?php
$namaserver="localhost";
$username="root";
$password="stmik09";
$koneksi = mysql_connect($namaserver,$username,$password);
if (!$koneksi)
{
die ('koneksi gagal !!: ' .mysql_error());
}
?>

Form Simpan Buku

@?Php
include ("koneksi.php");
$kode_buku = $_POST[kode_buku];
$judul = $_POST[judul];

echo $kode_buku;
echo "@BR>".$judul;
mysql_select_db('perpustakaan');
$query_buku=mysql_query("INSERT INTO buku1(kode_buku,judul) VALUES ('".$kode_buku."','".$judul."')");
echo "Data Berhasil Disimpan";
?>

Form Lihat Buku

@?php
include ('koneksi.php');
mysql_select_db("perpustakaan");
$periksa= mysql_query('SELECT * FROM buku1 where kode_buku=$kode');
if($periksa !=0);
{
echo 'Data sudah ada, silakan entri baru';
}
$querybuku01= mysql_query('SELECT * FROM buku1');
$jumlah = mysql_num_rows($querybuku1);
echo '@table>';
echo '@tr>@th>kode buku@/th>@th>judul buku@/th>@/tr>';
for ($i = 0; $i @= $jumlah; $i++);
{
$buku = mysql_fetch_array($querybuku1);
echo '@tr>@td> '.$buku[kode_buku].' @/td>';
echo ' @td> '.$buku[judul].'@/td> @/tr>';
}
echo '@/table>';
?>

Form Entri Buku

@html>
@head>
@title>Form Entri Buku@/title>
@/head>
@body>
@h4>FORM ENTRI DATA BUKU@/h4>
@form name="fbuku" action="simpan_buku.php" method=POST>

@table>
@tr>
@td>Kode Buku@/td>@td>:@/td>
@td>@input type = text name=textbuku size=7 maxlength=6>@/td>
@/tr>

@tr>
@td>Judul@/td>@td>:@/td>
@td>@input type = text name= judul size=15 maxlength=30>@/td>
@/tr>

@tr>
@td colspan=3>
@input type = submit name=btnsimpan value=simpan>
@/td>
@/tr>
@/table>
@form>
@/body>
@/html>

Sabtu, 06 Maret 2010

LIHAT BUKU

@?php
include('koneksi.php');
mysql_select_db('DBPerpustakaan');

$query_buku = mysql_query("SELECT * FROM buku01");
$jm_baris = mysql_num_rows($query_buku);

echo "@table>";
echo "@tr>@th>Nomor@/th> @th>Kode Buku@/th> @th>Judul Buku@/th>@/tr>";

for ($i=1; $i@= $jm_baris; $i++)
{
$buku = mysql_fetch_array($query_buku);
echo "@tr>@td>".$i."@/td> @td>".$buku[kode]."@/td> @td>".$buku[judul]."@/td>@/tr>";
}
echo "@/table>";
?>

MENU

@html>
@head>
@title>Menu Utama@/title>
@/head>
@body>
@h1>MENU@/h1>
@br>@a href='form_buku.php' target='isi'>Master Buku@/a>
@br>@a href='lihat_buku.php' target='isi'>Lihat Data@/a>
@br>@a href='cetak_buku.php' target='isi'>Cetak@/a>
@h5>copyright@2010@/h5>
@p>be a creative@/p>
@/body>
@/html>

FORM BUKU

@html>
@head>
@title>Form Entri Buku@/title>
@/head>
@body>
@h4>FORM ENTRI DATA BUKU@/h4>
@form name="fbuku" action="simpan_buku.php" method=POST>

@table>
@tr>
@td>Kode Buku@/td>@td>:@/td>
@td>@input type = text name=textbuku size=7 maxlength=6>@/td>
@/tr>

@tr>
@td>Judul@/td>@td>:@/td>
@td>@input type = text name= judul size=15 maxlength=30>@/td>
@/tr>

@tr>
@td colspan=3>
@input type = submit name=btnsimpan value=simpan>
@/td>
@/tr>
@/table>
@form>
@/body>
@/html>

SIMPAN BUKU

@?php>
include('koneksi.php');
mysql_select_db('DBPerpustakaan');
$kode = $_POST[textbuku];
$judul = $_POST[judul];

$query_buku = mysql_query("SELECT * FROM buku01 WHERE kode='".$kode."'");
$jm_baris = mysql_num_rows($query_buku);

if($jm_baris==1)
{
echo "@h3>Maaf Data Sudah Ada, silakan entri data baru..@/h3>";
echo "@br>@a href = form_buku.php> Kembali Ke Form Buku@/a>";
return;
}
$tambah_buku = mysql_query("INSERT INTO buku01(kode,judul) VALUES ('$kode','$judul')");
echo "@h1>Data berhasil diupdate@h1>";
echo "@br>@a href=form_buku.php>Kembali Ke Form Buku>/a>";
?>

Index(Form)

@html>
@head>@title>STMIK Kharisma Karawang@/title>
@link href="file.css" rel="stylesheet" type="text/css">

@frameset rows="20%,70%,10%" border="">
@frame name="awal" src="judul.php" scrolling="no">

@frameset cols="20%, 65%, 15% border="">
@frame name="navigasi" src="menu.php" scrolling="no">
@frame name="isi" src="profile.php" scrolling="no">
@frame name="pelengkap" src="pelengkap.php" scrollling="no">
@/frameset>

@frame name="bawah" src="bawah.php" scrolling="no">
@/frameset>
@/head>
@body>
@/body>
@/html>

Kamis, 28 Januari 2010

Index (PHP)


@?php
#include('mode.css');
echo'@head>';
echo'@meta http-equiv="refresh" name="keywords" content="stmik-kharisma">';
echo'@title>Pelatihan Pemrograman Web, STMIK Kharisma Karawang@/title>';
echo'@frameset rows="20%, *" border="0">';

echo'@frame name="frame-judul" src="judul.php" scroling="no">';
echo'@frameset cols="25%, 60%, 15%" border="0" scroling="no">';
echo'@frame name="frame_menu" src="menu.php" sroling="no">';
echo'@frame name="frame_isi" src="profile.php" scroling="no">';
echo'@frame name="frame_plk" src="plk.php" sroling="no">';
echo'@/frameset>';
echo'@/frameset>';
echo'@/head>'
?>

Senin, 10 Agustus 2009

Hemat Air

Air = water

Kalian pernah ga kelupaan nutup keran air? Pasti lah ya!! Mungkin hal semacam nie ga perlu dipusingkan, eits! Tapi ntar dulu! Tau ga? 2 menit lupa nutup keran air aja kita bisa ngisi 1 galon penuh air lho! Ih wooow! So what?

Coba deh hitung! Kalo 1 hari lupa nutup air selama 2 menit atou setara dengan 1 galon air, kita udah ngebuang duit Rp. 3500,- lha ko getu? Yaiya dundh! Org air minum isi ulang ja 1 galon ±Rp. 3500 ko!

2 menit = 1 galon = Rp. 3500 X 7hari = Rp. 24500,- /(7 galon)

Dah gitu rata-rata 1 kluarga ngabisin 1 galon ntu wat 3hari. Bayanginnn 1 minggu ngebuang 7 galon sama ja buang persediaan air untuk 21 hari!

Ntu baru itungan 1 orang untuk seminggu, lha dikali 1 bulan? 1 taon? Dengan jumlah penduduk yg segitu banyaknya. Alamaaaaak!!!! Sek sek..tak cari kalkulator dulu :p

Tapi buat sebagian orang siyh Rp. 28.000 mah kaga ngefek, tapi inget ga iklan yg semboyannya “terima kasih kita untuk semuanya”. Betapa sangat berartinya air bersih di daerah-daerah yg sulit air.

Sayang ga siyh? Yaea laaaah! Palagi sekarang buanyak kota yg wat nyari air bersih ja susah, lha kita yg udah tinggal buka keran ko malah dibuang-buang! Pernah baca buku karangan Masaru Emoto? Yg judulna “The True Power of Water”, nah dsitu djelasin bahwa air juga bisa ngerespon apa yg dilakukan manusia, air dapat menjadi Kristal yg sangat cantik jika di luar botolnya dikasih tulisan cinta kasih! Bentuknya jadi heksagonal. Sebaliknya kalo dikasih tulisan dengan kata-kata kasar air tersebut ga bisa membentuk Kristal cantik bernbentuk heksagonal.

Tapi biasanya kita tuh kae lagu Rhoma Irama! “Kalau sudah tiada, baru terasa! Sungguh kehadirannya amat berharga” maksudnya kalo udh kehilangan sesuatu baru deh ngerasain, ibarat air, kalo ude kemarow baru hemat2. Aiiiyooooo…

Naaaaaaah! Apakah sekarang kita masih mau buang-buang air?? (ups! Salah ngambil kalimat! Kalo ntu mah diare ya? Hehe.. :p muup) maksudna boros air gituuu,, yuk bareng2 mulee skrang kita hemat air! Ohooooiii….Tapi, jgn karena pengen hemat air trus kita jdi bkin program mandi 1 hari 1 kali! Jiaaaah! Ntu mah malez je! Ayey! :p


Minggu, 28 Juni 2009

Doubly Linked List

<html>
<head>
<title>Struktur Data Doubly Linked List</title>
</head>
<body>
<script language = "javascript">
<!--

function DoublyLinkedList ()
{
this._Kepala = null;
this._Ekor = null;
this._Panjang = 0;
}

DoublyLinkedlist.prototype =
{
constructor: DoublyLinkedList,


Tambah: function (data)
{
var node = {data: data, next: null, prev: null};

if (this._Panjang == 0)
{
this._Kepala = node;
this._Ekor = node;
}
else
{
this._Ekor.next = node;
node.prev = this._Ekor;
this._Ekor = node;
}
this._Panjang++;

},

ItemList: 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, i = 0;

if (index === 0)
{
this._Kepala = NodeTanda.next;
if (!this._Kepala)
{
this._Ekor = null;
}
else
{
this._Kepala.prev = null;
}

}
else
if (index === this._Panjang -1)
{
NodeTanda = this._Ekor;
this._Ekor = NodeTanda.prev;
this._Ekor.next = null;
}
else
{
while(i++ < index)
{
NodeTanda = NodeTanda.next;
}
NodeTanda.prev.next = NodeTanda.next;
}
this._Panjang--;
return NodeTanda.data;

}
else
{
return null;
}


},

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().toString();
}
}

var List = new DoublyLinkedList();


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.ItemList(i) + "<br>") ;
}
document.write("--------------- <br>");


alert("Isi LinkedList Awal =" + List.ItemList(0));
alert("ItemList 1 pada Linked List diBuang, yaitu = " +List.ItemList(1));
List.Buang(1);



document.write("<br>Isi LinkedList Terakhir <br>");
document.write("--------------- <br>");
for (i=0; i<4; i++)
{
document.write(List.ItemList(i) + "<br>") ;
}
document.write("--------------- <br>");

//-->
</script>
</body>
</html>
<html>
<head>
<title>Struktur Data Doubly Linked List</title>
</head>
<body>
<script language = "javascript">
<!--

function DoublyLinkedList ()
{
this._Kepala = null;
this._Ekor = null;
this._Panjang = 0;
}

DoublyLinkedlist.prototype =
{
constructor: DoublyLinkedList,


Tambah: function (data)
{
var node = {data: data, next: null, prev: null};

if (this._Panjang == 0)
{
this._Kepala = node;
this._Ekor = node;
}
else
{
this._Ekor.next = node;
node.prev = this._Ekor;
this._Ekor = node;
}
this._Panjang++;

},

ItemList: 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, i = 0;

if (index === 0)
{
this._Kepala = NodeTanda.next;
if (!this._Kepala)
{
this._Ekor = null;
}
else
{
this._Kepala.prev = null;
}

}
else
if (index === this._Panjang -1)
{
NodeTanda = this._Ekor;
this._Ekor = NodeTanda.prev;
this._Ekor.next = null;
}
else
{
while(i++ < index)
{
NodeTanda = NodeTanda.next;
}
NodeTanda.prev.next = NodeTanda.next;
}
this._Panjang--;
return NodeTanda.data;

}
else
{
return null;
}


},

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().toString();
}
}

var List = new DoublyLinkedList();


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.ItemList(i) + "<br>") ;
}
document.write("--------------- <br>");


alert("Isi LinkedList Awal =" + List.ItemList(0));
alert("ItemList 1 pada Linked List diBuang, yaitu = " +List.ItemList(1));
List.Buang(1);



document.write("<br>Isi LinkedList Terakhir <br>");
document.write("--------------- <br>");
for (i=0; i<4; i++)
{
document.write(List.ItemList(i) + "<br>") ;
}
document.write("--------------- <br>");

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

Tugas VB


Membuat Form Transaksi






Untuk membuat tampilan form seperti di atas, langkah-langkahnya adalah sebagai berikut:
:z :D :p









Aturlah propertiesnya seperti pada gambar di atas :D setelah itu rancang form (Sesuai Kebutuhan). Jika propertiesnya sudah di atur, maka giliran untuk memasukan kode program seperti di bawah ini:




Private Sub CmdBaru_Click()
Tharga.Text = ""
Tjumlah.Text = ""
Ttotal.Text = ""
Tttl.Text = ""
Tdiskon.Text = ""
Thbayar.Text = ""
Tpembayaran.Text = ""
Tkembalian.Text = ""
End Sub

Private Sub CmdHitung_Click()

If Cnama.Text = "Code: 001" Then
Tharga.Text = 25000
Else
If Cnama.Text = "Code: 002" Then
Tharga.Text = 28000
Else
If Cnama.Text = "Code: 003" Then
Tharga.Text = 30000
Else
If Cnama.Text = "Code: 004" Then
Tharga.Text = 35000
End If
End If
End If
End If

Ttotal.Text = Val(Tjumlah) * Val(Tharga)
Tttl.Text = Val(Ttotal) - Val(Tttl)
If Val(Tttl) > 50000 Then
Tdiskon.Text = 0.1 * Val(Tttl)
Else
Tdiskon = 0
End If
Thbayar = Val(Tttl) - Val(Tdiskon)
Ljumlah.Caption = Thbayar.Text

End Sub

Private Sub CmdKeluar_Click()
End
End Sub


Private Sub CmdKembalian_Click()
Tkembalian = Val(Tpembayaran) - Val(Thbayar)
Ljumlah.Caption = Tkembalian
If Val(Tkembalian) < caption = "KEKURANGAN">
Else Lucapan.Caption = "TERIMA KASIH"
End If
End Sub
Private Sub Form_Load()
Cnama.AddItem "Code: 001"
Cnama.AddItem "Code: 002" Cnama.AddItem "Code: 003"
Cnama.AddItem "Code: 004"
End Sub
Private Sub Tkembalian_Change()
Ljumlah.Caption = Tkembalian
End Sub
Private Sub CmdBaru_Click()
Tharga.Text = ""
Tjumlah.Text = ""
Ttotal.Text = ""
Tttl.Text = ""
Tdiskon.Text = ""
Thbayar.Text = ""
Tpembayaran.Text = ""
Tkembalian.Text = ""
End Sub
Private Sub CmdHitung_Click()
If Cnama.Text = "Code: 001" Then
Tharga.Text = 25000
Else
If Cnama.Text = "Code: 002" Then
Tharga.Text = 28000
Else
If Cnama.Text = "Code: 003" Then
Tharga.Text = 30000
Else
If Cnama.Text = "Code: 004" Then
Tharga.Text = 35000
End If
End If
End If
End If
Ttotal.Text = Val(Tjumlah) * Val(Tharga) Tttl.Text = Val(Ttotal) - Val(Tttl) If Val(Tttl) > 50000 Then
Tdiskon.Text = 0.1 * Val(Tttl)
Else
Tdiskon = 0
End If
Thbayar = Val(Tttl) - Val(Tdiskon)
Ljumlah.Caption = Thbayar.Text

End Sub

Private Sub CmdKeluar_Click()
End
End Sub


Private Sub CmdKembalian_Click()
Tkembalian = Val(Tpembayaran) - Val(Thbayar)
Ljumlah.Caption = Tkembalian
If Val(Tkembalian) < caption = "KEKURANGAN" caption = "TERIMA KASIH" caption =" Tkembalian">


Setelah memasukkan kode program, kemudian di running. jika berhasil maka jalannya form akan seperti berikut:

pilih nama barang
masukkan jumlah barang
klik hitung
jika berhasil maka form akan terisi oleh angka-angka,
setelah itu masukkan nominal uang pada kolom pembayaran
kemudian klik kembalian, maka akan muncul nominal hasil perhitungan.

Inilah hasil akhir form!!! horeeee :D :~ :~ :~ :~ :~ :~ :~ :~ :~








Selasa, 23 Juni 2009

Modul VII


Pengurutan Sort

A. Landasan Teori
Pengurutan (Sorting) adalah proses menyusun kembali data yang sebelumnya telah disusun dengan suatu pola tertentu ataupun masih acak, sehingga tersusun secara teratur menurut aturan dan pola tertentu.



Contoh:
Data Acak : 1, 5, 6, 8, 1, 3, 25, 85
Ascending : 1, 1, 3, 5, 6, 8, 25, 85
Descending : 85, 25, 8, 6, 5, 3, 1, 1


Salah satu metode pengurutan data adalah Bubble Sort, yaitu mengurutkan data dengan
cara membandingkan elemen data sekarang (Acuan) dengan elemen berikutnya.

Pengurutan Ascending: Jika elemen sekarang lebih besar dari elemen berikutnya, maka kedua elemen tersebut ditukar.

Pengurutan Descending: Jika elemen sekarang lebih kecil dari elemen berikutnya, maka kedua elemen tersebut ditukar.

Ketika satu proses telah selesai, maka bubble sort akan mengulang proses, demikian seterusnya sampai dengan interaksi sebanyak n-1. Proses Algoritma Bubble Sort berhenti jika seluruh array telah diperiksa dan tidak ada pertukaran lagi yang bisa dilakukan, serta tercapai perurutan yang telah di inginkan.


B. Contoh Program:

?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++)
{
iputData[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>
Masukkan Deretan Angka, Pisahkan Dengan Koma :
?hr>
?br> ?input type=text name=Data size=30 value="5, 6, 8, 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>


Selasa, 16 Juni 2009

GRAPH

GRAPH
<html>
<head><title>jkstra Algorithms</title>
<script>
<!--
alert ("Taet Dijkstra");
//-->

</script>
</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;
{
message("Jarak : " + Posisi[i]+' ('+Lintasan+') '+'<br>');
}
else
{
message("Tidak Ada Jalur")
}
}

function init(){
var x = NilaiAcuan
Matriks[0]=new Array(0, 2, 3, x, x, x)
Matriks[1]=new Array(2, 0, 3, 6, x, x)
Matriks[2]=new Array(3, 3, 0, 3, 5, x)
Matriks[3]=new Array(x, 6, 3, 0, 1, 3)
Matriks[4]=new Array(x, x, 5, 1, 0, 1)
Matriks[5]=new Array(x, x, x, 3, 1, 0)

var Awal='<pre>'
Awal = Awal + 'A--2-B-6--D--3-F'+'<br>'
Awal = Awal + ' \ / / '+'<br>'
Awal = Awal + ' 3 3 3 1 1 '+'<br>'
Awal = Awal + ' \ / / '+'<br>'
Awal = Awal + ' \/ / '+'<br>'
Awal = Awal + ' C--5-E '+'<br>'
Awal = Awal + '</pre>'

message(Awal.replace(/(\d)+/g, '<font color="red">$1</font>'));
}
init()
var Dari = 0 // A
var Ke = 5 // F
Dijkstra(Matriks.length,Dari,Ke);
//-->
</script>
</body>
</html>

Selasa, 19 Mei 2009

MODUL VI

SUSUNAN / DAFTAR DATA TERKAIT (LINKED LIST)
A. Landasan Teori

Linked list (Daftar Bertaut) adalah salah satu Struktur data dasar yang menggambarkan sekumpulan data yang saling terkait dengan ditandai dengan adanya Head sebagai kepala dari List, Pointer sebagai penghubung antar Node, serta Tail sebagai ujung dari List. Linked mirip dengan array, kecuali pada Linked list data yang ingin disimpan dapat dialokasikan secara dinamis pada saat pengoperasian program (run-time).
List terdiri dari:
  • Head (Kepala)
  • Pointer (Penunjuk)
  • Tail (Ujung)

Jenis-jenis linked List:

  • Linear Linked list (Searah)
  • Circular linked List (Searah)
  • Single Linked list
  • Double Linked List
B. Praktek
  1. Deklarasi Awal Pembentukan Linked List:

function Linked List()
{
This._panjang = 0;
This._kepala = null;
}

2. Konstruksi (pembentukan) metode yang akan dimiliki oleh Linked List, yaitu:

  • Tambah (untuk menambahkan Item/Node)
  • Item (untuk menunjuk Item List berdasarkan Index)
  • Buang (untuk membuang elemen linked list)
  • Ukuran (menentukan jumlah elemen linked list)
  • toArray (mengkonversi Linked list ke dalam susunan Array)
  • toString (untuk menghasilkan susunan Array bertipe String

3. Pembentukan Metode dalam linked List dengan Prototype:

Linked List.prototype =
{
Constructor:
LinkedList,
Tambah,
Item,
Buang,
Ukuran,
toString,
toArray;
}

Blok Penulisan Kode:


<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("Komputer Networking");


document.write("Isi Linked List <br>");
document.write("--------------- <br>");
for (i=0; i<4; i++)
{
document.write(list.Item(i) + "<br>");
}
document.write("--------------- <br>");

alert("Isi Linked List Awal =" +list.Item(0));
alert("Item 1 Pada Linked List dibuang, Yaitu =" +list.Item(1));
list.Buang(1);



document.write("Isi Linked List Terakhir <br>");
document.write("---------------- <br>");
for (i=0; i<4; i++)
{
document.write(list.Item(i) + "<br>");
}
document.write("---------------- <br>");

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

Jumat, 15 Mei 2009

Take Ngorek

haduh haduh...UAS bentar lagi tapi tugas nya lum kelar juga :c tugas VB juga lum kepikiran mau bikin apa :t cerita ma kakak malah diceramahin!! 1 jam exlusive pula! just do it without complaining katanya teh! yang paling menguras air mata adalah tugas makalah ekonomi yang data-datanya pada ilang!! huaaaa...!!! :c mesti mulai dari awal lagi!! yeah yeah bersemangat!! :z :~

Kamis, 14 Mei 2009

Tambahan Record

Cara Membuat Messages Box dengan Record

?html>
?head>
?title> Membuat Rekaman Objek ?/title>
?/head>
?body>
?script language="JavaScript">
?!--
var Record = new Array();
function Mahasiswa (npm, nama, matkul, nilai_angka, nilai_huruf) {
// Properti
this.npm = npm;
this.nama = nama;
this.matkul = matkul;
this.nilai_angka = nilai_angka;
this.nilai_huruf = nilai_huruf;

// Metode

this.LihatRecordMahasiswa = LihatRecordMahasiswa;
}

function LihatRecordMahasiswa() {
document.write("?td>" + this.npm + "?/td>");
document.write("?td>" + this.nama + "?/td>");
document.write("?td>" + this.matkul + "?/td>");
document.write("?td>" + this.nilai_angka + "?/td>");
document.write("?td>" + this.nilai_huruf + "?/td>");
}

//mengisi data
for (I=1; I?=5; I++)
{
npm=window.prompt("NPM");
nama=window.prompt("Nama");
matkul=window.prompt("Matkul");
nilai_angka=window.prompt("Nilai Angka");

if (nilai_angka ?= 49)
{nilai_huruf = "E";}
else
{
if (nilai_angka ?= 59)
{nilai_huruf = "D";}
else
{
if (nilai_angka ?= 69)
{nilai_huruf = "C";}
else
{
if (nilai_angka ?= 79)
{nilai_huruf = "B";}
else

{nilai_huruf = "A";}


}}}

Record[I] = new Mahasiswa (npm, nama, matkul, nilai_angka, nilai_huruf);

}


//menampilkan data
document.write("?table border = '1'>");
document.write("?th>NPM?/th> ?th>Nama?/th>");
document.write("?th>Matkul?/th> ?th>Nilai Angka?/th> ?th>Nilai Huruf?/th> ?br>");

for (I=1; I ? Record.length; I++)
{
document.write("?tr>");
Record[I].LihatRecordMahasiswa();
document.write("?/tr>");
}
document.write("?/table> ?br>");


//-->

?/script>
?/body>
?/html>

MODUL V

ANTRIAN (QUEUE)


A. Landasan Teori

Antrian (Queue) adalh merupakan sekumpulan data terstruktur yang diolah dengan prinsip Pengolahan Data FIFO (First In First Out)


B. Praktek

  1. Queue ke 1

?html>
?head>
?title>Program Queue dengan shift dan unshift javascript?/title>
?script language="JavaScript">

function DataQueue()
{
var queue = [];
queue.unshift(1);
queue.unshift(2);

var i=queue.pop();
document.write(i+"?br/>");
queue.unshift(3);
queue.unshift(4);
var i = queue.pop();
document.write(i+"?br/>");
}

?/script>
?/head>

?body>
?form name="FormStrukturData">
?input name="btnQueue" value="Queue" type="button"
onclick="DataQueue();"/>
?/form>
?/body>
?/html>


2. Queue ke 2

?html>
?head>
?title>Struktur Data 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 "Antrian 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>
?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>
?input type=text name=textAmbil size=20>
?input type=button value="Keluar Antrian"
onClick="textAmbil.value=Keluar_Antrian();
Dalam_Antrian(Visualisasi);">
?/form>
?/body>
?/html>