• Convallis consequat

    Lorem ipsum integer tincidunt quisque tristique sollicitudin eros sapien, ultrices primis volutpat tempor curabitur duis mattis dapibus, felis amet faucibus...

  • Augue nullam mauris

    Lorem ipsum integer tincidunt quisque tristique sollicitudin eros sapien, ultrices primis volutpat tempor curabitur duis mattis dapibus, felis amet faucibus...

  • Donec conubia volutpat

    Lorem ipsum integer tincidunt quisque tristique sollicitudin eros sapien, ultrices primis volutpat tempor curabitur duis mattis dapibus, felis amet faucibus...

  • Primis volutpat tempor

    Lorem ipsum integer tincidunt quisque tristique sollicitudin eros sapien, ultrices primis volutpat tempor curabitur duis mattis dapibus, felis amet faucibus...

Kamis, 29 Desember 2011

Setting Modem Speedy ADSL Sebagai Bridge pada OS Linux


Telkom Speedy lauching pertama kali di Jember, kota di mana saya bekerja, sekitar bulan Juli 2006. Saat itu saya belum pernah merasakan internet dengan speedy, tahu-tahu diminta bos untuk membantu men-setup modem adsl di Kopegtel (Koperasi Pegawai Telkom) di jalan Kartini. Modemnya merek linksys, tipenya mungkin ADSL2MUE, pada link tersebut terdapat manual untuk konfigure modem tersebut untuk mode bridge (winxp).

Modem ADSL Linksys ADSL2MUE
Pertama, saya minta manualnya, kemudian baca2 sebentar dan akhirnya tahu bahwa modem adsl ini berfungsi sebagai router dan bisa dicolokkan langsung ke swicth/hub untuk melayani koneksi internet bagi semua komputer yang terhubung keswicth/hub, asal fungsi dhcp clientnya diaktifkan.
Berhubung cukup lama mainan iptables di mesin linux, saya coba lihat apakah ada fungsi firewall di modem tsb. Setelah login melalui web configuration, saya lihat banyak sekali fitur yang ditampilkan sampai saya bingung sendiri -)
Yang pertama saya baca-baca adalah seting koneksi untuk speedy, tidak ada yang saya mengerti di sini -? , kecuali login speedy dan ini dia fungsi bridge, jadi modemnya bisa berfungsi sebagai bridge mirip modem eksternal yang biasa dipakai untuk dial ke isp. Pokoknya diterima apa adanya dulu deh. Lantas saya lihat fungsi firewall, nah ini dia yang bisa saya otak-atik. Yang diinginkan pertama adalah mencegah icmp dan smtp keluar dari client karena virus brontok suka ping ke domain internet dan mencegah virus dari client kirim email. Selain itu juga saya batasi hanya beberapa ip client yang bisa konek internet. Setelah save dan reboot modem, ternyata hasilnya mengecewakan, beberapa client bisa konek dan ada yang tidak. Saya masih belum tahu salahnya dimana, lagian keisengan setup modem linksys tsb terbatas waktunya karena saya harus balik ke kantor dan lagipula saya tidak mau direpotkan apabila dapat keluhan dari pengguna. Jadi saya balikin deh seting modem tsb ke default.
Sejak saat itu saya terobsesi bagaimana membuat modem adsl bisa jalan sebagai bridge di mesin linux. Khusus modem linksys ADSL2MUE ini rupanya sudah ada driver bridge untuk mesin windows. Kesempatan itu akhirnya datang setelah kantor saya jadi berlangganan speedy, itu pun setelah saya provokasi agar pakai speedy daripada pakai telkomnet instan (tni) yang koneksinya tidak bisa dijamin, sudah konek tapi tidak bisa browsing internet, baru bisa browsing setelah beberapa kali konek -( . Yang datang ke kantor bawa modem speedy rupanya orang telkom yang dulu saya temui sewaktu di Kopegtel Kartini, karena sudah mengenal saya, dia memberikan saya modem adsl yang masih terbungkus agar disetup sendiri.
Sewaktu dibongkar, ternyata modemnya adalah DareGlobal model DB108-E. Padahal saya pingin dapat yang linksys , alasannya keren karena keluaran Cisco ) . 
Modem ADSL 
DareGlobal DB108-E
Saya baca sekilas di manualnya bahwa modem ini mempunyai ip default 192.168.1.1, akhirnya server linux yang biasa pakai modem eksternal untuk konek ke tni dikonfigurasikan untuk client modem tsb. Modem dikonekkan ke link adsl dan ke server linux pakai cross cable, terus dinyalakan. Waktu itu saya belum setup login speedy di modemnya, iseng-iseng nge-ping dns telkom, eh kok ternyata tembus, wah dapat koneksi speedy gratis nich :d .
Masa gratisnya cukup lama, dua minggu lebih. Selama itu saya belum sempat mencoba setup modemnya sebagai bridge, keasyikan download macam-macam, mumpung gratis. Akhirnya masa foya-foya lewat sudah sekarang waktunya bekerja. Berikut ini prosedur setup modem adsl DareGlobal untuk mode bridge:
  1. Login ke web configuration modem adsl.
  2. Tampilan pertama kali adalah Device Info seperti gambar di bawah (ini saat mode router dan status konek ke internet):
    device info mode router
  3. Tampilan DSL Status seperti pada gambar di bawah:DSL Status Modem ADSL
 Speedy
  4. Klik WAN akan menampilkan default WAN Setup (mode router), untuk mengubah ke mode bridge, baris yang mengandung Protocol PPPoEdicawang lantas klik tombol Remove:
    Wan Setup Modem ADSL DareGlobal
  5. Lalu klik Add akan muncul isian untuk ATM PVC Configuration, isikan seperti contoh di bawah, kemudian klik Next.
    • VPI:[0-255] 0
    • VCI:[0-65535] 35
  6. Untuk tipe network protocol pilih Bridging dan untuk encapsulation mode pilih LLC/SNAP-BRIDGING, klik Next.
  7. Beri cawang pada Enable Bridge Service dan kasih nama br_0_35untuk Service Name, klik Next.
  8. Berikut WAN Setup – Summary seperti pada gambar di bawah, klikSave apabila konfigurasinya sudah benar dan reboot modem adsl-nya:
    Wan Setup Summary Modem ADSL DareGlobal
  9. Tampilan WAN Setup (mode bridge) yang baru akan seperti gambar di bawah:
    Wan Setup Modem 
ADSL DareGlobal (mode bridge)
  10. Klik Save dan Reboot modem.
Modem adsl telah selesai disetup sebagai bridge, sekarang kita akan membuat koneksi pppoe di linux. Untuk linux redhat 9, nama paketnya rp-pppoe-3.5-2.rpm, untuk slackware 10.2 rp-pppoe-3.6-i486-1.tgz, jika ingin install dari source silahkan download di RP-PPPoE | Roaring Penguin.
Mungkin ada yang bertanya bagaimana mengakses web configurationmodem apabila telah diset mode bridge ? Caranya mudah, untuk ini kita perlu komputer dengan OS windows, install driver yang dibutuhkan untuk koneksi ke modem melalui port usb, kemudian konfigur ip address windows dengan ip addres selain 192.168.1.1. Jadi meski modem tersebut sedang konek ke speedy dan user-user sedang browsing internet kita bisa monitor dsl statusnya.

Selasa, 04 Oktober 2011

Mengenai Array Dengan Pascal

Bab 4 Array 
Array adalah tipe data terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe sama. Komponen-komponen tersebut disebut sebagai komponen type, larik mempunyai jumlah komponen yang jumlahnya tetap. Banyaknya komponen dalam larik ditunjukkan oleh suatu index, dimana tiap komponen di array dapat diakses dengan menunjukkan nilai indexnya atau subskript. Array dapat bertipe data sederhana seperti byte, word, integer, real, bolean, char, string dan tipe data scalar atau subrange. Tipe larik mengartikan isi dari larik atau komponen- komponenya mempunyai nilai dengan tipe data tersebut. 
Contoh: 
Var 
Untai : array[1..50] of Integer; 
Pada contoh Array dengan nama untai telah dideklarasikan dengan tipe integer, dengan jumlah elemen maksimum 50 elemen, nilai dari elemen array tersebut diatas harus bertipe integer. 

Contoh Program : 

Program Contoh_Array_Input; Uses Crt; Var Bilangan : array[1..50] of Integer; Begin ClrScr; Bilangan[1]:=3; Bilangan[2]:=29; Bilangan[3]:=30; Bilangan[4]:=31; Bilangan[5]:=23; Writeln('nilai varibel bilangan ke 3 =',Bilangan[3]); Readln; End. 

Array juga dapat dideklarasikan bersama dengan tipe yang beragam seperti contoh dibawah ini : 

Program Contoh_Deklarasi_Array_Beragam; Uses Crt; Var NPM : array[1..20] of string[10]; Nama : array[1..20] of string[25]; Nilai : array[1..20] of real; Umur : array[1..20] of byte; banyak,i : integer; Begin ClrScr; Write('Isi berapa data array yang diperlukan :');Readln(banyak); For i := 1 to banyak Do Begin Write('NPM =');Readln(NPM[i]); Write('Nama =');readln(Nama[i]); Write('Nilai=');readln(Nilai[i]); Write('Umur =');readln(Umur[i]); End; {cetak varibel array} Writeln('NPM NAMA NILAI UMUR '); For i:= 1 to banyak Do Begin Writeln(Npm[i]:10,Nama[i]:25,Nilai[i]:3:2,' ',Umur[i]:3); End; Readln; End. 

Untuk deklarasi array dapat digunakan beberapa cara seperti berikut ini : 

Type Angka = String[20]; Var Nama : Array [1..50] of Angka; Begin End. 

Deklarasi tipe indeks subrange integer Indeks pada array dapat tipe skalar atau subrange, tetapi tidak bisa real. 
Contoh: 
Var 
Nilai : Array[1..10] of Integer; 
pada contoh ini array nilai mempunyai 10 buah elemen yaitu dari 1 sampai 10. Array tersebut dapat dideklarasikan dengan type seperti berikut ini : 

Type 
Skala = 1..10; 
Var 
Nilai : Array [skala] of Integer; 
atau : 
Type 
Skala = 1..10; 
Y = Array[skala] of Integer; 
Var 
Nilai : Y; 
atau : 
Type 
Y = Array[1..10] of Integer; 
Var 
Nilai : Y; 
atau : 
Const 
Atas =1; 
Bawah = 5; 
type 
Y = Array[Atas..Bawah] of Integer; 
Var 
Nilai : Y; 

I. Deklarasi Type Indeks Skalar 
Indeks dari larik dapat berupa tipe skalar. 
Contoh. : 

Program Deklarasi_Indeks_Array_Skalar; Uses Crt; Var Jum : Array[(jan,feb,mar,apr,mei)] of Integer; Begin Jum[jan]:=25; Jum[feb]:=45; Jum[mar]:=21; Jum[apr]:=23; Jum[mei]:=50; Writeln('Jumlah nilai bulan maret =',Jum[mar]); Readln; End. 
dapat juga ditulis : 

type Bln = (jan,feb,mar,apr,mei); Var Jum : Array[bln] of Integer; atau : type Bln =(jan,feb,mar,apr,mei); Var Jum : Array[jan..mei] of Integer;

II. Deklarasi Konstanta Array 
Array tidak hanya dapat berupa suatu varibel yang dideklarasikan di bagian deklarasi variabel, tetapi dapat juga berupa konstanta (const). 
Contoh Program : 

Program Contoh_Deklarasi_Array_Konstan; Uses Crt; Const Tetap : Array[1..4] of Integer=(7,10,21,20); Var i : Integer; Begin For i:= 1 to 4 Do Writeln('Nilai Konstan array ke ',i:2,' =',Tetap[i]); Readln; End. 
konstanta array dapat juga berupa ketetapan dalam bentuk karakter seperti berikut. 
Contoh Program : 

Program Contoh_Konstan_Array_Char_; Uses Crt; Const Huruf : Array[0..5] of Char=('A','B','C','D','E','F'); Var i : Integer; Begin For i:= 0 to 5 Do Writeln('Nilai konstan array ke',i:2,' = ',Huruf[i]); Readln; End. 
Konstanta array dapat juga berupa string seperti berikut ini. 
Contoh Program : 

Program Constanta_Array_String; Uses Crt; Type A = Array [1..5] of String; Const Nama : A = ('basic','pascal','cobol','paradox','dbase'); Var i : Integer; Begin For i:= 1 to 5 Do Writeln('Nilai Array ke-',i:2,'= ',Nama[i]); readln; end. 

Dalam pascal string merupakan array dari elemen- elemen karakter seperti berikut : 
Contoh Program : 

Program String_Adalah_Array_Tipe_Char; Uses Crt; Var Nama : string; i : Integer; Begin Nama:='Turbo Pascal'; For i:= 1 to Length(nama) Do Writeln('Elemen ',i,' dari ',Nama,'= ',Nama[i]); Readln; End. 

contoh program bilangan prima dengan menggunakan bantuan array. 
Contoh program : 

Program Mencari_Bilangan_Prima_Dengan_Array; Uses Crt; Var Prima : Array[1..100] of Integer; i,j : Integer; bil : Integer; Begin ClrScr; For i := 2 to 100 Do Begin Prima[i]:=i; For j:= 2 to i-1 Do Begin bil := (i mod j); {* i dibagi j dicek apakah 0*} If bil = 0 then Prima[i]:=0; {*jika habis dibagi,berarti bkn prima*} End; If Prima[i]<> 0 Then Write(Prima[i],' '); {*cetak array yg prima*} End; Readln; End. 

Contoh pengurutan data dengan metode buble sort, yaitu dengan cara penukaran, dapat dilihat pada contoh dibawah ini : 
Contoh Program : 

Program Penggunaan_Array_Untuk_Sortir_Buble_Sort; Uses Crt; Var nil1 : Array[1..100] of Integer; n,i,j,dum : Integer; Begin ClrScr; Write('mau isi berapa data acak (integer) ='); readln(n); For i := 1 to n Do Begin Write('Data Ke ',i,':');Readln(nil1[i]); End; {* penyapuan proses} for i:= 1 to n-1 do begin for j:= i to n do begin if nil1[j]begin 
dum:=nil1[j]; 
nil1[j]:=nil1[i]; 
nil1[i]:=dum; 
end; 
end; 
end; 
writeln; 
writeln('Hasil Sortir'); 
for i := 1 to n do 
write(nil1[i]:3); 
readln; 
end. 


III. Array Dua Dimensi 
Di dalam pascal Array dapat berdimensi lebih dari satu yang disebut dengan array dimensi banyak (Multidimensional array), disini akan dibahas array 2 dimensi saja. Array 2 dimensi dapat mewakili suatu bentuk tabel atau matrik, yaitu indeks pertama menunjukkan baris dan indeks ke dua menunjukkan kolom dari tabel atau matrik. 
1 2 
1 2 3 
Untuk mengetahui cara mendeklarasikan dari penggunaan aray dua dimensi dapat dilihat pada listing program dibawah ini . 

Contoh Program: 

Program Deklarasi_Array_Dua_Dimensi; Uses Crt;Var Tabel : Array[1..3,1..2] of Integer;i,j : Integer;Begin ClrScr; Tabel[1,1]:=1; Tabel[1,2]:=2; Tabel[2,1]:=3; Tabel[2,2]:=4; Tabel[3,1]:=5; Tabel[3,2]:=6; For I := 1 to 3 Do Begin For J:= 1 to 2 Do Begin Writeln('Elemen ',i,',',j,'= ',tabel[i,j]); End; End; Readln; End. 


IV. Alternatif Deklarasi Array Dua Dimensi. 
Ada beberapa cara dalam mendeklarasikan array dua dimensi, beberapa cara tersebut dapat dilihat dibawah ini : 
Contoh : 

Var Tabel : Array[1..3] of Array[1..2] of Byte; atau : Type Matrik = Array[1..3,1..2] of Byte; Var Tabel : Matrik; atau : Type Baris = 1..3; Kolom = 1..2; Matrik = Array[Baris,Kolom] of Byte; Var Tabel : Matrik; atau : Type Baris = 1..3; Kolom=1..2; Matrik= Array[Baris] of Array[Kolom] of Byte; Var Tabel : Matrik; Dibawah ini akan diberikan listing program penggunaan array dua dimensi dalam aplikasi penjumlahan matrik : Contoh Prorgam: Program Penjumlahan_Matrik; Uses Crt; Var Matrik1,Matrik2, Hasil : Array[1..3,1..2] of Integer; i,j : Integer; Begin ClrScr; { input matrik ke satu } Writeln(' Elemen matrik satu'); For i := 1 to 3 Do Begin For j := 1 to 2 Do Begin Write('Elemen baris -',i,' Kolom -',j,'= '); Readln(matrik1[i,j]); End; End; {input matrik ke dua} Writeln('input elemen matrik dua'); For i:= 1 to 3 Do Begin For j:= 1 to 2 Do Begin Write('Elemen baris -',i,' kolom -',j,'= '); Readln(matrik2[i,j]); End; End; {proses penjumlahan tiap elemen} For i := 1 to 3 Do Begin For j:= 1 to 2 Do Begin Hasil[i,j]:=Matrik1[i,j]+Matrik2[i,j]; End; End; {proses cetak hasil} For i:= 1 to 3 Do Begin For j:= 1 to 2 Do Begin Write(Hasil[i,j]:6); End; Writeln; End; Readln; End. 


V. Array Sebagai Parameter 
Array dapat digunakan sebagai parameter yang dikirimkan baik secara nilai (by value) atau secara acuan (by reference) ke procedure atau ke function. Procedure yang menggunakan parameter berupa array harus dideklarasikan di dalam judul procedure yang menyebutkan parameternya bertipe array. 

Contoh Program : 

Program Contoh_Pengiriman_Parameter_Array_Di_Procedure; Uses Crt; Const Garis ='---------------------------------------------------'; Type Untai = Array[1..10] of String[15]; Bulat = Array[1..10] of Integer; Huruf = Array[1..10] of Char; Var i,Banyak : Integer; Procedure Proses(Nama:Untai;Nilai:Bulat); Var Ket : String; Abjad : Char; Begin Writeln(Garis); Writeln('Nama Nilai Abjad Keterangan'); Writeln(Garis); For i := 1 to Banyak Do Begin If Nilai[i] > 90 Then Begin Abjad:='A'; Ket :='Istimewa'; End; If (Nilai[i]<90) And (Nilai[i]>70) Then Begin Abjad:='B'; Ket :='Memuaskan'; End; If (Nilai[i]<70) And (Nilai[i]>60) Then Begin Abjad:='C'; Ket :='Cukup'; End; If (Nilai[i]<60) And (Nilai[i]>45) Then Begin Abjad:='D'; Ket :='Kurang'; End; If Nilai[i]< 45 Then Begin Abjad:='E'; Ket :='Sangat kurang'; End; Writeln(Nama[i]:15,' ',Nilai[i]:4,' ',Abjad,' ',Ket:15); End; Writeln(Garis); End; Procedure Masuk_Data; Var Nama : Untai; Nilai : Bulat; Begin Write('Banyak data =');Readln(Banyak); For i:= 1 to Banyak Do Begin ClrScr; Writeln('Data ke - ',i); Write('Nama =');readln(Nama[i]); Write('Nilai =');readln(Nilai[i]); End; Proses(Nama,Nilai); End; {modul Utama} Begin Masuk_Data; Readln; End. 
Referensi :
# Lepkom Universitas Gunadarma.
# Dasar-dasar Pemrograman Pascal, Teori dan Program terapan , Ir.P. Insap Santosa, M.Sc.
dum:=nil1[j]; nil1[j]:=nil1[i]; nil1[i]:=dum; end; end; end; writeln; writeln('Hasil Sortir'); for i := 1 to n do write(nil1[i]:3); readln; end. 


III. Array Dua Dimensi 
Di dalam pascal Array dapat berdimensi lebih dari satu yang disebut dengan array dimensi banyak (Multidimensional array), disini akan dibahas array 2 dimensi saja. Array 2 dimensi dapat mewakili suatu bentuk tabel atau matrik, yaitu indeks pertama menunjukkan baris dan indeks ke dua menunjukkan kolom dari tabel atau matrik. 
1 2 
1 2 3 
Untuk mengetahui cara mendeklarasikan dari penggunaan aray dua dimensi dapat dilihat pada listing program dibawah ini . 

Contoh Program: 
Program Deklarasi_Array_Dua_Dimensi; 
Uses Crt;
Var Tabel : Array[1..3,1..2] of Integer;
i,j : Integer;
Begin 
ClrScr; 
Tabel[1,1]:=1; 
Tabel[1,2]:=2; 
Tabel[2,1]:=3; 
Tabel[2,2]:=4; 
Tabel[3,1]:=5; 
Tabel[3,2]:=6; 
For I := 1 to 3 Do Begin For J:= 1 to 2 Do Begin Writeln('Elemen ',i,',',j,'= ',tabel[i,j]); 
End; 
End; 
Readln; 
End. 


IV. Alternatif Deklarasi Array Dua Dimensi. 
Ada beberapa cara dalam mendeklarasikan array dua dimensi, beberapa cara tersebut dapat dilihat dibawah ini : 
Contoh : 
Var 
Tabel : Array[1..3] of Array[1..2] of Byte; 
atau : 
Type 
Matrik = Array[1..3,1..2] of Byte; 
Var 
Tabel : Matrik; 
atau : 
Type 
Baris = 1..3; 
Kolom = 1..2; 
Matrik = Array[Baris,Kolom] of Byte; 
Var 
Tabel : Matrik; 
atau : 
Type 
Baris = 1..3; 
Kolom=1..2; 
Matrik= Array[Baris] of Array[Kolom] of Byte; 
Var 
Tabel : Matrik; 
Dibawah ini akan diberikan listing program penggunaan array dua dimensi dalam aplikasi penjumlahan matrik : 
Contoh Prorgam: 
Program Penjumlahan_Matrik; 
Uses Crt; 
Var 
Matrik1,Matrik2, Hasil : Array[1..3,1..2] of Integer; 
i,j : Integer; 
Begin 
ClrScr; 
{ input matrik ke satu } 
Writeln(' Elemen matrik satu'); 
For i := 1 to 3 Do 
Begin 
For j := 1 to 2 Do 
Begin 
Write('Elemen baris -',i,' Kolom -',j,'= '); 
Readln(matrik1[i,j]); 
End; 
End; 
{input matrik ke dua} 
Writeln('input elemen matrik dua'); 
For i:= 1 to 3 Do 
Begin 
For j:= 1 to 2 Do 
Begin 
Write('Elemen baris -',i,' kolom -',j,'= '); 
Readln(matrik2[i,j]); 
End; 
End; 
{proses penjumlahan tiap elemen} 
For i := 1 to 3 Do 
Begin 
For j:= 1 to 2 Do 
Begin 
Hasil[i,j]:=Matrik1[i,j]+Matrik2[i,j]; 
End; 
End; 
{proses cetak hasil} 
For i:= 1 to 3 Do 
Begin 
For j:= 1 to 2 Do 
Begin 
Write(Hasil[i,j]:6); 
End; 
Writeln; 
End; 
Readln; 
End. 


V. Array Sebagai Parameter 
Array dapat digunakan sebagai parameter yang dikirimkan baik secara nilai (by value) atau secara acuan (by reference) ke procedure atau ke function. Procedure yang menggunakan parameter berupa array harus dideklarasikan di dalam judul procedure yang menyebutkan parameternya bertipe array. 

Contoh Program : 
Program Contoh_Pengiriman_Parameter_Array_Di_Procedure; 
Uses Crt; 
Const 
Garis ='---------------------------------------------------'; 
Type 
Untai = Array[1..10] of String[15]; 
Bulat = Array[1..10] of Integer; 
Huruf = Array[1..10] of Char; 
Var 
i,Banyak : Integer; 
Procedure Proses(Nama:Untai;Nilai:Bulat); 
Var 
Ket : String; 
Abjad : Char; 
Begin 
Writeln(Garis); 
Writeln('Nama Nilai Abjad Keterangan'); 
Writeln(Garis); 
For i := 1 to Banyak Do 
Begin 
If Nilai[i] > 90 Then 
Begin 
Abjad:='A'; 
Ket :='Istimewa'; 
End; 
If (Nilai[i]<90) And (Nilai[i]>70) Then 
Begin 
Abjad:='B'; 
Ket :='Memuaskan'; 
End; 
If (Nilai[i]<70) And (Nilai[i]>60) Then 
Begin 
Abjad:='C'; 
Ket :='Cukup'; 
End; 
If (Nilai[i]<60) And (Nilai[i]>45) Then 
Begin 
Abjad:='D'; 
Ket :='Kurang'; 
End; 
If Nilai[i]< 45 Then 
Begin 
Abjad:='E'; 
Ket :='Sangat kurang'; 
End; 
Writeln(Nama[i]:15,' ',Nilai[i]:4,' ',Abjad,' ',Ket:15); 
End; 
Writeln(Garis); 
End; 
Procedure Masuk_Data; 
Var 
Nama : Untai; 
Nilai : Bulat; 
Begin 
Write('Banyak data =');Readln(Banyak); 
For i:= 1 to Banyak Do 
Begin 
ClrScr; 
Writeln('Data ke - ',i); 
Write('Nama =');readln(Nama[i]); 
Write('Nilai =');readln(Nilai[i]); 
End; 
Proses(Nama,Nilai); 
End; 
{modul Utama} 
Begin 
Masuk_Data; 
Readln; 
End. 
Referensi :
# Lepkom Universitas Gunadarma.
# Dasar-dasar Pemrograman Pascal, Teori dan Program terapan , Ir.P. Insap Santosa, M.Sc.