Anda di halaman 1dari 17

Artikel Populer IlmuKomputer.

Com
Copyright 2003- 2006 IlmuKomputer.Com

1

I
I
N
N
O
O
C
C
H
H
I
I
S
S
o
o
f
f
t
t
w
w
a
a
r
r
e
e
-
-
P
P
a
a
s
s
c
c
a
a
l
l

Agung Novian
agung-mi05@std.cic.ac.id

B BA AB B 1 1
P PE EN ND DA AH HU UL LU UA AN N


Pascal adalah sebuah bahasa pemograman tempo dulu. Mungkin itu saja yang dapat
saya definiskan, karena saya yakin pembaca lebih tahu mengenai definisi lengkap dari
Pascal. Saya ingin berbagi ilmu walaupun cuma sedikit tentang pemograman dengan
Pascal.

Melalui tulisan ini, saya mencoba untuk mengulas program, prosedur dan fungsi
menarik yang bisa Anda coba dan terapkan dalam pemograman Pascal.
Beberapa yang dapat saya sampaikan, diantaranya:
1. Fungsi-fungsi String
2. Fungsi-fungsi Date
3. Fungsi-fungsi Konversi
4. Program Permainan
Semoga bahasan ini menjadi menarik dan bermanfaat untuk Anda semua.

Lisensi Dokumen:
Copyright 2003-2006 IlmuKomputer.Com
Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan
disebarkan secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat
tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang
disertakan dalam setiap dokumen. Tidak diperbolehkan melakukan penulisan ulang,
kecuali mendapatkan ijin terlebih dahulu dari IlmuKomputer.Com.
Artikel Populer IlmuKomputer.Com
Copyright 2003- 2006 IlmuKomputer.Com

2
B BA AB B 2 2
F FU UN NG GS SI I- -F FU UN NG GS SI I S ST TR RI IN NG G


Berikut ini adalah fungsi-fungsi untuk memanipulasi data String. J alankan aplikasi
Pascal Anda, ketikkan kode berikut:

PROGRAM MANI PULASI STRI NG;
USES CRT;

a. Lower Case

Fungsi ini akan mengubah string yang diinputkan menjadi Lower Case (huruf kecil).
Ketikkan fungsi berikut ini:

b. Upper Case

Fungsi ini akan mengubah string yang diinputkan menjadi Upper Case (huruf besar).
Ketikkan fungsi berikut ini:

c. Proper Case

Fungsi ini akan mengubah string yang diinputkan menjadi Proper Case (huruf besar
untuk huruf awal setiap kata). Ketikkan fungsi berikut ini:

FUNCTI ON LCASE( S: STRI NG) : STRI NG;
VAR I : I NTEGER;
BEGI N
FOR I : = 1 TO LENGTH( S) DO
I F ( S[ I ] >= ' A' ) AND ( S[ I ] <= ' Z' ) THEN
I NC( S[ I ] , 32) ;
LCASE : = S;
END;
FUNCTI ON UCASE( S: STRI NG) : STRI NG;
VAR I : I NTEGER;
BEGI N
FOR I : = 1 TO LENGTH( S) DO
I F ( S[ I ] >= ' a' ) AND ( S[ I ] <= ' z' ) THEN
DEC( S[ I ] , 32) ;
UCASE : = S;
END;
Artikel Populer IlmuKomputer.Com
Copyright 2003- 2006 IlmuKomputer.Com

3

Untuk mencoba fungsi-fungsi di atas, ketikkan program utama sebagai berikut:

{pr ogr amut ama}
BEGI N
CLRSCR;
WRI TE( LCASE( ' Cr eat ed By vi an sast r a ' ) ) ;
WRI TE( UCASE( ' Cr eat ed By vi an sast r a ' ) ) ;
WRI TE( PCASE( ' Cr eat ed By vi an sast r a ' ) ) ;
READLN;
END.

Lihatlah tampilan pada layar monitor Anda!



Baris pertama, tiap kata ditulis dengan huruf kecil, baris ke-2 tiap kata ditulis dengan
huruf besar, dan baris ke-3, tiap kata hanya huruf awal saja yang ditulis dengan huruf
besar.

FUNCTI ON PCASE( S: STRI NG) : STRI NG;
VAR I , J : I NTEGER;
BEGI N
I F ( S[ 1] >= ' a' ) AND
( S[ 1] <= ' z' ) THEN
DEC( S[ 1] , 32) ;
FOR I : = 2 TO LENGTH( S) DO
I F ( S[ I ] >= ' A' ) AND
( S[ I ] <= ' Z' ) THEN
I NC( S[ I ] , 32) ;
FOR I : = 2 TO ( LENGTH( S) - 1) DO
I F ( S[ I ] = ' ' ) THEN
BEGI N
J : = I ;
I F ( S[ J + 1] >= ' a' ) AND
( S[ J + 1] <= ' z' ) THEN
DEC( S[ J + 1] , 32) ;
END;
PCASE : = S;
END;
Artikel Populer IlmuKomputer.Com
Copyright 2003- 2006 IlmuKomputer.Com

4
B BA AB B 3 3
F FU UN NG GS SI I- -F FU UN NG GS SI I D DA AT TE E


Berikut ini adalah fungsi-fungsi untuk memanfaat sistem date dari unit Dos, untuk
menampilkan tanggal atau hari sesuai data pada sistem komputer. J alankan aplikasi
Pascal Anda, ketikkan kode berikut:

PROGRAM TAMPI LTANGGAL;
USES CRT, DOS;

( * FUNGSI UNTUK MENGKONVERSI
NI LAI I NTEGER MENJ ADI STRI NG *)

FUNCTI ON I NTTOSTR( I : LONGI NT) : STRI NG;
VAR
S: STRI NG[ 12] ;
BEGI N
STR( I , S) ;
I NTTOSTR : = S;
END;


a. Menampilkan Tanggal Sistem

Fungsi ini akan menampilkan tanggal dari sistem komputer Anda.

b. Menampilkan Nama Hari

Fungsi ini akan menampilkan tanggal dari sistem komputer Anda.

FUNCTI ON TANGGAL: STRI NG;
VAR
Y, M, D, DOW: Wor d;
BEGI N
GETDATE( Y, M, D, DOW) ;
TANGGAL : = I NTTOSTR( D) + ' - '
+ I NTTOSTR( M) + ' - ' + I NTTOSTR( Y) ;
END;
FUNCTI ON HARI _I NI : STRI NG;
CONST
DAYS : ARRAY [ 0. . 6] OF STRI NG[ 9] =
( ' MI NGGU' , ' SENI N' , ' SELASA' ,
' RABU' , ' KAMI S' , ' J UMAT' ,
' SABTU' ) ;
VAR
Y, M, D, DOW: Wor d;
BEGI N
GETDATE( Y, M, D, DOW) ;
HARI _I NI : = ' HARI I NI : ' + DAYS[ DOW] + ' , ' ;
END;
Artikel Populer IlmuKomputer.Com
Copyright 2003- 2006 IlmuKomputer.Com

5
Untuk mencoba fungsi-fungsi di atas, ketikkan program utama sebagai berikut:
( * pr ogr amut ama *)
BEGI N
CLRSCR;
WRI TELN( HARI _I NI , TANGGAL) ;
READLN;
END.

Lihatlah tampilan pada layar monitor Anda!



Artikel Populer IlmuKomputer.Com
Copyright 2003- 2006 IlmuKomputer.Com

6
B BA AB B 4 4
F FU UN NG GS SI I- -F FU UN NG GS SI I K KO ON NV VE ER RS SI I


Berikut ini adalah fungsi-fungsi untuk mengkonversi suatu nilai ke nilai lain. J alankan
aplikasi Pascal Anda, ketikkan kode berikut:

PROGRAM KONVERSI ;
USES CRT, STRI NGS;
VAR MASUKAN : I NTEGER;

( * FUNGSI UNTUK MENGKONVERSI
NI LAI {I NTEGER} MENJ ADI STRI NG *)

FUNCTI ON I NTTOSTR( I : LONGI NT) : STRI NG;
VAR
S: STRI NG;
BEGI N
STR( I , S) ;
I NTTOSTR : = S;
END;

a. Konversi Desimal ke Angka Romawi

Fungsi ini akan mengkonversi suatu nilai bilangan (decimal) ke angka Romawi. Contoh:
1234 menjadi: MCCXXXIV.

( * FUNGSI UNTUK MENGKONVERSI
BI LANGAN DESI MAL MENJ ADI ANGKA ROMAWI *)

FUNCTI ON CONVROMAN( I NTANGKA : I NTEGER) : STRI NG;
VAR
I : I NTEGER;
I NTSERI BU, I NTLI MARATUS : I NTEGER;
I NTSERATUS, I NTLI MAPULUH : I NTEGER;
I NTSEPULUH, I NTLI MA, I NTSATU : I NTEGER;
STRSERI BU, STRLI MARATUS : STRI NG;
STRSERATUS, STRLI MAPULUH : STRI NG;
STRSEPULUH, STRLI MA, STRSATU : STRI NG;
STRROMAWI : STRI NG;
BEGI N
I : = 0;
STRROMAWI : =' ' ; I NTSERI BU : = 0;
I NTLI MARATUS : = 0; I NTSERATUS : = 0;
I NTLI MAPULUH : = 0; I NTSEPULUH : = 0;
I NTLI MA : = 0; I NTSATU : = 0;
STRSERI BU : =' ' ; STRLI MARATUS : =' ' ;
STRSERATUS : =' ' ; STRLI MAPULUH : =' ' ;
STRSEPULUH : =' ' ; STRLI MA : =' ' ;
STRSATU : =' ' ;
( *===============================*)
I NTSATU : = I NTANGKA;
I NTSERI BU : = I NTANGKA DI V 1000;
Artikel Populer IlmuKomputer.Com
Copyright 2003- 2006 IlmuKomputer.Com

7
I NTSATU : = I NTSATU - ( I NTSERI BU * 1000) ;
I NTLI MARATUS : = I NTSATU DI V 500;
I NTSATU : = I NTSATU - ( I NTLI MARATUS * 500) ;
I NTSERATUS : = I NTSATU DI V 100;
I NTSATU : = I NTSATU - ( I NTSERATUS * 100) ;
I NTLI MAPULUH : = I NTSATU DI V 50;
I NTSATU : = I NTSATU - ( I NTLI MAPULUH * 50) ;
I NTSEPULUH : = I NTSATU DI V 10;
I NTSATU : = I NTSATU - ( I NTSEPULUH * 10) ;
I NTLI MA : = I NTSATU DI V 5;
I NTSATU : = I NTSATU - ( I NTLI MA * 5) ;
( *=================================*)
FOR I : = 0 TO I NTSERI BU- 1 DO
STRSERI BU : = STRSERI BU + ' M' ;
I F I NTSERATUS <> 4 THEN
FOR I : = 0 TO I NTLI MARATUS- 1 DO
STRLI MARATUS : = STRLI MARATUS + ' D' ;
FOR I : = 0 TO I NTSERATUS- 1 DO
STRSERATUS : = STRSERATUS + ' C' ;
I F I NTSERATUS = 4 THEN
I F I NTLI MARATUS = 1 THEN
STRSERATUS : = STRROMAWI + ' CM'
ELSE
STRSERATUS : = STRROMAWI + ' CD' ;
I F I NTSEPULUH <> 4 THEN
FOR I : = 0 TO I NTLI MAPULUH- 1 DO
STRLI MAPULUH : = STRLI MAPULUH + ' L' ;
FOR I : = 0 TO I NTSEPULUH- 1 DO
STRSEPULUH : = STRSEPULUH + ' X' ;
I F I NTSEPULUH = 4 THEN
I F I NTLI MAPULUH = 1 THEN
STRSEPULUH : = STRROMAWI + ' XC'
ELSE
STRSEPULUH : = STRROMAWI +' XL' ;
I F I NTSATU <> 4 THEN
FOR I : = 0 TO I NTLI MA- 1 DO
STRLI MA : = STRLI MA + ' V' ;

FOR I : = 0 TO I NTSATU- 1 DO
STRSATU : = STRSATU + ' I ' ;
I F I NTSATU = 4 THEN
I F I NTLI MA = 1 THEN
STRSATU : = STRROMAWI + ' I X'
ELSE
STRSATU : = STRROMAWI +' I V' ;
STRROMAWI : = STRSERI BU + STRLI MARATUS
+ STRSERATUS + STRLI MAPULUH
+ STRSEPULUH + STRLI MA + STRSATU;
CONVROMAN : = STRROMAWI ;
END;

b. Konversi Desimal ke Binear

Fungsi ini akan mengkonversi suatu nilai bilangan (decimal) ke basis Binear. Contoh:
123 menjadi: 1111011.

FUNCTI ON BI NEAR( I NTANGKA : I NTEGER) : STRI NG;
Artikel Populer IlmuKomputer.Com
Copyright 2003- 2006 IlmuKomputer.Com

8
VAR
I NTNI LAI : LONGI NT;
I NTLEN : I NTEGER;
J : I NTEGER;
STRHASI L : STRI NG;
STREND : STRI NG[ 1] ;
STRSUB : STRI NG;
BEGI N
STRHASI L : = ' ' ;
STREND : = ' ' ;
STRSUB : = ' ' ;
REPEAT
I NTNI LAI : = I NTANGKA MOD 2;
I NTANGKA : = I NTANGKA DI V 2;
STRHASI L : = STRHASI L + I nt ToSt r ( I NTNI LAI ) ;
UNTI L I NTANGKA = 1;
I NTLEN : = LENGTH( STRHASI L) ;
STREND : = I nt ToSt r ( I NTANGKA) ;
FOR J : = I NTLEN DOWNTO 1 DO
STRSUB : = STRSUB + COPY( STRHASI L, J , 1) ;
BI NEAR : = STREND + STRSUB;
END;

c. Konversi Desimal ke Hexadecimal

Fungsi ini akan mengkonversi suatu nilai bilangan (decimal) ke basis Hexadecimal.
Contoh: 123 menjadi: 7B.

FUNCTI ON HEXADEC( I NTANGKA : I NTEGER) : STRI NG;
VAR
I NTNI LAI : LONGI NT;
I NTLEN : I NTEGER;
J : I NTEGER;
STRHASI L : STRI NG;
STRHEXA : STRI NG;
STREND : STRI NG[ 1] ;
STRSUB : STRI NG;
BEGI N
STRHASI L : = ' ' ;
STRHEXA : = ' ' ;
STRSUB : = ' ' ;
STREND : = ' ' ;
REPEAT
I NTNI LAI : = I NTANGKA MOD 16;
I NTANGKA : = I NTANGKA DI V 16;
CASE I NTNI LAI OF
10: STRHEXA : = ' A' ;
11: STRHEXA : = ' B' ;
12: STRHEXA : = ' C' ;
13: STRHEXA : = ' D' ;
14: STRHEXA : = ' E' ;
15: STRHEXA : = ' F' ;
ELSE
STRHEXA : = I nt ToSt r ( I NTNI LAI ) ;
END;
STRHASI L : = STRHASI L + STRHEXA;
UNTI L I NTANGKA < 16;
Artikel Populer IlmuKomputer.Com
Copyright 2003- 2006 IlmuKomputer.Com

9
I NTLEN : = LENGTH( STRHASI L) ;
STREND : = I nt ToSt r ( I NTANGKA) ;
FOR J : = I NTLEN DOWNTO 1 DO
STRSUB : = STRSUB + COPY( STRHASI L, J , 1) ;
HEXADEC : = STREND + STRSUB;
END;

d. Konversi Desimal ke Nominal

Fungsi ini akan mengkonversi suatu nilai bilangan (decimal) ke huruf nominal. Contoh:
123 menjadi: Seratus duapuluh tiga.

Funct i on Dl mHur uf ( Var nHur uf : St r i ng) : St r i ng;
Begi n
I f nHur uf =' 1' Then Dl mHur uf : =' sat u' El se
I f nHur uf =' 2' Then Dl mHur uf : =' dua' El se
I f nHur uf =' 3' Then Dl mHur uf : =' t i ga' El se
I f nHur uf =' 4' Then Dl mHur uf : =' empat ' El se
I f nHur uf =' 5' Then Dl mHur uf : =' l i ma' El se
I f nHur uf =' 6' Then Dl mHur uf : =' enam' El se
I f nHur uf =' 7' Then Dl mHur uf : =' t uj uh' El se
I f nHur uf =' 8' Then Dl mHur uf : =' del apan' El se
I f nHur uf =' 9' Then Dl mHur uf : =' sembi l an' El se
Dl mHur uf : =' ' ;
End;
{- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - }
Funct i on Ter bi l ang( Angka: LongI nt ) : St r i ng;
var
Chr S : Ar r ay[ 1. . 10] of St r i ng;
St r T : Ar r ay[ 1. . 10] of St r i ng;
Hur uf : St r i ng; I ndeks, Panj ang: I nt eger ;
Begi n
Hur uf : =' ' ; Panj ang: =0;
For I ndeks : = 1 t o 10 do begi n
Chr S[ I ndeks] : =' ' ;
St r T[ I ndeks] : =' ' ; End;
Panj ang: =Lengt h( I nt ToSt r ( Angka) ) ;

For I ndeks : = 1 t o Panj ang do
Chr S[ I ndeks] : =
Copy( I nt ToSt r ( Angka) ,
( Panj ang- ( I ndeks- 1) ) , 1) ;
I f Chr S[ 8] =' 0' Then
Begi n
St r T[ 8] : =' ' ;
St r T[ 7] : =Dl mHur uf ( Chr S[ 7] ) + ' j ut a ' ;
End
El se I f Chr S[ 8] =' 1' Then
Begi n
St r T[ 8] : =' ' ;
I f Chr S[ 7] = ' 0' Then
St r T[ 7] : =' Sepul uh j ut a ' El se
I f Chr S[ 7] = ' 1' Then
St r T[ 7] : =' Sebel as j ut a ' El se
St r T[ 7] : = Dl mHur uf ( Chr S[ 7] ) +
' bel as j ut a' ;
End
Artikel Populer IlmuKomputer.Com
Copyright 2003- 2006 IlmuKomputer.Com

10
El se I f Chr S[ 8] >' 1' Then
Begi n
St r T[ 7] : =Dl mHur uf ( Chr S[ 7] ) + ' j ut a ' ;
St r T[ 8] : =Dl mHur uf ( Chr S[ 8] ) + ' pul uh ' ;
End;
Begi n

End;
I f Chr S[ 6] = ' 0' Then
St r T[ 6] : =' '
El se
Begi n
I f Chr S[ 6] <> ' 1' Then
St r T[ 6] : =Dl mHur uf ( Chr S[ 6] ) + ' r at us '
El se
St r T[ 6] : =' Ser at us ' ;
End;
I f Chr S[ 5] = ' 0' Then
Begi n
St r T[ 5] : =' ' ;
I f Chr S[ 4] = ' 1' Then
St r T[ 4] : = ' Ser i bu '
El se
St r T[ 4] : = Dl mHur uf ( Chr S[ 4] ) + ' r i bu ' ;
End
El se I f Chr S[ 5] = ' 1' Then
Begi n
St r T[ 5] : =' ' ;
I f Chr S[ 4] = ' 0' Then
St r T[ 4] : =' Sepul uh r i bu ' El se
I f Chr S[ 4] = ' 1' Then
St r T[ 4] : =' Sebel as r i bu ' El se
St r T[ 4] : = Dl mHur uf ( Chr S[ 4] ) +
' bel as r i bu ' ;
End
El se
Begi n
St r T[ 4] : =Dl mHur uf ( Chr S[ 4] ) + ' r i bu ' ;
St r T[ 5] : =Dl mHur uf ( Chr S[ 5] ) + ' pul uh ' ;
End;
I f Chr S[ 3] = ' 0' Then
St r T[ 3] : =' '
El se I f Chr S[ 3] =' 1' Then
St r T[ 3] : =' Ser at us '
El se I f Chr S[ 3] > ' 1' Then
St r T[ 3] : =Dl mHur uf ( Chr S[ 3] ) + ' r at us ' ;
{========================================}
I f Chr S[ 2] = ' 0' Then
Begi n
St r T[ 2] : =' ' ;
St r T[ 1] : =Dl mHur uf ( Chr S[ 1] ) ;
End
El se I f Chr S[ 2] =' 1' Then
Begi n
St r T[ 2] : =' ' ;
I f Chr S[ 1] = ' 0' Then
St r T[ 1] : =' Sepul uh' El se
I f Chr S[ 1] = ' 1' Then
St r T[ 1] : =' Sebel as' El se
Artikel Populer IlmuKomputer.Com
Copyright 2003- 2006 IlmuKomputer.Com

11
St r T[ 1] : = Dl mHur uf ( Chr S[ 1] ) +' bel as' ;
End
El se I f Chr S[ 2] > ' 1' Then
Begi n
St r T[ 1] : =Dl mHur uf ( Chr S[ 1] ) ;
St r T[ 2] : =Dl mHur uf ( Chr S[ 2] ) +' pul uh ' ;
End;
For I ndeks : = 1 t o 8 Do
I f Panj ang <= I ndeks Then
St r T[ I ndeks + 1] : =' ' ;
For I ndeks : = 8 DownTo 1 Do
Hur uf : =Hur uf + St r T[ I ndeks] ;
Ter bi l ang : = Hur uf ;

Untuk mencoba fungsi-fungsi di atas, ketikkan program utama sebagai berikut:

( * pr ogr amut ama *)
BEGI N
CLRSCR;
WRI TE ( ' MASUKAN ANGKA : ' ) ;
READLN( MASUKAN) ;
WRI TELN( ' ROMAWI = ' , CONVROMAN( MASUKAN) ) ;
WRI TELN( ' BI NEAR = ' , BI NEAR( MASUKAN) ) ;
WRI TELN( ' HEXA = ' , ' &H' , HEXADEC( MASUKAN) ) ;
WRI TELN( ' TERBI LANG = ' , TERBI LANG( MASUKAN) ) ;
READLN
END.

Tampilan akhir program seperti gambar di bawah ini:



Artikel Populer IlmuKomputer.Com
Copyright 2003- 2006 IlmuKomputer.Com

12
B BA AB B 5 5
P PR RO OG GR RA AM M P PE ER RM MA AI IN NA AN N


Berikut ini adalah contoh pembuatan sebuah program permainan, sulap angka. Program
ini akan menebak sebuah angka yang dipilih oleh seorang pemain, setelah menempuh
beberapa wizard. J alankan Pascal dan ketikkan kode yang banyak ini:

PROGRAM SULAPANGKA;
USES CRT;
VAR I , J , K, L: I NTEGER;
YT: CHAR;
NI LAI : I NTEGER;

FUNCTI ON CSTR( I : I NTEGER) : STRI NG;
VAR
S: STRI NG[ 11] ;
BEGI N
STR( I , S) ;
CSTR : = S;
END;

PROCEDURE TULI S( POSI SI : I NTEGER; TEKS: STRI NG) ;
VAR A, B, C: I NTEGER;
BEGI N
A : = POSI SI ;
B : = POSI SI MOD 10;
C : = 1;
I F B = 0 THEN
BEGI N B : = 10; C : = 0; END;
GOTOXY( B * 8 - 5,
( A DI V 10 + C) * 3 + 1) ;
WRI TE( TEKS) ;
END;
( * Unt uk symbol - symbol seper t i : ,
dapat Anda gant i dengan symbol : # at au l ai nnya *)

PROCEDURE BI KI N_KOTAK( KOLOM, BARI S: I NTEGER) ;
BEGI N
CLRSCR;
FOR I : = 1 TO KOLOM DO
BEGI N
FOR J : = 1 TO BARI S DO
BEGI N
GOTOXY ( J * 8 - 7, ( I * 3) ) ;
WRI TE( ' ' ) ;
GOTOXY ( J * 8 - 7, ( I * 3 + 1) ) ;
WRI TE( ' ' ) ;
GOTOXY ( J * 8 - 7, ( I * 3 + 2) ) ;
WRI TE( ' ' ) ;
END;
END;
END;

PROCEDURE WI ZARD7;
Artikel Populer IlmuKomputer.Com
Copyright 2003- 2006 IlmuKomputer.Com

13
BEGI N
CLRSCR;
WRI TELN( ' ANGKA YANG ANDA PI LI H = ' , NI LAI ) ;
WRI TELN;
WRI TE( ' I NGI N MENGULANG ( Y/ ESC. ) ? ' ) ; READKEY;
YT : = READKEY;
END;

PROCEDURE WI ZARD6;
BEGI N
BI KI N_KOTAK( 2, 10) ;
FOR I : = 1 TO 19 DO
TULI S( I , CSTR( I + 31) ) ;
GOTOXY ( 5, 15) ;
WRI TE( ' APAKAH ANGKA YANG ANDA PI LI H' ,
' ADA PADA DERETAN ANGKA DI ATAS ( Y/ T) ' ) ;
REPEAT
YT : = READKEY;
UNTI L YT I N [ ' y' , ' Y' , ' t ' , ' T' , #27] ;
I F UPCASE( YT) = ' Y' THEN
NI LAI : = NI LAI + 32;
WI ZARD7;
{===============================}
END;

PROCEDURE WI ZARD5;
BEGI N
BI KI N_KOTAK( 2, 10) ;
FOR I : = 1 TO 16 DO
TULI S( I , CSTR( I + 15) ) ;
FOR J : = 17 TO 19 DO
TULI S ( J , CSTR( J + 31) ) ;
GOTOXY ( 5, 15) ;
WRI TE( ' APAKAH ANGKA YANG ANDA PI LI H' ,
' ADA PADA DERETAN ANGKA DI ATAS ( Y/ T) ' ) ;
REPEAT
YT : = READKEY;
UNTI L YT I N [ ' y' , ' Y' , ' t ' , ' T' , #27] ;
{===============================}
I F UPCASE( YT) = ' Y' THEN
NI LAI : = NI LAI + 16;
WI ZARD6;
END;

PROCEDURE WI ZARD4;
BEGI N
BI KI N_KOTAK( 3, 10) ;
FOR J : = 0 TO 2 DO
FOR I : = 1 TO 8 DO
TULI S( J * 8 + I , CSTR( J * 16 + I + 7) ) ;
GOTOXY ( 5, 15) ;
WRI TE( ' APAKAH ANGKA YANG ANDA PI LI H' ,
' ADA PADA DERETAN ANGKA DI ATAS ( Y/ T) ' ) ;
REPEAT
YT : = READKEY;
UNTI L YT I N [ ' y' , ' Y' , ' t ' , ' T' , #27] ;
I F UPCASE( YT) = ' Y' THEN
NI LAI : = NI LAI + 8;
WI ZARD5;
Artikel Populer IlmuKomputer.Com
Copyright 2003- 2006 IlmuKomputer.Com

14
{===============================}
END;

PROCEDURE WI ZARD3;
BEGI N
BI KI N_KOTAK( 3, 10) ;
FOR J : = 0 TO 5 DO
FOR I : = 1 TO 4 DO
TULI S( J * 4 + I , CSTR( J * 8 + I + 3) ) ;
GOTOXY ( 5, 15) ;
WRI TE( ' APAKAH ANGKA YANG ANDA PI LI H' ,
' ADA PADA DERETAN ANGKA DI ATAS ( Y/ T) ' ) ;
REPEAT
YT : = READKEY;
UNTI L YT I N [ ' y' , ' Y' , ' t ' , ' T' ] ;
I F UPCASE( YT) = ' Y' THEN
NI LAI : = NI LAI + 4;
WI ZARD4;
{===============================}
END;

PROCEDURE WI ZARD2;
BEGI N
BI KI N_KOTAK( 3, 10) ;
J : =0;
FOR J : = 0 TO 12 DO
FOR I : = 1 TO 2 DO
TULI S( J * 2 + I , CSTR( J * 4 + I + 1) ) ;

GOTOXY ( 5, 15) ;
WRI TE( ' APAKAH ANGKA YANG ANDA PI LI H' ,
' ADA PADA DERETAN ANGKA DI ATAS ( Y/ T) ' ) ;
REPEAT
YT : = READKEY;
UNTI L YT I N [ ' y' , ' Y' , ' t ' , ' T' , #27] ;
I F UPCASE( YT) = ' Y' THEN
NI LAI : = NI LAI + 2;
WI ZARD3;
{===============================}
END;

PROCEDURE WI ZARD1;
BEGI N
BI KI N_KOTAK( 3, 10) ;
L: = 1;
REPEAT
TULI S ( ( L + 1) DI V 2, CSTR( L) ) ;
L: = L + 2;
UNTI L L > 50;
GOTOXY ( 5, 15) ;
WRI TE( ' APAKAH ANGKA YANG ANDA PI LI H' ,
' ADA PADA DERETAN ANGKA DI ATAS ( Y/ T) ' ) ;
REPEAT
YT : = READKEY;
UNTI L YT I N [ ' y' , ' Y' , ' t ' , ' T' , #27] ;
I F UPCASE( YT) = ' Y' THEN
NI LAI : = 1;
WI ZARD2;
{===============================}
Artikel Populer IlmuKomputer.Com
Copyright 2003- 2006 IlmuKomputer.Com

15
END;

PROCEDURE TULI S_NOMOR;
BEGI N
BI KI N_KOTAK( 5, 10) ;
FOR K: = 1 TO 50 DO
TULI S( K, CSTR( K) ) ;
GOTOXY( 1, 20) ;
WRI TE ( ' PI LI H SEBUAH ANGKA, ' ,
' TEKAN: Y, KALO MAU TERUS! ' ) ;
WRI TE ( ' TEKAN ESC UNTUK KELUAR ' ) ;
REPEAT
YT : = READKEY;
I F UPCASE( YT) = ' Y' THEN
BEGI N
NI LAI : = 0;
WI ZARD1;
END;
UNTI L YT I N [ ' y' , ' Y' , ' t ' , ' T' , #27] ;
{===============================}
END;
( * Pr ogr amUt ama *)
BEGI N
CLRSCR;
TEXTATTR : = $1F;
REPEAT
TULI S_NOMOR;
UNTI L YT = #27;
END.

Tampilan program adalah sebagai berikut:

Tampilan
pertama:

Pada wizard
ini pemain
diminta
memilih
sebuah angka,
tanpa perlu
ditunjuk atau
disebutkan,
kemudian
tekan tombol
Y pada keyboard.







Artikel Populer IlmuKomputer.Com
Copyright 2003- 2006 IlmuKomputer.Com

16
Pada wizard ini, pemain mengamati angka-angka yang ditampilkan, jika angka yang
dipilih (pada wizard sebelumnya) ada pada deretan, tekan tombol Y, jika tidak ada tekan
tombol T

Tampilan dan penggunaan wizard-wizard selanjutnya sama seperti wizard di samping.


Setelah melalui
semua wizard,
maka akan
ditampilkan
hasil seperti
pada gambar di
samping ini.



Artikel Populer IlmuKomputer.Com
Copyright 2003- 2006 IlmuKomputer.Com

17
T Te en nt ta an ng g P Pe en nu ul li is s: :

Nama Lengkap : Agung Novian
Nama Beken : Viansastra
Kelahiran : Cirebon, 24 September 1982
Profesi : Programmer, Penulis buku komputer, Pengajar,
Cerpenis, Mahasiswa STMIK CIC Cirebon.
Pengalaman : Programmer PT. Mekraindo Majalengka,
menulis buku, judul: Panduan Ms. Visual Basic
Anda Pasti Bisa!,
terbitan Andi Offset 2003
Rencana ke depan : Penerbitan buku-buku seri pemograman:
Visual Basic, Visual Basic .Net, Pascal, Delphi
Pendidikan :
- SMK Negeri 1 Cirebon tahun Otomotif
- S1 STMIK Tasikmalaya Teknik Informatika
- D3 STMIK CIC Cirebon Manajemen Informatika
Motto : Tumbuhkan jati diri dengan melihat seberapa banyak
yang kita bisa.
E-mail to:

agung-mi05@std.cic.ac.id
viansastra@telkom.net
vian_sastra@yahoo.co.id

Anda mungkin juga menyukai