Home » Archives for Oktober 2012
Posted by
HUMANIKA YUDHARTA PASURUAN FOREVER on Senin, 29 Oktober 2012
MySQL
adalah suatu perangkat lunak database relasi (Relational Database
Management System atau RDBMS), seperti halnya ORACLE, Postgresql, MS
SQL, dan sebagainya. MySQL AB menyebut produknya sebagai database open source terpopuler di dunia.
Berdasarkan riset dinyatakan bahwa bahwa di platform Web, dan baik untuk kategori open source maupun umum, MySQL adalah database yang paling banyak dipakai. Menurut perusahaan pengembangnya, MySQL telah terpasang di sekitar 3 juta komputer. Puluhan hingga ratusan ribu situs mengandalkan MySQL bekerja siang malam memompa data bagi para pengunjungnya.
Fitur MySQL
Kalau di seri 3.22 MySQL mulai diadopsi banyak orang dan meningkat
populasi penggunanya, maka di seri 3.23 dan 4.0-lah terjadi banyak
peningkatan dari sisi teknologi. Ini tidak terlepas dari tuntutan
pemakai yang semakin mengandalkan MySQL, namun membutuhkan fitur-fitur
yang lebih banyak lagi. Seri 3.23. Di seri 3.23 MySQL menambahkan
tiga jenis tabel baru: pertama MyISAM, yang sampai sekarang menjadi
tipe tabel default; kedua BerkeleyDB, yang pertama kali menambahkan
kemampuan transaksi pada MySQL; dan ketiga InnoDB, primadona baru
yang potensial. Seri 4.x. Di seri yang baru berjalan hingga 4.0 tahap
alfa ini, pengembang MySQL berjanji akan menjadikan MySQL satu
derajat lebih tinggi lagi. Fitur-fitur yang sejak dulu diminta akan
dikabulkan, seperti subselek (di 4.1), union (4.0), foreign key
constraint (4.0 atau 4.1—meski InnoDB sudah menyediakan ini di 3.23.x),
stored procedure (4.1), view (4.2), cursor (4.1 atau 4.2), trigger
(4.1). MySQL AB tetap berdedikasi mengembangkan dan memperbaiki MySQL,
serta mempertahankan MySQL sebagai database open source terpopuler.
Keunggulan MySQL
Penyebab utama MySQL begitu popular di kalangan Web adalah karena ia
memang cocok bekerja di lingkungan tersebut. Pertama, MySQL tersedia di
berbagai platform Linux dan berbagai varian Unix. Sesuatu yang tidak
dimiliki Access, misalnya—padahal Access amat popular di platform
Windows. Banyak server Web berbasiskan Unix, ini menjadikan Access
otomatis tidak dapat dipakai karena ia pun tidak memiliki kemampuan
client-server/networking.
Kedua, fitur-fitur yang dimiliki MySQL memang yang biasanya banyak
dibutuhkan dalam aplikasi Web. Misalnya, klausa LIMIT SQL-nya, praktis
untuk melakukan paging. Atau jenis indeks field FULLTEXT, untuk full
text searching. Atau sebutlah kekayaaan fungsi-fungsi builtinnya, mulai
dari memformat dan memanipulasi tanggal, mengolah string, regex,
enkripsi dan hashing. Yang terakhir misalnya, praktis untuk melakukan
penyimpanan password anggota situs.
Ketiga, MySQL
memiliki overhead koneksi yang rendah. Soal kecepatan melakukan
transaksi atau kinerja di kondisi load tinggi mungkin bisa
diperdebatkan dengan berbagai benchmark berbeda, tapi kalau soal yang
satu ini MySQL-lah juaranya. Karakteristik ini membuat MySQL
cocok bekerja dengan aplikasi CGI, di mana di setiap request skrip akan
melakukan koneksi, mengirimkan satu atau lebih perintah SQL, lalu
memutuskan koneksi lagi. Cobalah melakukan hal ini dengan Interbase atau
bahkan Oracle. Maka dengan load beberapa request per detik saja server
Web/database Anda mungkin akan segera menyerah karena tidak bisa
mengimbangi beban ini.
More about → Pengertian Dasar MYSQL
Posted by
HUMANIKA YUDHARTA PASURUAN FOREVER
Pada tutorial kali ini, kita akan mencoba melakukan operasi – operasi dasar pada PHP MySQL.
1. Membuat koneksi
$hostmysql = “localhost”;
$username = “mysqlusername”;
$password = “mysqlpassword”;
$database = “namadatabase”;
$conn = mysql_connect(”$hostmysql”,”$username”,”$password”);
if (!$conn) die (”Koneksi gagal”);
mysql_select_db($database,$conn) or die (”Database tidak ditemukan”); >
Penjelasan Script:a. mysql_connect digunakan
untuk membuat koneksi dari PHP ke server MySQL. Data mengenai
hostname, mysql username, dan password yang digunakan telah diwakilkan
oleh variabel $hostmysql, $username, $password. Penulisannya akan sama dengan:
mysql_connect(”localhost”,”username”,”password”);
b. mysql_select_dbuntuk memilih database yang akan digunakan.
c. if (!$conn) die (”Koneksi gagal”); jika
koneksi gagal dibuat (!$conn), maka akan muncul pesan kesalahan
.Setiap operasi PHP yang berhubungan dengan MySQL, akan membutuhkan
sintaks diatas. agar lebih mudah, lebih baik disimpan terlebih dahulu
dengan nama konfig.php. Jika sintaks tersebut dibutuhkan lagi, maka kita melakukan include terhadap file konfig.php tersebut.
2. Membuat tabel pada MySQL
include (”konfig.php”);
mysql_query(”CREATE TABLE user (
namadpnVARCHAR(20),
namablkg VARCHAR(20),
negara VARCHAR(20))”); ?>
Penjelasan script:
1. include (”konfig.php”);perintah include digunakan untuk mengikut sertakan sebuah file (pada contoh diatas adalah file konfig.php).
2. mysql_queryformat umum dari perintah ini adalah mysql_query(string dari query).
mysql_query akan sering dijumpai pada artikel kali ini.
3. Memasukkan data pada tabelinclude (”konfig.php”);
$insert = “INSERT INTO users (namadpn,namablkg,negara)
VALUES (’Saya’,’Sendiri’,’Indonesia’)”;
mysql_query($insert) or die (”tidak dapat memasukkan data ke tabel”);?>
4 . Menampilkan data dari tabel
include (”konfig.php”);
$query = “SELECT * FROM user”;
$result = mysql_query($query);
$numrows = mysql_num_rows($result);
while($row = mysql_fetch_array($result)){
echo “Jumlah data: $numrows
”;
echo “Nama Depan: $row[namadpn]
”;
echo “Nama Belakang: $row[namablkg]
”;
echo “Negara: $row[negara]”;
} ?>
Penjelasan script:1. mysql_num_rows
digunakan untuk menghitung jumlah baris yang didapat dari hasil eksekusi query (mysql_query).
2. while ( ) {}
digunakan untuk melakukan perulangan selama data yang yang diinginkan
masih ada. (dalam contoh diatas: akan menampilkan semua isi dari table).
3. mysql_fetch_arraymenampilkan data dari tabel dalam bentuk array
More about → Tutorial Dasar PHP & MySQL
Posted by
HUMANIKA YUDHARTA PASURUAN FOREVER
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.
More about → Mengenai Aray Dengan Pascal