Rabu, 11 November 2009

Hati-Hati, Undang-Undang Lalu Lintas 2009


Waspada sebelum dirazia, perhatikan UU terbaru yang menggantikan UU tahun 1992, UU Nomor 22 Tahun 2009. Undang-Undang yang sudah ditandatangani Presiden SBY pada tanggal 22 Juni 2009, memuat antara lain:

Tidak Memiliki SIM
Menurut Pasal 281, apabila pengendara kendaraan bermotor tidak memiliki Surat Izin Mengemudi (SIM) bisa dikenakan denda paling banyak Rp1.000.000,00 (satu juta rupiah). Atau di pidana kurungan paling lama 4 bulan. Jadi, selalu bawa SIM Anda setiap kali Anda mengendarai motormu.

Mengemudi Tidak Konsentrasi

Hati hati juga buat biker yang suka menelpon sambil mengendarai motor bisa kena sanksi pasal 283, menurut pasal ini bagi yang mengemudikan Kendaraan Bermotor di Jalan secara tidak wajar dan melakukan kegiatan lain atau dipengaruhi oleh suatu keadaan yang mengakibatkan gangguan konsentrasi dalam mengemudi di Jalan dapat dipidana dengan pidana kurungan paling lama 3 bulan atau denda paling banyak Rp750.000,00 (tujuh ratus lima puluh ribu rupiah).

Kelengkapan Motor
Bagi pengendara roda dua di Jalan yang tidak memenuhi persyaratan teknis dan laik jalan yang meliputi kaca spion, klakson, lampu utama, lampu rem, lampu penunjuk arah, alat pemantul cahaya, alat pengukur kecepatan, knalpot, dan kedalaman alur ban, mengacu pada Pasal 285 dapat dikenai denda paling banyak Rp250.000,00 (dua ratus lima puluh ribu rupiah) atau pidana kurungan paling lama 1 bulan.

Rambu dan Markah

Jangan abaikan rambu dan markah jalan, karena di Pasal 287 Pengendara motor di Jalan yang melanggar aturan perintah atau larangan yang dinyatakan dengan Rambu Lalu Lintas sebagaimana dapat dipidana dengan pidana kurungan paling lama 2 bulan atau denda paling banyak Rp500.000,00 (lima ratus ribu rupiah).

Tidak Bawa STNK

Nah, buat biker yang suka lupa bawa STNK harap waspada, karena menurut Pasal 288, setiap pengendara roda dua di Jalan yang tidak dilengkapi dengan Surat Tanda Nomor Kendaraan Bermotor atau surat tanda coba Kendaraan Bermotor yang ditetapkan oleh Kepolisian Negara Republik Indonesia sebagaimana dapat dipidana dengan pidana kurungan paling lama 2 bulan atau denda paling banyak Rp500.000,00 (lima ratus ribu rupiah).

Helm Standard Buat Penumpang dan Pengemudi

Selalu pakai helm SNI saat mengendarai sepeda motor, baik pengemudi maupun penumpang motor. Karena menurut Pasal 291, bagi setiap pengemudi dan penumpang Sepeda Motor yang tidak mengenakan helm standar nasional Indonesia (SNI) dipidana dengan pidana kurungan paling lama sebulan atau denda paling banyak Rp250.000,00 (dua ratus lima puluh ribu rupiah).

Menyalakan Lampu Utama Malam atau Siang Hari

Selalu nyalakan lampu utama motor Anda di Jalan pada siang maupun malam hari. Karena menurut Pasal 293, karena jika Anda tidak menyalakan lampu utama pada motor Anda di malam hari, Anda bisa dikenakan dipidana dengan pidana kurungan paling lama sebulan atau denda paling banyak Rp250.000,00 (dua ratus lima puluh ribu rupiah). Bila sebelumnya ligh on disiang hari hanya dianjurkan, sekarang diwajibkan. Jika tidak menyalakan lampu utama di siang hari dipidana dengan pidana kurungan paling lama 15 hari atau denda paling banyak Rp100.000,00 (seratus ribu rupiah).

Belok Kiri Boleh Langsung?

Kalau dulu biker dapat langsung belok kiri meskipun saat itu lampu lalulintas menunjukkan warna merah. Sekarang tidak dibolehkan! Karena menurut UU No. 22 / 2009 Pasal 112, Pengemudi Kendaraan dilarang langsung berbelok kiri, kecuali ditentukan lain oleh Rambu Lalu Lintas atau Alat Pemberi Isyarat Lalu Lintas. Bagi yang melanggar akan ditilang dan dikenakan denda sebesar 250 ribu rupiah.

Jumat, 05 Juni 2009

TIPS JADIKAN BLOG TERKENAL

TIPS JADIKAN BLOG TERKENAL



1.Tulislah artikel menarik yang kontroversial berdasarkan opini anda yang didasari argumen logis, bukan opini yang melewati batas-batas , "misalnya rahasia cepat balajar Blog"...wehehe..!

3.Berikan pada pembaca anda barang-barang gratis. misalnya wallpaper,musik,software, untuk di downlad.

4.Tulis atau review blogger lain yang anda sukai lalu beri tau lewat komentar di blog yangg anda tulis tersebut ,hal ini untuk menarik pengunjung blogger tersebut membaca blog anda.

5.Lakukan interview lewat email kepada beberapa blogger terkenal tanyakan tentang berbagai opini yang positif, ini cara yang masih banyak dipakai para blogger yang cerdik, karena interview ini biasanya memberikan kebanggaan pada blogger terkenal tersebut dan biasannya anda akan di review balik...hehehe...kamu ketauan..

6.Promosikan dengan bijak alamat blog anda lewat SMS rekan anda , misalnya "Ma'af saya telat membalas, karena lagi menyelesaikan tulisan di mast3rf.blogspot.com"

7.Carilah info-info yang paling populer atau lagi hangat-hangatnya

Kamis, 04 Juni 2009

ARRAY (LARIK)

1. Pendahuluan
Suatu array adalah sebuah struktur data yang terdiri atas banyak variabel dengan tipe data sama, dimana masing-masing elemen variabel mempunyai nilai indeks. Setiap elemen array mampu untuk menyimpan satu jenis data (yaitu: variabel). Suatu array dinyatakan dengan type, sehingga variabel yang bekerja akan dinyatakan dengan:
contoh type
A = array [1..10] of integer;

Secara logika pendefinisian array di atas merupakan sekumpulan kotak , dimana tiap kotak mempunyai nilai indeks integer 1, 2, 3, ...,9, 10 tiap elemen array ditandai dengan:
A[1], A[2], A[3], A[4], A[5], A[6], A[7], A[8], A[9], A[10]

2.
Sifat Array
Array merupakan struktur data yang statis, yaitu jumlah elemen yang ada harus ditentukan terlebih dahulu dan tak bisa di ubah saat program berjalan. Untuk menyatakan array dalam PASCAL kita harus terlebih dahulu:
Mendefinisikan jumlah elemen array,
-
Mendefinisikan
- tipe data dari elemen array
Contoh. const N=10;
type
A= array [1..N] of integer;

3. Array Satu Dimensi
Pernyataan di atas merupakan penjelasan tentang array dengan satu dimensi. Pendefinisian array secara umum adalah sebagai berikut: jika kita ingin membuat beberapa array dengan tipe/jenis yang sama, kita lebih baik jika mendeklarasikan dengan type selanjutnya dengan deklarasi var.
SYNTAX

Type nama_array = ARRAY[bawah..atas] of tipe_data;
var variabel_array : nama_array;
atau dengan menggunakan statemen var :

var variabel_array : ARRAY[bawah..atas] of tipe_data;

Penjelasan: Bawah dan Atas menyatakan batas untuk array. tipe_data adalah merupakan tipe variabel yang dipunyai array (mis. Integer, char, real, dsb)
Contoh:
type intarray = ARRAY [1..20] of integer;
Pernyataan diatas adalah pernyataan untuk membentuk suatu array bernama intarray,yang berisi 20 tempat untuk bilangan integer. Setiap posisi disebut elemen, yang menyimpan suatu bilangan integer.langkah berikutnya adalah membuat suatu variabel kerja dengan tipe intarray yaitu,
var numbers : intarray;
kita bisa melakukan operasi pada setiap elemen dari numbers secara individual. Contoh kita bisa memberi nilai pada suatu elemen array seperti berikut:
numbers[2] := 10;
perintah ini memberikan suatu nilai integer 10 pada elemen ke-2 dari array numbers. Nomor dari elemen ditempatkan didalam kurung tegak. Contoh berikut adalah merupakan array yang menyimpan variabel-variabel integer. Data dengan tipe integer hanya bisa dimasukkan satu persatu, kemudian baru bisa ditampilkan di monitor secara bersamaan

Contoh a.

program INT_ARRAY;
uses wincrt;
const N=10;
type int_array = ARRAY [1..N] of integer;
var bil : int_array;
indeks : integer;
BEGIN
writeln('masukkan sepuluh bilangan integer.');
for indeks := 1 to 10 do
begin
readln(bil[indeks]); { loop untuk memasukkan elemen array }
end;
writeln('Isi dari array ini adalah'); { tampilkan setiap elemen }
for indeks := 1 to 10 do
begin
writeln('bil[', indeks:2,'] adalah ',bil[indeks] );
end
END.

Contoh b.

program contoh_ARRAY;
uses wincrt;
var
a : array[1..10] of byte;{maksimum jumlah elemen=10}
begin
a[1]:=10;
a[2]:=15;
a[3]:=a[1]+a[2];
writeln(a[1]);
writeln(a[2]);
writeln(a[3]);
end.

Latihan

1. Menggunakan Array 1 dimensi buatlah program dengan ketentuan:

Input---à Nilai PPN, Nilai PPA, Nilai Logika, Nilai Agama

Output-à Total Nilai

Ket: Nama Array = nilai

Nama variabel = n

Jumlah Range = 5

2. Untuk soal no.1 tambahkan proses untuk mendapatkan kelulusan jika nilai logika > 7 dan proses untuk mendapatkan grade ( A jika total >34, B jika total > 28, C jika total > 24 dan D jika total <=24 ).
ARRAY MULTI DIMENSI

4. Array Multidimensi
Dalam array multidimensi terdiri atas baris (row) dan kolom (column). Index pertama adalah baris dan yang kedua adalah kolom .
SYNTAX
Type nama_array =ARRAY[bawah..atas, bawah..atas] of tipe_data;
var variabel_array : nama_array;

atau dengan menggunakan statemen var :
SYNTAX var variabel_array : ARRAY[bawah..atas, bawah..atas] of tipe_data;
Pernyataan berikut membentuk suatu array integer dengan nama bilangan , 10 x 10 elemen (100).
type matriks = ARRAY [1..10, 1..10] of integer;
var AKU: matriks;

untuk memasukkan tiap elemen maka, diperlukan suatu procedure dengan mempergunakan struktur pengulangan for ...do tersarangseperti berikut:
procedure ISI_MATRIK(AKU:matriks; m,n:integer);
var
i,j: integer; {faktor pengulang}
begin
for i:=1 to m do
begin
for j:=1 to n do
begin
read(A[i,j]);
end;
readln ;{ini memungkinkan kita menulis tiap baris elemen}
end;
untuk menampilkan tiap elemen maka, digunakan struktur pengulangan for ...do tersarang seperti berikut
procedure TULIS_MATRIK(AKU:matriks; m,n:integer);
var i,j: integer; {faktor pengulang}
begin
for i:=1 to m do
begin
for j:=1 to n do
begin
write(A[i,j]:6);
end;
writeln ; {ini memungkinkan kita menulis elemen dalam baris dan kolom }
end;
end;
5. Operasi pada Array
Sifat masing-masing elemen array mengikuti jenis data yang dimilikinya, untuk array dengan tipe bilangan integer atau real kita bisa melakukan berbagai standar operasi aritmatika seperti penjumlahan, perkalian, pengurangan, dsb. Yang perlu di garis bawahi, bahwa sifat dari array dimanfaatkan untuk operasi matrik.

a. Mencari Harga Tertentu pada Array
Mencari suatu elemen data di dalam suatu data merupakan suatu kejadian yang sering kita alami, contoh: mencari nama mahasiswa dari daftar presensi. Pencarian beruntun (sequence), merupakan suatu teknik untuk mencari suatu elemen dalam suatu sistim yang lebih besar.
Contoh.
Misal array A[8], dengan elemen sbb:
A
60 12 76 23 11 42 18 42
Untuk mencari apakah bilangan x=11 ada didalam tabel maka dilakukan pemeriksaan terhadap :
60 12 76 23 11
Sehingga ditemukan x pada elemen ke-5, dalam bahasa PASCAL diterjemahkan seperti berikut:
type PITA = ARRAY [1..8] of integer;
var AKU: PITA;
procedure CARI_MATRIK(AKU: PITA);
var
i: integer; {faktor pengulang}
begin
for i:=1 to 8 do
begin
if AKU[i]:= 11 then
writeln(‘ terdapat bilangan 11 dalam pita ini ‘);
else
writeln(‘ tidak ada bilangan 11, pencarian berhenti ‘);
end;
end;
b. Mencari Harga Maksimum pada Array
Misal array di atas kita cari harga yang tertinggi, maka kita perlu menentukan nilai tertinggi dahulu sebelum melakukan pencarian ; diawali dengan nilai maksimum=0
procedure CARI_MAKSIMUM(AKU: PITA);
var
i: integer; {faktor pengulang}
MAKS : integer;
begin
MAKS := AKU[1];
for i:=1 to 8 do
begin
if AKU[i]> MAKS then
MAKS:= AKU[i];
End;
Writeln(‘NILAI MAKSIMUM = ’,MAKS);
end;
b. Mencari Harga Minimum pada Array
Misal array di atas kita cari harga yang terendah, maka kita perlu menentukan nilai terendah dahulu sebelum melakukan pencarian ; diawali dengan nilai maksimum=3200
procedure CARI_MINIMUM(AKU: PITA);
var
i: integer; {faktor pengulang}
MIN : integer;
begin
MIN := 3200;
for i:=1 to 8 do
begin
if AKU[i]< minimum =" ’,MIN);" matrik="array[1..100,1..100]" m="p)" n="q)" m="p)" n="q)" n="p)" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTYGAsrBosOQtAmCwQl_kFDmbpBdA__Gp2k36E15tDEohQBY7KBLuN7uA9zqLPhQAfw3l3gfmDIqTgeX7qWuDQQywAjb3nrXGsfongwRcmrPQy1s-nSxkij5poF7OPzDpECCrKFrRtj9o/s1600-h/2.JPG">
Buat program Array 2 dimensi untuk memasukkan data nilai matakuliah tiap mahasiswa.
Kolom- N1, N2, N3, Total
Baris--- Yani, Riski, Eko



2.


Baris--senin, selasa, rabu, kamis, jum’at, sabtu
- Buat program Array 2 dimensi untuk memasukkan jumlah anak yang ikut kegiatan tertentu.
- Outputkan dalam bentuk matrik 2 dimensi.
STACK ( Tumpukan )

- Adalah tumpulan data yang seolah-olah ada data di atas data lain.
- Suatu metode untuk Input dan hapus di dalam memori komputer.

Konsep utama dalam STACK adalah LIFO ( Last In First Out ).
Contoh:














Data nomor 1 datang/masuk duluan, data nomor 5 yang paling atas yang keluar terlebih dahulu.

Algoritma:
1. Input/tambah data
• Jika ada input maka no stack/no tumpukan yang semula 0 akan tambah 1 demi 1 sampai maksimal tumpukan.

2. Pengambilan data
• Jika ada pengambilan data maka data dipindahkan di variabel lain contohnya temp. Dan posisi tumpukannya yang semula maksimal akan berkurang 1 demi 1 sampai posisi 0 kembali.

1. Deklarasi STACK

Type
Const
Max = 5;
Nama record = Record
Data : type data;
Top : byte;
End;
Nama_array = ARRAY [1..max] of Nama record;
Var
STACK : nama Array





Nama Array----- Barang
Nama Record--- Coba
Nama Variabel-- Stack

Contoh Deklarasi dari gambar diatas:
Type
Coba = record
Data :string;
Top : byte;
End;
Barang = ARRAY [1..4] of coba;
Var
Stack:barang;

2. Operasi pada STACK
• CREATE
Membuat stack baru yang masih kosong.

Procedure create;
Begin
Stack.top:=0;
End;

• FULL
Untuk memeriksa apakah stack sudah penuh atau belum.

Fuction full:bolean;
Begin
Stack.top:=max;
End;

• PUSH
Menambah sebuah elemen ( data ) kedalam stack
Syarat: tidak bisa dilakukan jika stack sudah penuh.

Procedure push ( input:string );
Begin
If not full then
Begin
Stack.top:=stack.top;
Stack.data:=input;
End;
End;

• EMPTY
Fuction empty: bolean;
Begin
Empty:=false;
If top:=0 then empty:=true;
End;

• POP
Mengambil elemen teratas dari stack.
Syarat: Stack tidak boleh kosong.

Procedure Pop ( elemen:string );
Begin
If not empty then
Begin
Elemen:=stack.data;
Stack.top:=top – 1;
End;
End;

Contoh:
1 2 3 4







Uses wincrt;
Type
kelas = ARRAY[1..4] of string;
Var
Stack: kelas;
top:byte;
Elemen: string;
I : integer;
Begin
top:=0;
For i:=1 to 4 do
Begin
Writeln('masukkan nama ke', ' ',i,' ','='); readln(stack[i]);
top:=top+1;
End;
writeln('posisi tumpukan=',top);
Writeln('pengambilan data');
For i:=1 to 4 do
Begin
Elemen:=stack[i];
top:=top - 1;
End;
writeln;
Writeln('data elemen sekarang=',elemen);
writeln('posisi tumpukan=',top);
Readln;
End.

Latihan.























lht jg disini: http://id.wikipedia.org/wiki/Struktur_data
QUEUE ( ANTRIAN )

-à Kumpulan data dimana data masuk dan keluar pada ujung yang berbeda.

-à Konsep utama FIFO ( Fisrt In First Out ).

Contoh:



Data nomor 1 datang/masuk dan keluar duluan.

Algoritma:

  1. Input/tambah data
    • Jika ada input maka no antrian yang semula 0 akan tambah 1 demi 1 sampai maksimal antrian.

  1. Hapus/Pengambilan data

· Jika ada pengambilan data maka data dipindahkan di variabel lain contohnya temp, antrian ke-dua akan maju ke antrian pertama dan seterusnya. Dan jumlah antrian yang semula maksimal akan berkurang 1 demi 1 sampai antrian 0 kembali.

  1. Deklarasi Queue

Type

Const

Max = 5;

Nama record = Record

Data : type data;

Top : byte;

End;

Nama_array = ARRAY [1..max] of Nama record;

Var

Antri : nama Array;

Nama Array-----à Barang

Nama Record---à Coba

Nama Variabel--à Antri

Contoh Deklarasi dari gambar diatas:

Type

Coba = record

Data :string;

Top : byte;

End;

Barang = ARRAY [1..4] of coba;

Var Antri:barang;

  1. Operasi pada queue

· CREATE

Membuat antrian baru yang masih kosong.

Procedure create;

Begin

antri.top:=0;

End;

· FULL

Untuk memeriksa apakah antrian sudah penih..

Fuction full:bolean;

Begin

antri.top:=max;

End;

· PUSH

Menambah sebuah elemen ( data ) kedalam antrian.

Syarat: tidak bisa dilakukan jika antrian sudah penuh.

Procedure push ( input:string );

Begin

If not full then

Begin

antri.top:=antri.top;

antri.data:=input;

End;

End;

· EMPTY

Fuction empty: bolean;

Begin

Empty:=false;

If top:=0 then empty:=true;

End;

· POP

Mengambil 1 elemen dari sebuah antrian.

Syarat: antrian tidak boleh kosong.

Procedure Pop ( elemen:string );

Begin

If not empty then

Begin

Elemen:=antri.data;

antri.top:=top – 1;

End;

End;

Contoh:




Program antrian_1;

Uses wincrt;

Type

Data= array [1..3] of string;

Var

D: data;

I, antri: integer;

Temp: string;

Begin

Antri:=0;

{untuk input}

For I:=1 to 3 do

Begin

Writeln(’masukkan nama ke’,’ ’,i);

Readln(d[i]);

Antri:=antri+1;

End;

{untuk Output}

For I:=1 to 3 do

Begin

Temp:=d[i];

Antri:=antri-1;

End;

{lihat output di var temp setelah pengambilan }

Writeln(’hasil var temp=’,temp);

Readln;

End.