Anda di halaman 1dari 10

MAKALAH

PEMROGRAMAN KOMPUTER 1

PEMOGRAMAN GRAFIS PADA PASCAL


untuk memenuhi salah satu tugas
Mata Kuliah Pemrograman Komputer 1
Dosen Pengampu : Muhammad Zuhair Zahid, S.Pd.Si., M.Pd

NAMA KELOMPOK 3 :

Nur Indah Dwi Gustyarini (4112316012)

Novita Nur Afifa (4112316014)

Rivo Putra Kristia W (4112316015)

Bihaqi Al Rafik (4112316022)

PRODI STATISTIKA TERAPAN DAN KOMPUTASI


FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS NEGERI SEMARANG
2017

i
DAFTAR ISI

DAFTAR ISI....................................................................................................................... ii

BAB 1 PENDAHULUAN .................................................................................................. 1

1.1 LATAR BELAKANG .............................................................................................. 1

1.2 RUMUSAN MASALAH .......................................................................................... 1

BAB 2 ISI ........................................................................................................................... 2

2.1 PENGERTIAN STRING .........................................Error! Bookmark not defined.

2.2 DEKLARASI TIPE STRING .................................Error! Bookmark not defined.

2.3 MENGAKSES KARAKTER DARI STRING ........Error! Bookmark not defined.

2.4 OPERATOR PEMBANDINGAN STRING ............Error! Bookmark not defined.

2.5 FUNGSI DAN PEROSEDUR STANDAR PADA STRING Error! Bookmark not
defined.

2.5.1 KONVERSI KE HURUF KAPITAL................Error! Bookmark not defined.

2.5.2 MENGETAHUI PANJANG STRING .............Error! Bookmark not defined.

2.5.3 MENGKONVERSI KARAKTER KE ASCII ..Error! Bookmark not defined.

2.5.4 KONKATENASI ..............................................Error! Bookmark not defined.

2.5.5 MENYALIN BAGIAN STRING ....................Error! Bookmark not defined.

2.5.6 MENYISIPKAN STRING ................................Error! Bookmark not defined.

2.5.7 POSISI SUATU STRING PADA SUATU STRING YANG LAIN ........ Error!
Bookmark not defined.

2.5.8 KONVERSI BILANGAN KE STRING ...........Error! Bookmark not defined.

DAFTAR PUSTAKA ........................................................Error! Bookmark not defined.

ii
BAB 1 PENDAHULUAN

1.1 LATAR BELAKANG


Sebuah program pasti tidak jauh dengan yang namanya data.Seorang
programer harus mengerti dan mengenal apa itu data dan jenis-jenisnya.Tiap jenis
data tersebut memiliki fungsi yang beraneka ragam dan digunakan sesuai dengan
kebutuhan programer.Salah menentukan jenis data yang dipakai terkadang
membuat program tersebut tidak bisa dijalankan.Tetapi pada kesempatan ini
penulis akan membahas jenis tipe data yang sering dipakai oleh programer, yaitu
tipe data string.

1.2 RUMUSAN MASALAH


a. Apa yang dimaksud dengan String ?
b. Apa yang dimaksud dari deklarasi tipe String ?
c. Bagaimana cara mengakses karakter dari string ?
d. Apa saja operator relasi untuk pembanding string ?

1
BAB 2 ISI
2.1 DASAR MODE GRAFIS
Subab ini akan membahas perintah perintah dasar yang anda perlukan untuk
bekerja dengan mode grafis.

2.1.1 Melibatkan Unit Graph

Hal pertama yang perlu dilakukan kalau mau bekerja dengan mode grafis adalah
melibatkan unit bernama graph. Anda bisa memberi peryataan sbb

USES GRAPH

2.1.2 Pengaktifan Mode Grafis


Untuk memilih mode grafis anda perlu terlebih dulu melakukan inisialisasi
terhadap sistem grafis. Hal ini dikerjakan oleh pemanggilan prosedur bernama
InitGraph. Pada program didepan anda dapat melihat pernyataan :

InitGraph(DriverGravis, ModeGrafis, );

bentuk deklarasi prosedur ini:

PROCEDURE InirGraph(VAR DriveGrafik: integer, VAR ModeGrafik: integer;PathDriver: string);

DriverGrafik berupa variabel yang dipakai untuk menentukan driver grafis yang akan
dipakai. Anda perlu memilih penegendali grafik yang diapaki, tetapi tentu saja hal ini
tergantung oleh adapter grafik monitor anda.

Tabel 1 Driver mode grafis.

Konstanta Nilai
CurrentDriver -128
Detect 0 (Permintaan untuk mendeteksi secara otomatis)
CGA 1
MCGA 2
EGA 3
EGA64 4
EGAMono 5

2
IBM8514 6
HercMono 7
ATT400 8
VGA 9
PC3270 10

ModeGrafik berupa variabel untuk memilih mode grafis. Mode yang dapat dipilih
tergantung dari driver grafik yang anda pakai.
PathDriver digunakan untuk menentukan letak dari file driver grafik(berekstensi
BGI, yang disediakan turbo pascal). Anda dapat menisisnya dengan string kosong ()
sekiranya drivergrafik anda pada direktori kerja.

Tabel 2 Berbagai mode grafis.

Konstanta Nilai Resolusi Konstanta Nilai Resolusi


CGAC0 0 320x200 EGALo 0 640x200
CGAC1 1 320x200 EGAHi 1 640x350
CGAC2 2 320x200
CGAC3 3 320x200
CGAHi 4 640x200
MCGAC0 0 320x200 EGA64Lo 0 640x200
MCGAC1 1 320x200 EGA64Hi 1 640x350
MCGAC2 2 320x200
MCGAC3 3 320x200
MCGAMed 4 640x200
MCGAHi 5 640x480
ATT400C0 0 320x200 EGAMonoHi 3 640x350
ATT400C1 1 320x200
ATT400C2 2 320x200
ATT400C3 3 320x200
ATT400Med 4 640x200
ATT400Hi 5 640x400
VGALo 0 640x200 HercMonoHi 0 720x348
VGAMed 1 640x350
VGAHi 2 640x480

3
PC3270Hi 0 720x350 IBM8514Lo 0 720x350
IBM8514Hi 1 1024x768

Contoh berikut digunakan pada sistem komputer yang menggunakan VGA.

DriverGrafis:=VGA;

ModeGrafis:=VGAHI;

InitGraph(DriverGrafis, ModeGrafis, );

Perintah diatas digunaka untuk mengakhtifkan mode grafis VGAHi (640x480


piksel). Oleh karena argimen ketiga berupa string kosong, anda harus memastikan
bahwa pada direktori kerja terdapat file bernama EGAVGA.BGI(Driver untuk
EGA/VGA).

Anda juga dapat melakukan pendeteksian secara otomatis. Anda tidak perlu
mwmilih jeis driver ataupun mode grafis. Sistem akan memilih sendiri untuk anda.
Caranya isikan Detec ke variabel yang menyatakan driver grafis. Contoh karakternya:

DriverGrafis:=DETECT;

InitGraph(DriverGrafis, ModeGrafis, );

2.1.3 Memeriksa keberhasilan mode grafis


Hal penting yang perlu dilakukan setelah memanggil InitGraph adalah dengan
memastikan bahwa prosedur tersebut berhasil menjalankan tugasnya. Hal ini dilakukan
dengan memanggil fungsi GraphResult. Fungsi ini memerikan nilai bertipe Integer.

Pemeriksaaan keberhasilan program bisa dilakukan oleh perintah

IF GraphResult <> grOk then

Halt(1);

Atau dengan :

IF GraphResult <> grOk then

Begin

Writeln(Mode grafis tidak berhasil dibuka);

Halt(1);

4
End.

agar sedikit lebih memberikan informasi kalau mode grafis gagal dibuka.

Perlu diketahui, GraphResult bisa dipakai tidak saja untuk InitGraph, tetapi juga
untuk berbagai prosedur grafis lainnya. Tabel 3 memperlihatkan kemungkinan nilai
yang dihasilkan oleh GraphResult.

Tabel 3 Kemungkinan nilai yang dihasilkan GraphResult.

Nilai Konstanta Pesan dalam Bahasa Inggris


0 grOk No error
1 grNoInitGraph BGI graphics not instaled
2 grNotDetected Graphics hardware not detected
3 grFileNotFound Device driver file not found
4 grInvalidDriver Invalid device driver file
5 grNoLoadMem Not enough memory to load driver
6 grNoScanMem Out of memory in scan fill
7 grNoFloodMem Out off memory in flood fill
8 grFontNotFound Font file not found
9 grNoFontMem Not enought memory to load font
10 grInvalidMode Invalid graphics mode for selected driver
11 grError Graphics error(generic error)
12 grIOerror Graphics I/O error
13 grInvalidFont Invalid font file
14 grInvalidFontNum Invalid font number

2.1.4 Menutup Mode Grafis

Bila anda ingin mengakhiri mode grafis (dan kembali ke mode teks), anda bisa
memanggil prosedur CloseGraph. Prosedur ini tidak mempunyai argumen.

Dengan berkahirnya penjelasan CloseGraph ini, diharapkan sudah mengerti


seluruh perintah dasar yang digunakan untuk bekerja dengan mode grafis.

5
2.2 BEKERJA DENGAN PIKSEL
Kalau kita bekerja dengan mode teks, maka elemen dasarnya akan berupa karakter.
Namun kalau kita bekerja dengan mode grafis, elemen dasarnya akan berupa piksel. Sebuah
piksel merupakan sebuah titik yang memiliki koordinat yang unik.

2.2.1 Mengetahui Banyaknya Kolom Dan Baris


Untuk mengetahui banyaknya kolom dan baris yang terdapat pada mode grafis
sekarang, bisa memakai fungsi GetMaxX dan GetMaxY.

a. GetMaxX
Fungsi tanpa argumen ini memberikan niali bertipe integer yang menyatakan
nomor kolom terbesar pada mode grafis sekarang. Dengan kata lain, jumlah kolom
sama dengan GetMaxX + 1.
b. GetMaxY
Fungsi tanpa argumen ini memberikan niali bertipe integer yang menyatakan
nomor baris terbesar pada mode grafis sekarang. Dengan kata lain, jumlah baris
sama dengan GetMaxY + 1.

2.2.2 Menggambar Piksel


Untuk menggambar sebuah titik(piksel), bisa memakai prosedur PutPixel. Bentuk
deklarasi prosedur ini:

PROCEDUREPutPixel(X,Y : Integer; Warna : Word);

Misalnya :

PutPixel(x,y,w)

Akan menggambar sebuah titik pada baris y kolom x, dengan warna w.

2.2.3 Memperoleh Warna Piksel


Bila anda berkepentingan untuk memperoleh warna dari suatu piksel yang
berada pada suatu koordinat, anda bisa memanfaatkan fungsi bernama GetPixel. Bentuk
deklarasi fungsi ini:

FUNCTION GetPixel(x,y. Integer);

Misalnya :
GetPixel(0,0)

6
Akan memberikan kode warna pixel yang berada pada koordinat (0,0).

2.3 Petunjuk Gambar


Kalau pada mode teks terdapat kursor, pada mode grafis juga terdapat hal serupa
yang disebut petunjuk sekarang. Hanya saja, berbeda dengan kursor, peyunjuk sekarang
todak kelihatan.

2.3.1 Mengatur Letak Petunjuk Sekarang


Ada dua prosedur yang secara eksplisit dipakai untuk meletakkan petunjuk
sekarang ke suatu lokasi pada layar. Kedua prosedur tersebut adalah :

a. MoveTo
Deklarasi prosedur ini adalah sebagai berikut:

PROCEDUREMoveTo(x,y: Integer);

kegunaanya adalah untuk meletakkan penunjuk sekarang ke kolom x baris y.


b. MoveRel
Deklarasi prosedur ini adalah seperti berikut:

PROCEDURE MoveRel(dx,dy: integer);

kegunaanya adalah untuk meletakkan penunjuk sekarang ke kolom x+dx, baris


y+dy, dengan (x,y) adalah posisi semula dari penunjuk sekarang.

2.3.2 Megetahui Posisi Penunjuk Sekarang


Untuk mengetahui posisi penunjuk sekarang, fungsi GetX dan GetY bisa dipakai.

a. GetX
Fungsi tanpa argumen ini menghasilkan posisi kolom dari penunjuk sekarang.
b. GetY
Fungsi tanpa argumen ini menghasilkan posisi baris dari penunjuk sekarang.

Contoh berikut menggambarkan penggunaan MoveTo, MoveRel, GetX, dan


GetY, serta GetMaxColor;

MoveTo(0,0);

MoveReal(5,6);

PutPixel(GetX, GetY, GetMaxColor);

7
Pada contoh diatas, PutPixel akan menggambarkan pada posisi (0+5, 0+6) dengan
warna terbesar pada mode grafis sekarang.

Anda mungkin juga menyukai