Minggu, 02 Januari 2011

program sorting

Bubble Sort

#include
#include

int data[10],data2[10];
int n;

void tukar(int a, int b)
{
int t;
t = data[b];
data[b] = data[a];
data[a] = t;
}

void bubble_sort()
{
for(int i=1;i<=n;i++) { for(int j=n; j>=i; j--)
{
if(data[j] < data[j-1]) tukar(j,j-1); } } } void main() { cout<<"===PROGRAM BUBBLE SORT==="<>n;
for(int i=1;i<=n;i++) { cout<<"Masukkan data ke "<>data[i];
data2[i]=data[i];
}

bubble_sort();

cout<<"\n\n"; //tampilkan data cout<<"Data Setelah di Sort : "; for(int i=1; i<=n; i++) { cout<<" "<Selection Sort


#include
#include

int data[10],data2[10];
int n;

void tukar(int a, int b)
{
int t;
t = data[b];
data[b] = data[a];
data[a] = t;
}

void insertion_sort()
{
int temp,i,j;
for(i=1;i<=n;i++) { temp = data[i]; j = i -1; while(data[j]>temp && j>=0)
{
data[j+1] = data[j];
j--;
}
data[j+1] = temp;
}
}
void main()
{
cout<<"===PROGRAM INSERTION SORT==="<>n;
for(int i=1;i<=n;i++) { cout<<"Masukkan data ke "<>data[i];
data2[i]=data[i];
}

insertion_sort();

cout<<"\n\n";
//tampilkan data
cout<<"Data Setelah di Sort : ";
for(int i=1; i<=n; i++)
{
cout<<" "< }
cout<<"\n\nSorting Selesai";
getch();
}

Minggu, 26 Desember 2010

Pencarian Sekuensial

“Sequential search atau Pencarian sekuensial” bisa disebut dengan pencarian linear yang merupakan model pencarian yang paling simpel dan sederhana banget deh yang dapat dilakukan terhadap suatu kumpulan data. Suatu tekhnik pencarian dalam array (1 dimensi) yang akan menelusuri semua elemen-elemen array dari awal sampai akhir, dimana data-data tidak perlu diurutkan terlebih dahulu.

Biar kalian lebih paham secara konsep, penjelasannya adalah sebagai berikut :
Keunggulan dari pencarian sekuensial ini adalah jika data yang dicari terletak di indeks array terdepan maka waktu dalam pencarian nya sangat cepat, dalam artian waktu yang minim sekali. Keburukannya adalah kalau jika data indeks array nya yang dicari paling belakang, maka waktu yang dicari tuh lama banget (maksimal).

Terdapat L yang merupakan larik yang berisi n buah data ( L[0],L[1]…….L[n-1]) dan k adalah data yang akan dicari. Pencarian dilakukan untuk menemukan L[i] = k dengan i adalah bilangan indeks terkecil yang memenuhi kondisi 0<= k <=n-1. Tentu saja bahwa data yang di cari tidak ditemukan. Jika misalnya terdapat angka 4, maka ditulis ada, sedangkan jika dimunculkan angka 6, namun angka 6 tidak ada maka akan muncul tulisan tidak ada. Berikut merupakan program yang telah dibuat sebelumnya : L = {4,12,9,-2,12,7,1,100} Tahukah kamu dimana posisi 12 yang pertama ? Nah, dalam hal ini k adalah 12 dan k ditemukan berupa indeks 2. Angka 12 yang pertama akan dipilih oleh program, karena secara logika angka 12 merupakan data yang pertama muncul. Coba deh kamu bayangin aja misalnya dalam antrian, orang yang mengantri di depan akan duluan mendapatkan giliran. Berikut merupakan contoh program Pencarian Sekuensial (Sequential Search): //Sequential searching #include #include void main() { clrscr(); int data[8] = {4,12,9,-2,12,7,1,100}; int cari,index; int ketemu=0; cout<<”masukkan data yang ingin dicari = “; cin>>cari;
for(int i=0;i<8;i++)
{
if(data[i] == cari)
{
ketemu=1;
index = i;
break;
}
}
if(ketemu == 1)
{
cout<<”Data ada!” else cout<<”Data Tidak ada!” }

Algoritma brute force (di dalam pencarian string)

Algoritma brute force merupakan algoritma pencocokan string yang ditulis tanpa memikirkan peningkatan performa. Algoritma ini sangat jarang dipakai dalam praktek, namun berguna dalam studi pembanding dan studi-studi lainnya.
[sunting] Cara kerja

Secara sistematis, langkah-langkah yang dilakukan algoritma brute force pada saat mencocokkan string adalah:

1. Algoritma brute force mulai mencocokkan pattern pada awal teks.
2. Dari kiri ke kanan, algoritma ini akan mencocokkan karakter per karakter pattern dengan karakter di teks yang bersesuaian, sampai salah satu kondisi berikut dipenuhi:
1. Karakter di pattern dan di teks yang dibandingkan tidak cocok (mismatch).
2. Semua karakter di pattern cocok. Kemudian algoritma akan memberitahukan penemuan di posisi ini.
3. Algoritma kemudian terus menggeser pattern sebesar satu ke kanan, dan mengulangi langkah ke-2 sampai pattern berada di ujung teks.

Berikut adalah Algoritma brute force yang sedang bekerja mencari string:

Algoritma brute force yang sedang bekerja mencari string.
[sunting] Pseudocode

Pseudocode algoritma brute force ini:

procedure BruteForceSearch(
input m, n : integer,
input P : array[0..n-1] of char,
input T : array[0..m-1] of char,
output ketemu : array[0..m-1] of boolean
)

Deklarasi:
i, j: integer

Algoritma:
for (i:=0 to m-n) do
j:=0
while (j < n and T[i+j] = P[j]) do j:=j+1 endwhile if(j >= n) then
ketemu[i]:=true;
endif
endfor

ALGORITMA PENCARIAN BINER


Pencarian Biner (Binary Search) pada array yang sudah terurut


Pencarian Biner (Binary Search) dilakukan untuk :
   memperkecil jumlah operasi pembandingan yang harus dilakukan antara data yang dicari dengan data yang ada di dalam tabel, khususnya untuk jumlah data yang sangat besar ukurannya.
   Prinsip dasarnya adalah melakukan proses pembagian ruang pencarian secara berulang-ulang sampai data ditemukan atau sampai ruang pencarian tidak dapat dibagi lagi (berarti ada kemungkinan data tidak ditemukan).
   Syarat utama untuk pencarian biner adalah data di dalam tabel harus sudah terurut, misalkan terurut menaik.

ALGORITMA  

Kamus
      Const N : integer = 8  { misalkan jumlah elemen array maksimum = 8 }
      Type A = array [ 1 ..... N ] of integer
      Cari, BatasAtas, BatasBawah, Tengah : Integer
      Ketemu : boolean
ALGORITMA
         Input (cari) { meminta nilai data yang akan dicari}
         BatasAtas     ¬  1 { indeks array dimulai dari 1 }
         BatasBawah     ¬   N    
         Ketemu   ¬  False
         While (BatasAtas < BatasBawah) and (not ketemu) do
               Tengah ¬   (BatasAtas  + BatasBawah) div 2
               If A [Tengah] = cari then
                  Ketemu ¬ true
                           Else
                                 If ( A [Tengah]  < cari ) then { cari di bagian kanan }
                                       BatasAtas ¬ Tengah + 1
                                 Else
                                       BatasBawah ¬ Tengah – 1 { cari di bagian kiri }
                                 Endif
                           Endif
         EndWhile
         If (ketemu) then
                     Output ( ‘Data berada di index nomor’, Tengah )
         Else     Output ( ‘Data tidak ditemukan’ )
         Endif





Contoh Nilai-Nilai data yang sudah terurut :

A
2
5
8
12
15
25
37
57

1
2
3
3
5
6
7
8

Kasus 1  : cari = 12

Loop pertama : Tengah = (BatasAtas + BatasBawah) div 2 = (1 + 8) div 2 = 4
                           A [Tengah] = A [4] = 12, berarti loop pertama data langsung ditemukan

Kasus 2  : cari = 15

Loop pertama : Tengah = (BatasAtas + BatasBawah) div 2 = (1 +  8) div 2 = 4
                           A [Tengah] = A [4] = 12 < cari = 15, berarti BatasAtas = Tengah + 1 = 4 + 1 = 5
Loop kedua :     Tengah = (BatasAtas + BatasBawah) div 2 = (5 +  8) div 2 = 6
                           A [Tengah] = A [6] = 25 > cari = 15, berarti BatasBawah = Tengah - 1 = 6 - 1 = 5
Loop ketiga :     Tengah = (BatasAtas + BatasBawah) div 2 = (5 +  5) div 2 = 5
                           A [Tengah] = A [5] = 15, berarti  setelah loop ketiga, data ditemukan

Kasus 3  : cari = 10

Loop pertama : Tengah = (BatasAtas + BatasBawah) div 2 = (1 +  8) div 2 = 4
                           A [Tengah] = A [4] = 12 > cari = 10, berarti BatasBawah = Tengah - 1 = 4 - 1 = 3
Loop kedua :     Tengah = (BatasAtas + BatasBawah) div 2 = (1 +  3) div 2 = 2
                           A [Tengah] = A [2] = 5 < cari = 10, berarti BatasAtas = Tengah + 1 = 2 + 1 = 3
Loop ketiga :     Tengah = (BatasAtas + BatasBawah) div 2 = (3 +  3) div 2 = 3
                           A [Tengah] = A [3] = 8, berarti  setelah loop ketiga, data tidak ditemukan

Untuk jumlah data sebanyak n, maka proses pembandingan maksimal sebanyak ( log n ) kali. Untuk contoh di atas, jumlah data 8, maka proses pembandingan maksimal sebanyak 3 kali.


Sabtu, 30 Oktober 2010

Salahsatu Input devices : Track Ball

TRACKBALL


1.PENGERTIAN TRACKBALL
Merupakan perangkat yang sejenis dengan mouse atau stylus. Alat ini mirip mouse yang dibalik dan digunakan dengan menggelindingkan bolanya.

2.FUNGSI TRACKBALL
Trackball memiliki fungsi yang sama dengan mouse, yaitu untuk memilih perintah-perintah dari menu tampilan grafis. Bedanya, jika ingin menggerakkan pointer mouse di layar diperlukan pergeseran mouse, sementara pada trackball dilakukan dengan menggulirkan bola trackball dengan jari ke arah yang dikehendaki.

Trackball biasanya digunakan pada komputer laptop karena dapat menghemat ruang gerak, karena dapat ditempelkan langsung pada laptop. Jenis piranti ini perlu sering dibersihkan karena lebih mudah ditempeli kotoran dari jari tangan pengguna.


3.CARA KERJA TRACKBALL
Prinsip kerja dari trackball hampir sama dengan mouse. Perbedaan utama terletak pada konfigurasinya. Pada mouse operator harus menggerakkan seluruh badan dari mouse tersebut, sedangkan pada trackball badan dari trakcball tersebut tetap diam, tetapi tangan operatorlah yang menggerakkan bola untuk menunjukkan perpindahan kursor. Dengan cara demikian, trackball cukup ditempatkan pada tempat yang sempit pada sebuah meja kerja. Arah dan kecepatan kursor pada layar ditentukan oleh arah dan rotasi bola yang ada di atas badan trackball.

4.JENIS TRACKBALL
v SlimBlade™ Trackball
v Expert Mouse®
v SlimBlade™ Trackball Mouse
v Orbit® Optical Trackball
v 5.PRODUSEN TRACKBALL
5. PRODUSEN TRACKBALL
a.China
v Shenzhen Baitong Industrial Co., Ltd.
v SZ KMY Co., Ltd.
v Shenzhen Sunson Financial Equipment Co., Ltd.
v Rixing Plastic Production Factory
v Yezone Electronic Co., Ltd.
v Shenzhen Callan Trading Co., Ltd.
v Belson Imaging Technology Co., Ltd.
v Guangzhou Yuexiu District Chnlan Electronic Firm
v Guangzhou Xinquan Electronic Co., Ltd.
v Shenzhen Dealfon Technology Co., Ltd.
v Key Technology Limited
v Kingleader Technology Co., Ltd
v Inputel Technology Co.,Ltd
b.HongKong
v Shenzhen Baitong Industrial Co., Ltd. [
v SZ KMY Co., Ltd
v Shenzhen Sunson Financial Equipment Co., Ltd.
v 4.Rixing Plastic Production Factory
v 5.Yezone Electronic Co., Ltd.
v 6. Shenzhen Callan Trading Co., Ltd.
v 7. Belson Imaging Technology Co., Ltd.
v 8. Guangzhou Yuexiu District Chnlan Electronic Firm
v 9. Guangzhou Xinquan Electronic Co., Ltd.
v 10.Shenzhen Dealfon Technology Co., Ltd
v 11.Key Technology Limited
v 12.Kingleader Technology Co., Ltd
v 13. Inputel Technology Co.,Ltd

Senin, 25 Oktober 2010

Perangkat perangkat komputer

Pengertian & Komponen-komponen Komputer

Pengertian Komputer
Kata komputer berasal dari bahasa Latin yaitu Computare yang artinya menghitung. Dalam bahasa Inggris disebut to compute. Secara definisi komputer diterjemahkan sebagai sekumpulan alat elektronik yang saling bekerja sama, dapat menerima data (input), mengolah data (proses) dan memberikan informasi (output) serta terkoordinasi dibawah kontrol program yang tersimpan di memorinya. Jadi cara kerja komputer dapat kita gambarkan sebagai berikut
1. Input Device, adalah perangkat-perangkat keras komputer yang berfungsi untuk memasukkan data ke dalam memori komputer, seperti keyboard, mouse, joystick dan lain-lain.
2. Prosesor, adalah perangkat utama komputer yang   mengelola seluruh aktifitas komputer itu sendiri. Prosesor terdiri dari dua bagian utama, yaitu ;
  • Control Unit (CU), merupakan komponen utama prosesor yang mengontrol semua perangkat yang terpasang pada komputer, mulai dari input device sampai output device.
  • Arithmetic Logic Unit (ALU), merupakan bagian dari prosesor yang khusus mengolah data aritmatika (menambah, mengurang dll) serta data logika (perbandingan).
3. Memori adalah media penyimpan data pada komputer.
Memori terbagi atas dua macam, yaitu ;
  • Read Only Memory (ROM), yaitu memori yang hanya bisa dibaca saja, tidak dapat dirubah dan dihapus dan sudah diisi oleh pabrik pembuat komputer. Isi ROM diperlukan pada saat komputer dihidupkan. Perintah yang ada pada ROM sebagian akan dipindahkan ke RAM. Perintah yang ada di ROM antara lain adalah perintah untuk membaca sistem operasi dari disk, perintah untuk mencek semua peralatan yang ada di unit sistem dan perintah untuk menampilkan pesan di layar. Isi ROM tidak akan hilang meskipun tidak ada aliran listrik. Tapi pada saat sekarang ini ROM telah mengalami perkembangan dan banyak macamnya, diantaranya :
· PROM (Programable ROM), yaitu ROM yang bisa kita program kembali dengan catatan hanya boleh satu kali perubahan setelah itu tidak dapat lagi diprogram.
· RPROM (Re-Programable ROM), merupakan perkembangan dari versi PROM dimana kita dapat melakukan perubahan berulangkali sesuai dengan yang diinginkan.
· EPROM (Erasable Program ROM), merupakan ROM yangdapat kita hapus dan program kembali, tapi cara penghapusannya dengan menggunakan sinar ultraviolet.
· EEPROM (Electrically Erasable Program ROM), perkembangan mutakhir dari ROM dimana kita dapat mengubahdan menghapus program ROM dengan menggunakan teknikelektrik. EEPROM ini merupakan jenis yang paling banyak digunakan saat ini.
  • Random Access Memori (RAM), dari namanya kita dapat artikan bahwa RAM adalah memori yang dapat diakses secara random. RAM berfungsi untuk menyimpan program yang kita olah untuk sementara waktu (power on) jika komputer kita matikan, maka seluruh data yang tersimpan dalam RAM akan hilang. Tujuan dari RAM ini adalah mempercepat pemroses data pada komputer. Agar data yang kita buat tidak dapat hilang pada saat komputer dimatikan, maka diperlukan media penyimpanan eksternal, seperti Disket, Harddisk, flash disk, PCMCIA card dan lain-lain.
4. Output Device, adalah perangkat komputer yang berguna untuk menghasilkan keluaran, apakah itu ke kertas (hardcopy), ke layar monitor (softcopy) atau keluaran berupa suara. Contohnya printer, speaker, plotter, monitor dan banyak yang lainnya. Dari penjelasan diatas dapat kita simpulkan bahwa prinsip kerja komputer tersebut diawali memasukkan data dari perangkat input, lalu data tersebut diolah sedemikian rupa oleh CPU sesuai yang kita inginkan dan data yang telah diolah tadi disimpan dalam memori komputer atau disk. Data yang disimpan dapat kita lihat hasilnya melalui perangkat keluaran.
Komponen-Komponen Komputer
Komputer terdiri dari tiga komponen utama yang tidak dapat dipisahkan, yaitu ;
1. Hardware (perangkat keras), Merupakan peralatan fisik dari komputer yang dapat kita lihat dan rasakan. Hardware ini terdiri dari ;
  • Input/Output Device (I/O Device) Terdiri dari perangkat masukan dan keluaran, seperti keyboard dan printer.
  • Storage Device (perangkat penyimpanan) Merupakan media untuk menyimpan data seperti disket, harddisk, CD-I, flash disk dll.
  • Monitor /Screen Monitor merupakan sarana untuk menampilkan apa yang kita ketikkan pada papan keyboard setelah diolah oleh prosesor. Monitor disebut juga dengan Visual Display Unit (VDU).
  • Casing Unit adalah tempat dari semua peralatan komputer, baik itu motherboard, card, peripheral lain dan Central Procesing Unit (CPU).Casing unit ini disebut juga dengan System Unit.
  • Central Procesing Unit (CPU) adalah salah satu bagian komputer yang paling penting, karena jenis prosesor menentukan pula jenis komputer. Baik tidaknya suatu komputer, jenis komputer, harga komputer, ditentukan terutama oleh jenis prosesornya.Semakin canggih prosesor komputer, maka kemampuannya akan semakin baik dan biasanya harganya akan semakin mahal.
2. Software (perangkat lunak), merupakan program-program komputer yang berguna untuk menjalankan suatu pekerjaan sesuai dengan yang dikehendaki. Program tersebut ditulis dengan bahasa khusus yang dimengerti oleh komputer. Software terdiri dari beberapa jenis, yaitu ;
  • Sistem Operasi, seperti DOS, Unix, Linux, Novell, OS/2, Windows, Adalah software yang berfungsi untuk mengaktifkan seluruh perangkat yang terpasang pada komputer sehingga masing-masingnya dapat saling berkomunikasi. Tanpa ada sistem operasi maka komputer tak dapat difungsikan sama sekali.
  • Program Utility, seperti Norton Utility, Scandisk, PC Tools, dll.Program utility berfungsi untuk membantu atau mengisikekurangan/kelemahan dari system operasi, misalnya PC Tools dapat melakukan perintah format sebagaimana DOS, tapi PC Tools mampu memberikan keterang dan animasi yang bagus dalam proses pemformatan. File yang telah dihapus oleh DOS tidak dapat dikembalikan lagi tapi dengan program bantu hal ini dapat dilakukan.
  • Program Aplikasi, seperti GL, MYOB, Payroll dll. Merupakan program yang khusus melakukan suatu pekerjaan tertentu, seperti program gaji pada suatu perusahaan. Maka program ini hanya digunakan oleh bagian keuangan saja tidak dapat digunakan oleh departemen yang lain. Biasanya program aplikasi ini dibuat oleh seorang programmer komputer sesuai dengan permintaan / kebutuhan seseorang / lembaga/ perusahaan guna keperluan interennya.
  • Program Paket, seperti Microsofr office, Adobe fotoshop, macromedia studio, open office dll Adalah program yang disusun sedemikian rupa sehingga dapat digunakan oleh banyak orang dengan berbagai kepentingan. Seperti MS-office, dapat digunakan oleh departemen keuangan untuk membuat nota, atau bagian administrasi untuk membuat surat penawaran dan lain sebagainya.
  • Bahasa Pemrograman, PHP, ASP, dBase, Visual Basic, dll.Merupakan software yang khusus digunakan untuk membuat program komputer, apakah itu sistem operasi, program paket dll. Bahasa
pemrograman ini biasanya dibagi atas 3 tingkatan, yaitu ;
o Low Level Language, bahasa pemrograman generasi pertama,bahasa pemrograman jenis ini sangat sulit dimengerti karena instruksinya menggunakan bahasa mesin. Biasanya yang mengerti hanyalah pembuatnya saja.
o Midle Level Language, merupakan bahasa pemrograman tingkat menengah dimana penggunaan instruksi sudah mendekati bahasa sehari-hari, walaupun begitu masih sulit untuk di mengerti karena banyak menggunakan singkatansingakatan seperti STO artinya simpan (singkatan dari STORE) dan MOV artinya pindah (singkatan dari MOVE).Yang tergolong kedalam bahasa ini adalah Assembler, ForTran (Formula Translator).
o High Level Language, merupakan bahasa tingkat tinggi yang mempunyai cirri mudah dimengerti, karena menggunakan bahasa sehari-hari, seperti BASIC, dBase, Visual Basic, VB.Net dll.
3. Brainware (User),
User adalah personel-personel yang terlibat langsung dalam pemakaian komputer,seperti Sistem analis, programmer, operator, user, dll. Pada organisasi yang cukup besar, masalah komputerisasi biasanya ditangani oleh bagian khusus yang dikenal dengan bagian EDP (Electronic Data Processing), atau sering disebut dengan EDP Departemen, yang dikepalai oleh seorang Manager EDP.

Minggu, 19 September 2010

Cara membuat blog di blogspot

Tutorial cara membuat blog...


  1. Silahkan kunjungi situs http://www.blogger.com
  2. Setelah halaman pendaftaran terbuka, alihkan perhatian ke sebelah kanan atas, ubah bahasa ke Indonesia agar lebih mudah difahami. Silahkan langsung login dengan menggunakan username serta password gmail anda ( akun email anda bisa untuk login ke blogger). login blogger
  3. Klik tombol bertuliskan CIPTAKAN BLOG ANDA. ciptakan blog anda
  4. Isilah nama judul blog serta alamat blog yang di inginkan. Ingat! dalam membuat alamat blog harus benar-benar serius karena itu permanen tidak dapat digantikan lagi (kecuali nanti ganti dengan custom domain). Jika alamat yang diinginkan ternyata tidak bisa digunakan, masukkan kembali alamat lain yang masih tersedia. Jika alamat blog yang diinginkan masih tersedia, silahkan klik anak panah bertuliskan LANJUTKAN. nama-blog
  5. Silahkan pilih template yang anda sukai ( template ini nanti bisa diubah lagi kapan saja anda mau), kemudian klik LANJUTKAN. pilih template di blogger
  6. Akan ada tulisan “Blog Anda Sudah Jadi!”. Silahkan lanjutkan dengan klik tombol MULAI BLOGGING. mulai blogging
  7. Setelah masuk post editor, silahkan isi apa saja ( disarankan untuk langsung mengisi posting, biasanya jika tidak langsung posting akan terjaring robot anti spam milik blogger, dan blog anda akan di lock). Contoh : hello world. Klik Tombol PRATINJAU untuk melihat tampilan yang nanti akan muncul di blog, klik tombol TERBITKAN ENTRI jika posting anda mau dipublikasikan ke publik. terbitkan entri
  8. Klik “Lihat Entri” untuk melihat blog anda.
  9. Selesai.