Jumat, 17 April 2015

Tampilan Web Sederhana

<html>
<head>
<title>Membuat Tampilan Web Sederhana</title>
    <style type="text/css">
body {
font-family:arial;
font-size:14px;
}

#canvas{
width:1200px;
margin:0 auto;
border:1px solid silver;
}

#kepala{
font-size:36px;
padding:20px;
}

#menu{
background-color:#003399;
font-size:16px;
}
#menu ul{
list-style:none;
}
#menu ul li{
display:inline-table;
}
#menu ul li a{
display:block;
line-height:40px;
margin:0;
padding:0 10px;
color:#ffffff;
text-decoration:none;
}
#menu ul li:hover{
background-color:#00CC33;
}

#isi{
min-height:400px;
}

#footer{
background-color:#000000;
text-align:center;
}
</style>
</head>
<body>
<div id="canvas">
<div id="kepala">
bagian atas/kepala
</div>
<div id="menu">
<ul>
            <li><a href"">Home</a></li>
                <li><a href"">Profile</a></li>
                <li><a href"">Kontak</a></li>
               
            </ul>
</div>
<div id="isi">
bagian isi/conten
</div>
<div id="footer">
bagian kaki/footer
</div>
</div>
</body>


</html>

Minggu, 27 April 2014

Perangkat Lunak SIG



SIG merupakan sistem berbasis komputer yang didesain untuk mengumpulkan, mengelola, memanipulasi, dan menampilkan data spasial (keruangan) berupa informasi yang mempunyai hubungan geometrik dalam arti bahwa informasi tersebut dapat diukur, dihitung, dan disajikan dalam sistem koordinat, dengan data berupa data digital yang terdiri dari data posisi (data spasial) dan data semantiknya (data atribut).

Komponen SIG meliputi salah satunya adalah perangkat lunak (software) diantaranya :
  1. ArcInfo
  2. ArcView
  3. MapInfo
  4. ArcGIS
  5. MapServer

1. ArcInfo
ArcInfo merupakan salah satu perangkat lunak GIS yang telah banyak digunakan oleh para ahli di bidang GIS. Pada prinsipnya ini sangat mendukung dalam pembuatan dan pembangunan sebuah peta yang berdasarkan pada prinsip-prinsip informasi pemetaan yang terpadu. Prinsip informasi peta ini pada dasarnya dapat dibagi menjadi 2 (dua) bagian, yaitu:
  • informasi keruangan, yang menggambarkan lokasi dan bentuk dari unsur-unsur geografi dan hubungannya dengan unsur-unsur yang lain (unsur-unsur ini meliputi; titik, garis, dan luasan/area).
  • informasi dekriptif, berhubungan dengan unsur-unsur geografi tersebut (atribut peta).

2. ArcView
Arcview merupakan sebuah aplikasi SIG yang dikembangkan oleh Esri.Inc yang memiliki kemampuan untuk menampilkan, membuat, mengatur dan memanipulasi data spasial/geografis.
Konsep yang digunakan oleh acrview sama seperti SIG lain yaitu dengan penerapan layering yang setiap layer diisi oleh satu tipe layer.
Tipe layer yang diperbolehkan adalah
  • Tipe Point/Titik yang digunakan untuk menentukan lokasi tepat suatu objek. Dengan sifat hanya memiliki titik tengah saja.
  • Tipe Line/Garis yang digunakan untuk menentukan suatu jalan, sungai atau batas. dengan sifat memiliki titik tengah dan panjang.
  • Tipe Polygon/Area/Shape yang digunakan untuk menentukan suatu keadaan daerah denga sifat memiliki titik tengah, keliling dan luasan.
Layer dalam arcview disebut juga sebagai Theme.
Komponen terdapat dalam Acrview dibagi menjadi 5 bagian yaitu:
  • View
Merupakan window untuk menampilkan semua data gambar yang ada baik dalam bentu vektor maupun bentuk Raster.
  • Table
Merupakan window/document untuk menampilkan data tabular
  • Chart
Merupakan window output untuk analisis data tabular
  • Layout
Merupakan window output untuk analisis data visual
  • Script
Merupakan window proses untuk membentuk/mengatur jalannya arcview.

3. MapInfo

MapInfo adalah aplikasi Sistem Informasi Geografis yang dikembangkan oleh MapInfo corp. sejak tahun 1986. Sebuah perusahaan yang didirikan oleh empat orang mahasiswa Institut Politeknik Rensellaer, Troy, New York.
Oleh karena komitmennya di dalam bidang garapannya, pada saat ini MapInfo menjadi salah satu produk perangkat lunak SIG yang sangat sukses di pasaran, parameternya:
1. MapInfo tersedia dalam 16 versi bahasa yang berbeda
2. MapInfo terjual ratusan ribu copy di dunia
3. MapInfo menjadi perangkat lunak standard untuk pemetaan di lingkungan pemerintah Australia
4. MapInfo secara defacto menjadi perangkat lunak standard untuk aplikasi – aplikasi telekomunikasi
Sehubungan dengan hal di atas, MapInfo merupakan salah satu perangkat lunak pemetaan (SIG) desktop yang dikembangkan dan kemudian dipasarkan untuk memenuhi (sebagian besar) kebutuhan-kebutuhan di lingkungan bisnis. Perangkat lunak SIG ini memungkinkan para penggunanya untuk memvisualisasikan dan menganalisa data-data yang menjadi masukannya secara geografis lebih cepat dan menyediakan informasi yang diperlukan di dalam proses pengambilan keputusan.

4. ArcGIS

Perangkat lunak ArcGIS merupakan perangkat lunak SIG yang baru dari ESRI, yang memungkinkan kita memanfaatkan data dari berbagai format data. Dengan ArcGIS kita memanfaatkan fungsi desktop maupun jaringan. Dengan ArcGIS kita bisa memakai fungsi pada level ArcView, ArcEditor, Arc/Info dengan fasilitas ArcMap, ArcCatalog dan Toolbox. Materi yang disajikan adalah konsep SIG, pengetahuan peta, pengenalan dan pengoperasian ArcGIS, input data dan manajemen data spasial, pengoperasian Arc Catalog, komposisi/ tata letak peta dengan ArcMap.

5. MapServer

MapServer merupakan aplikasi freeware yang memungkinkan kita menampilkan data spasial di web. Pada bentuk paling dasar, MapServer berupa sebuah program CGI (Common Gateway Interface). Program tersebut akan ditampilkan di web server, dan berdasarkan beberapa parameter tertentu akan menghasilkan data yang kemudian akan dikirim ke web browser, baik dalam bentuk gambar peta ataupun bentuk lain.
MapServer mempunyai fitur¬fitur berikut:
  • menampilkan data spasial dalam format vektor seperti: Shapefile (ESRI), ArcSDE (ESRI), PostGIS dan berbagai format data vektor lain dengan menggunakan library OGR
  • menampilkan data spasial dalam format raster seperti: TIFF/GeoTIFF, EPPL7 dan berbagai format data raster lain dengan menggunakan library GDAL
  • menggunakan quadtree dalam indexing data spasial, sehingga operasi¬operasi spasial dapat dilakukan dengan cepat
  • dapat dikembangkan (customizable), dengan keluaran yang dapat diatur menggunakan file¬file template
  • dapat melakukan seleksi objek berdasar nilai, berdasar titik, area, atau berdasar sebuah objek spasial tertentu
  • mendukung rendering karakter berupa font TrueType
  • mendukung penggunaan data raster maupun vektor yang di¬tiled (dibagi¬bagi menjadi sub bagian yang lebih kecil sehingga proses untuk mengambil dan menampilkan gambar dapat dipercepat)
  • dapat menggambarkan elemen peta secara otomatis: skala grafis, peta indeks dan legenda peta
  • menggunakan skala dalam penggambaran objek spasial
  • dapat menggambarkan peta tematik yang dibangun menggunakan ekspresi lojik mapun ekspresi reguler
  • dapat menampilkan label dari objek spasial, dengan label dapat diatur sedemikian rupa sehingga tidak saling tumpang tindih
  • konfigurasi dapat diatur secara on the fly melalui parameter yang ditentukan pada URL
  • dapat menangani beragam sistem proyeksi secara on the fly.

Rabu, 08 Januari 2014

SELECTION SORT

Pengertian dari selection sort adalah mencari elemen yang tepat untuk diletakkan di posisi yang telah diketahui, dan meletakkannya di posisi tersebut setelah data tersebut ditemukan,
Selection Sort Membandingkan elemen yang sekarang dengan elemen yang berikutnya sampai dengan elemen yang terakhir. Jika ditemukan elemen lain yang lebih kecil dari elemen sekarang maka dicatat posisinya dan kemudian ditukar.
Pengurutan data dalam struktur data sangat penting untuk data yang beripe data numerik ataupun karakter.Pengurutan dapat dilakukan secara ascending (urut naik) dan descending (urut turun) Pengurutan (Sorting) adalah proses menyusun kembali data yang sebelumnya telah disusun dengan suatu pola tertentu, sehingga tersusun secara teratur menurut aturan tertentu.
Contoh:
Data Acak : 5 6 8 1 3 25 10
Ascending : 1 3 5 6 8 10 25
Descending : 25 10 8 6 5 3 1
Konsep Selection Sort Algoritma pengurutan sederhana salah satunya adalah Selection Sort. Ide dasarnya adalah melakukan beberapa kali pass untuk melakukan penyeleksian elemen struktur data. Untuk sorting ascending (menaik),
elemen yang paling kecil di antara elemen-elemen yang belum urut, disimpan indeksnya, kemudian dilakukan pertukaran nilai elemen dengan indeks yang disimpan tersebut dengan elemen yang paling depan yang belum urut. Sebaliknya, untuk sorting descending (menurun), elemen yang paling besar yang disimpan indeksnya kemudian ditukar.
Selection Sort diakui karena kesederhanaan algoritmanya dan performanya lebih bagus daripada algoritma lain yang lebih rumit dalam situasi tertentu. Algoritma ini bekerja sebagai berikut:
1. Mencari nilai minimum (jika ascending) atau maksimum (jika descending) dalam sebuah list
2. Menukarkan nilai ini dengan elemen pertama list
3. Mengulangi langkah di atas untuk sisa list dengan dimulai pada posisi kedua. Secara efisien kita membagi list menjadi dua bagian yaitu bagian yang sudah diurutkan, yang didapat dengan membangun dari kiri ke kanan dan dilakukan pada saat awal, dan bagian list yang elemennya akan diurutkan.
Simulasi Selection Sort Untuk lebih jelasnya, perhatikanlah simulasi Selection Sort Ascending berikut dengan menggunakan larik
5 1 43 27 6 18 33
Dalam satu kali, ditentukan elemen yang paling kecil di dalam bagian list yang belum urut. Elemen yang paling kecil ini, diwarnai merah . Untuk bagian larik yang telah diurutkan diberi warna kuning.

Kompleksitas Selection Sort Algoritma di dalam Selection Sort terdiri dari kalang bersarang. Dimana kalang tingkat pertama (disebut pass) berlangsung N-1 kali. Di dalam kalang kedua, dicari elemen dengan nilai terkecil. Jika didapat, indeks yang didapat ditimpakan ke variabel min. Lalu dilakukan proses penukaran Begitu seterusnya untuk setiap Pass. Pass sendiri makin berkurang hingga nilainya menjadi semakin kecil.
Stabilitas Selection Sort Selection Sort ini pada dasarnya merupakan algoritma sorting yang tidak stabil, namun dapat diubah menjadi stabil pada kasus tertentu
Algoritma sorting yang stabil akan mampu memanfaatkan relatifitas antar record melalui definisi di tiap-tiap keys yang dimiliki oleh record tersebut. Misalkan ada dua record R dan S dengan key yang sama dan dengan ketentuan R muncul sebelum S, maka pada hasil output akan muncul R sebelum S.
Namun ketika terdapat elemen yang sama (tidak dapat dibedakan) pada umumnya terdapat pada tipe data integer,stabilitas akan kembali di utamakan.

Bubble Sort

Bubble Sort adalah salah satu algoritma untuk sorting data, atau kata lainnya mengurutkan data dari yang terbesar ke yang terkecil atau sebaliknya (Ascending atau Descending). Di setiap mata kuliah algoritma atau struktur data, pasti ketemu sama algoritma sederhana yang satu ini. Algoritma Bubble Sort adalah algoritma sorting paling sederhana. Kelebihan dari algoritma ini adalah mudah dipahami dan yang paling simpel. Kekurangannya juga banyak sekali, salah satunya ialah proses akan berhenti jika tidak adanya pertukaran dalam satu iterasi. Sesuai dengan namanya, proses pengurutannya mirip seperti gelembung. Terdapat proses pertukaran atau istilah kerennya swapping.
Terus terang, saya sebenarnya belum mengambil mata kuliah struktur data. Lantaran di semester lalu, kuota sks yang saya miliki kurang memenuhi untuk mengambil mata kuliah yang kata teman-teman saya lumayan bikin puyeng. Karena masih banyak algoritma sorting data dan materi yang lainnya yang harus dipelajari. Dan rencanya, semester depan ini saya akan mengambil mata kuliah maut ini. Maka dari itu, dari sekarang saya sudah belajar terlebih dahulu, biar gak keblinger :D. Nah, tadi sore saya sudah sempat membuat sebuah contoh aplikasi penerapan dari algoritma Bubble Sort dengan C#. Ternyata lumayan mudah juga penerapannya. Kira-kira tampilan kode programnya seperti di bawah ini :
public static 
void Main(string[] args) {
Console.Write(“Masukkan banyak elemen array = “);
int n = Convert.ToInt32(Console.ReadLine());
int[] array_sort = new int[n];
for (int i = 0; i < n; i++) {
Console.Write(“Elemen ke-” + (i + 1) + ” = “);
array_sort[i] = Convert.ToInt32(Console.ReadLine());
}
for (int j = 1; j <= n – 1; j++){
for (int k = 0; k <= n – 2; k++) {
if (array_sort[k] < array_sort[k + 1]){
int temp = array_sort[k];
array_sort[k] = array_sort[k + 1];
array_sort[k + 1] = temp;
}
}
}
Console.WriteLine(“”);
Console.WriteLine(“Diurutkan secara Descending”);
for (int i = 0; i < n; i++) {
Console.WriteLine(array_sort[i]);
}
Console.ReadKey(true);
}

Selasa, 07 Januari 2014

Pengertian Queue

Queue pada Struktur Data atau antrian adalah sekumpulan data yang mana penambahan elemen hanya bisa dilakukan pada suatu ujung disebut dengan sisibelakang(rear), dan penghapusan(pengambilan elemen) dilakukan lewat ujung lain (disebut dengan sisi depan atau front). 
Pada Stack atau tumpukan menggunakan prinsip“Masuk terakhir keluar pertama”atau LIFO (Last In First Out), Maka pada Queue atau antrian prinsip yang digunakan adalah “Masuk Pertama Keluar Pertama” atau FIFO (First In First Out).
Queue atau antrian banyak kita jumpai dalam kehidupan sehari-hari, ex: antrian Mobil diloket Tol, Antrian mahasiswa Mendaftar, dll.
Contoh lain dalam bidang komputer adalah pemakaian sistem komputer berbagi waktu(time-sharing computer system) dimana ada sejumlah pemakai yang akan menggunakan sistem tersebut secara serempak.
Pada Queue atau antrian Terdapat satu buah pintu masuk di suatu ujung dan satu buah pintu keluar di ujung satunya dimana membutuhkan variabel Head dan Tail ( depan/front, belakang/rear).

Karakteristik Queue atau antrian :
1. elemen antrian
2. front (elemen terdepan antrian)
3. tail (elemen terakhir)
4. jumlah elemen pada antrian
5. status antrian

Operasi pada Queue atau antrian
1. tambah(menambah item pada belakang antrian)
2. hapus (menghapus elemen depan dari antrian)
3. kosong( mendeteksi apakah pada antrian mengandung elemen atau tidak)

Operasi-operasi Queue :
1. Create()
Untuk menciptakan dan menginisialisasi Queue
Dengan cara membuat Head dan Tail  = -1
2. IsEmpty()
Untuk memeriksa apakah Antrian sudah penuh atau belum
Dengan cara memeriksa nilai Tail, jika Tail = -1 maka empty
Kita tidak memeriksa Head, karena Head adalah tanda untuk kepala antrian (elemen pertama dalam antrian) yang tidak akan berubah-ubah
Pergerakan pada Antrian terjadi dengan penambahan elemen Antrian kebelakang, yaitu menggunakan nilai Tail.

3. IsFull
Untuk mengecek apakah Antrian sudah penuh atau belum
Dengan cara mengecek nilai Tail, jika Tail >= MAX-1 (karena MAX-1 adalah batas elemen array pada C) berarti sudah penuh

4. Enqueue
Untuk menambahkan elemen ke dalam Antrian, penambahan elemen selalu ditambahkan di elemen paling belakang
Penambahan elemen selalu menggerakan variabel Tail dengan cara increment counter Tail terlebih dahulu.

5. Dequeue()
Digunakan untuk menghapus elemen terdepan/pertama (head) dari Antrian
Dengan cara menggeser semua elemen antrian kedepan dan mengurangi Tail dgn 1
Penggeseran dilakukan dengan menggunakan looping.

6. Clear()
Untuk menghapus elemen-elemen Antrian dengan cara membuat Tail dan Head = -1
Penghapusan elemen-elemen Antrian sebenarnya tidak menghapus arraynya, namun hanya mengeset indeks pengaksesan-nya ke nilai -1 sehingga elemen-elemen Antrian tidak lagi terbaca.

7. Tampil()
Untuk menampilkan nilai-nilai elemen Antrian
Menggunakan looping dari head s/d tail