Thursday, November 28, 2013

membuat kalender dengan JAVA

MEMBUAT KALENDER DENGAN JAVA

<table border="3" cellpadding="3" cellspacing="3" style="width: 350px;">
<tbody>
<tr>
     <th colspan="7">November 2013</th>
</tr>
<tr>
     <th colspan="7"><i>Ragil pamungkas</i></th>
</tr>
<tr>
     <td align="center" width="50">Sun</td>
     <td align="center" width="50">Mon</td>
     <td align="center" width="50">Tue</td>
     <td align="center" width="50">Wed</td>
     <td align="center" width="50">Thu</td>
     <td align="center" width="50">Fri</td>
     <td align="center" width="50">Sat</td>
</tr>
<tr>
     <td valign="top" width="50">30</td>
     <td valign="top" width="50">1</td>
     <td valign="top" width="50">2</td>
     <td valign="top" width="50">3</td>
     <td valign="top" width="50">4</td>
     <td valign="top" width="50">5</td>
     <td valign="top" width="50">6</td>
</tr>
<tr>
     <td valign="top" width="50">7</td>
     <td valign="top" width="50">8</td>
     <td valign="top" width="50">9</td>
     <td valign="top" width="50">10</td>
     <td valign="top" width="50">11</td>
     <td valign="top" width="50">12</td>
     <td valign="top" width="50">13</td>
</tr>
<tr>
     <td valign="top" width="50">14</td>
     <td valign="top" width="50">15</td>
     <td valign="top" width="50">16</td>
     <td valign="top" width="50">17</td>
     <td valign="top" width="50">18</td>
     <td valign="top" width="50">19</td>
     <td valign="top" width="50">20</td>
</tr>
<tr>
     <td valign="top" width="50">21</td>
     <td valign="top" width="50">22</td>
     <td valign="top" width="50">23</td>
     <td valign="top" width="50">24</td>
     <td valign="top" width="50">25</td>
     <td valign="top" width="50">26</td>
     <td valign="top" width="50">27</td>
</tr>
<tr>
     <td valign="top" width="50">28</td>
     <td valign="top" width="50">29</td>
     <td valign="top" width="50">30</td>
     <td valign="top" width="50">31</td>
     <td valign="top" width="50">1</td>
     <td valign="top" width="50">2</td>
     <td valign="top" width="50">3</td>
</tr>
</tbody>

</table>

Tuesday, November 12, 2013

MENGINSTAL XAMPP

 CARA MENGINSTALL XAMPP PADA WINDOWS7


XAMPP adalah "Perangkat lunak bebas ("FREE") yang mendukung  banyak System Operasi.

Kompilasi dari berbagai program dalam satu Paket.
terutama terdiri dari Apache HTTP Serverdatabase MySQLdan interpreter untuk script yang ditulis dalam PHP dan bahasa pemrograman Perl.

XAMPP singkatan dari :
  • X (yang berarti cross-platform)
  • A (Apache)
  • M (MySql)
  • P (php)
  • P (Perl)
XAMPP ini bisa kita Download dari situs resminya di apachefriends     gratis .
 Cara installnyapun simple dan mudah di jalankan.
Ok !! demikian sedikit penjelasan tentang XAMPP.untuk anda yang pengin tahu lebih tentang XAMPP anda bisa baca di Wikipedia atau situs-situs yang membahas lebih dalam XAMPP.

Kita kembali pada Topik Pembahasan tentang Cara Install XAMPP Pada Windows 7.
caranya adalah sbb:
  1. Download terlebih dahulu Program XAMPP di ApacheFriends
  2. Jalankan intallasi program 
Perhatikan gambar Berikut:

  • Pada baianiniadalah Pilihan Bahasa. kemudian klik "OK"

  •  jika muncul Jendela seperti berikut
 

  • jika muncul jendela seperti di atas.anda periksa terlebih dahulu "UAC" (User Account Control) pada windows anda.
  • caranya =>> pada Start=>> kemudian pada  Search anda ketik UAC =>> kemudian tekan Enter
  • dan akan muncul jendela baru.Kemudian Turunkan UAC hingga sampai Bawah. Kemudian klik OK

  • setelah selesai menurunkan UAC. kemudian lanjutkan Installasi XAMPP tadi.
#  klik Next

# Perhatikan gambar yang saya kasih tanda no:3
jangan lupa Kasih tanda Centang pada ketiga Kotak. kemudian Klik Install

# Gambar di atas adalah Prosess installasi. tunggu sampai proses installasi selesai hngga muncul confirmasi installasi finiss
# jika installasi telah succes. Buka XAMPP yang telah anda install tadi.
Tampilan cPanelnya sbb:



# Pastikan Apache dan MySql telah Running.
# untuk mengetest Sever XAMPP anda. Buka Broser =>> kemudian ketik "Http://localhost" pada Browser anda.dan tampilanya sbb:

#Tampilan Localhost 

# Tampilan PhpMyadmin
Jika pada Browser telah bisa menampilkan seperti pada Gambar di atas. Berarti penginstalan XAMPP telah Berhasil dan siap untuk digunakan sebagai Server Localhost pada komputer.
Demikian sedikit Shared dari saya.semoga bermanfaat.dan jika ada kesalahan atau kekurangan dalam penulisan artikel saya ini.Mohon maaf dan harap maklum karena masih Belajar.


http://inspirationsawung.blogspot.com/2012/10/cara-install-xampp-pada-windows-7.html#ixzz2kUmCQhqZ

Saturday, November 2, 2013

KOMPONEN LAN

KOMPONEN KOMPONEN JARINGAN LAN (LOCAL AREA NETWORT)

LAN tersusun dari beberapa komponen dasar yang meliputi komponen hardware dan software, yaitu:
1. Komponen  Hardware: Worksation / Personal Computer (PC), Server, Kabel (Kabel Twisted Pair, Kabel Coaxial, Kabel Fiber Optic), Network Interface Card (NIC), Hub/Switch, Bridge, Repeater, dan Topologi jaringan.
2. Komponen Software: Sistem Operasi Jaringan, Network Adapter Driver, Protokol Jaringan.
3. Brainware, yaitu administrator dan pengelola jaringan.
Komponen Hardware
1. Workstation
Local Area Network (LAN) dan Komponen LAN
.Workstation merupakan node atau host yang berupa suatu sistem komputer.Sistem komputer ini dapat berupa PC atau dapat pula berupa suatu komputer yang besar seperti sistem minicomputer, bahkan suatu mainframe.Workstation dapat bekerja sendiri (stand-alone) dapat pula menggunakan jaringan untuk bertukar data dengan workstation atau user yang lain.
2. Server
Local Area Network (LAN) dan Komponen LAN
Perangkat keras (hardware) yang berfungsi untuk melayani jaringan dan workstation yang terhubung pada jaringan tersebut.pada umumnya sumber daya (resources) seperti printer, disk, dan sebagainya yang hendak digunakan secara bersama oleh para pemakai di workstation berada dan bekerja pada server. Berdasarkan jenis pelayanannya dikenal disk server,file server, print server, dan suatu server juga dapat mempunyai beberapa fungsi pelayanan sekaligus.
Sebuah file server merupakan jantungnya kebanyakan Jaringan, merupakan komputer yang sangat cepat, mempunyai memori yang besar, harddisk yang memiliki kapasitas besar, dengan kartu jaringan yang cepat. Sistem operasi jaringan tersimpan disini, juga termasuk didalamnya beberapa aplikasi dan data yang dibutuhkan untuk jaringan. Sebuah file server bertugas mengontrol komunikasi dan informasi diantara node/komponen dalam suatu jaringan. Sebagai contoh mengelola pengiriman file database atau pengolah kata dari workstation atau salah satu node ke node yang lain, atau menerima email pada saat yang bersamaan dengan tugas yang lain. Terlihat bahwa tugas file server sangat kompleks, dia juga harus menyimpan informasi dan membaginya secara cepat. Server menyediakan file, printer dan pelayanan lain untuk client. Ada dua buah jenis server, yaitu:
a. Server dedicated, server yang tidak memiliki fungsi lain. Ia tidak bisa digunakan sebagai workstation. Untuk melihat jenis dari server tersebut dapat diketahui melalui sistem operasi jaringan yang dijalankannya, misalnya Novell Netware.
b. Server Non-Dedicated, server yang juga bisa berfungsi sebagai workstation. Contohnya: Microsoft Windows NT Server, Mocrosoft Windows NT Workstation, Microsoft Windows 95/98, Unix, Linux, Mac OS/2. Dari fungsinya, server dapat digunakan:
1) Menyimpan file-file yang digunakan bersama-sama pada harddisk-nya;
2) Mengatur komunikasi (seperti pesan e-mail) antar workstation;
3) Mengkoordinasikan pencetakan kepada printer yang dipakai bersama-sama;
4) Server juga dapat menyimpan CD-ROM yang dapat dipakai oleh para pemakai network;
5) Bisa menyimpan tape drive atau drive lain yang digunakan untuk menyimpan hard disk server atau hard disk pada workstation;
6) Dengan perangkat lunak dan keras tambahan, server bisa mengarahkan e-mail dari dan ke internet. Server juga bisa mengirimkan fax ke luar jaringan ke mesin-mesin fax yang ada di luar. Kenyataannya server hampir dapat melakukan semua pekerjaan yang mencakup pengiriman data.
3. Link (hubungan)
Workstation dan server tidak dapat berfungsi  apabila  peralatan  tersebut secara fisik tidak terhubung. Hubungan tersebut dalam Perangkat keras (hardware) yang berfungsi untuk melayani jaringan dan workstation yang terhubung pada jaringan tersebut.pada umumnya sumber daya (resources) seperti printer, disk, dan sebagainya yang hendak digunakan secara bersama oleh para pemakai di workstation berada dan bekerja pada server. Berdasarkan jenis pelayanannya dikenal disk server,file server, print server, dan suatu server juga dapat mempunyai beberapa fungsi pelayanan sekaligus.
LAN dikenal sebagai media transmisi yang umumnya berupa kabel. Adapun beberapa contoh dari link adalah:
a. Kabel Twisted Pair
Kabel ini terbagi dua, yaitu Shielded Twisted Pair dan Unshielded Twisted Pair(UTP), lebih banyak dikenal karena merupakan kabel telpon, relatif murah, jarak yang pendek, mudah terpengaruh oleh gangguan, kecepatan data yang dapat didukung terbatas, 10-16 Mbps.
b. Kabel Coaxial
Umumnya digunakan pada televisi,  jarak yang relatif lebih jauh, kecepatan pengiriman data lebih tinggi di banding Twisted Pair, 30 Mbps, harga yang relatif tidak mahal, ukurannya lebih besar dari Twisted Pair.
c. Kabel Fiber Optic
Jarak yang jauh, kecepatan data yang tinggi, 100 Mbps, ukuran yang relatif kecil, sulit dipengaruhi gangguan, harga yang relatif masih mahal, instalasi yang relatif sulit.
4. Network Interface Card (NIC)
Local Area Network (LAN) dan Komponen LAN
Suatu workstation tidak dihubungkan secara langsung dengan kabel jaringan ataupun tranceiver cable, tetapi melalui suatu rangkaian elektronika yang dirancang khusus untuk menangani  network protocol yang dikenal  dengan Network Interface Card (NIC). Kartu Jaringan (NIC) merupakan perangkat yang menyediakan media untuk menghubungkan antara komputer, kebanyakan kartu jaringan adalah kartu internal, yaitu kartu jaringan yang di pasang pada slot ekspansi di dalam komputer. Beberapa komputer seperti komputer MAC, menggunakan sebuah kotak khusus yang ditancapkan ke port serial atau SCSI port komputernya. Pada komputer notebook ada slot untuk kartu jaringan yang biasa disebut PCMCIA slot. Kartu jaringan yang banyak terpakai saat ini adalah: kartu jaringan Ethernet, LocalTalk konektor, dan kartu jaringan Token Ring. Yang saat ini populer digunakan adalah Ethernet, lalu diikuti oleh Token Ring, dan LocalTalk.
5. Hub/Konsentrator
Local Area Network (LAN) dan Komponen LAN
Sebuah Konsentrator/Hub adalah sebuah perangkat yang menyatukan kabel-kabel network dari tiap-tiap workstation, server atau perangkat lain. Dalam topologi Bintang, kabel twisted pair datang dari sebuah workstation masuk kedalam hub. Hub mempunyai banyak slot concentrator yang mana dapat dipasang menurut nomor port dari card yang dituju. Hub biasanya terdiri dari 8, 12, atau 24 port RJ-45 dan digunakan pada topologi Bintang/Star.

SIFAT JARINGAN LAN



SIFAT -SIFAT JARINGAN LAN

1.Fleksibilitas (Keluwesan)
Ada berbagai peralatan hardware yang dapat dipasang pada jaringan komputer lokal. Ada banyak jenis aplikasi software yang juga dapat ditempatkan pada file server pada LAN. LAN dapat menjalankan aplikasi dengan pemrosesan yang berbeda dan mempunyai kemampuan transfer data. Sebagai contoh, beberapa pemakai sedang mentransfer file teks ke jaringan. Pada waktu yang sama pemakai lain dapat memakai fasilitas yang lain pada LAN tersebut.


2.Kecepatan
LAN dapat mempunyai transfer data berkecapatan tinggi. Kecepatan dibutuhkan karena harus ada jumlah byte yang banyak yang harus dimuatkan ketika workstation memerlukan aplikasi software.

3.Reliabilitas (Keandalan)
LAN harus bekerja secara terus menerusdan konsisten. LAN dapat dikatakan andal jika semua workstationnya mempunyai akses ke jaringan menurut hak-hak yang telah ditetapkan oleh administrator jaringan. Tidak ada workstation yang boleh mengkonsumsi kapasitas pemrosesan LAN secara mayoritas, karena hal itu akan menghalangi akses pemakai lain dan memperpanjang waktu respon bagi pemakai jaringan.

4.Hardware dan Software yang digunakan bersama-sama
Pada LAN ada peralatan khusus yang disebut server, yang digunakan untuk pembagian. Server adalah komputer pada LAN yang dapat diakses oleh semua pemakai dalam jaringan.


5.Interface Transparansi
Dengan memiliki interface transparansi diharapkan bahwa akses jaringan untuk pemakai tidak akan lebih rumit daripada mengakses fasilitas yang sama dengan menggunakan interface yang berbeda.


6.Adaptability (Kemampuan menyesuaikan diri)
Rancangan LAN yang baik mempunyai kemampuan mengakomodasi berbagai macam hardware dan dapat dengan mudah mengkonfigurasi ulang tanpa mengganggu pemakai. Selaian memberi kemudahan dalam konfigurasi hardware, LAN harus pula mempunyai kemampuan perluasan tanpa memandang jumlah pemakai.

7.Akses ke LAN lain atau WAN 
Dalam banyak hal, LAN merupakan komponen kecil dari jaringan yang lebih besar. LAN harus dapat digunakan pemakai untuk mengakses keseluruhan fasilitas dengan menghubungkan jaringan komputer lokal ke fasilitas jaringan area luas.


8.Keamanan
Penyambungan dan fleksibilitas jaringan komputer lokal tidak boleh dilakukan dengan mengurangi keamanannya. LAN harus mempunyai ketentuan mekanisme keamanan ID dan password. Keamanan harus pula diterapkan pada peralatan hardware yang dipasang ke jaringan.

9.Pengelolaan Terpusat
Kebanyakan instalasi LAN dimaksudkan untuk mengurangi biaya dan mempermudah penggunaannya. LAN harus meminimalkan intervensi operator dan harus mempunyai beberapa peralatan pengelolaan yang memberikan rangkuman operasi jaringan kepada operator jaringan.

10.Kepemilikan Pribadi
Media hardware, software dan pembawa data biasanya dimiliki oleh perusahaan atau jawatan yang membeli LAN. Semua perbaikan, pemeliharaan dan penyambungan baru merupakan tanggung jawab dari pada pemilik LAN.

Sunday, October 6, 2013

CARA MENGAMANKAN WORD

CARA MENGAMANKAN WORD ..





*KLIK START , KLIK MICROSOFT WORD
*KETIK YG DIINGINKAN
*KLIK SAVE AS , TOOLS , GENERAL OPTIONS
*KETIK PASSWORD YG DIINGINKAN



*KETIK ULANG PASSWORD ..


*KLIK OK 
*KETIK NAMA LALU SAVE
                          

TERIMA KASIH `-`







algoritma pemrograman dasar

Pemrograman Komputer

Dalam kehidupan sehari-hari, untuk berkomu­nikasi dengan orang lain, kita harus menggunakan bahasa yang sama dengan orang tersebut. Apabila kita menggunakan Bahasa Indonesia, lawan bicara kita juga harus mengerti Bahasa Indonesia. Kalau lawan bicara kita tidak mengerti Bahasa Indonesia, kita masih bisa berkomunikasi dengannya melalui seorang penerjemah.
Dalam pemrograman komputer, berlaku juga hal seperti di atas. Kita harus menggunakan bahasa yang dimengerti oleh komputer untuk memberikan suatu instruksi.
Pada dasarnya, komputer adalah mesin digital, artinya komputer hanya mengenal kondisi ada arus listrik (biasanya dilambangkan dengan 1) dan tidak ada arus listrik (biasanya dilambangkan dengan 0). Dengan kata lain, kita harus menggunakan sandi 0 dan 1 untuk melakukan pemrograman komputer. Bahasa pemro­graman yang menggunakan sandi 0 dan 1 ini disebut bahasa mesin. Mungkin Anda sudah bisa membayang­kan bagaimana sulitnya memprogram dengan bahasa mesin. Namun Anda tidak perlu kuatir karena dewasa ini jarang sekali orang yang memprogram dengan bahasa mesin.
Karena bahasa mesin sangat susah, maka muncul ide untuk melambangkan untaian sandi 0 dan 1 dengan singkatan kata yang lebih mudah dipahami manusia. Singkatan kata ini kemudian sering disebut mnemonic code. Bahasa pemrograman yang menggunakan singkat­an kata ini disebut bahasa assembly.
Sebagai contoh, dalam prosesor Intel, terdapat perintah 0011 1010 0000 1011. Perintah dalam bahasa mesin ini sama artinya dengan perintah assembly CMP AL, OD, yang artinya bandingkan nilai register AL dengan 0D. CMP di sini sebenarnya adalah singkatan dari CoMPare. DapatAnda lihat di sini bahwa perintah CMP AL, 0D jauh lebih mudah dipahami daripada 0011 1010 0000 1011. Tentu saja ini jika dilihat dari sudut pandang manusia, bagi komputer, kombinasi 0 dan 1 tentu lebih mudah dipahami. Perangkat lunak yang mengkonversikan perintah-perintah assembly ke dalam bahasa mesin sering disebut juga assembler.
Pemrograman dengan bahasa assembly dirasa­kan banyak orang masih terlalu sulit, termasuk saya sendiri. Sesusai dengan sifat manusia yang tidak pernah puas, akhirnya dikembangkan suatu bahasa pemro­graman yang lebih mudah digunakan. Bahasa pemro­graman ini menggunakan kata-kata yang mudah di­kenali oleh manusia. Bahasa pemrograman seperti ini disebut bahasa generasi ketiga atau disingkat 3GL (third­generation language). Beberapa orang menyebut bahasa ini dengan bahasa tingkat tinggi atau disingkat HLL (high-level language). Ada banyak contoh bahasa generasi ketiga, antara lain: Basic, Pascal, C, C++, CO­BOL, dsb.


Bahasa generasi ketiga biasanya menggunakan kata-kata dalam bahasa Inggris karena memang bahasa tersebut adalah bahasa internasional. Sebagai contoh, Anda dapat menuliskan perintah berikut dalam bahasa Pascal:
writeln (‘Algoritma’);
atau perintah berikut dalam bahasa C:
printf (“Algoritma\n\r”);
atau perintah berikut dalam bahasa C++:
cout « “Algoritma” « endl;
Ketiga pernyataan di atas bertujuan sama, yaitu menuliskan teks 'Algoritma' ke keluaran standar (stan­dard output), biasanya ke layar komputer.
Ketiga perintah sederhana di atas sebenarnya terdiri dari puluhan atau mungkin bahkan ratusan per­nyataan assembly. Perangkat lunak yang menerjemah kan program dalam bahasa manusiawi ke dalam bahasa assembly atau mesin ada dua macam, yaitu interpreter dan kompiler.
Interpreter menerjemahkan program baris per baris, artinya jika suatu baris akan dieksekusi, maka baris tersebut diterjemahkan terlebih dulu ke bahasa mesin. Apabila baris berikutnya akan dieksekusi, maka baris tersebut baru diterjemahkan ke dalam bahasa me­sin. Contoh bahasa pemrograman yang menggunakan interpreter adalah Basic.
Kompiler menerjemahkan semua perintah ke dalam bahasa mesin kemudian menjalankan hasil penerjemahan. Hasil penerjemahan ini bisa disimpan dalam file atau memori. Contoh bahasa pemrograman yang menggunakan kompiler adalah Pascal, C, dan C++. Khusus untuk Pascal, ada beberapa kompiler tetapi memang jumlahnya tidak banyak, misalnya Turbo Pascal (http://www.innrise.com), GNU Pascal (http://didaktik.physik.uni-essen.de/-gnu-pascal/ home.html), Free Pascal (http://www.freepascal.sk), dsb. Meskipun demikian, kompiler Pascal yang paling banyak digunakan adalah Turbo Pascal. Jadi buku ini juga menggunakan Turbo Pascal sebagai acuannya.
Perkembangan bahasa pemrograman tidak sampai pada bahasa generasi ketiga saja. Ada generasi lanjutan bahasa pemrograman, yaitu bahasa generasi keempat atau disingkat 4GL (fourth-generation language). Bahasa ini banyak digunakan untuk mengembangkan aplikasi basis data (database). Salah satu contohnya adalah SQL (Structured Query Language). Pada bahasa ini, perintah-perintah yang digunakan lebih manusiawi, misalnya "SELECT Nama, Alamat FROM Karyawan", untuk mengambil data Nama dan Alamat dari basis data Karyawan.
Dari penjelasan singkat ini, saya berharap Anda dapat memahami di manakah sebenamya posisi bahasa Pascal ditinjau dalam pemrograman komputer. Pada subbab berikutnya, saya akan membahas di manakah posisi algoritma dalam pemrograman komputer.

Langkah-langkah dalam Pemrograman Komputer

Dalam melakukan suatu kegiatan, tentu saja kita memerlukan langkah-langkah yang harus dilalui. Orang tidur saja, menurut para dokter, melewati beberapa tahapan atau fase. Dalam pemrograman kom­puter, kita juga memerlukan beberapa langkah.
Urutan langkah-langkah yang saya sajikan dalam buku ini tidak bersifat mutlak, artinya Anda tidak harus melakukannya dari langkah pertama, kedua, ketiga, dst. Ada beberapa langkah yang harus atau mungkin diulang sampai berkali-kali. Lebih jauh lagi, buku lain mungkin menyajikan langkah-langkah yang kelihatan­nya berbeda tetapi pada intinya sama. Berikut ini adalah beberapa langkah yang harus dilakukan dalam pemrograman komputer:

1.    Mendefinisikan masalah. Langkah pertama ini sering dilupakan oleh banyak pemrogram. Begitu mereka mendapat perintah untuk membuat suatu program, mereka langsung menulis programnya tanpa mendefinisikan masalahnya terlebih dulu. Saya mengutip kata-kata dari Henry Ledgard da­lam salah satu bukunya tentang Hukum Murphy untuk pemrograman:
Semakin cepat Anda menulis program akan semakin lama Anda menyelesaikannya.

Memang tidak ada bukti ilmiah tentang kata-kata ini, tetapi dari pengalaman pribadi saya ketika menjadi asisten riset di Universitas Gadjah Mada tahun 1995 dan 1996, kata-kata ini ternyata banyak benarnya.

Sebelum menginjak pada langkah kedua, saya ingatkan sekali lagi bahwa langkah pertama, mendefinisikan masalah, sangat vital tetapi sering dilupakan. Tentukan masalahnya seperti apa, kemudian apa saja yang harus dipecahkan dengan komputer, yang terakhir adalah apa masukannya dan bagaimana keluarannya.

2.    Menentukan solusi. Setelah masalah didefinisikan dengan jelas, masukan apa yang diberikan sudah jelas, keluaran apa yang diinginkan sudah jelas, langkah selanjutnya adalah mencari jalan bagai­mana masalah tersebut diselesaikan. Apabila per­masalahan terlalu kompleks, biasanya kita harus membaginya ke dalam beberapa modul kecil agar lebih mudah diselesaikan.
Sebagai contoh, program untuk menghitung invers matriks, dapat dibagi menjadi beberapa modul kecil. Modul pertama adalah meminta masukan dari pengguna berupa matriks bujur sangkar. Modul kedua adalah mencari invers matriks yang dimasukkan pengguna. Modul terakhir adalah me­nampilkan hasilnya kepada pengguna. Anda akan belajar membagi permasalahan ke dalam beberapa modul kecil pada Bab 5, Subrutin.

  3.   Memilih algoritma. Langkah ini merupakan salah satu langkah penting  dalam pemrograman kom­puter. Mengapa? Karena pemilihan algoritma yang salah akan menyebabkan program memiliki unjuk kerja yang kurang baik. Algoritma inilah yang akan saya bahas sepanjang buku ini, jadi saya tidak akan membahasnya panjang lebar di sini.

4.      Menulis program. Pada langkah ini, Anda mulai menuliskan program komputer untuk memecah­kan masalah yang diberikan. Sebagaimana saya jelaskan di awal bab ini, untuk menulis program Anda dapat menggunakan salah satu bahasa ge­nerasi ketiga. Saya tidak merekomendasikan ba­hasa mesin atau assembly karena terlalu sulit dan memboroskan waktu. Ingat ada pepatah lama mengatakan waktu adalah uang. Memang banyak orang yang senang menggunakan assembly de­ngan alasan kecepatan yang tinggi, tetapi waktu yang diperlukan untuk menulis programnya juga sangat lama. Dengan kata lain, harga yang dibayar untuk kecepatan yang tinggi tersebut cukup mahal. Saya juga tidak merekomendasikan bahasa generasi keempat karena penggunaannya lebih banyak dalam dunia basis data.




Ada beberapa hal yang harus dipertimbangkan saat memilih bahasa pemrograman, antara lain masalah yang dihadapi, bahasa pemrograman yang Anda kuasai, dsb. Dalam buku ini, Anda khusus akan menulis program menggunakan bahasa Pascal.

 5.   Menguji program. Setelah program selesai ditulis, Anda harus mengujinya. Pengujian pertama ada­lah: apakah program berhasil dikompilasi dengan baik? Pengujian berikutnya: apakah program dapat menampilkan keluaran yang diinginkan?

Lebih jauh lagi, Anda juga harus menguji program dengan banyak kasus lain. Sering terjadi, suatu program berjalan baik untuk kasus A, B, C; tetapi menghasilkan sesuatu yang tidak diinginkan untuk kasus X, Y, dan Z.

Langkah keempat dan kelima ini bisa dilakukan berulang-ulang sampai program diyakini benar­-benar berjalan sesuai yang diharapkan.

6.   Menulis dokumentasi. Hal ini biasanya dilakukan bersamaan dengan menulis program, artinya pada setiap baris program atau setiap beberapa baris program, Anda menambahkan komentar yang menjelaskan kegunaan dari suatu pernyataan.

Dokumentasi ini kelihatannya sepele dan banyak dilupakan orang, padahal fungsinya penting sekali. Di masa mendatang, apabila Anda perlu melaku­kan perubahan atau perbaikan terhadap suatu pro­gram, Anda akan merasakan pentingnya dokumen­tasi yang baik. Meskipun demikian, sebagian besar contoh program di buku ini tidak menyertakan do­kumentasi. Hal ini karena dokumentasi dari pro­gram tersebut tidak lain adalah buku ini sendiri.
Dokumentasi yang dijadikan satu dalam program, berupa komentar-komentar pendek, biasanya sudah cukup. Namun akan lebih baik jika Anda juga menuliskannya dalam dokumen tersendiri kemudian mencetaknya di atas kertas jika perlu. Saya memang tidak begitu menyarankan doku­mentasi di atas kertas, tetapi hal yang terpenting adalah menambahkan komentar-komentar singkat di dalam program Anda. Mungkin sekarang Anda berpikir tidak ada gunanya, tetapi percayalah nantinya Anda akan merasakan pentingnya hal ini.

7.        Merawat program. Langkah ini dilakukan setelah program selesai dibuat dan sudah digunakan oleh pengguna Anda. Hal yang paling sering terjadi di sini adalah munculnya bug yang sebelumnva tidak terdeteksi. Atau mungkin juga pengguna ingin tambahan suatu fasilitas baru. Apabila hal-hal seperti ini terjadi, Anda harus melakukan revisi terhadap program Anda.




Apa Itu Algoritma?

Dari materi subbab sebelumnya, Anda sudah mengetahui di manakah posisi algoritma dalam dunia pemrograman komputer atau lebih umumnya lagi dalam dunia komputer. Sekarang saya akan membahas algoritma itu sendiri. Ada beberapa definisi algoritma, tetapi di sini saya menggunakan acuan Microsoft Book­shelf:
Algoritma adalah urutan langkah berhingga untuk memecahkan masalah logika atau matematika.'

Dalam kehidupan sehari-hari, sebenarnya Anda juga menggunakan algoritma untuk melakukan sesuatu. Sebagai contoh, Anda ingin menulis surat, maka Anda perlu melakukan beberapa langkah berikut:
1.    Mempersiapkan kertas dan amplop.
2.    Mempersiapkan alat tulis, seperti pena atau pensil.
3.    Mulai menulis.
4.    Memasukkan kertas ke dalam amplop.
5.    Pergi ke kantor pos untuk mengeposkan surat tersebut.

Langkah-langkah dari nomor 1 sampai dengan nomor 5 di atas itulah yang disebut dengan algoritma. Jadi sebenamya Anda sendiri juga sudah menggunakan algoritma baik sadar maupun tidak sadar.
Dalam banyak kasus, algoritma yang Anda laku­kan tidak selalu berurutan seperti di atas. Kadang-ka­dang Anda harus memilih dua atau beberapa pilihan. Sebagai contoh, jika Anda ingin makan, Anda harus menentukan akan makan di rumah makan atau me­masak sendiri. Jika Anda memilih untuk makan di rumah makan, Anda akan menjalankan algoritma yang berbeda dengan jika Anda memilih memasak sendiri. Dalam dunia algoritma, hal semacam ini sering disebut percabangan.
Dalam kasus lain lagi, Anda mungkin harus melakukan langkah-langkah tertentu beberapa kali. Sebagai contoh, saat Anda menulis surat, sebelum me masukkan kertas ke dalam amplop, mungkin Anda ha­rus mengecek apakah surat tersebut sudah benar atau belum. Jika belum benar, berarti Anda harus memper­siapkan kertas baru dan menulis lagi. Demikian seterus­nya sampai surat Anda sesuai dengan yang diharapkan. Dalam dunia pemrograman, hal semacam ini sering disebut pengulangan.
Contoh Algoritma

Berikut ini adalah contoh algoritma untuk me­mecahkan masalah matematika. Misalkan Anda ingin menghitung luas lingkaran dari masukan berupa jari-­jari lingkaran. Rumus luas lingkaran adalah:
L = π.R2
Berikut ini adalah contoh algoritma untuk meng­hitung luas lingkaran:

1.         Masukkan R.
2.         Pi ← 3,14.
3.         L← Pi*R*R.
4.         Tulis L

Perhatikan terdapat tanda        pada baris kedua dan ketiga. Tanda itu berarti nilai di sebelah kanan di­berikan pada operan di sebelah kiri. Sebagai contoh, untuk baris kedua, nilai 3.14 diberikan pada variabel Pi. Berikutnya, nilai Pi * R * R diberikan pada variabel L.
Baris pertama dari algoritma di atas meminta masukkan dari pengguna berupa jari-jari lingkaran yang disimpan pada variabel R. Pada baris kedua nilai π disimpan pada variabel dengan nama Pi. Baris ketiga menghitung luas lingkaran dengan rumus π R2 atau yang dituliskan Pi * R * R. Luas lingkaran ini disimpan pada variabel L. Baris terakhir menuliskan luas lingkaran tersebut.

Untuk memudahkan memahami algoritma, biasanya orang menggambarkan suatu diagram alir (flow charf). Gambar 1.1 adalah contoh diagram alir untuk algoritma penghitung luas lingkaran.





















Gambu 11 Algoritma penghitung luas lingkaran.
Percabangan

Contoh berikutnya adalah algoritma untuk menuliskan nilai absolut dari nilai yang dimasukkan pengguna. Definisi dari nilai absolut adalah sebagai berikut:
│x│= x, jika x >= 0
│x│= -x, jika x < 0

Berikut ini adalah algoritma untuk menuliskan nilai absolut dari masukan pengguna:

1. Masukkan x.
2. Jika (x < 0) maka kerjakan baris 3, jika tidak kerjakan baris 4.
3. x    -x.
4. Tulis x.

Baris pertama meminta masukkan suatu bilangan dari pengguna yang disimpan pada variabel x.
Baris kedua mengecek nilai variabel x lebih kecil dari 0 atau tidak. Jika ya, yang dikerjakan adalah baris ketiga, tetapi jika tidak yang dikerjakan adalah baris keempat.
Baris ketiga membuat nilai x menjadi positif ka­rena baris ini hanya dikerjakan jika nilai x lebih kecil dari 0.
Baris terakhir menuliskan nilai x yang selalu positif.

Gambar 1.2 adalah contoh diagram alir untuk algoritma di atas.
Gambar 1.2. Algoritma menuliskan nilai absolut.


 




















Pengulangan

Untuk memperjelas penulisan algoritma, saya akan menyajikan satu contoh lagi, yaitu algoritma untuk menghitung rata-rata dari sekumpulan data yang di masukkan pengguna. Rumus mencari rata-rata dari data x. yang berjumlah N adalah sebagai berikut:
    



Berikut ini adalah algoritma untuk menghitung rata-rata data yang dimasukkan pengguna:

1.    Masukkan N.
2. il.
3.    j 0.
4.    Selama (i <= N) kerjakan baris 4 sampai dengan 7.
5.    Masukkan dt.
6.     I i+l.
7.     j j+dt
8.     Rata j / N.
9.    Tulis Rata.

Baris pertama meminta pengguna memasukkan N, yaitu jumlah data.

Pada baris kedua, variabel i, yang berguna sebagai pencacah banyaknya data yang telah dimasukkan pengguna, diberi nilai 1.
Pada baris ketiga, variabel j, yang digunakan un­tuk menyimpan hasil penjumlahan data, diberi nilai 0.
Baris keempat memberikan perintah untuk mengulangi baris keempat sampai dengan baris ketujuh selama i kurang dari sama dengan N. Dengan kata lain, setelah i lebih besar dari N, baris kedelapan yang dijalankan.
Baris kelima meminta masukkan data yang ke-i.
Baris keenam menambah variabel i dengan 1. Perhatikan arti dari perintah i i + 1 adalah nilai I ditambah dengan 1 kemudian hasilnya disimpan pada variabel i kembali.
Baris ketujuh menambah variabel j dengan data yang dimasukkan pengguna. Sebagaimana dijelaskan di atas, variabel j digunakan untuk menyimpan hasil penjumlahan semua data, jadi untuk setiap masukan data, nilai variabel j harus ditambah dengan dt.
Baris kedelapan menghitung rata-rata dengan cara membagi hasil penjumlahan dengan banyaknya data.
Baris terakhir menuliskan rata-rata tersebut.
Gambar 1.3 adalah contoh diagram alir untuk algoritma di atas.
Gambar 1.3. Algorr'tma menght'tung rata­rata sekumpulan data.
























Catatan Akhir

Sekedar catatan akhir, algoritma sebenarnya di­gunakan untuk membantu Anda dalam mengkonversi­kan suatu permasalahan ke dalam bahasa komputer. Oleh karena itu, banyak pemrogram yang sudah ber­pengalaman tidak pernah menuliskan algoritma di atas kertas lagi. Artinya dia menuliskan algoritma itu di dalam kepalanya dan dia langsung memprogram berdasarkan algoritma di kepalanya itu. Pada bab-bab akhir dari buku ini, Anda akan jarang menemukan pe­nulisan algoritma secara eksplisit seperti di atas karena saya menganggap Anda sudah bisa menuliskannya di dalam kepala.
Pada bab-bab berikutnya, saya tidak akan meng­gambar diagram alir lagi. Apabila Anda kesulitan mem­pelajari algoritma yang disajikan, Anda dapat meng­gambarnya sendiri di atas kertas.
Latihan

1.    Tulislah algoritma untuk mencari luas segitiga jika masukan dari pengguna adalah alas clan tingginya.

Petunjuk: Luas segitiga dapat dihitung dengan rumus:
L = 1/2.a.t
dengan a: alas segitiga dan t: tinggi segitiga.
2.    Tulislah algoritma untuk mencari sisi miring dari suatu segitiga siku-siku jika diketahui panjang dua sisi yang membentuk sudut siku-siku.

Petunjuk: Sisi miring segitiga siku-siku dapat dihitung dengan rumus Pythagoras:
dengan a dan b adalah sisi siku-siku.

3. Tulislah algoritma untuk meminta masukan dua bilangan dari pengguna   kemudian menampilkan bilangan terbesar di antara kedua bilangan ter­sebut.
4.    Tulislah algoritma untuk meminta masukan tiga bilangan dari pengguna kemudian menampilkan bilangan terkecil di antara ketiga bilangan tersebut.
5.    Tulislah algoritma untuk menampilkan teks "Turbo Pascal" sebanyak 100 kali.
6.    Tulislah algoritma untuk mencari modus dari sekumpulan data yang dimasukkan pengguna.
Petunjuk: Modus adalah data yang paling sering muncul.