Hidup Itu Untuk Berkarya Bukan Untuk Putus Asa

Jumat, 13 Mei 2011

Cara Setting LAN Jaringan, Setting Server & Client

Lan jaringan perlu disetting sedemikian rupa sehingga hasil yang diinginkan bisa maksimal. Lan jaringan menghubungkan komputer yang satu dengan yang lainnya dan dapat dikontrol dengan satu komputer server. Baik tidaknya atau kualitas yang dihasilkan tergantung bagaimana setting lan jaringan tersebut. 
Setting Server dan Client


Setelah komputer-komputer terhubung dalam satu bentuk topologi ( mis; Star ) maka kita siap melakukan pengaturan-pengaturan. Nyalakan PC Server (pastikan bahwa PC server telah terkoneksi ke Speedy Broadband). Koneksi Speedy ke server dilakukan oleh pegawai PT. Telkom atau bila kita ingin melakukannya sendiri, kita tinggal meminta nomor speedy+password, IP dan DNS dari Telkom setelah aplikasi permohonan berlangganan kita di terima (cari yang aman saja lah hehehe…) buka command prompt dari start menu – programs – accessories – command prompt. Ketik “ping www.google.com” tanpa tanda petik ya...

Apabila PC server kita telah terkoneksi dengan internet melalui speedy maka kita akan dapatkan “Reply from 72.14.203.174:..." artinya bahwa koneksi berhasil diterima.

Nah, sekarang kita akan menseting jaringan yang baru kita kerjakan tadi…..
 
Buka command prompt dan ketik “ipconfig /all” tekan ENTER (tanpa tanda petik). Di sini akan terlihat IP Address, DNS server, dan Default Gateway (NIC 1 milik speedy dan NIC 2 masih kosong). Catatlah pada selembar daun lontar eh kertas maksudnya :) nomor-nomor tersebut. IP Address yang digunakan biasanya berada di kelas C. 


Misalnya NIC 1 terisi : 
IP address : 192.168.1.2
Subnet : 255.255.255.0
Gateway : 192.168.1.1 (IP Address di ADSL modem)
DNS server : 202.134.0.15 (DNS dari ISP / Speedy)
Alternative DNS : 202.134.0.10

Buka Control Panel – Network connectin. Klik ganda pada Local Area Connectin 2 (NIC2)
Cari pilihan Internet Protocol (TCP/IP) kemudian klik Properties. Klik pada bagian Use the following IP address kemudian isikan seperti berikut :
IP address : 192.168.0.1
Setelah diisi, klik OK kemudian closse
Subnet : 255.255.255.0
Gateway : 192.168.1.2 (IP Address di NIC 1)
DNS server : 202.134.0.15
Alternative DNS : 202.134.0.10
Nyalakan komputer klien semua. Agar lebih mudah, lakukan penyetingan mulai dari komputer klien nomor 1.
Buka Control Panel – Network connectin. Klik ganda pada Local Area Connectin
Cari pilihan Internet Protocol (TCP/IP) kemudian klik Properties. Klik pada bagian Use the following IP address kemudian isikan seperti berikut :
IP address : 192.168.0.2 (IP Address client 1)
Subnet : 255.255.255.0
Gateway : 192.168.0.1 (IP Address di NIC 2 server)
DNS server : 202.134.0.15


Pada posting terdahulu bahwa NIC 1 terhubung ke ADSL modem dan NIC 2 terhubung ke switch. NIC 2 inilah yang akan kita share ke komputer client.
Sebelum melakukan sinkronisasi antara PC server dan PC client terlebih dulu kita mengisi IP address di semua komputer client. Carane …. :


Untuk client 2 dan seterusnya, ikuti langkah nomor 2 di atas. Anda tinggal mengganti IP address ke 3,4,5 ….. dst.



sumber : http://lpkbii.wordpress.com/2011/02/25/cara-setting-lan-jaringan-setting-server-dan-client/

Flashdisk Terbaru 2011 Terbaik




Verbatim Smart Drive
Produsen: Verbatim
Versi: U3 Smart Drive

Kelebihan: Flashdisk terbaru 2011 ini hadir dengan generasi terbaru dan fitur tercanggih yang penyediaannya terbatas.

Kekurangan: Tidak ada antivirus atau enkripsi yang disertakan pada flash drive 2011 ini.

Keputusan: Jika yang Anda butuhkan dari flasdisk untuk menyimpan data, kecepatan, ataupun fitur tercanggih. U3 Smart Drive sangat pantas menjadi pilihan utama Anda.

Spesifikasi Flashdisk Terbaik 2011

* U3 Launchpad promotes easy access and management of device contents, applications, personalized settings as well as installing programs from the U3 software library - Includes 8 preloaded U3 applications: acdsee™ -    Photo Manager, RoboForm2GO – Portable Automated Password Manager, PowerBackup™ - Powerful Data Archiving, Zinio™ - Digital Magazine Reader, Migo™ - Data Synchronization, Mozilla Thunderbird™ - Email Client, U Safe – Advanced Security, U3 Welcome
* For more information on Verbatim’s Store ‘n’ Go U3   Smart Drive visit verbatim.com/U3.

Fitur Support

PRODUCT FEATURES
Interface Protection : Cap
Shock Resistant : Yes
Water Resistant : Yes
LED : Yes
ReadyBoost : Yes

INCLUDED SOFTWARE
Virtual Application Platform : Yes
Sync Tool : Yes
Password Protected : Yes
Antivirus : Yes
Encryption : Yes

SIZES OFFERED
2 GB : Yes
4 GB : Yes
8 GB : Yes
16 GB : Yes
32 GB : Yes
64 GB : Yes

SUPPORT/WARRANTY
Telephone Support : Yes
Email Support : Yes
Knowledge Base : Yes
User Manual / User Guide : Yes
FAQ : Yes
Warranty : Lifetime

Sebagai "Flashdisk Terbaru & Terbaik 2011", U3 Smart Drive ini dibanderol dengan harga $27.27.

sumber: http://antilogin.blogspot.com/2010/11/flashdisk-terbaru-2011-terbaik.html

ANDROID Berbasis Linux

   Android adalah sistem operasi untuk telepon seluler yang berbasis Linux. Android menyediakan platform terbuka bagi para pengembang buat menciptakan aplikasi mereka sendiri untuk digunakan oleh bermacam peranti bergerak. Awalnya, Google Inc. membeli Android Inc., pendatang baru yang membuat peranti lunak untuk ponsel. Kemudian untuk mengembangkan Android, dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia.
Pada saat perilisan perdana Android, 5 November 2007, Android bersama Open Handset Alliance menyatakan mendukung pengembangan standar terbuka pada perangkat seluler. Di lain pihak, Google merilis kode–kode Android di bawah lisensi Apache, sebuah lisensi perangkat lunak dan standar terbuka perangkat seluler.
       Di dunia ini terdapat dua jenis distributor sistem operasi Android. Pertama yang mendapat dukungan penuh dari Google atau Google Mail Services (GMS) dan kedua adalah yang benar–benar bebas distribusinya tanpa dukungan langsung Google atau dikenal sebagai Open Handset Distribution (OHD).

Kerjasama dengan Android Inc.

Pada Juli 2000, Google bekerjasama dengan Android Inc., perusahaan yang berada di Palo Alto, California Amerika Serikat. Para pendiri Android Inc. bekerja pada Google, di antaranya Andy Rubin, Rich Miner, Nick Sears, dan Chris White. Saat itu banyak yang menganggap fungsi Android Inc. hanyalah sebagai perangkat lunak pada telepon seluler. Sejak saat itu muncul rumor bahwa Google hendak memasuki pasar telepon seluler. Di perusahaan Google, tim yang dipimpin Rubin bertugas mengembangkan program perangkat seluler yang didukung oleh kernel Linux. Hal ini menunjukkan indikasi bahwa Google sedang bersiap menghadapi persaingan dalam pasar telepon seluler. versi android terbaru yaitu versi 3.0. Android juga sudah bergabung dengan beberapa smart mobile seperti Nokia, Sony Ericsson, dan lainnya.

2007-2008: Produk awal

Sekitar September 2007 sebuah studi melaporkan bahwa Google mengajukan hak paten aplikasi telepon seluler (akhirnya Google mengenalkan Nexus One, salah satu jenis telepon pintar GSM yang menggunakan Android pada sistem operasinya. Telepon seluler ini diproduksi oleh HTC Corporation dan tersedia di pasaran pada 5 Januari 2010).
Pada 9 Desember 2008, diumumkan anggota baru yang bergabung dalam program kerja Android ARM Holdings, Atheros Communications, diproduksi oleh Asustek Computer Inc, Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp, dan Vodafone Group Plc. Seiring pembentukan Open Handset Alliance, OHA mengumumkan produk perdana mereka, Android, perangkat bergerak (mobile) yang merupakan modifikasi kernel Linux 2.6. Sejak Android dirilis telah dilakukan berbagai pembaruan berupa perbaikan bug dan penambahan fitur baru.
Telepon pertama yang memakai sistem operasi Android adalah HTC Dream, yang dirilis pada 22 Oktober 2008. Pada penghujung tahun 2009 diperkirakan di dunia ini paling sedikit terdapat 18 jenis telepon seluler yang menggunakan Android.

Android versi 1.1

Pada 9 Maret 2009, Google merilis Android versi 1.1. Android versi ini dilengkapi dengan pembaruan estetis pada aplikasi, jam alarm, voice search (pencarian suara), pengiriman pesan dengan Gmail, dan pemberitahuan email.

Android versi 1.5 (Cupcake)

Pada pertengahan Mei 2009, Google kembali merilis telepon seluler dengan menggunakan Android dan SDK (Software Development Kit) dengan versi 1.5 (Cupcake). Terdapat beberapa pembaruan termasuk juga penambahan beberapa fitur dalam seluler versi ini yakni kemampuan merekam dan menonton video dengan modus kamera, mengunggah video ke Youtube dan gambar ke Picasa langsung dari telepon, dukungan Bluetooth A2DP, kemampuan terhubung secara otomatis ke headset Bluetooth, animasi layar, dan keyboard pada layar yang dapat disesuaikan dengan sistem.

Android versi 1.6 (Donut)

Donut (versi 1.6) dirilis pada September dengan menampilkan proses pencarian yang lebih baik dibanding sebelumnya, penggunaan baterai indikator dan kontrol applet VPN. Fitur lainnya adalah galeri yang memungkinkan pengguna untuk memilih foto yang akan dihapus; kamera, camcorder dan galeri yang dintegrasikan; CDMA / EVDO, 802.1x, VPN, Gestures, dan Text-to-speech engine; kemampuan dial kontak; teknologi text to change speech (tidak tersedia pada semua ponsel; pengadaan resolusi VWGA.

Android versi 2.0/2.1 (Eclair)

Pada 3 Desember 2009 kembali diluncurkan ponsel Android dengan versi 2.0/2.1 (Eclair), perubahan yang dilakukan adalah pengoptimalan hardware, peningkatan Google Maps 3.1.2, perubahan UI dengan browser baru dan dukungan HTML5, daftar kontak yang baru, dukungan flash untuk kamera 3,2 MP, digital Zoom, dan Bluetooth 2.1.
Untuk bergerak cepat dalam persaingan perangkat generasi berikut, Google melakukan investasi dengan mengadakan kompetisi aplikasi mobile terbaik (killer apps - aplikasi unggulan). Kompetisi ini berhadiah $25,000 bagi setiap pengembang aplikasi terpilih. Kompetisi diadakan selama dua tahap yang tiap tahapnya dipilih 50 aplikasi terbaik.
Dengan semakin berkembangnya dan semakin bertambahnya jumlah handset Android, semakin banyak pihak ketiga yang berminat untuk menyalurkan aplikasi mereka kepada sistem operasi Android. Aplikasi terkenal yang diubah ke dalam sistem operasi Android adalah Shazam, Backgrounds, dan WeatherBug. Sistem operasi Android dalam situs Internet juga dianggap penting untuk menciptakan aplikasi Android asli, contohnya oleh MySpace dan Facebook.

Android versi 2.2 (Froyo: Frozen Yoghurt)

Pada 20 Mei 2010, Android versi 2.2 (Froyo) diluncurkan. Perubahan-perubahan umumnya terhadap versi-versi sebelumnya antara lain dukungan Adobe Flash 10.1, kecepatan kinerja dan aplikasi 2 sampai 5 kali lebih cepat, intergrasi V8 JavaScript engine yang dipakai Google Chrome yang mempercepat kemampuan rendering pada browser, pemasangan aplikasi dalam SD Card, kemampuan WiFi Hotspot portabel, dan kemampuan auto update dalam aplikasi Android Market.

Android versi 2.3 (Gingerbread)

Pada 6 Desember 2010, Android versi 2.3 (Gingerbread) diluncurkan. Perubahan-perubahan umum yang didapat dari Android versi ini antara lain peningkatan kemampuan permainan (gaming), peningkatan fungsi copy paste, layar antar muka (User Interface) didesain ulang, dukungan format video VP8 dan WebM, efek audio baru (reverb, equalization, headphone virtualization, dan bass boost), dukungan kemampuan Near Field Communication (NFC), dan dukungan jumlah kamera yang lebih dari satu.

Android versi 3.0 (Honeycomb)

Android Honeycomb dirancang khusus untuk tablet. Android versi ini mendukung ukuran layar yang lebih besar. User Interface pada Honeycomb juga berbeda karena sudah didesain untuk tablet. Honeycomb juga mendukung multi prosesor dan juga akselerasi perangkat keras (hardware) untuk grafis. Tablet pertama yang dibuat dengan menjalankan Honeycomb adalah Motorola Xoom. Perangkat tablet dengan platform Android 3.0 akan segera hadir di Indonesia. Perangkat tersebut bernama Eee Pad Transformer produksi dari Asus. Rencana masuk pasar Indonesia pada Mei 2011.

Fitur

Fitur yang tersedia di Android adalah:
  • Kerangka aplikasi: itu memungkinkan penggunaan dan penghapusan komponen yang tersedia.
  • Dalvik mesin virtual: mesin virtual dioptimalkan untuk perangkat mobile.
  • Grafik: grafik di 2D dan grafis 3D berdasarkan pustaka OpenGL.
  • SQLite: untuk penyimpanan data.
  • Mendukung media: audio, video, dan berbagai format gambar (MPEG4, H.264, MP3,
AAC, AMR, JPG, PNG, GIF)
  • GSM, Bluetooth, EDGE, 3G, dan WiFi (hardware dependent)
  • Kamera, Global Positioning System (GPS), kompas, dan accelerometer (tergantung hardware)

Android bagi komunitas sumber terbuka (open source)

Android memiliki berbagai keunggulan sebagai software yang memakai basis kode komputer yang bisa didistribusikan secara terbuka (open source) sehingga pengguna bisa membuat aplikasi baru di dalamnya. Android memiliki aplikasi native Google yang terintegrasi seperti pushmail Gmail, Google Maps, dan Google Calendar.
Para penggemar open source kemudian membangun komunitas yang membangun dan berbagi Android berbasis firmware dengan sejumlah penyesuaian dan fitur-fitur tambahan, seperti FLAC lossless audio dan kemampuan untuk menyimpan download aplikasi pada microSD card. Mereka sering memperbaharui paket-paket firmware dan menggabungkan elemen-elemen fungsi Android yang belum resmi diluncurkan dalam suatu carrier-sanction firmware.



Sistem Pengkodean Data

     Karakter-karakter data yang akan dikirim dari satu titik ke titik lain, tidak dapat dikirimkan secara langsung. Sebelum dikirim, karakter-karakter data tersebut harus dikodekan terlebih dahulu dengan kode-kode yang dikenal oleh setiap terminal. Tujuan dari sebuah pengkodean adalah menjadikan tiap karakter dalam sebuah informasi digital yaitu ke dalam bentuk biner untuk dapat ditransmisikan.
     Dalam penyaluran data antar komputer, data yang disalurkan harus dimengerti oleh masing-masing perangkat baik oleh pengirim maupun penerima. Untuk itu digunakan system sandi sesuai standard. Suatu karakter didefinisikan sebagai huruf, angka, tanda aritmetik dan tanda khusus lainya. Coding adalah penggambaran dari satu set symbol menjadi set symbol yang lain.

Faktor-Faktor Yang Mempengaruhi Coding:
1. Spektrum sinyal / signal spektrum
Ketidakadaan komponen frekuensi tinggi berarti diperlukan bandwidth sempit untuk transmisi.
2. Kemampuan sinkronisasi / clocking / signal synchronization capability
Untuk menghitung posisi start dan stop dari tiap posisi bit dengan mekanisme sinkronisasi.
3. Kemampuan mendeteksi error / signal error detecting capability
Kemampuan error detection dapat diberikan secara sederhana dengan pengkodean natural.
4. Tahan terhadap gangguan / signal interference and noise immunity
Digambarkan oleh kecepatan bit error.
5. Biaya dan kompleksitas / cost and complexity
Semakin tinggi kecepatan pensinyalan untuk memenuhi data rate yang ada, semakin besar biayanya.

Sistem Sandi Yang Umum Dipakai :
a. ASCII (American Standard Code for Information Interchange)
·         Paling banyak digunakan.
·         Merupakan sandi 7 bit.
·         Terdapat 128 macam simbol yang dapat diberi sandi ini.
·         Untuk transmisi asinkron terdiri dari 10 atau 11 bit yaitu : 1 bit awal, 7 bit data, 1 bit paritas, 1 atau 2 bit akhir.

b. Sandi Baudot Code (CCITT Alfabet No. 2 / Telex Code)
·         Terdiri dari 5 bit.
·         Terdapat 32 macam symbol.
·         Digunakan 2 sandi khusus sehingga semua abjad dan angka dapat diberi sandi yaitu :
- LETTERS (11111)
- FIGURES (11011).
·         Tiap karakter terdiri dari : 1 bit awal, 5 bit data dan 1,42 bit akhir.

c. Sandi 4 atau 8
·         Sandi dari IBM dengan kombinasi yang diperbolehkan adalah 4 buah “1” dan 4 buah “0”.
·         Terdapat 70 karakter yang dapat diberi sandi.
·         Transmisi asinkron membutuhkan bit, yaitu : 1 bit awal, 8 bit data dan 1 bit akhir.

d. BCD (Binary Coded Decimal)
·         Sandi 6 bit.
·         Terdapat 64 kombinasi sandi.
·         Transmisi asinkron membutuhkan 9 bit, yaitu: 1 bit awal, 6 bit data, 1 bit paritas dan 1 bit akhir.

e. EBCDIC (Extended Binary Coded Decimal Interchange Code)
·         Sandi 8 bit untuk 256 karakter.
·         Transmisi asinkron membutuhkan 11 bit, yaitu : 1 bit awal, 8 bit data, 1 bit paritas dan 1 bit akhir.

Pengelompokkan Karakter

Pada komunikasi data informasi yang dipertukarkan terdiri dari 2 grup (baik ASCII maupun EBCDIC), yaitu :
a. karakter data.
b. karakter kendali digunakan untuk mengendalikan transmisi data, bentuk (format data), hubungan naluri data dan fungsi fisik terminal.

Karakter Kendali dibedakan atas :
  1. Transmisi Control
Mengendalikan data pada saluran, terdiri atas :
o    SOH : Start Of Header
Digunakan sebagai karakter pertama yang menunjukkan bahwa karakter berikutnya adalah header.
o    STX : Start of Text
Digunakan untuk mengakhiri header dan menunjukkan awal dari informasi / text.
o    ETX : End of Text
Digunakan untuk mengakhiri text.
o    EOT : End Of Transmision
Untuk menyatakan bahwa transmisi dari text baik satu atau lebih telah berakhir.
o    ENQ : Enquiry
Untuk meminta agar remote station tanggapan.
o    ACK : Acknowledge
Untuk memberikan tanggapan positif ke pengirim dari penerima.
o    NAK : Negatif Akcnowkedge
Merupakan tanggapan negatif dari penerima ke pengirim.
o    SYN : Synchronous
Digunakan untuk transmisi sinkron dalam menjaga atau memperoleh sinkronisasi
antar peralatan terminal.
o    ETB : End of Transmision Block
Digunakan untuk menyatakan akhir dari blok data yang ditransmisikan, bila data dipecah menjadi beberapa blok.
o    DLE : Data Link Escape.
Mengubah arti karakter berikutnya, digunakan untuk lebih mengendalikan transmisi data.

  1. Format Effectors
Digunakan untuk mengendalikan tata letak fisik informasi pada printout / tampilan layer, terdiri atas :
o    BS (Back Space), menyebabkan kursor / print head mundur satu posisi.
o    HT (Horizontal Tabulation), maju ke posisi yang telah ditentukan.
o    LF (Line Feed), maju satu baris / spasi.
o    VT (Vertical Tabulation, maju beberapa baris/ spasi.
·         FF (Form Feed), maju 1 halaman (halaman baru).
·         CR (Carriage Return), print head / kursor menuju ke awal baris.

  1. Device Control
Digunakan untuk mengendalikan peralatan tambahan dari terminal.

  1. Information Separators
Digunakan untuk mengelompokkan data secara logis. Umumnya ditentukan :
·         US (Unit Separators), tiap unit informasi dipisahkan oleh US.
·         RS (Record Separator), tiap record terdiri atas beberapa unit dan dipisahkan oleh RS.
·         GS (Group Separator), beberapa record membentuk suatu grup dan dipisahkan oleh GS.
·         FS (File Separator),beberapa grup membentuk sebuah fike yang dipisahkan oleh FS.
Komunikasi data menggunakan sinyal digital.
Kelemahan : jarak tempuh pendek akibat pengaruh redaman/derau yang terjadi pada media transmisi.
Pengiriman sinyal analog : jarak tempuh jauh.
Sinyal digital mengenal dua keadaan (biner), maka digunakan tehnik modulasi. Dengan tehnik modulasi sinyal digital dapat diubah menjadi sinyal analog untuk dikirimkan dan setelah diterima diubah kembali menjadi sinyal digital.
Demodulasi : tehnik mengubah digital menjadi analog. Gelombang pembawa sinyal ini disebut carrier dan berbentuk sinusoidal.
Terdapat 3 jenis modulasi untuk mengkonversi signal binary ke dalam bentuk yang cocok melalui PSTN, yaitu amplitude, frequency and phase.

Teknik modulasi merupakan dasar dari frequency domain :
Modulasi adalah proses encoding sumber data dalam suatu sinyal carrier dengan frekuensi fc.
1. Amplitudo
Adalah besarnya (tinggi rendahnya) tegangan dari sinyal analog
2. Frequency
Adalah jumlah gelombang sinyal analog dalam waktu 1 detik.
3. Phase
Adalah besarnya sudut dari sinyal analog pada saat tertentu.

Empat kombinasi yang dapat dihasilkan :

a. Data Digital, Sinyal Digital
Secara umum peralatan untuk mengkode data digital menjadi sinyal digital adalah sedikit lebih komplek dan lebih mahal daripada peralatan modulator digital ke analog.

b. Data Analog, Sinyal Digital
Yang diijinkan adalah menggunakan transmisi digital modern dan peralatan sakelar.
c. Data Digital, Sinyal Analog
Beberapa media transmisi seperti serat optik / software yang hanya merambatkan sinyal analog.
d. Data Analog, Sinyal Analog
Ditransmisikan sebagai baseband yang mudah dan murah. Penggunaan modulasi untuk menggeser bandwidth dari sinyal baseband ke porsi lainnya dari spectrum.

MODEM (Modulasi dan Demodulasi)
Dalam komunikasi data diperlukan alat untuk mengubah sinyal digital dengan proses modulasi dan menerima data yang dikirimkan pada komputer untuk diolah. Alat ini disebut dengan modulator-demodulator (modem). Modem menerima pulsa biner dari komputer, terminal atau alat lain dan mengubahnya menjadi sinyal analog yang dapat disalurkan melalui saluran komunikasi.

Single Linked List

       Linked list adalah suatu metode dalam mengurutkan jumlah data agar menjadi satu kesatuan dan tentunya saling berhubungan. Linked list dapat diartikan sebagai rantai data yang saling berhubungan antara satu dengan yang lainnya agar mempermudah dalam mengedit field data yang tersimpan dalam jumlah yang sangat kompleks.. Dalam linked list terdapat istilah node yang berarti kumpulan elemen-elemen dan terkait yang terdapat pada linked list. Sebelum memahami linked list kita hendaknya terlebih dahulu memahami apa itu node, node pada linked list dibagi menjadi 2 bagian yaitu bagian data dan penghantar data atau yang di kenal dengan nama pointer”. Untuk lebih jelasnya, node terlihat pada gambar di bawah ini

Dari gambar diatas diilustrasikan beberapa node, setiap node memiliki masing-masing data dan terdapat pointer yang dijadikan sebagai penghubung atau penunjuk arah dari satu data ke data yang lainnya. Null berarti menunjukan suatu elemen tidak menunjukan kondisi apapun.
Adapun operasi- operasi yang ada pada single linked list yaitu :
a.       Penciptaan dan penghancuran simpul
b.      Inisialisasi dan fungsi pemeriksaan linked lsit
c.      Penyisipan simpul ke linked list
d.     Penghapusan simpul suatu linked list
e.      Traversal atau penelusuran suatu simpul
f.       Pencarian simpul tertentu
A.    ALGORITMA 
{Algoritma Utama}
Algoritma_penyisipan_Single_Linked_List
Kamus:
    
Procedure masukan_nama(output nama_input : char);
Procedure  sisip_nama_depan (input nama: char[20], I/O )
            Procedure  sisip_nama_akhir (input nama: char[20], I/O )
            Procedure  sisip_nama_tengah(char nama_input[20])
                   Procedure hapus_depan (output elemen : tipedata, I/O awal, akhir : nama_pointer)
            Procedure hapus_belakang (output elemen : tipedata, I/O awal, akhir : nama_pointer)
        Procedure hapus_tengah ( input nama: char[24])

Procedure menu_tampil
Procedure tampil  
Procedure menu_sisip
Procedure menu_kelompok
     
{deklarasi}                                                                                                                 
Nama_pointer = ↑simpul
Simpul = Record
<  info : char[20],
    next : nama_pointer>                        
EndRecord

awal, akhir : nama_pointer {pointer penunjuk}
menu : integer
nama : char


Procedure menu_kelompok
{I.S : Data Telah terdefinisi }
{F.S : Menampilkan menu anggota kelompok }

Kamus :
    
 
Algoritma:
do{ 
     output ("                ___________________________________________________ ")
     output("                                                  KELOMPOK                                                ")
     output ("                                      S T R U K T U R   D A T A                                    ")
     output ("                               S I N G L E    L I N K E D    L I S T                              ")
     output ("                ___________________________________________________") 
     output ("                                                                                                                       “)
     output ("                      1. Eko Siswoyo                                                                         ")
     output ("                      2. Fery Ardiyansyah                                                                 ")
     output ("                      3. Lendra Mardani                                                                    ")
     output ("                      4. Patria Eka Pratama                                                               ")
     output ("                      5. Firman Widiansyah                                                              ")
            output ("                                                                                                                        ")
            output ("                      Selanjutnya Tekan Sembarang Tombol . . .                             ")
   }
Endprocedure

      
  Procedure menu_tampil
{I.S : User memasukan pilihan menu }
{F.S : Menghasilkan menu yang dipilih }

Kamus :
     pilih : integer
 
Algoritma:

do{
          Output ("      ---------------------------------------------------------------------------------- \")
           Output ("      |                   MENU UTAMA DATA BARANG                           |")
          Output ("      --------------------------------------------------------------------------------|")
           Output ("      |                                                                                                       |")
           Output ("      |         1. Sisip Data                                                                         |")
           Output ("      |         2. Hapus Data                                                                       |")
           Output ("      |         3. Cari (Search)                                                                    |")
           Output ("      |         4. Urut                                                                                  |")
           Output ("      |         5. Tampil                                                                              |")
           Output ("      |         0. Keluar Program                                                                |")
           Output ("      |___________________________________________________|")
           Output ("                                                                                                             ")
           Output ("                          Masukan Pilihan [1..5][0]                                          ")
           Output("                                                                                                              ")
           
          }
 while (pilih!=0);            
  }
Endprocedure

Procedure menu_sisip
{I.S : User memasukan pilihan menu }
{F.S : menghasilkan menu yang dipilih }

Kamus :
     pilih_sisip        : integer
     gl                     : char [2]
     nama_input      : char[20]        

 
Algoritma:
      while (pilih_sisip!=0)
      Output ("                                            Menu Penyisipan                       ") 
      Output ("                   ================================= ")
      Output ("                      1. Sisip Depan                                                 ")
      Output ("                                                                                              ")
      Output ("                      2. Sisip Tengah                                                ")
      Output ("                                                                                              ")
      Output ("                      3. Sisip Belakang                                             ")
      Output ("                                                                                              ")
      Output ("                      0. Kembali Ke Menu Utama                            ")
      Output ("                                                                                              ")               
      Output ("                      Pilihan Anda [1..3] : ") input (pilih_sisip)
                
      endwhile
    while (pilih_sisip < 0 || pilih_sisip > 3)
      output ("MAAF, Salah Memasukkan Pilihan, ulangi!!!");getch();scanf("%i",&pilih_sisip)
    endwhile
      (pilih_sisip)
{
    case 1 : (gl,"n")
    do{
    masukan_nama(nama_input)
    sisip_nama_depan(nama_input)
    output ("mau tambah lagi ? y / n : ") input(gl)
}
   while (gl,"Y")==0)
    tampil()
   endwhile

    case 2 : (gl,"n")
    do
    {          
    masukan_nama(nama_input)
    sisip_nama_akhir(nama_input)
    output ("mau tambah lagi ? y / n : ")  input (gl)
    }
while (gl,"Y")==0)
     tampil()
endwhile
   
   case 3 : sisip_nama_tengah(nama_input)
    tampil()
    }
    }
    }
Endprocedure



Procedure  masukan_nama (output nama_input : char)
{I.S : User memasukan data yang akan disisipkan (elemen)}
{F.S : menghasilkan data yang akan disisipkan (elemen)}

Kamus :


Algoritma :
      output ("Masukan List Barang : ") input (nama_input)   
   
Endprocedure



Procedure_tampil(input )
{I.S : data sudah terdefinisi }
{F.S : menampilkan hasil akhir data yang telh disispkan}

Kamus :
        Temp : char[20]
        I : integer
        i=0
        q = awal
Algoritma :
    output ("Data Yang Telah Di Sisipkan             ")
    output ("=============================== “)
    while(q!=NULL)
    (temp, q->info)
     output ("->")
     output (temp)
    q = q->next
    i++
     while
 Endprocedure
    
    
    
 Procedure  sisip_nama_depan (input nama: char[20], I/O )
{I.S  : Data yang akan disispkan (nama), pointer penunjuk awal dan pointer akhir sudah terdefinisi }
{F.S : Menampilkan  sisip depan data pada single Linked List }

Kamus:
temp2 : char [20] 


Algoritma:
Alloc (baru)
baru↑.infoß nama
If (awal = NULL)
        then        
             namabaru  ↑  . next ß NULL
             akhir ß namabaru
   
       else
            namabaru  ↑ .next = awal
endif
        awal ß namabaru
endprocedure   


Procedure  sisip_nama_akhir (input nama: char[20], I/O )
{I.S  : Data yang akan disispkan(nama), pointer penunjuk awal dan pointer akhir sudah terdefinisi }
{F.S : Menampilkan  sisip akhir data pada single Linked List }

Kamus:
temp3 : char [20]

Algoritma:
Alloc (baru)
baru↑.infoßnamabaru
If (awal = NULL)
        then        
             awal ß namabaru
   
       else
            akhir ↑ .next = namabaru
            namabaru  ↑ .next=NULL
endif
        akhirßnamabaru
endprocedure   


Procedure : sisip_nama_tengah(char nama_input[20])
{I.S :  Data yang akan disispkan(nama), pointer penunjuk awal dan pointer akhir sudah terdefinisi }
{F.S : Menampilkan sisip tengah data pada Single Linked List }

Kamus
    namabaru,namabantu  : simpul
    nama_cari : char[20]
    ketemu : integer

Algoritma :
if(awal==NULL)
    then
       output("Tidak ada data yang tersedia")
        output ("Silahkan buat data baru terlebih dahulu, dengan memilih menu sisip depan!!!")
      
Procedure menu_sisip
    else
        output ("Masukan nama barang, setelah nama : ")
        input (nama_cari)
        namabantu = awal
        ketemu = 0
        while(ketemu==0 and namabantu ≠ NULL)
                 if(nama_cari,namabantu↑.info)==0)
                             then
ketemu = 1
                             else
                                         namabantu ß namabantu↑.next
                 endif
       endwhile
    if(ketemu==1)
    then
                              masukan_nama(nama_input)
                              if (namabantu==akhir)
                      then
                                         sisip_nama_akhir(nama_input)
                      else
                                         namabaru=(simpul*) Alloc(baru)
                                         namabaru↑.info,nama_input
                                         namabaru↑.next ß namabantu↑.next
                                         namabantu↑.next  ß namabaru
                             endif
      else
                             output("Nama yang dicari tidak ada dalam list atau list kosong")
    endif
endprocedure

Procedure hapus_depan (output elemen : tipedata, I/O awal, akhir : nama_pointer)
{ I S  : list sudah terdefinisi }
{ F S : menghapus suatu simpul yang ada di depan single list }
Kamus:
            phapus : nama_pointer

Algoritma:
phapus ß awal           
            if (awal == akhir)
                        then
                                    awal ß NULL
akhir ß NULL
                         else
                                    awal ß phapus↑.next
                        endif
dealloc(phapus)
endprocedure

Procedure hapus_belakang (output elemen : tipedata, I/O awal, akhir : nama_pointer)
{ I S  : list sudah terdefinisi }
{ F S : menghapus suatu simpul yang ada di belakang single list }
Kamus:
            phapus : nama_pointer
Algoritma:
            phapus ß awal
            while (phapus↑.next ≠ akhir) do
                                    phapus ß phapus↑.next
            endwhile
            akhir ß phapus
            phapus ß akhir↑.next
            elemen ß phapus↑.info
            dealloc(phapus)
endprocedure

Procedure hapus_tengah ( input nama: char[24])
{ I S  : list sudah terdefinisi }
{ F S : menghapus suatu simpul yang ada di tengah single list }

Kamus :
            namacari          : char[24]
            ketemu                         : integer

Algoritma:                   
output(" Masukan data barang yang akan diHapus   :  ") input(namacari)
     phapus ß awal
     ketemu ß 0
     while(ketemu == 0 and phapus != NULL) do
         if ((namacari,phapus↑.info)==0)
              ketemu = 1
         else
              phapus ß phapus↑.next
                        if (ketemu==1)
                                     if (phapus == awal)
                                                 hapus_depan(nama)      
                                     else
                                                 if(phapus == akhir)
                                                                        hapus_belakang(nama)
                                                else
                                                             nama_hapus ß phapus↑.next
                                                                        phapus ß nama_hapus↑.next
                                                            dealloc(phapus)
                        else
                                    tidak_ditemukan();
endprocedure

Post Coment