Senin, 20 April 2009

BUAT SEMUA

alhamdullillah pada semester ini aku dapat jatah

asisten dosen Pengantar Teknologi Informasi
( Man. Informatika, T. Informatika, Sis. Informasi, Sis. Komputer)
asisten dosen Pengantar Instalasi Komputer
( Manajemen Informatika )
asisten dosen Pemograman Bahasa C
( Teknik Elektro )
asisten dosen Pemograman 1
( Sistem Komputer )
asisten dosen Metode Perancangan Program
( Manajemen Informatika )

siapapun itu
apapun statusnya
apapun bentuknya
mau yang keliatan ato yang gag keliatan
andika kan bantu kalian semua
kalau ada yang ingin belajar BAHASA PEMOGRAMAN C++
silakan hub aku ajah
kita belajar bareng okre
dukung dhiera trus yah.....
=D

Rabu, 29 Oktober 2008

Metode Penyisipan Langsung (Straight Insertion Sort)

Dapat dibagi menjadi 2 bagian
– Bagian sebelah kiri data sudah terurut (tujuan)
– Bagian sebelah kanan data belum terurut (sumber)

Langkah-langkah :
1 : Baca array elemen yang akan diurutkan (n)
2 : Kerjakan langkah 3 sampai langkah 6 untuk i : 1 s/d n-1
3 : Tentukan elemen yang akan disisipkan (Temp = A [i] ;
j = i-1;)
4 : Kerjakan langkah 5 selama temp (A [j] dan j >= 0;
5 : A [j+1]= A[j] ; j =j-1;
6 : Tempatkan elemen A [j+1] = Temp;
7 : Selesai

Algoritma Straight Insertion Sort
Deklarasi
I,J,K,N : Integer
Temp : real
A : array [1..20] of real
Deskripsi
Input(N) {maksimal N=20}
K traversal [1..N]
Input (Af) {masukkan data sebanyak N}
I traversal [2..N]
Temp <- A1
J <- I-1
While (temp =1) do
Aj+1 <- Aj
J <- J-1
Endwhile
Aj+1 <- Temp

Ilustrasi Insertion Sort













contoh program dapat didownload dari link disamping

SORTING (PENGURUTAN)

PENGERTIAN

Sorting (pengurutan) didefenisikan sebagai suatu proses untuk menyusun kembali himpunan obyek menggunakan metode tertentu. Secara umum ada 2 jenis pengurutan data, yaitu :
• Pengurutan naik (ascending)
Dari data yang terkecil hingga yang paling besar
• Pengurutan turun (descending)
Pengurutan data dari yang paling besar hingga yang paling kecil

Tujuan pengurutan data adalah untuk lebih mempermudah proses pencarian data kelak dikemudian hari,.saya akan memberikan beberapa metode pengurutan data terutama pengurutan larik seperti pengurutan langsung (straight method). Metode pengurutan lengung ini dapat dikelompokkan menjadi 3 metode, yaitu : penyisipan (insertion), seleksi (selection), dan penukaran (exchange) / metode gelembung (bubble sort).

Mensortir informasi atau data

Salah satu cara sorting yang penting adalah mengatur benda informasi dalam urutan alfabetik sesuai dengan hubungan penyusunan yang telah didefinisikan sebelumnya, misal ketika seseorang mensortir buku-buku di perpustakaan berdasarkan judul, subyek atau penulis (Biasanya diurutkan dalam urutan membesar).

Urutan yang dihasilkan dapat membesar atau mengecil, karena biasanya seluruh sorting adalah sorting angka. Sorting dalam ilmu komputer adalah salah satu subjek riset yang paling luas karena kebutuhan mempercepat operasi dalam ribuan atau jutaan data selama operasi pencarian; lihat algoritma sorting.

Tujuan utama mensortir informasi adalah untuk mengoptimalkan tugas tertentu. Pada umumnya, ada dua cara pengelompokan informasi: berdasarkan kategori, misal sebuah katalog belanja di mana barang disusun bersama di bawah judul seperti 'rumah', 'olah raga', 'pakaian wanita', dll. dan berdasarkan intensitas seperti harga, misal dari yang termurah sampai yang termahal.

metode pengurutan yang akan saya bahas ada dua macam yaitu :

Metode pengurutan langsung :
metode pengurutan langsung yang akan saya bahas ada 3 yaitu :
1. Metode Penyisipan Langsung (Straight Insertion Sort)
2. Metode Seleksi (Straight Selection Sort)
3. Metode Penukaran (Exchange selection) / Gelembung (Bubble Sort)

Metode pengurutan tidak langsung :
metode pengurutan tidak langsung yang akan saya bahas ada 4 yaitu :
1. Shell Sort
2. Quick Sort
3. Merge Sort

Senin, 13 Oktober 2008

PROCEDURAL PROGRAMMING

Merupakan suatu paradigma yang berdasarkan pada konsep dari modularity dan pengelompokan kode program. Program utama dianggap sebagai sebuah modul, dimana modul tersebut didukung oleh modul-modul lainnya, baik berupa fungsi ataupun prosedur. Sedangkan kumpulan dari kesatuan modul-modul disebut juga dengan unit atau paket, yang bisa dianggap sebagai sebuah perpustakaan dari masing-masing unit atau paket tersebut. Contoh bahasa pemrograman yang termasuk kedalam paradigma ini cukup banyak, diantaranya adalah Pascal, Delphi, C++, ALGOL, Fortran, dll.

pemograman terprosedur kadang kadang dapat digunakan sebagai suatu sinonim untuk pemograman yang sangat mendesak (penetapan langkah langkah program harus menjangkau status yang diinginkan oleh pengguna). tetapi dapat juga menunjuk (seperti dibawah ini) kepada paradigma pemograman yang berdasarkan atas konsep dari pemanggilan prosedur itu sendiri. prosedur, juga mengenal sebagai rutinitas, sub rutinitas, metode, atau fungsi (tidak membingungkan dengan fungsi matematika, tetapi serupa kepada yang dipakai di pemograman fungsional) sederhananya berisi satu rangkaian langkah langkah perhitungan untuk segera dieksekusi.
beberapa pemberian prosedur boleh dipanggil pada beberapa titik selama sebuah program dieksekusi. termasuk oleh prosedur lain atau program itu sendiri.
pemograman terprosedur adalah sering menjadi suatu pilihan lebih baik daripada percontohan sederhana atau pemograman tidak terstruktur di banyak situasi yang mana melibatkan kompleksitas moderat atau yang memerlukan kesenangan maintainabilas yang penting.
manfaat yang mungkin :
1. kemampuan menggunakan kembali kode yang sama pada tempat berbeda di dalam program tanpa mengcopy kode itu.
2. suatu jalan yang lebih mudah untuk penyimpanan dari program yang mengalir dibanding suatu koleksi pernyataan "GOTO" atau "JUMP" (yang mana dapat membuat pembesaran, mempersulit program kedalam kode spageti).
3. kemampuan untuk betul betul tersusun atau modular.

perbandingan dengan pemograman berorientasi objek :
fokus dari pemograman terprosedur adalah untuk memecahkan sebuah tugas pemograman kedalam suatu koleksi variabel, struktur data, dan sub rutinitas. sedangkan di dalam pemograman berorientasi objek akan merobohkan tugas program kedalam objek. yang mana metode dapat menjadi valid untuk memenuhi suatu tugas pemograman yang spesifik.

beberapa perbedaan antara bahasa yang berorientasi objek dan bahasa yang tidak berorientasi objek :
berorientasi objek murni = metode, objek, pesan, atribut
prosedural murni = fungsi, modul, argumen, variabel

Senin, 06 Oktober 2008

OBJECT ORIENTED PROGRAMING ( OOP )

Pemograman Berorientasi Objek
Pemrograman berorientasi objek merupakan paradigma pemrograman yang berorientasikan kepada objek. Semua data dan fungsi di dalam paradigma ini dibungkus dalam kelas-kelas atau objek-objek. Bandingkan dengan logika pemrograman terstruktur. Setiap objek dapat menerima pesan, memproses data, dan mengirim pesan ke objek lainnya.
Model data berorientasi objek dikatakan dapat memberi fleksibilitas yang lebih, kemudahan mengubah program, dan digunakan luas dalam teknik piranti lunak skala besar. Lebih jauh lagi, pendukung OOP mengklaim bahwa OOP lebih mudah dipelajari bagi pemula dibanding dengan pendekatan sebelumnya, dan pendekatan OOP lebih mudah dikembangkan dan dirawat.

Konsep dasar dari Pemrograman Berorientasi Objek
Pemrograman orientasi-objek menekankan konsep berikut:
• kelas — kumpulan atas definisi data dan fungsi-fungsi dalam suatu unit untuk suatu tujuan tertentu. Sebagai contoh 'class of dog' adalah suatu unit yang terdiri atas definisi-definisi data dan fungsi-fungsi yang menunjuk pada berbagai macam perilaku/turunan dari anjing. Sebuah class adalah dasar dari modularitas dan struktur dalam pemrograman berorientasi object. Sebuah class secara tipikal sebaiknya dapat dikenali oleh seorang non-programmer sekalipun terkait dengan domain permasalahan yang ada, dan kode yang terdapat dalam sebuah class sebaiknya (relatif) bersifat mandiri dan independen (sebagaimana kode tersebut digunakan jika tidak menggunakan OOP). Dengan modularitas, struktur dari sebuah program akan terkait dengan aspek-aspek dalam masalah yang akan diselesaikan melalui program tersebut. Cara seperti ini akan menyederhanakan pemetaan dari masalah ke sebuah program ataupun sebaliknya.
• Objek - membungkus data dan fungsi bersama menjadi suatu unit dalam sebuah program komputer; objek merupakan dasar dari modularitas dan struktur dalam sebuah program komputer berorientasi objek.
• Abstraksi - Kemampuan sebuah program untuk melewati aspek informasi yang diproses olehnya, yaitu kemampuan untuk memfokus pada inti. Setiap objek dalam sistem melayani sebagai model dari "pelaku" abstrak yang dapat melakukan kerja, laporan dan perubahan keadaannya, dan berkomunikasi dengan objek lainnya dalam sistem, tanpa mengungkapkan bagaimana kelebihan ini diterapkan. Proses, fungsi atau metode dapat juga dibuat abstrak, dan beberapa teknik digunakan untuk mengembangkan sebuah pengabstrakan.
• Enkapsulasi - Memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari sebuah objek dengan cara yang tidak layak; hanya metode dalam objek tersebut yang diberi ijin untuk mengakses keadaannya. Setiap objek mengakses interface yang menyebutkan bagaimana objek lainnya dapat berinteraksi dengannya. Objek lainnya tidak akan mengetahui dan tergantung kepada representasi dalam objek tersebut.
• Polimorfisme melalui pengiriman pesan. Tidak bergantung kepada pemanggilan subrutin, bahasa orientasi objek dapat mengirim pesan; metode tertentu yang berhubungan dengan sebuah pengiriman pesan tergantung kepada objek tertentu di mana pesa tersebut dikirim. Contohnya, bila sebuah burung menerima pesan "gerak cepat", dia akan menggerakan sayapnya dan terbang. Bila seekor singa menerima pesan yang sama, dia akan menggerakkan kakinya dan berlari. Keduanya menjawab sebuah pesan yang sama, namun yang sesuai dengan kemampuan hewan tersebut. Ini disebut polimorfisme karena sebuah variabel tungal dalam program dapat memegang berbagai jenis objek yang berbeda selagi program berjalan, dan teks program yang sama dapat memanggil beberapa metode yang berbeda di saat yang berbeda dalam pemanggilan yang sama. Hal ini berlawanan dengan bahasa fungsional yang mencapai polimorfisme melalui penggunaan fungsi kelas-pertama.
• Inheritas- Mengatur polimorfisme dan enkapsulasi dengan mengijinkan objek didefinisikan dan diciptakan dengan jenis khusus dari objek yang sudah ada - objek-objek ini dapat membagi (dan memperluas) perilaku mereka tanpa haru mengimplementasi ulang perilaku tersebut (bahasa berbasis-objek tidak selalu memiliki inheritas.)
• Dengan menggunakan OOP maka dalam melakukan pemecahan suatu masalah kita tidak melihat bagaimana cara menyelesaikan suatu masalah tersebut (terstruktur) tetapi objek-objek apa yang dapat melakukan pemecahan masalah tersebut. Sebagai contoh anggap kita memiliki sebuah departemen yang memiliki manager, sekretaris, petugas administrasi data dan lainnya. Misal manager tersebut ingin memperoleh data dari bag administrasi maka manager tersebut tidak harus mengambilnya langsung tetapi dapat menyuruh petugas bag administrasi untuk mengambilnya. Pada kasus tersebut seorang manager tidak harus mengetahui bagaimana cara mengambil data tersebut tetapi manager bisa mendapatkan data tersebut melalui objek petugas adminiistrasi. Jadi untuk menyelesaikan suatu masalah dengan kolaborasi antar objek-objek yang ada karena setiap objek memiliki deskripsi tugasnya sendiri.

Minggu, 28 September 2008

FENOMENA LASKAR PELANGI



pagi itu..
panas, sunyi dicampur nafsu, nafsu untuk segera mendapatkan tiket nonton laskar pelangi the movie, pagi itu setelah kuliah saya dan teman saya langsung menuju ke ambarukmo plaza untuk segera menuju ke studio 21, setelah memakirkan motor di basement, saya langsung buru buru ke lantai atas..
ups.. ternyata sudah terjadi antrian di depan eskalator lantai 1 didepan carrefour, ya terpaksa harus dibela belain untuk mengantri. tampaknya koordinasi antara keamanan gedung dan keamanan bioskop kurang komunikasi.. saya pun menyuruh teman saya untuk menunggu, sementara saya akan ikut iring iringan antrian untuk segera naik ke lantai atas.. setelah rantai pada eskalator dibuka.. dan..
wahhhhhkkkkhhhhhhhkkkkkkhhhhhhhh
banyak teriakan dari mbak mbak maupun ibu ibu yang ikut naek ke eskalator, berhubung saya sangat ingin untuk segera mendapatkan tiket itu.. saya pun segera lari menerjang apapun yang ada..
"WOII MONYET!!!!!! OJO MLAYU NENG ESKALATOR"
(terdengar teriakan dari security amplaz)
tapi tidak satu pun menghiraukan termasuk saya.. setelah nafas terengah engah.. saya pun sampai di depan 21 dan......
hahhhhhhhhhh
saya ternyata mendapat antrian paling belakang!!!!!!!
dari mana datangnya orang ini tadi???? dari langitkah?dari lubang angin anginkah? dari dasar bumi kah? (sekilas imajinasi saya membayangkan itu semua)
padahal tadi saya lari paling depan sendiri..
tapi tak apalah, saya pun segera menelepon teman saya untuk segera menuju ke antrian saya sedangkan saya mencari teman di antrian depan untuk segera mendapatkan tiket premiere..
ternyata ada salah satu teman kursus saya yang sudah berada didepan antrian, saya pun memesan 2 tiket dengan deskripsi (jam berapapun, tempatnya dimanapun)..
oh ternyata saya kebagian jam 1 lebih 15 menit dan berada di baris terdepan..
akhraggggggggggggggggg
tapi tak apalah demi melihat laskar pelangi saya bela belain untuk berada dimanapun...
(2 jam kemudian)
dan ternyata...
saya menonton bareng dengan seluruh pemain, sutradara, andrea hirata, pak sri sultan, dan bintang cilik pemeran ikal, mahar, lintang
banyak isak tangis dari penonton..
tua muda, cowo cewe, mbah, om, tante, teman sebaya pada nangis semua...
saya puas!!!!!!!!!!!!!!!!!!!!!!!!!!!

Selasa, 23 September 2008

TABEL ASCII

Kode Standar Amerika untuk Pertukaran Informasi atau ASCII (American Standard Code for Information Interchange) merupakan suatu standar internasional dalam kode huruf dan simbol seperti Hex dan Unicode tetapi ASCII lebih bersifat universal, contohnya 124 adalah untuk karakter "|". Ia selalu digunakan oleh komputer dan alat komunikasi lain untuk menunjukkan teks. Kode ASCII sebenarnya memiliki komposisi bilangan biner sebanyak 8 bit. Dimulai dari 00000000 hingga 11111111. Total kombinasi yang dihasilkan sebanyak 256, dimulai dari kode 0 hingga 255 dalam sistem bilangan Desimal.

TABEL ASCII

Tabel berikut berisi karakter-karakter ASCII . Dalam sistem operasi Windows dan MS-DOS, pengguna dapat menggunakan karakter ASCII dengan menekan tombol Alt+[nomor nilai ANSI (desimal)]. Sebagai contoh, tekan kombinasi tombol Alt+87 untuk karakter huruf latin "W" kapital.

Karakter Nilai Unicode Nilai ANSI ASCII Keterangan
heksa desimal desimal
NUL 0 0 Null (tidak tampak)
SOH 1 1 Start of heading (tidak tampak)
STX 2 2 Start of text (tidak tampak)
ETX 3 3 End of text (tidak tampak)
EOT 4 4 End of transmission (tidak tampak)
ENQ 5 5 Enquiry (tidak tampak)
ACK 6 6 Acknowledge (tidak tampak)
BEL 7 7 Bell (tidak tampak)
BS 8 8 Menghapus satu karakter di belakang kursor (Backspace)
HT 9 9 Horizontal tabulation
LF 000A 10 Pergantian baris (Line feed)
VT 000B 11 Tabulasi vertikal
FF 000C 12 Pergantian baris (Form feed)
CR 000D 13 Pergantian baris (carriage return)
SO 000E 14 Shift out (tidak tampak)
SI 000F 15 Shift in (tidak tampak)
DLE 10 16 Data link escape (tidak tampak)
DC1 11 17 Device control 1 (tidak tampak)
DC2 12 18 Device control 2 (tidak tampak)
DC3 13 19 Device control 3 (tidak tampak)
DC4 14 20 Device control 4 (tidak tampak)
NAK 15 21 Negative acknowledge (tidak tampak)
SYN 16 22 Synchronous idle (tidak tampak)
ETB 17 23 End of transmission block (tidak tampak)
CAN 18 24 Cancel (tidak tampak)
EM 19 25 End of medium (tidak tampak)
SUB 001A 26 Substitute (tidak tampak)
ESC 001B 27 Escape (tidak tampak)
FS 001C 28 File separator
GS 001D 29 Group separator
RS 001E 30 Record separator
US 001F 31 Unit separator
SP 20 32 Spasi
! 21 33 Tanda seru (exclamation)
" 22 34 Tanda kutip dua
# 23 35 Tanda pagar (kres)
$ 24 36 Tanda mata uang dolar
% 25 37 Tanda persen
& 26 38 Karakter ampersand (&)
27 39 Karakter Apostrof
( 28 40 Tanda kurung buka
) 29 41 Tanda kurung tutup
* 002A 42 Karakter asterisk (bintang)
+ 002B 43 Tanda tambah (plus)
, 002C 44 Karakter koma
- 002D 45 Karakter hyphen (strip)
. 002E 46 Tanda titik
/ 002F 47 Garis miring (slash)
0 30 48 Angka nol
1 31 49 Angka satu
2 32 50 Angka dua
3 33 51 Angka tiga
4 34 52 Angka empat
5 35 53 Angka lima
6 36 54 Angka enam
7 37 55 Angka tujuh
8 38 56 Angka delapan
9 39 57 Angka sembilan
: 003A 58 Tanda titik dua
; 003B 59 Tanda titik koma
< 003C 60 Tanda lebih kecil
= 003D 61 Tanda sama dengan
> 003E 62 Tanda lebih besar
? 003F 63 Tanda tanya
@ 40 64 A keong (@)
A 41 65 Huruf latin A kapital
B 42 66 Huruf latin B kapital
C 43 67 Huruf latin C kapital
D 44 68 Huruf latin D kapital
E 45 69 Huruf latin E kapital
F 46 70 Huruf latin F kapital
G 47 71 Huruf latin G kapital
H 48 72 Huruf latin H kapital
I 49 73 Huruf latin I kapital
J 004A 74 Huruf latin J kapital
K 004B 75 Huruf latin K kapital
L 004C 76 Huruf latin L kapital
M 004D 77 Huruf latin M kapital
N 004E 78 Huruf latin N kapital
O 004F 79 Huruf latin O kapital
P 50 80 Huruf latin P kapital
Q 51 81 Huruf latin Q kapital
R 52 82 Huruf latin R kapital
S 53 83 Huruf latin S kapital
T 54 84 Huruf latin T kapital
U 55 85 Huruf latin U kapital
V 56 86 Huruf latin V kapital
W 57 87 Huruf latin W kapital
X 58 88 Huruf latin X kapital
Y 59 89 Huruf latin Y kapital
Z 005A 90 Huruf latin Z kapital
[ 005B 91 Kurung siku kiri
\ 005C 92 Garis miring terbalik (backslash)
] 005D 93 Kurung sikur kanan
^ 005E 94 Tanda pangkat
_ 005F 95 Garis bawah (underscore)
` 60 96 Tanda petik satu
a 61 97 Huruf latin a kecil
b 62 98 Huruf latin b kecil
c 63 99 Huruf latin c kecil
d 64 100 Huruf latin d kecil
e 65 101 Huruf latin e kecil
f 66 102 Huruf latin f kecil f
g 67 103 Huruf latin g kecil
h 68 104 Huruf latin h kecil
i 69 105 Huruf latin i kecil
j 006A 106 Huruf latin j kecil
k 006B 107 Huruf latin k kecil
l 006C 108 Huruf latin l kecil
m 006D 109 Huruf latin m kecil
n 006E 110 Huruf latin n kecil
o 006F 111 Huruf latin o kecil
p 70 112 Huruf latin p kecil
q 71 113 Huruf latin q kecil
r 72 114 Huruf latin r kecil
s 73 115 Huruf latin s kecil
t 74 116 Huruf latin t kecil
u 75 117 Huruf latin u kecil
v 76 118 Huruf latin v kecil
w 77 119 Huruf latin w kecil
x 78 120 Huruf latin x kecil
y 79 121 Huruf latin y kecil
z 007A 122 Huruf latin z kecil
{ 007B 123 Kurung kurawal buka
¦ 007C 124 Garis vertikal (pipa)
} 007D 125 Kurung kurawal tutup
~ 007E 126 Karakter gelombang (tilde)
DEL 007F 127 Delete

80 128 Dicadangkan

81 129 Dicadangkan

82 130 Dicadangkan

83 131 Dicadangkan
IND 84 132 Index
NEL 85 133 Next line
SSA 86 134 Start of selected area
ESA 87 135 End of selected area

88 136 Character tabulation set

89 137 Character tabulation with justification

008A 138 Line tabulation set
PLD 008B 139 Partial line down
PLU 008C 140 Partial line up

008D 141 Reverse line feed
SS2 008E 142 Single shift two
SS3 008F 143 Single shift three
DCS 90 144 Device control string
PU1 91 145 Private use one
PU2 92 146 Private use two
STS 93 147 Set transmit state
CCH 94 148 Cancel character
MW 95 149 Message waiting

96 150 Start of guarded area

97 151 End of guarded area

98 152 Start of string

99 153 Dicadangkan

009A 154 Single character introducer
CSI 009B 155 Control sequence introducer
ST 009C 156 String terminator
OSC 009D 157 Operating system command
PM 009E 158 Privacy message
APC 009F 158 Application program command

00A0 160 Spasi yang bukan pemisah kata
¡ 00A1 161 Tanda seru terbalik
¢ 00A2 162 Tanda sen (Cent)
£ 00A3 163 Tanda Poundsterling
¤ 00A4 164 Tanda mata uang (Currency)
¥ 00A5 165 Tanda Yen
¦ 00A6 166 Garis tegak putus-putus (broken bar)
§ 00A7 167 Section sign
¨ 00A8 168 Diaeresis
© 00A9 169 Tanda hak cipta (Copyright)
ª 00AA 170 Feminine ordinal indicator
« 00AB 171 Left-pointing double angle quotation mark
¬ 00AC 172 Not sign
­ 00AD 173 Tanda strip (hyphen)
® 00AE 174 Tanda merk terdaftar
¯ 00AF 175 Macron
° 00B0 176 Tanda derajat
± 00B1 177 Tanda kurang lebih (plus-minus)
² 00B2 178 Tanda kuadrat (pangkat dua)
³ 00B3 179 Tanda kubik (pangkat tiga)
´ 00B4 180 Acute accent
µ 00B5 181 Micro sign
00B6 182 Pilcrow sign
· 00B7 183 Middle dot