Anda di halaman 1dari 28

MAKALAH MICROPROCESSOR

PROGRAM TURBO PASCAL


D
I
S
U
S
U
N

oleh :
NAMA

KELAS

Group C
- David Alpolso
- Husni Putra
- Diko Pemandonta
- Andri Seven Sitepu
- Marlina Nasution
EL 4A

PRODI TEKNIK LISTRIK


JURUSAN ELEKTRO
POLITEKNIK NEGRI MEDAN
MEDAN
2016

DAFTAR ISI
DAFTAR ISI...............................................................................................................................i
BAHASA PEMROGRAMAN PASCAL...................................................................................1
BAB 1 PENDAHULUAN..........................................................................................................1
1.1. TINJAUAN PUSTAKA..........................................................................................1
1.2. SEJARAH PERKEMBANGAN BAHASA PEMROGRAMAN...........................2
1.3. JENIS BAHASA PEMROGRAMAN.....................................................................3
1.4. SEJARAH PERKEMBANGAN PROGRAM PASCAL........................................4
BAB 2 STRUKTUR PROGRAM PASCAL.............................................................................5
2.1. BEBERAPA ATURAN DALAM PROGRAM PASCAL......................................5
2.2. ELEMEN-ELELMEN PROGRAM PASCAL........................................................5
2.2.1. Simbol-simbol dasar (basic symbols)...................................................................5
2.2.2. kata cadangan (reserved words)...........................................................................6
2.2.3. Pengenal yang didefinisikan oleh pemakai (used defined
identifier)..............6
2.2.4. Karakter kontrol (control character).....................................................................7
2.2.5. Tanda operasi (operator).......................................................................................7
2.2.6. Komentar program (comment)............................................................................8
2.2.7. Prosedur (Procedure)............................................................................................8
2.2.8. Fungsi (fungsion).................................................................................................8
2.2.9. Statemen (statement)............................................................................................9
2.2.10. Statemen-statemen yang digunakan untuk Input dan Output (standar I/O).......9
2.3. RUNTUNAN, PEMILIHAN DAN PENGULANGAN........................................11
3.3.1. Runtunan.............................................................................................................11
3.3.2. Pemilihan............................................................................................................11
3.3.3. Pengulangan.......................................................................................................13
BAB 3 PROGRAM DARI BAHASA PEMORGRAMAN PASCAL.....................................15
3.1. Program Identitas Mahasiswa Dengan Input NIM................................................15
3.1.1. Litsting Program.................................................................................................15
3.2. Program Game Snake............................................................................................16
3.2.1 Listing Program...................................................................................................17
3.3. Program Setelah Dijalankan..................................................................................20
BAB 4 PENUTUP....................................................................................................................21
REFERENSI.............................................................................................................................22

BAHASA PEMROGRAMAN PASCAL


BAB 1
PENDAHULUAN
Pemanfaatan komputer dewasa ini tidak terbatas untuk membantu sistem administrasi
di kantor-kantor saja, tetapi sudah merambah keberbagai bidang. Sehingga aplikasinya sangat
dibutuhkan untuk membantu berbagai disiplin ilmu. Untuk itulah dibutuhkan software yang
menjebatani komputer dengan kebutuhan dan tujuan pemerograman komputer (friendly).
Sebuah software akan memudahkan user untuk dapat menggunakan komputer unruk berbagai
keperluan. Berbagai macam software yang dapat digunakan untuk membuat program aplikasi
seperti : bahasa C, C++, C#, Clipper, LISP, ADA, ALGOL, Modula 2, Smalltalk, Prolog,
Perl, PHP, ASP, JSP, J#, J++, Cobol, Basic, Fortran, Java, Paskal, dan lain sebagainya.
Bahasa pemrograman adalah sesuatu yang mutlak harus dipahami jika ingin membuat suatu
aplikasi. Berdasarkan hal tersebut maka perlu kiranya kita belajar sebuah bahasa
pemrograman yang lebih sederhana dan relatif lebih mudah untuk dipelajari oleh seorang
pemula. Bahasa pascal adadalah salah satu jenis bahasa tingkat tinggi yang relatif lebih
mudah untuk dipelajari.
Bahasa pemrograman Pascal adalah salah satu bahasa tingkat tinggi yang merupakan bahasa
pemrograman prosedural yang banyak dipakai untuk mengenalkan pemrograman bagi
pemula, selain itu bahasa pascal relatif mudah untuk dipelajari, sehingga dapat diadikan
sebagai dasar acuan untuk belajar Bahasa Pemrograman. Telah banyak literatur mengenai
bahasa pemrograman pascal dengan berbagai versi, yang semakin memudahkan untuk
mempelajarinya. Program dalam bahasa pemrograman Paskal cukup banyak variannya
seperti Delfi, yang merupakan fisual pascal, juga masih banyak lagi. Paskal juga memiliki
beberapa versi yang beredar di pasaran seperti UCSD Pascal, Ms-Pascal, Apple Paskal, Free
Pascal.Turbo Paskal, dan sebagainya.

1.1. TINJAUAN PUSTAKA


Bahasa pemrograman telah berkembang dengan begitu pesatnya dari sejak awal
tahun perkembangannya yaitu sekitar tahun 1940-an Erwin Harahap (2007:1) mendefinisikan
bahasa pemrograman adalah suatu program khusus yang dibuat oleh suatu
perusahaan/software (perangkat lunak) yang digunakan untuk mengembangkan suatu
aplikasi. Perkembangan bahasa pemrograman terbagi kedalam beberapa generasi seperti yang
dipaparkan oleh Erwin Harahap (2007:2), pembagian generasi bahasa pemrograman yaitu;
Generasi I yaitu machine language, Generasi II yaitu assembly language contohnya
Asssembler, Generasi III yaitu high-level programming language contohnya C, PASCAL,
dsb., Generasi IV yaitu 4 GL (fourth-generation language) contohnya Prolog, SQL, Visual
tool, dsb
Pascal adalah salah satu bahasa pemrograman yang sering dijadikan rujukan sebagai media
untuk mempelajari bahasa pemrograman. Jogianto (1997:1) menguraikan bahwa Pascal
merupakan sebuah program tingkat tinggi (hight level lague) yang orientasnya pada segala
tujuan. Berdasarkan paparan diatas maka tepat kiranya jika pascal dijadikan sebagai media
unruk mempelajari bahasa pemrograman. Selain itu juga dipaparkan oleh Jogianto (1997:2)
pascal juga memiliki banyak versi dan dapat digunakan pada banyak sistem operasi. Karena
bannyaknya versi dan farian dari pascal maka pascal di standarisasi oleh bergai lembaga
untuk kepentingan di kawasannya masing-masing.
Pascal memiliki stuktur program yang boleh dikatakan cukup sederhana seperti diuraikan
jogianto (1997:2) program pascal terdiri dari judul program (program heading) dan satu blok
program (body program), blok program di bagi menjadi dua bagian yaitu bagian deklarasi

(declaration part) dan bagian pernyataan (stetment part). Bagian deklarasi terdiri dari
deklarasi label (labels deklaration), deklarasi konstanta (constans deklaration), deklarasi tipe
(type deklaration), deklarasi variabel (variables deklaration), deklarasi prosedur (procedures
deklaration), deklarasi fungsi (fungtion deklaration).
Tata aturan dalam penulisan teks sebenarnya pascal tidak banyak memiliki tata aturan
penulisan, tetapi kiranya dianjurkan untuk penulisan menggunakan sitematika yang baik.
Seperti yang dipaparkan oleh Jogianto (1997:6) bahwa program pascal tidak mengenal aturan
penulisan kolom tertentu, jadi boleh ditulis mulai dari kolom berapapun. Tetapi ada aturan
penulisan pada sebuah stetmen, dalam program pascal selalu diakhiri dengan tanda titik
koma (;).
Penulisan perintah untuk menjalankan program dalam pascal diperlukan setetmen yaitu
perintah pengerjaan tahap-tahap program dari mulai awal sampai akhir seperti yang di
ungkapkan Alwin Sanjaya (2003:2) Statemen adalah perintah untuk pengerjaan program
pascal. Statemen terletak di bagian deklarasi, statemen dengan diawali oleh kata cadangan
BEGIN dan diakhiri dengan kata cadangan END. Akhir dari setiap statemen diakhiri dengan
titik koma [;]. Statemen statemen dalam bahasa Pascal terdiri dari pernyataan yang berupa
fungsi dan prosedur yang telah disediakan sebagai perintah standar Pascal.

1.2. SEJARAH PERKEMBANGAN BAHASA PEMROGRAMAN


Sejarah pemrograman komputer tidak seperti yang dibayangkan oleh kebanyakan
orang. Kebanyakan orang mengira bahwa pemrograman komputer ini mulai berkembang atau
ditemukan pada akhir abad duapuluhan. Namun dalam kenyataannya, sejarah pemrograman
modern dan bahasa pemrograman mulai berkembang sejak 1940-an, yaitu sekitar 68 tahun
yang lalu.
Pada tahun 1922. Charles Babbage. Ketika belajar di Universitas Cambridge Inggris, ia
melihat bahwa pada saat itu banyak terdapat berbagai macam tabel perhitungan seperti tabel
yang terkait dengan astronomi, kelautan, navigasi dan sebagainya. Meskipun tabel-tabel
perhitungan ini tersedia, namun yang terjadi adalah banyak sekali kejadian musibah seperti
kapal tenggelam, kecelakaan dan kapal hilang. Dalam hal ini, Charles Babbage mengira
bahwa musibah ini disebabkan oleh faktor kesalahan manusia yaitu keterbatasan kemampuan
dalam mengimplementasikan tabel perhitungan yang ada. Hal inilah yang memicunya untuk
memikirkan bagaimana cara mengelola data-data yang ada dalam tabel perhitungan tersebut
supaya mudah digunakan. Bagaimana caranya? yaitu menggunakan sebuah mesin. Mesin
ini ia beri nama Difference Engine.
Setelah bekerja selama 10 tahun pada mesinnya, Charles Babbage menyadari bahwa mesin
yang dia ciptakan ini merupakan sebuah mesin yang hanya punya satu tujuan (single-purpose
machine) artinya hanya bisa menghasilkan satu jenis keluaran (output). Selanjutnya ia ingin
mengembangkan mesin lain yang bersifat multi-purpose. Mesin ini diberi nama Analytical
Engine. Pekerjaan untuk membuat Analytical Engine ini ia lakukan sampai dengan tahun
1942. Pada tahun 1947, Charles Babbage kembali menyempurnakan Difference Engine dan
akhirnya pada tahun 1949 ia berhasil membuat versi keduanya. Pekerjaan untuk terus
menyempurnakan hasil-hasil karyanya terus ia lakukan, bahkan diteruskan oleh anaknya,
Henry Prevost. Charles Babbage sendiri meninggal pada tahun 1871. Untuk melindungi
karya-karya ayahnya, Henry Prevost membuat beberapa kopian unit perhitungan aritmatika
sederhana dari mesin yang dihasilkan ayahnya dan mengirimkannya ke beberapa institusi di
dunia, termasuk ke Universitas Harvard.
Perkembangan dunia komputasi berlanjut pada tahun 1980-an tepatnya pada tahun 1854,
yaitu ketika seseorang bernama Charles Boole telah mampu menciptakan sebuah sistem
logika simbolik yang diberinama Logika Boole. Sistem ini mencakup pula logika untuk

menyatakan hubungan lebih besar, lebih kecil, sama dengan dan tidak sama dengan. Sistem
logika ini masih digunakan sampai dengan saat ini.
Sebuah penemuan dapat dikatakan berawal dari sebuah kebutuhan. Begitu pula dengan
pemrograman komputer ini. Pada tahun 1890, Amerika Serikat ingin melakukan sensus
penduduk. Namun kendala yang muncul adalah keterbatasan alat yang ada pada waktu itu,
mengingat jumlah penduduk yang semakin meningkat tahun demi tahun. Akhirnya
diadakanlah sebuah kompetisi komputasi untuk mencari solusinya. Kompetisi ini
dimenangkan oleh Herman Hollerith, yang akhirnya ia mendirikan sebuah perusahaan
Hollerith Tabulating, Co. yang akhirnya berubah nama menjadi CTR (Calculating Tabulating
Recording Company) setelah 3 perusahan lain ikut bergabung. Sepuluh tahun berikutnya
perusahaan ini berganti nama lagi menjadi IBM (International Business Machine) hingga saat
ini.
Perkembangan komputasi digital selanjutnya mulai berjalan pelan dan jarang digunakan
dalam dunia bisnis sampai dengan pertengahan tahun 1920 an. Hingga akhirnya pada tahun
1925 MIT (Massachusette Institute of Technology) telah mengembangkan sebuah mesin yang
mampu menganalisis perhitungan differensiasi dan integrasi. Mesin yang didanai oleh
Yayasan Rockefeller ini dapat dikatakan sebuah komputer terbesar di dunia pada tahun 1930.
Pemain berikutnya yang memiliki andil dalam perkembangan komputasi komputer digital ini
adalah seorang ilmuan Jerman bernama Konrad Zuse. Pada tahun 1935, Zuse telah
mengembangkan komputer Z-1 nya. Apa keistimewaan Z-1 ini? Komputer ini adalah awal
mula diterapkannya sistem biner dalam kinerjanya. Selain itu, Zuse juga berjasa dalam
komputasi komputer digital ketika ia menciptakan bahasa pemrograman komputer pertama
Plankalkul.
Pada tahun 1945, terjadi pula peristiwa penting dalam sejarah perkembangan komputasi
komputer digital yaitu ketika mesin Mark II yang ada di Universitas Harvard terjadi
kerusakan. Seseorang yang bernama Grace Murray Hopper yang mengetahui hal ini langsung
menyelidiki sebab kerusakannya. Akhirnya dia menemukan sebuah ngengat yang terjebak
dalam mesin tersebut. Dalam catatan hariannya, Hopper menuliskan: First actual case of bug
being found. Dia menyebut ngengat ini sebagai sebuah kutu busuk (bug), mungkin karena
jengkel. Kata bug inilah yang selanjutnya sering dikaitkan dengan adanya ketidakberesan
dalam program. Dari kata bug ini muncul pula istilah debugging yang artinya proses
pembetulan kesalahan program.
Pada tahun 1954, IBM mulai mengembangkan bahasa pemrograman FORTRAN (FORmula
TRANslator) yang akhirnya dipublikasikan pada tahun 1959. Bahasa FORTRAN merupakan
bahasa pemrograman level tinggi pertama yang dikomersialkan. Pemrograman level tinggi
maksudnya adalah perintah atau kodenya mudah dibaca dan dipahami oleh manusia.
Pada tahun 1958, FORTRAN II dan ALGOL dipublikasikan bersamaan dengan
diluncurkannya LISP. Sedangkan pada tahun 1959, bahasa pemrograman COBOL juga
diluncurkan. Sejak saat itu perkembangan bahasa pemrograman sangat cepat. Pada tahun
1970, bahasa PASCAL mulai dipublikasikan dan saat ini masih banyak digunakan untuk
keperluan pendidikan.
Pada tahun 1970 muncul pula dua bahasa pemrograman yang dapat dikatakan sangat penting
yaitu SMALLTALK dan B-Languange. SMALLTALK penting karena merupakan bahasa
pemrograman berbasis obyek yang pertama. Sedangkan B-Languange dikatakan penting
karena merupakan cikal bakal munculnya bahasa C. Dengan bahasa C, pemrograman akan
lebih mudah, efisien, dan fleksibel.
Pada tahun 1975, Dr. Wong merilis bahasa pemrograman hasil ciptaannya bernama
TinyBASIC. TinyBASIC merupakan bahasa pemrograman pertama yang bersifat free alias
tidak membayar dalam penggunaannya.

Sedangkan pada saat yang bersamaan pada tahun 1975, Bill Gates dan Paul Allen membuat
bahasa pemrograman yang diberi nama BASIC. BASIC ini selanjutnya mereka jual ke MIT.
Perkembangan bahasa pemrograman ini terus bergerak demikian pesat hingga saat ini. Hal ini
ditandai dengan semakin banyaknya bahasa pemrograman yang bermunculan. Adapun per
kembangan bahasa pemrograman tersebut terbagi kedalam beberapa generasi sebagai
berikut :
a. Generasi I
: machine language
b. Generasi II : assembly language: Asssembler
c. Generasi III : high-level programming language : C, PASCAL, dsb.
d. Generasi IV : 4 GL (fourth-generation language): Prolog, SQL, Visual tool, dsb

1.3. JENIS BAHASA PEMROGRAMAN


Berdasarkan jenisnya, bahasa pe mrograman dapat dibedakan menjadi beberapa jenis
sebagai berikut :
Bahasa tingkat rendah (low level language)
Bahasa pemrograman yang berorientasi pada bahasa mesin
Contoh : Assembler
Bahasa tingkat menengah (middle level language)
Bahasa pemrograman yang beorientasi pada aturan gramatikal
Contoh : C
Bahasa tingk at tinggi (high level language)
Bahasa pemrograman yang berorientasi pada bahasa manusia
Contoh : BASIC, PASCAL
Bahasa berorientasi objek (object oriented language)
Bahasa pemrograman yang berorientasi pada objek
Contoh : Delphi, VB, SQL

1.4. SEJARAH PERKEMBANGAN PROGRAM PASCAL


Pascal adalah bahasa pemrograman yang yang dirancang oleh Profesor Niclaus Wirth
dari Technical Univerciti Zurich, Swizerland. Nama pascal sendiri adalah sebagai suatu
bentuk penghargaan kepada Blaise Pascal, yaitu seorang ahli matematika dan Filsafat yang
terkenal pada abad 17 yang berasal dari Prancis.
Profesor Niclaus Wirt memperkenalkan Compiler Bahasa pascal ini Pertama kali untuk
komputer CDC 6000 (Control Data Comporation) yang dipublikasikan pada tahun 1971
dengan tujuan untuk membantu mengajarkan program komputer secara sistematis, khususnya
untuk mengajarkan program yang terstruktur (stuktured programing). Jadi pascal adalah
bahasa yang ditujukan untuk membuat program yang terstruktur.
Dalam waktu yang singkat pascal telah menjadi bahasa yang sangat populer dikalangan para
pelajar universitas dan merupakan bahasa yang diajarkan di banyak perguruan tinggi. Banyak
propesional komputer yang beralih ke bahasa pascal. Kenyataannya, pascal merupakan
bahasa yang paling cepat populer dibandingkan bahasa-bahasa pemerograman tingkat tinggi
lainnya. Bahasa pemrograman Pascal Mempunyai beberapa Kelebihan seperti:
Tipe Data Standar, tipe-tipe data standar yang telah tersedia pada kebanyakan bahasa
pemrograman. Pascal memiliki tipe data standar: boolean, integer, real, char, string,
User defined Data Types, programmer dapat membuat tipe data lain yang diturunkan dari tipe
data standar.

Strongly-typed, programmer harus menentukan tipe data dari suatu variabel, dan variabel
tersebut tidak dapat dipergunakan untuk menyimpan tipe data selain dari format yang
ditentukan.
Terstruktur, memiliki sintaks yang memungkinkan penulisan program dipecah menjadi
fungsi-fungsi kecil (procedure dan function) yang dapat dipergunakan berulang-ulang.
Sederhana dan Ekspresif, memiliki struktur yang sederhana dan sangat mendekati bahasa
manusia (bahasa Inggris) sehingga mudah dipelajari dan dipahami.
Standart pascal adalah bahasa pascal yang didefinisikan oleh K. Jensen dan Niclaus Wirth.
penerapan dari standart pascal banyak yang berbeda seperti apa yang telah didefinisikan oleh
K. Jensen dan Niclaus Wirth. Pascal di Eropa didefinisikan oleh ISO (Internasional Standart
Orgazation) dan di Amerika oleh kerjasama antara ANSI (America Nasional Standart
Institute) dan IEEE (Institute of Electrical and Electronic Engineers).
Bahasa PASCAL juga merupakan bahasa yang digunakan sebagai standar bahasa
pemrograman bagi tim nasional Olimpiade Komputer Indonesia (TOKI). Selain itu, Bahasa
PASCAL masih digunakan dalam IOI (International Olympiad in Informatics).
Terdapat beberapa versi dari pascal yang telah berada di pasaran dan sampai saat ini untuk
komputer-komputer micro personal Turbo Pascal merupakan yang paling populer dan banyak
digunakan. Turbo Pascal banyak di gemari karena bersifat interaktif. Selain itu Turbo Pascal
mengikuti definisi dari standar pascal yang didefinisikan oleh K. Jansen dan Niclaus Wirht di
Pascal User Manual and Report. Turbo Pascal adalah copiright dari BORLAND Inc.

BAB 2
STRUKTUR PROGRAM PASCAL.
Struktur dari suatu program Pascal terdiri dari sebuah judul program dan suatu blok
program atau badan program. Blok program dibagi lagi menjadi dua bagian, yaitu bagian
deklarasi dan bagian pernyataan (statement).
Judul Program
Judul program sifatnya adalah optional, dan bila ditulis, harus terletak pada awal dari
program dan diakhiri dengan titik koma.
Blok Program:

PROGRAM Nama-program

Bagian Deklarasi
Bagian deklarasi digunakan bila di dalam program digunakan pengenal ( identifier). Identifier
dapat berupa label, konstanta, tipe, variabel, prosedur dan fungsi. Kalau suatu program
menggunakan identifier, Pascal menuntut supaya identifier tersebut diperkenalkan terlebih
dahulu sebelum digunakan, yaitu dideklarasikan terlebih dahulu pada bagian ini.
- deklarasi label
LABEL nama-label;
- deklarasi konstanta
CONST..;
- deklarasi tipe
TYPE .;
- deklarasi variabel
VAR ...;
- deklarasi prosedur
PROCEDURE nama-prosedur;
.;
- deklarasi fungsi
FUNCTION nama-fungsi;
.;
Bagian Pernyataan
Adalah instruksi atau gabungan instruksi, yang menyebabkan komputer melakukan aksi.
Blok Pernyataan:
(statement)
;
;
end.

Begin

a. . BEBERAPA ATURAN DALAM PROGRAM PASCAL


Akhir sebuah program Pascal ditandai dengan tanda baca titik (.) setelah END yang paling
akhir.
Tanda titik koma (;) merupakan pemisah antar instruksi satu dengan lainnya.
Beberapa statement boleh ditulis menjadi satu baris dipisahkan dengan tanda baca titk koma
(;)
Contoh : simpan := akhir; akhir := simpan + awal;
Baris komentar diletakkan diantara tanda (* dan *) atau diantara tanda { dan }
Contoh :
Var
rerata : real;
(*nilai rata-rata*)
Nil1 : real;
{nilai ujian}

b. . ELEMEN-ELELMEN PROGRAM PASCAL


Unruk membuat sebuah Program dengan Turbo Pascal diperlukan elemen-elemen
yang akan membangun program tersebut. Adapun elemen-elemen yang dimaksud terdiri dari:

2.2.1. Simbol-simbol dasar (basic symbols)


Program pascal dapat dibentuk dari dapat dibentuk dari simbol-simbol yang terdiri dari huruf,
angka dan simbol-simbol khusus.
huruf
Huruf yang digunakan mulai dari asampai dengan z, dan A sampai dengan Z serta garis
bawah ( _ ) huruf besar atau kecil dianggap sama, sehingga AbC sama dengan aBc.
Angka
Angka yang dapat digunakan adalah angka 0 1 2 3 4 5 6 7 8 9.
simbol-simbol khusus
simbol-simbol yang dapat digunakan adalah simbol seperti (. , ; :) selain tu juga dapat
digunakan simbol untuk operasi aritmatik ( + - * / ), perbandingan ( < > = <= >= <> ), dan
simbol-simbol khusus lainnya ( ! @ # $ % ^ ~ ` ( ) [ ] { } ).

2.2.2. Kata-kata cadangan (reserved words)


Dalam bahasa pemrograman pascal terdapat pernyataan- pernyataan baku berupa kata-kata
cadangan atau reserved word, yaitu kata-kata baku yang digunakan dalam program dan sudah
terintergrated dalam pascal dan juga mempunyai bentuk serta kegunaan tertentu yang telah
didefinisikan oleh Pascal.
Reserved word tidak boleh didefinisikan kembali oleh pemakai, sehingga tidak dapat
digunakan sebagai pengenal (Identifier). Dalam bahasa pemrograman Pascal, beberapa
reserved word dalam Pascal anatra lain:
AND, DOWNTO, IN, OF, STRING, ASM, ELSE, INHERITED, OR, THEN, ARRAY, END,
INLINE, PACKED, TO, BEGIN, EXPORTS, INTERFACE, PROCEDURE, TYPE, CASE,
FILE, LABEL, PROGRAM, UNIT, CONST, FOR, LIBRARY, RECORD, UNTIL,
CONSTRUCTOR, FUNCTION, MOD, REPEAT, USES, DESTRUCTOR, GOTO, NIL,
SET, VAR, DIV, IF, NOT, SHL, WHILE, DO, IMPLEMENTATION, OBJECT, SHR, WITH

2.2.3. Pengenal yang didefinisikan oleh pemakai (used defined

identifier)

Nama yang digunakan dalam program pascal disebut dengan pengenal (identifier). Pemakai
dapat mendefinisikan sendiri suatu nama sebagai pengenal untuk tipe, konstanta, variabel,
prosedur, fungsi, unit, dan program, program yang di definisikan sendiri ini bebas tapi dengan
ketentuan-ketentuan sebagai berikut:
Terdiri dari gabungan huruf dan angka dengan karakter pertama harus berupa huruf.
Tidak boleh mengandung karakter blank
Tidak boleh mengandung simbol-simbol khusus kecuali garis bawah
Panjangnya bebas tetapi hanya 63 karakter pertama yang dianggap signifikan.
Tipe Data
Tipe data dipergunakan untuk mendeklarasikan nilai suatu variabel. Terdapat beberapa tipe
data yang digunakan dalam program pascal terdapat 2 jenis yaitu tipe dasar dan tipe
bentukan, tetapi dalam makalah ini hanya akan dibahas tipe dasar saja. Adapun jenis-jenis
tipe-tipe dasar tersebut diantaranya adalah:
Tipe data boolean
Data boolean disebut juga data bilangan lojik. Tipe data boolean hanya mengenal dua buah
nilai yaitu benar (true) dan salah (false).

Tipe data integrer

Data integrer merupakan nilai bilangan bulat dalam bentuk desimal misalnya 1, 2, 34, 765, 0,
-89, -70. tipe data integrer mempunyai ranah nilai yang tidak terbatas. Dalam Turbo Pascal
terdapat lima macam tipe data integrer, yaitu: byte, shorint, word, integer dan longint.
Tipe data real
Data real adalah data yang mengandung data desimal misalkan 3.65, 9.0876, 2.00, dan lainlain. Bilangan real juga dapat dituliskan dengan notasi E, yang artinya perpangkatan sepuluh.
Misalnya 230.40E32 artinya 230.40 x10.
Tipe data Karakter (char)
Data karakter ditulis dengan menggunakan tanda petik ( ) misalkan
A ,@, z, #, 1, -234, +, < dan lain-lain. Tapi perlu diperhatikan 9 adalah
karakter tetapi jika di tulis 9 maka tipenya menjadi integer. Maka sarat mutlak menulisan
karakter harus menggunakan tanda baca petik ( ).
Tipe data string
Data string adalah untaian karakter-karakter dengan panjang tertentu yang terletak diantara
tanda petik tunggal. nilai data string akan menepati memori sebesar banyaknya karakter
stringnya ditambah dengan 1 byte. Contoh dari data sring adalah seperti teknik,
informatika, 9876151 dan sebagainya.
Tipe data pointer
Pointer adalah suatu variabel yang berisi alamat yang akan disimpan pada memori.
Tipe data ordinal
Tipe data ordinal adalah tipe data yang merupakan subset dari tipe data sederhana (tipe data
standart dan tipe data yang di definisikan sendiri oleh pemakai). Yang dimaksud dengan tipe
data sederhana adalah semua tipe data kecuali tipe data riel. Jadi yang termasuk tipe data
ordinal adalah tipe data stendart (integer, shortint, longit, byte, word, boolean, dan chart), dan
tipe data yang didefinisikan sendiri oleh pemakai.

2.2.4. Karakter kontrol (control character)


Turbo Pascal memungkinkan karakter-karakter kontrol untuk diletakan dalam suatu
string. Terdapat dua buah notasi yang digunakan untuk karakter kontrol yaitu: Simbol # yang
diikuti dengan dengan bilangan desimal untuk menunjukan suatu karakter yang berhubungan
dengan kode ASCII. Simbol ^ di ikuti oleh suatu karakter menunjukan hubungan dengan
karakter kontrol.

2.2.5. Tanda operasi (operator)


Tanda operasi dalam bahasa pascal dikelompokan dalam sembilan kategori, yaitu:
Asigment operator
Asigment operator dusebut juga operator pengerjaan, menggunakan simbol (:=)
Binary operator
Binary operator digunakan untuk mengoprasikan dua buah operand
Operand dapat berbentuk konstanta, variabel, operator ini digunakan untuk operasi aritmatika
yang berhubungan dengan tipe data integrer dan real.
Unary operator

Urany operator hanya bisa menggunakan satu operand saja. Operan berupa urani plus untuk
menunjukan tanda positif, dan urany minus untuk menunjukan tanda negatif.
Bitwise operator
Bitwise operator digunakan untuk bit per bit pada nilai integrer bekerja berdasarkan bilangan
biner, walaupun input dan output dapat berupa bilangan bulat maupun riel. Terdiri operator
NOT,AND,OR,XOR,shr, sht.
Relational operator
Relational operator digunakan untuk membandingkan hubungan dua buah operand yang akan
menghasilkan boolean (TRUE atau FALSE).
Logical operator
Logical operator sama dengan bitwise operator terdiri dari NOT,AND, OR,XOR. hanya saja
bekerja dengan nilai-nilai logika, yaitu TRUE-FALSE.
Addres operator
Pascal memberikan dua buah operator khusus yang berhubungan denga alamat (address) di
memori yaitu @ yang akan menghasilkan alamat dari suatu nilai variabel, dan ^ akan
memberikan nilai di alamayt yang ditunjukan.
Set operator
Set operator digunakan untuk operasi himpunan
String operator
String operator digunakan untuk operasi string saja, yaitu operator + yang digunakan untuk
menggabung nilai dua buah string.

2.2.6. Komentar program (comment)


Untuk keperluan dokumentasi program, sehingga program mudah dibaca dan dipahami dapat
ditambah komentar. Komentar dapat ditambahkan dimanapun dalam program yang tidak
akan mempengaruhi proses dari program.ditulis dengan pembatas { dan } atau pembatas (*
dan *)

2.2.7. Prosedur (Procedure)


Prosedur dalam bahasa pascal dapat dibentuk dalam prosedur yang didefinisikan atau yang
dibuat sendiri oleh penguna, atau prosedur yang yang disediakan oleh Turbo Pascal. Adapun
prosedur standart dapat dikelompokan menjadi beberapa kelompok diantaranya:
I/O procedure
Prosedur standart ini dapat digunakan memasukan data dari alat input dan menampilkan data
dari alat output.
String procedure
Prosedur ini untuk operasi suatu string
Exit and halt procedure
Prosedur standartini digunakan untuk keluar dan mengakhiri proses program.

Original procedure
Prosedur standart ini untuk menentukan urutan dari suatu nilai ordinal (nilai yang mempunyai
urutan tertentu)
Dynamik alocation procedure
Prosedur standart ini digunakan untuk mengatur heap yaitu suatu memori yang masih tersisa
pada waktu program dijalankan
Miscellaneous procedure
Prosedur lain-lain

2.2.8. Fungsi (fungsion)


Fungsi dalam bahasa pascal dapat berbentuk dalam prosedur yang didefinisikan atau yang
dibuat sendiri oleh penguna, tetapi fungsi didefinisikan sendiri oleh penguna, harus
dideklarasikan terlebih dahulu. Terdapat pula fungsi yang sudah disediakan oleh pascal yang
disebut fungsi standart, diantanya adalah:
I/O Funcsion
Prosedur standart ini dapat digunakan memasukan data dari input dan menampilkan data dari
alat output.
String Funcsion
Fungsi standart ini dapat dipergunakan untuk operasi suatu string.
Aritmetic Funcsion
Fungsi standar tini digunakan aritmatika
Transfer Funcsion
Fungsi standart ini digunakan untuk mengubah mengubah nilai dari satu tipe ke tipe yang
lain.
pointer and adress fungsion
Fungsi standart ini digunakan untuk operasi langsung di alamat memori dan pointer.
Original fungsion
Fungsi standart ini untuk menentukan urutan dari suatu nilai ordinal
Dynamik alocation fungsion
Fungsi standart ini digunakan untuk mengatur heap
Miscellaneous fungsion
Fungsi standart lain-lain

2.2.9. Statemen (statement)


Statemen adalah intruksi pengerjaan perintah pada program pascal. Statemen terdapa
pada bagian deklarasi yang diawali oleh reserved word BEGIN dan diakhiri dengan END.
setiap statemen diakhiri dengan tanda [;]. Statemen-statemen dalam bahasa Pascal terdiri dari

pernyataan yang berupa fungsi dan prosedur sebagai perintah standar Pascal. Berikut adalah
beberapa jenis stetmen dalam bahasa paskal :

2.2.10.Statemen-statemen yang digunakan untuk Input dan Output (standar I/O).

Read / Readln [prosedur].


Dalam bahasa Pascal untuk keperluan input (membaca input) digunakan identifier standar
READ atau READLN.
Identifier standar ReadLn sedikit berbeda dengan Read. ReadLn digunakan untuk
memasukkan data perbaris, artinya setelah tombol Enter ditekan, maka akan ganti baris,
sedangkan Read tidak ganti baris, masih dalam baris yang sama.
Write / Writeln [prosedur].
Sedangkan untuk keperluan output (mencetak output) digunakan identifier standar WRITE
atau WRITELN
Perbedaan Write dengan WriteLn adalah bahwa Write menampilkan hasil tanpa ganti baris
dan tampilan berikutnya akan disambung dalam baris yang sama. Sedang WriteLn digunakan
untuk menampilkan tampilan perbaris, akan ganti baris untuk tampilan berikutnya.
Statemen-statemen yang digunakan untuk pengaturan letak layar.
ClrScr [prosedur].
Perintah ini digunakan untuk membersihkan layar.
GotoXY[prosedur].
Untuk menempatkan posisi kursor pada layar.
DelLine [prosedur].
Untuk menghapus sebuah baris pada posisi kursor dan menaikkan baris-baris dibawahnya.
InsLine [prosedur].
Untuk menyisipkan sebuah baris pada posisi kursor dan menggeser kebawah tampilantampilan baris dibawahnya.
Delay [prosedur].
Untuk menghentikan sejenak proses program.
Stat
emen yang digunakan untuk memanipulasi string.
ConCat[fungsi].
Untuk menggabungkan 2 atau beberapa variabel string.
Copy [fungsi].
Mengambil satu atau beberapa karakter dari sebuah string.
Delete [prosedur]. .
Menghapus sebagian karakter dari sebuah string.

Insert [prosedur].

Menyisipkan satu atau beberapa karakter ke dalam sebuah string.


Length [fungsi].
Memberikan nilai panjang dari suatu string (jumlah karakter dalam string).
Pos [fungsi].
Mencari posisi sebuah bagian string (substring) didalam sebuah string.
Str [prosedur].
Merubah nilai numerik ke dalam nilai string.
Val [prosedur].
Merubah nilai string ke dalam nilai numerik.
UpCase [fungsi].
Memberikan huruf kapital dari argumen.
Abs [fungsi].
Memberikan nilai mutlak dari suatu argumen.
ArcTan[fungsi].
Memberikan nilai dari fungsi arctangent dari perhitungan goniometri.
Cos [fungsi].
Memberikan nilai dari fungsi Cosinus.
Exp [fungsi].
Menghitung nilai pangkat dari bilangan e (bilangan alam), yaitu sebesar x.
Frac [fungsi].
Untuk mendapatkan nilai pecahan dari suatu bilangan.
Int [fungsi].
Memberikan nilai integer (bilangan bulat) dari suatu variabel dengan membuang bilangan di
belakang koma.
Ln [fungsi].
Digunakan untuk menghitung nilai logaritma alam (natural logarithm) dari nilai x.
Sin [fungsi].
Memberikan nilai dari fungsi Sinus.
Sqr [fungsi].
Digunakan untuk menghitung nilai pangkat kuadrat dari suatu bilangan.
Tipe dari x bisa berupa real maupun integer. Dan hasilnya akan sama dengan tipe dari x.
Sqrt (fungsi).
Digunakan untuk menghitung nilai akar dari suatu bilangan.

c. . RUNTUNAN, PEMILIHAN DAN PENGULANGAN


3.3.1. Runtunan
Runtunan atau sequence merupakan satu atau lebih intruksi yang berarti bahwa tiap
intruksi dikerjakan satu-persatu, tiap intruksi hanya dilaksanakan sekali atau tidak ada
intruksi yang di ulang, urutan intruksi dilaksanakan dan diproses sama dengan urutan intruksi
yang ditulis dalam teks algoritmanya. Akhir dari intruksi sekaligus juga akhir dari sebuah
program.
Dalam runtunan hanya digunakan stetmen untuk input dan output seperti write, writeln
Contoh:
Program input;
Uses Crt;
Var
Nm, npm : String;
Begin
Writeln (' masukkan nama dan NPM ');
Writeln ('------------------------------');
Write (' Nama anda : '); Readln (nm);
Writeln (' NPM anda : '); Readln (npm);
End.
Bila program diatas di jalankan maka hasilnya adalah
masukkan nama dan NPM
-----------------------------Nama anda : ( di input,)
NPM anda : ( di input,)

3.3.2. Pemilihan
Struktur runtunan hanya terdapat pada program sederhana. Pada umumnya masalah
yang akan diselesaikan memiliki beberapa alternatif pelaksanaan aksi. Suatu aksi hanya
dilakukan bila persyaratan atau kondisi tertentu dipenuhi. Kita misalkan bahwa masalah
tersebut memiliki beberapa kasus. Jadi dalam memecahkan masalah, kita harus menganalisis
kasus-kasus apa saja yang mungkin ada, lalu aksi apa yang dilakukan bila suatu kasus
dimasuki. Adanya pemilihan kasus-kasus menyebabkan terjadinya pemilihan intruksi (atau
percabanyan) di dalam algoritmanya, bergantung pada kasus yang memenuhi.
Dalam struktur pemilihan terdapat dua stetmen yaitu if then else, dan case of .
Stetmen if then else digunakan untuk satu kasus atau lebih yang memerlukan pemilihan
yang tidak terlalu banyak, sebenarnya dalam bentuk pernyataan :
if kondisi then pernyataan 2
else pernyataan 2 ;
Sedangkan case of di gunakan untuk menyederhanakan kontruksi if then else, jika
dua kasus atau lebih, dalam bentuk pernyataan ;
case ekspresi of
Nilai 1 : pernyataan 2 ;
Nilai 2 : pernyataan 1 ;
Nilai n : pernyataan n ;
else pernyataan x ;

end ;
Contoh if then else :
program if_then_else;
{menentukan total biaya yang harus dibayar}
uses Crt;
{deklarasi}
var
n : longint; {total biaya}
b : real; {jumlah yang harus dibayar, setelah dikurangi discon}
{algoritma}
begin
write ('Total biaya : '); read (n);
b:= (n-(n*(20/100))); {rumus penghitungan jumlah yang harus
if n >= 25000 then
writeln ('Discon 20%, total biaya Rp.',round(b))
else
writeln (' discon 0%, Total Biaya Rp.',n);
{endif}
end.
Bila program diatas dijalankan maka akan mendapatkan hasil

di bayar}

Total biaya : (di input, misalnya 25000)


Discon 20%, total biaya Rp. 20000
atau
Total biaya : (di input, misalkan 20000)
Discon 0 %, total biaya Rp. 20000
Contoh case of :
Program case_of;
{contoh case of menentukan kedudukan nilai A,B,C,D dan E}
uses crt;
{deklarasi}
Var n: char ;
{algoritma}
Begin
Write ('Nilai anda (A,B,C,D, atau E): '); readln (n);
Case (n) Of
'A': Writeln('Nilai anda Sangat Baik');
'B': Writeln('Nilai anda Baik');
'C': Writeln('Nilai anda Cukup');
'D': Writeln('Nilai anda Kurang');
'E': Writeln('Nilai anda Sangat Kurang');
else
writeln('Nilai yang anda masukan salah,');
{kondisi jika nilai yang dimasukan bukan karakter A,B,C,D, atau E}
End;
End.

Bila program diatas dijalan maka akan didapatkan hasil


Nilai anda (A,B,C,D, atau E): (di input, misalkan B)
Nilai anda baik

3.3.3. Pengulangan
Struktur pengulangan bertujuan untuk mengulang statement atau blok statement berulang kali
sesuai sejumlah yang ditentukan, sampai kondisi terpenuhi dan pengulangan berhenti dalam
bahasa pemrograman pascal terdapat beberapa kontruksi yaitu pernyataan for, while do,.dan
repeat until.
Kontruksi for digunakan untuk sejumlah kali yang tentukan. Stetmen for terbagi dalam tiga
macam yaitu for positif, dan for negatif. Berikut struktur-struktur stetmen for :
For Positif
for pencacah := a to b do
pernyataan ;
For Negatif
for pencacah := a to b do
pernyataan ;
Kontruksi while do digunakan untuk melakukan pengulangan pada rentang kondisi yang
ditetntukan, dalam bentuk pernyataan :
while kondisi do pernyataan ;
Sedangkan kontruksi repeat until digunakan untuk mengulang sampai kondisi bernilai
benar, dengan bentik pernyataan :
while pernyataan until kondisi;
contoh for positif :
program for_positif;
{contoh programfor positif mengulang kalimat sampai n kali}
uses crt;
{deklarasai}
var
n: integer; {jumlah pengulangan}
i: integer;
o: string ; {kalimat yang akan diulang}
{algoritma}
begin
write('Kalimat yang akan diulang : '); readln (o);
write('Banyaknya pengulangan : '); readln (n);
write('');
for i :=1 to N do
writeln(o);
end.
Bila program diatas di jalankan maka akan mendapatkan hasil
Kalimat yang akan di ulang : (di input, misalkan saya memang ganteng)
Banyak perulangan
: (di input , misalkan 4)
Saya memang ganteng
Saya memang ganteng
Saya memang ganteng
Saya memang ganteng
Contoh for negative :

program for_negatif;
{contoh for negatif mengurutkan angka sampa nilainya 1}
Uses Crt;
{deklarasi}
Var i : Integer;
{algoritma}
Begin
write('Angka yang akan diurutkan mulai dari: '); readln(i);
For i := (i-1) DownTo 1 Do Write (i);
End.
Bila program tersebut dijalankan maka akan mendapatkan
Angka yang akan diurutkan mulai dari: (di input misalkan 10)
10 9 8 7 6 5 4 3 2 1
Contoh while do :
program while_do;
{contoh while do mengurutkan angka sebanyak n kali}
Uses Crt;
{deklarasi}
Var i,n : integer;
{algoritma}
Begin
write ('mulai urutkan dari angka : '); read (i);
write ('diurutkan sampai dengan angka : '); readln (n);
While i <> (n+1) {jika nilai sama program akan berakhir}
do
Begin
Writeln (i);
Inc (i); { sama dengan i:=i+1 }
End;
End.
Bila preogram diatas dijalankan maka akan mendapatkan hasil
mulai urutkan dari angka
: ( di input, misalkan 2)
diurutkan sampai angka
: ( di input, misalkan 5)
2
3
4
5
Contoh repeat until
program repeat_until;
{ contoh repeat until mengulang pengurutan sampai i=n,}
uses crt ;
{deklarasi}
Var
I,n : integer;
{dekskripsi}
Begin
write ('mulai mengurutkan setelah angka : '); readln (i);

write ('berhenti sampai angka


: '); readln (n);
Repeat
i:= i+1;
Writeln (i); {memulai mengurutkan dari i}
Until i=(n); {program akan sebelm n}
End.
Bila program diatas dijalankankan maka akan mendapat hasil
mulai mengurutkan setelah angka : (di iput misalkan 4)
berhenti sampai angka
: (di iput misalkan 10)
5
6
7
8
9
10

BAB 3
PROGRAM DARI BAHASA PEMORGRAMAN PASCAL
Program yang akan dibuat dengan Bahasa Pemogran Pascal pada tulisan ini terdapat 2
program, yaitu :
Program Identitas Mahasiswa Dengan Input NIM.
Program Game Snake
Program-program tersebut akan dibuat dengan pengkodean yang berstruktur dan sesuai
dengan Bahasa Pemograman Pascal. Dimana pada tulisan ini akan diberikan flowchart,
listing program atau pengkodean Bahasa Pemograman Pascal, dan tampilan dari program saat
dioperasikan.

3.1. Program Identitas Mahasiswa Dengan Input NIM


Program Identitas Mahasiswa Dengan Input NIM ini adalah program yang bertujuan
menampilkan data diri Mahasiswa yang pada kesempatan kali ini hanya terbatas pada
mahasiswa yang yang menyusun makalah ini. Data diri Mahasiswa akan akan ditampilkan
jika program diberi data masukan berupa NIM dari Mahasiswa yang ingin dilihat
identitasnya.

3.1.1 Litsting Program


Listing Program dari Program Identitas Mahasiswa Dengan Input NIM akan
menampilkan struktur pengkodean dari program ini sesuai dengan struktur Bahasa
Pemograman Pascal. Berikut adalah listing programnya:
program identitas_mahasiswa;
uses crt;
var
nim : integer;
ulang : char;
begin
while upcase (ulang)<> 'Y' do
begin
clrscr;
writeln('IDENTITAS MAHASISWA');
writeln('Pilih NIM dari Mahasiswa yang ingin dilihat');
writeln('1. 1405031055');
writeln('2. 14050310');
writeln('3. 14050310');
writeln('4. 1405031047');
writeln('5. 14050310');
writeln('6. keluar');
writeln('Masukan nomor urut NIM :');
readln(nim);
clrscr;
write;
case nim of

1: begin
writeln('Nama
: Husni Putra');
writeln('No. Absen
: 13');
writeln('NIM
: 1405031055');
writeln('No. HP
: 083196832496');
end;
2: begin
writeln('Nama
: Diko Pemidonta Ginting');
writeln('No. Absen
: 13');
writeln('NIM
: 1405031055');
writeln('No. HP
: 083196832496');
end;
3: begin
writeln('Nama
: David Septian Alpolso');
writeln('No. Absen
: 13');
writeln('NIM
: 1405031055');
writeln('No. HP
: 083196832496');
end;
4: begin
writeln('Nama
: Marlina Nasution');
writeln('No. Absen
: 16');
writeln('NIM
: 1405031047');
writeln('No. HP
: 081375763747');
end;
5: begin
writeln('Nama
: Andri Seven Sitepu');
writeln('No. Absen
: 13');
writeln('NIM
: 1405031055');
writeln('No. HP
: 083196832496');
end;
6: begin
writeln('Anda Ingin Keluar.?');
end;
else
writeln('nomor tidak tersedia');
end;
writeln ;
writeln('Tekan ENTER untuk mengulang atau Tekan Y lalu ENTER untuk keluar');
readln(ulang);
end;
end.

3.2. Program Game Snake


Game snake merupakan game sederhana dimana kita memakan makanan agar kita
bisa lanjut kelevel berikutnya. Dalam permainan ini kita berusaha bagaimana menghalangi
penghalang yang kita set dari komputer, sehingga kita harus berusaha menghindari rintangan
tersebut untuk lanjut ke level berikutnya.

Game ini berbasis Artificial intelligience (kecerdasan buatan). Kecerdasan buatan


pada game ini ada pada komputer yang akan bertindak sebagai lawan. Komputer akan
memainkan permainan layaknya seorang manusia. Komputer akan selalu berusaha
mengalahkan user dengan cara menutup langkah pemain agar tidak gagal membentuk suatu
garis. Komputer dapat menyusun strateginya sendiri agar menjadi pemenang. Komputer
selalu berusaha menutup peluang seorang pemain untuk memenangkan permainan.
Kecerdasan ini juga dapat disebut dengan MiniMax yang juga digunakan pada permainan
bergilir seperti catur.

3.2.1 Listing Program


PROGRAM GAME_SNAKE;
Uses crt;
label
habis, lanjut;
const
max_panjang =100;
batas_x =80;
batas_y =25;
speed =200;
type
tempat = record
x, y : integer;
end;
var
ekor : array[1..max_panjang] of tempat;
ujung, makanan : tempat;
tkn : char;
i,pjg,skor,spd : integer;
mati : boolean;
procedure atur_posisi;
BEGIN
ujung.x := ekor[pjg].x;
ujung.y := ekor[pjg].y;
for i:=pjg downto 2 do begin
ekor[i].x := ekor[i-1].x;
ekor[i].y := ekor[i-1].y;
end;
gotoxy(ekor[2].x, ekor[2].y);
textcolor(4);
write('@');
gotoxy(ekor[3].x, ekor[3].y);
textcolor(9);
write('0');
gotoxy(ekor[pjg-1].x, ekor[pjg-1].y);
textcolor(5);

write('-');
gotoxy(ujung.x, ujung.y);
write(' ');
for i:=3 to pjg do if((ekor[2].x=ekor[i].x) and (ekor[2].y=ekor[i].y)) then mati:=true;
delay(speed-spd);
end;
procedure makan;
var beda : boolean;
begin
inc(skor,5);
gotoxy(10,26);
write('skor=',skor);
repeat
beda := true;
makanan.x := random(batas_x-2)+2;
makanan.y := random(batas_y-2)+2;
for i:=1 to pjg do
if((makanan.x=ekor[i].x) and (makanan.y=ekor[i].y)) then beda:=false;
until beda;
gotoxy(makanan.x, makanan.y);
write('o');
inc(pjg);
inc(spd,2);
end;
procedure bergerak(c : char);
begin
if c = 'd' then begin
repeat
if ((ekor[1].x = makanan.x) and (ekor[1].y =makanan.y)) then makan;
ekor[1].x := ekor[1].x+1;
atur_posisi;
if (ekor[1].x = batas_x) or (ekor[1].y = batas_y) or (ekor[1].x = 1) or (ekor[1].y = 1) then
mati := true;
until keypressed or mati;
if mati then exit;
tkn:=readkey;
if tkn = 'a' then tkn:= 'd';
end
else if c = 's' then begin
repeat
if((ekor[1].x = makanan.x) and (ekor[1].y = makanan.y)) then makan;
ekor[1].y := ekor[1].y+1;
atur_posisi;
if (ekor[1].x = batas_x) or (ekor[1].y = batas_y) or (ekor[1].x = 1) or (ekor[1].y = 1) then
mati := true;
until keypressed or mati;
if mati then exit;
tkn:=readkey;
if tkn = 'w' then tkn:='s';
end

else if c = 'w' then begin


repeat
if((ekor[1].x = makanan.x) and (ekor[1].y = makanan.y)) then makan;
ekor[1].y := ekor[1].y-1;
atur_posisi;
if (ekor[1].x = batas_x) or (ekor[1].y = batas_y) or (ekor[1].x = 1) or (ekor[1].y = 1) then
mati := true;
until keypressed or mati;
if mati then exit;
tkn:=readkey;
if tkn = 's' then tkn:='w';
end
else if c = 'a' then begin
repeat
if((ekor[1].x = makanan.x) and (ekor[1].y = makanan.y)) then makan;
ekor[1].x := ekor[1].x-1;
atur_posisi;
if (ekor[1].x = batas_x) or (ekor[1].y = batas_y) or (ekor[1].x = 1) or (ekor[1].y = 1) then
mati := true;
until keypressed or mati;
if mati then exit;
tkn:=readkey;
if tkn = 'd' then tkn:='a';
end;
end;
begin
tkn:='d';
mati := false;
randomize;
pjg := 10; spd := 0;
makanan.x := random(batas_x-2)+2;
makanan.y := random(batas_y-2)+2;
ekor[1].x := 40;
ekor[1].y := 3;
for i:=2 to pjg do begin
ekor[i].x := ekor[i-1].x;
ekor[i].y := 3;
end;
lanjut:
clrscr;
gotoxy(10,26); write('skor = ',skor);
for i:=1 to 80 do begin
gotoxy(i,1); write('-');
gotoxy(i,25); write('-');
end;
for i:=1 to pjg do begin
gotoxy(ekor[i].x, ekor[i].y);
write('&');
end;
gotoxy(makanan.x, makanan.y); write('o');

repeat
if((tkn='w') or(tkn='s') or (tkn='a') or (tkn='d')) then bergerak(tkn)
else begin
repeat
gotoxy(22,7); write('
istirahat....!');
gotoxy(22,9); write('TUGAS MIKROSPROCESSOR');
gotoxy(22,11); write('
EL-4A
');
gotoxy (22,12); write(' KELOMPOK C ');
gotoxy(22,13); write(' - HUSNI PUTRA ');
gotoxy(22,14); write(' - DIKO PEMIDONTA ');
gotoxy(22,15); write(' - DAVID SEPTIAN ALPOLSO ');
gotoxy(22,16); write(' - MARLINA NASUTION ');
gotoxy(22,17); write(' - ANDRI SEVEN ');
repeat
gotoxy(22,19); write ('.. press w, a, s, or d to resume..'); delay(200);
gotoxy(22,20); write ('
');
delay (200);
until keypressed;
tkn:=readkey;
until((tkn='w')or (tkn='a') or (tkn='s') or (tkn='d')); goto lanjut;
end;
if mati then goto habis;
until (tkn = #27) or mati ;
habis:
gotoxy(20,10); write(' yah nabrak ');
gotoxy(20,11); write(' game over....!');
readln;
end.

3.3.

Program Setelah Dijalankan

Gambar Program Identitas Mahasiswa setelah dijalankan.

Gambar Program Game Snake Ketika Dijalanka

BAB 4
PENUTUP
4.1. Kesimpulan
Dari hasil pembahasan pada bab sebelumnya maka ada beberapa saran yang ingin penyusun
kemukakan yaitu sebagai berikut :
Setiap bahasa pemrograman memiliki kelebihan dan kekurangan sendiri-sendiri. Bila ingin
mempelajari bahasa pemrograman, penyusun mengingatkan bahwa bahasa pemrograman
berjalan atas dasar logika dan algoritma. Sehingga kedua hal inilah yang harus diasah lebih
dulu.
Bahasa pemrograman paskal lebih tepat jika dijadikan sebagai rujukan belajar bahasa
pemrograman, karena bahasa Pascal relatif lebih mudah di pelajari dan memiliki tata
penulisan (sintaks) yang lebih mirip dengan algoritma.

REFERENSI
Harahap, Erwin. 2007, Pemrograman Terstruktur, Bandung, Politeknik Piksi Ganesha
Jogianto, H.M. 1997, Turbo Pascal, Yogyakarta, Andi Ofset
Munir, Rinaldi. 2002. Algoritma dan Pemrograman Dalam Bahasa Pascal dan C. Jakarta .
Informatika
Sanjaya, Alwin. 2003, Cepat Mahir Bahasa Pascal, Kuliah Berseri IlmuKomputer.Com
Copyright 2003 IlmuKomputer.Com