Anda di halaman 1dari 18

Unit Pembelajaran

Terjemahan Bahasa ALGO ke


Bahasa Pascal
Bimbingan Teknis Guru Informatika SMA/SMK
2024

Penulis :
Dr. Ir. Inggriani Liem
Ir. Irya Wisnubhadra, Ph.D., IPM.
Prof. Dr. Mewati Ayub, S.T., M.T.

DIREKTORAT GURU PENDIDIKAN MENENGAH DAN PENDIDIKAN KHUSUS


DIREKTORAT JENDERAL GURU DAN TENAGA KEPENDIDIKAN
KEMENTERIAN PENDIDIKAN, KEBUDAYAAN, RISET, DAN TEKNOLOGI

Terjemahan Bahasa ALGO ke Bahasa Pascal Hlm 1 dari 18


Catatan Penulis: Dokumen ini adalah salah satu pilihan untuk didalami pada Bimtek Guru
Informatika Fase E. Guru peserta Bimtek boleh memilih untuk membaca bermakna salah satu
terjemahan Bahasa ALGO ke Bahasa Python atau Bahasa Pascal atau Bahasa C. Guru dapat
menyimpan sebagai modal pengembangan diri setelah menguasai satu bahas pemrograman yang
dipilih untuk diajarkan ke peserta didik.

Pengantar
Belajar sebuah bahasa pemrograman “baru” sama halnya dengan belajar bahasa asing
setelah kita menguasai bahasa Indonesia. Bahasa sehari-hari biasa disebut bahasa natural.
Makna yang disampaikan sama, tinggal membuat sebuah “kamus” yang menerjemahkan
kata demi kata menjadi kamus bahasa yang baru. Misalnya kamus bahasa Indonesia ke
bahasa Inggris dan sebaliknya. Namun kata demi kata diterjemahkan, pada banyak kasus
tidak cukup. Kita perlu mempelajari tata bahasa dari kedua bahasa tersebut. setiap bahasa
mempunyai tata bahasa (sintaks) yang sesuai. Misalnya jika dalam bahasa Indonesia
Indonesia ada hukum DM, maka dalam bahasa Inggris menjadi MD. Contoh kursi merah
(bahasa Indonesia) akan diterjemahkan menjadi red chair. Aturan ini harus diterapkan pada
bahasa target (dalam kasus tadi, bahasa indonesia adalah bahasa asal (teks yang akan
diterjemahkan), dan bahasa Inggris adalah bahasa target (teks hasil terjemahan). Bahasa
Inggris membedakan bentuk kata kerja tergantung kepada subyeknya (Contoh: I make…, He
makes …..; I made …., He made…). Bahasa Inggris juga mempunyai tenses dimana kata kerja
perlu disesuaikan dengan waktu kejadian yang dinarasikan, sedangkan bahasa Indonesia
tidak. dan masih banyak sekali contoh, termasuk “ekspresi” yaitu pengungkapan kalimat
menjadi kalimat yang maknanya bukan sintaksis tapi “semantik”. Kata bunga, dalam bahasa
indonesia bisa berarti bunga di taman, tapi kata bunga juga dipakai untuk menyatakan
bunga deposito atau bunga tabungan. Penerjemah antar bahasa manusia sudah banyak
tersedia. Anda bisa mencoba “google translate” dan memlih bahasa asal dan bahasa tujuan.
Cobalah buka situs https://translate.google.com/, memilih bahasa asl dan bahasa tujuan.
Ketikkan sebuah kata, maka akan presisi terjemahannya. Ketikkan sebuah kalimat (misalnya
dalam bahasa Indonesia: (1) Saya memetik bunga di kebun >> I picked flowers in the garden
, akan berbeda terjemahannya dari (2) saya mengambil bunga dari tabunganku >>> I take
interest from my savings.
Menerjemahkan teks dalam bahasa natural akan rumit prosesnya. dan otomasinya
merupakan bagian dari riset di bidang NLP (Natural Language Processing) yang perlu
dikembangkan bukan hanya oleh programmer tetapi juga perlu keahlian seorang linguist
(ahli bahasa).

Bahasa Pemrograman, seperti halnya dengan bahasa Natural, mempunyai kosa kata (kata
kunci, reserved words) dan aturan sintaks. Anda sudah mempelajari bahasa ALGO yang
lebih dekat dengan manusia karena eksekutornya adalah manusia. Sekarang, Anda akan
mempelajari bagaimana teks program ALGO akan diterjemahkan ke bahasa komputer, yaitu
bahasa pemrograman Pascal. Penerjemahan (translasi) teks dari satu bahasa pemrograman
menjadi bahasa pemrograman lain sangat mudah, tidak se rumit bahasa natural karena kosa
kata bahasa pemrograman sangat sedikit (bahasa Pascal hanya memiliki 32 kata kunci atau
keyword [ https://www.tutorialspoint.com/pascal/pascal_basic_syntax.htm
atau pada https://wiki.freepascal.org/StAndard_Pascal] ), dan beberapa simbol. Pola
kalimatnya juga hanya sedikit. Pada modul AP Fase E ini, Anda akan dikenalkan bagaimana
translasi dari teks program bahasa ALGO menjadi teks dalam bahasa Pascal. kita akan
Terjemahan Bahasa ALGO ke Bahasa Pascal Hlm 2 dari 18
mempelajari lewat contoh program kecil yang setiap programnya menawarkan satu konsep
bahasa pemrograman prosedural tekstual.
Pertama-tama, kita perlu mengenal bahasa pemrogramannya, kemudian akan diberikan
contoh lewat program kecil (program sederhana siap eksekusi, yang secara utuh
menampilkan satu atau beberapa konsep saja). Kemudian, guru memberikan contoh
programkecil dalam bahasa target yang mewakili setiap konsep pemrograman prosedural,
yang samadengan contoh program dalam bahasa ALGO. Dengan demikian, peserta didik
mengenal pola program prosedural tekstual dalam berbagai bahasa.

Bagian I Pengenalan Bahasa Pascal


Bahasa ALGO dipakai untuk mengembangkan solusi program yang bukan dijalankan oleh mesin tetapi
oleh manusia. Salah satu bahasa pengeksekusi program yang sangat dekat dengan bahasa ALGO
adalah bahasa Pascal stAndard.
Pada bagian ini diberikan terjemahan (lebih tepat padanan) pola kalimat dalam bahasa ALGO ke dalam
bahasa Pascal. Siswa disarankan untuk melakukan terjemahan semua contoh-contoh program dalam
bahasa ALGO untuk menjadi program Pascal, dan berlatih mengeksekusinya dengan komputer, atau
menggunakan HP Smartphone yang dapat mengakses free Pascal online compiler yang gratis, serta
menyediakan data test yang sesuai untuk dieksekusi.
Tidak semua kalimat dalam bahasa Pascal dipakai pada mata pelajaran informatika Fase E,
yang dipakai hanya sebagian kecil, yang diberikan dalam tabel terjemahan ini. Belajar
memprogram adalah sebuah proses yang memerlukan waktu, seperti kita belajar bahasa
Inggris, kita mulai dengan yang kata dan pola kalimat yang dipakai sehari-hari dan secukupnya
saja

Bahasa Pascal diciptakan oleh Niklaus Wirth [1] yang ditujukan bagi pemrogram pemula yang
akan belajar pemrograman. Oleh karena itu bahasa ini dirancang ketat type, dan sangat dekat
dengan bahasa Inggris. Bahasa Pascal murni telah dikembangkan oleh beberapa institusi lain,
antara lain Turbo Pascal, Free Pascal [2,3] menjadi bahasa yang mudah diakses dan dilengkapi
dengan keperluan masa kini seperti modul untuk berinteraksi dengan layar berbagai sistem
operasi, modul untuk animasi, dll.

Yang diterjemahkan pada modul ini hanya sebagian kecil dari bahasa Pascal secara
keseluruhan, yaitu hanya pola kalimat dan struktur program yang diperlukan dalam
pembelajaran AP Fase E.

Bagian II Belajar Memprogram Pascal Dari Contoh

Pada bagian ini, Anda akan belajar memahami program, menuliskan program (koding) dan
mengeksekusi program, dari sekumpulan contoh program kecil Pascal sederhana yang
diberikan (Learning by Example, experiential based learning, constructivist).

Tanpa mengenal bahasa Pascal pun, siapapun dapat melakukan editing, dan menjalankan
program-program kecil yang diberikan. Salah satu online Pascal Compiler yang dapat Anda
gunakan adalah: https://www.tutorialspoint.com/compile_pascal_online.php

Akseslah free online Pascal compiler dengan masuk ke website tersebut melalui browser, dan
Terjemahan Bahasa ALGO ke Bahasa Pascal Hlm 3 dari 18
secara otomatis akan tampil teks program HelloWorld. Perhatikan ada kata-kata yang
diwarnai tertentu yang tidak kelihatan pada teks diktat ini.

Tidak disarankan untuk melakukan copy/paste teks program yang diberikan, karena jika
Anda melakukannya, Anda tidak belajar.

Tampilan layar dari online Pascal compiler, sebagai berikut:

Penjelasan Program yang ditampilkan


Program Pascal yang tampil di layar Penjelasan
Program HelloWorld(output); Saat Anda masuk ke IDE Tutorial Points di
begin
writeln('Hello, world!');
atas, akan tampil program HelloWorld,
end. yang siap dieksekusi dan dicoba.

Perhatikan kode warna pada teks


program! Kerangka program Hello World
dipakai untuk dikembangkan menjadi
contoh-contoh berikutnya

Latihan 01. Mengubah/Menyunting Program

Mengubah HelloWorld menjadi HaloDunia


Program Pascal Penjelasan
program HaloDunia; Program menulis Halo Dunia, berdasarkan
{Program menulis 'Halo
Dunia!'} begin Hello World yang disediakan oleh pascal
Writeln('Halo Dunia!'); inline compiler
end. Perhatikan penulisan teks yang di
dalam “tAnda petik” pada bahasa
Pascal.

Terjemahan Bahasa ALGO ke Bahasa Pascal Hlm 4 dari 18


Latihan 02. Pengisian Nilai
Program Pascal Penjelasan
program IsiNilai; Program ini
{Program mendefinisikan dan mengisi nilai sebuah}
{variabel} mendefinisikan sebuah
VAR variabel INTEGER yang
angka : integer; berisi sebuah angka dan
begin mengisi nilainya
angka := 5;
end. dengan 5

Latihan 03.a Membaca sebuah Nilai Variabel Data


Program Pascal Penjelasan
program BACABILANGAN; Program Baca Tulis
{ Input: sebuah bilangan bulat dan sebuah bilangan
riil } untuk mengisi nilai
{ Output: Tuliskan nilai keduacbilangan yang dibaca variabel
} bertype integer, real
VAR
BilBul: integer; Perhatikan angka yang
BilRiil: real; tercetak pada bilangan
begin riil. Apa pendapat
write ('Inputkan sebuah Bilangan bulat: ');
readln (BilBul); Anda?
writeln ('Bilangan bulat yang dibaca : ' ,
BilBul);
write ('Inputkan sebuah Bilangan riil:');
readln (BilRiil);
writeln ('Bilangan riil yang dibaca : ' ,
BilRiil);

writeln ('Bye..');

end.

Terjemahan Bahasa ALGO ke Bahasa Pascal Hlm 5 dari 18


Latihan 03.b Membaca Nilai 3 Data Bertipe CHAR dan TEKS
Program Pascal Penjelasan
program BACABILANGAN; Program membaca dan
(* Input: sebuah bilangan bulat dan sebuah bilangan
riil *) menulis sebuah
(* Output: Tuliskan nilai keduacbilangan yang karakter (huruf) dan
dibaca *) sebuah string (teks)
VAR
CC: char;
Judul : string;
judulSementara : string;
begin
write ('Inputkan sebuah karakter '); readln (CC);
writeln ('Karakter yang dibaca komputer : ' ,
CC);

judulSementara := 'Aku Belajar Bahasa Pascal';


writeln ('Nilai Judul Sementara : ' ,
JudulSementara);

write ('Inputkan sebuah Judul, teks singkat:');


readln (Judul);
writeln ('Judul yang dibaca : ', Judul);
writeln ('Bye..');
end.

Latihan 04. Menentukan Apakah sebuah Bilangan Bernilai NEGATIF / NOL / POSITIF ?
Program Pascal Penjelasan
program NOLKAH; Program menentukan
{ Input: sebuah bilangan bulat }
{ Output: salah satu dari 2 teks sbb. } { Bilangan
bilangan NOL atau
“NOL” } { Bilangan “BUKAN NOL” } { Proses : bukan
menentukan apakah bilangan yang dibaca bernilai 0
atau bukan Nol } Perhatikan ada dua
cara menulis
VAR
BilBul: integer; komentar.
begin
write ('Inputkan sebuah Bilangan bulat: '); Contoh program
read (BilBul);
if (BilBul=0) then yang memudahkan
begin pembaca memahami
writeln ('NOL'); teks, ada
end else spesifikasi I-P-O
begin
writeln ('Bukan NOL');
end;
end.

Terjemahan Bahasa ALGO ke Bahasa Pascal Hlm 6 dari 18


Latihan 05. Menentukan Apakah sebuah Bilangan Bernilai NOL ?
Program Pascal Penjelasan
program NOLKAH; Program menentukan
{ Input: sebuah bilangan bulat }
{ Output: salah satu dari 2 teks sbb. } { Bilangan
bilangan NOL atau
“NOL” } { Bilangan “BUKAN NOL” } { Proses : bukan
menentukan apakah bilangan yang dibaca bernilai 0
atau bukan Nol } Perhatikan ada dua
cara menulis
VAR
BilBul: integer; komentar.
begin
write ('Inputkan sebuah Bilangan bulat: '); Contoh program
read (BilBul);
if (BilBul=0) then yang memudahkan
begin pembaca memahami
writeln ('NOL'); teks, ada
end else spesifikasi I-P-O
begin
writeln ('Bukan NOL');
end;
end.

Latihan 06. Apakah sebuah Bilangan Bernilai NEGATIF / NOL / POSITIF ?


Program Pascal Penjelasan
program KategoriBil; Program menentukan
{ Input: sebuah bilangan bulat, Bil }
{ Output: salah satu dari 3 teks sbb. } { Bilangan
bilangan negatif, NOL
“NEGATIF” } { Bilangan “NOL” } { Bilangan “POSITIF” atau positif
} { Proses : menentukan apakah bilangan yang dibaca
bernilai negatif, 0 atau positif }

VAR
Bil: integer;
begin
write ('Inputkan Bilangan: '); read (Bil);
if (Bil<0) then
begin
writeln ('Bilangan NEGATIF');
end else if (Bil=0) then
begin
writeln ('Bukan NOL');
end else (* pasti bukan nol dan negatif *)
begin
writeln ('POSITIF');
end;
end.

Terjemahan Bahasa ALGO ke Bahasa Pascal Hlm 7 dari 18


Latihan 07 PENGULANGAN “Apakah sebuah bilangan bernilai NEGATIF, NOL, POSTIF ?”
Program Pascal Penjelasan
program UlangKategoriBil; Program Kategorisasi
{ Input: bil }
{ Output: salah satu dari 3 teks sbb. } { Bilangan
bilangan yang diulang
“NEGATIF” } { Bilangan “NOL” } { Bilangan “POSITIF” dengan pencacah 1 s.d.
} { Proses : menentukan apakah bilangan yang dibaca 5 (5 kali)
bernilai negatif, 0 atau positif }

VAR
Bil: integer;
i: integer; (* pencacah pengulangan *)
begin
for i:= 1 to 5 do
begin
write ('Inputkan Bilangan: '); read (Bil); if
(Bil<0) then
begin
writeln ('Bilangan NEGATIF');
end else if (Bil=0) then
begin
writeln ('Bilangan NOL');
end else (* pasti bukan nol dan negatif *)
begin
writeln ('Bilangan POSITIF');
end;
end;
end.

Latihan 08. Penulisan Teks yang Diulang N Kali dengan Pencacah


Program Pascal Penjelasan
program AkuPintar; Program mengulang
(* input : N, berapa kali ingin ditulis *) (*
Output : N baris teks 'Aku Anak Pintar' *) (* menuliskan “Aku
proses : menuliskan N barus teks *) pintar” untuk
VAR pencacah bernilai
N: integer;
1,2,3,4,5.
i: integer;
begin Cobalah eksekusi
write ('Berapa kali diulang ?'); readln (N); program dengan
i:= 1; beberapa nilai N: N= 3
while (i<=N) do
begin N=0
writeln ('Aku Anak Pintar'); N=10
i := i + 1; N=100
end;
end.
Bentuk pengulangan
bahasa Pascal yang
dipilih adalah while
.. do

Terjemahan Bahasa ALGO ke Bahasa Pascal Hlm 8 dari 18


Latihan 09. Penulisan Teks yang diulang N Kali, menggunakan ULANGI..SAMPAI
Program Pascal Penjelasan
program TotalHarga10Barang; Program
(* input : Harga barang belanjaan *)
(* Output : Total harga yang harus dibayar *)
menjumlahkan 10
(* proses : Mengulang menjumlahkan Harga yang data harga belanjaan
dibaca *) (bilangan bulat) yang
(* yang diakhiri dengan mengetikkan Harga=0
*)
dibaca oleh petugas
VAR Kasir.
Harga: integer;
TotalHarga: integer; Bentuk pengulangan
begin
writeln('Selamat Datang di TOKOKU'); Bahasa Pascal yang
writeln('Akhiri program dengan mengetik nilai dipilih adalah repeat
Harga = 0'); ..
TotalHarga:= 0; until
repeat
(* baca harga barang *)
write('Harga yang akan ditotal = Rp. ');
readln (Harga);
TotalHarga := TotalHarga + Harga;
until ( Harga=0 );
writeln ('Total bayar = : Rp. ', TotalHarga);
writeln ('Akhir program Total Harga'); end.

Latihan 10 Penulisan Teks yang Diulang Terus Menerus


Program Pascal Penjelasan
program PengeluhSeumurHidup; Program pengeluh
(* input : - *)
(* Output : Teks 'aku capai’ *)
seumur hidup
(* proses : Mengulang menulis 'AKu capai tanpa
berhenti' *) Amati eksekusinya….
VAR Bagaimana
Capai: boolean;
begin mengakhirinya
Capai := true;
while ( Capai ) do
begin
writeln('Aku capai ');
end;
end.

Setelah mencoba program dalam bahasa Pascal, refleksikan aktivitas Anda pada LKI yang
telah disediakan.

Bagian III Tatabahasa (Sintaksis) Pascal

Setelah Anda mencoba beberapa program di atas, diharapkan bahwa Anda akan mengenali
kata-kata tertentu (yang diwarnai di layar oleh online compiler) yang merupakan “construct”
Terjemahan Bahasa ALGO ke Bahasa Pascal Hlm 9 dari 18
atau elemen pembentuk program. Setiap jenis karakter atau kata mempunyai makna
khusus, dan setiap baris atau sekumpulan baris mempunyai pola khusus.
Pada Bagian III ini Anda diajak mengenal sintaks (tata bahasa) dari bahasa Pascal, setelah
Anda mencoba menjalankan programnya

CATATAN : Bagian III ini bukan utk dibaca oleh peserta didik, tetapi dijelaskan oleh GURU
lewat contoh program kecil

Kerangka Program Utuh Dalam Bahasa Pascal


Program JUDULPROGRAM;
(* Penjelasan program secara ringkas : ….. *)
(* Spesifikasi : Input, Proses, Output *)
(* DATA : *)
(* semua NAMA VARIABEL yang dipakai dalam program *)
VAR
(* tuliskan semua variabel yang dipakai dan tipenya *)

(* instruksi : *)
begin
(* deretan instruksi pemberian nilai variabel, input, output, analisis
kasus, pengulangan yg memakai fungsi *)

end.

Komentar
Komentar adalah teks yang dituliskan dalam program yang akan diabaikan oleh pemroses
bahasa. Komentar ditulis untuk memberikan penjelasan/catatan ke pembaca tentang makna
program atau instruksi yang perlu diperhatikan pembaca teks program.
Komentar dalam ALGO Komentar dalam Pascal Penjelasan
//<tuliskomentar Anda> (* <teks komentar> *) Ada beberapa cara untuk
menAndai bahwa sebuah
teks adalah komentar
pada Pascal.
{ <tulis komentar Anda } Cara pertama mengacu
ke pascal stAndar.
Cara kedua dan ketiga
// <teks Anda> mengacu ke
[https://www.freepascal.or
g/ docs-
html/ref/refse2.html]

Perhatikan contoh
penulisan komentar pada
kerangka program utama
Pascal di atas. Notasi yang
dipakai adalah cara
pertama yang pertama.
Kita boleh
menuliskan dengan cara
lain.

Terjemahan Bahasa ALGO ke Bahasa Pascal Hlm 10 dari 18


TERJEMAHAN KATA KUNCI
Pada Tabel 1 diberikan Terjemahan Kata Kunci ALGO (bahasa Indonesia dan Inggris) ke
PASCAL.

Tabel 1. Terjemahan Kata Kunci ALGO (bahasa Indonesia dan Inggris) ke Pascal
Kata Kunci Kata Kunci Bahasa ALGO Kata Kunci Bahasa Pascal
Bahasa ALGO Bhs Inggris
Bhs Indonesia
PROGRAM PROGRAM Program

AKHPRG ENDPRG END.

VARIABEL VARIABLE VAR

BOOLEAN BOOLEAN boolean

BILBUL INTEGER integer

BilRIIL REAL real

TEKS Text char


string

<-- <-- :=

BACA READ read


readln

TULIS WRITE write


writeln

JIKA IF if

MAKA THEN then

JIKATIDAK ELSE else

PILIH CHOOSE case

ULANGI REPEAT

KALI TIMES

ULANGI EAT repeat


UNTIREPL until
SAMPAI

SELAMA WHILE while


KERJAKAN DO do

SELAMANYA Forever while true do

Konvensi Penulisan Kata Kunci (keywords) Program Pascal


1. Kata kunci biasanya dituliskan dalam huruf kecil (lihat contoh di atas. Pada editor, biasanya
ditampilkan dengan kode warna). Pascal tidak membedakan huruf kecil
2. Boleh ditulis dalam huruf besar/kapital atau campuran, tetapi disarankan menulis dalam huruf
Kapital untuk membedakan kata Kunci dengan kata lain
Terjemahan Bahasa ALGO ke Bahasa Pascal Hlm 11 dari 18
3. Harus ditulis bersambung, tidak ada spasi atau karakter lain selain dari yang telah ditetapkan
dalam daftar Kata Kunci.
4. Harus ditulis dengan konsisten, versi Bahasa Indonesia atau Bahasa Inggris (atau kelak, bahasa
lain yang Anda pakai, misalnya bahasa lokal)
5. Tidak case sensitive (huruf besar atau huruf kecil sama saja)
6. Tidak boleh dipakai sebagai kata bebas(identifier)

Tipe data dan Nilai


Tipe data yang disimpan program sesuai dengan deklarasi (pendefinisian) pada VARIABEL.
Untuk setiap tipe data, diberikan contoh penulisan nilai konstantanya seperti pada Tabel 2.

Tabel 2. Tipe Variabel dan Nilainya (Konstanta)


Tipe Data ALGO Nilai Tipe ALGO Tipe Data Pascal Nilai VAR Pascal
(konstanta)
BOOLEAN TRUE boolean true
FALSE false

BILBUL 10 integer 10

BILRIIL 12,5 real 12.5

TEKS 'A' char ‘A’


“aku anak pAndai” String “aku anak PAndai”

Rentang nilai Tipe


Tipe data stAndard dalam bahasa Pascal yang dipakai dalam mata pelajaran informatika Fase E adalah boolean,
integer, real dan char. Tipe data lainnya tidak dibahas pada pelatihan ini, walaupun mungkin suatu hari
Anda membutuhkan tipe data Himpunan (SET) [3]. Pada bahasa Pascal, Anda juga dapat mendefinisikan tipe data
secara khusus, misalnya yang mewakili data satu baris data pada lembar kerja. Ini tidak dibahas pada mata
pelajaran Informatika Fase E, karena Pascal hanya dipakai untuk menjalankan kode program sederhana mengacu
ke ALGO.
Rentang nilai setiap tipe yang dituliskan dalam Tabel 3 [1].

Tabel 3. Contoh Pendefinisian Nama Variabel (DATA) dan Pengisian Nilainya

Tipe Data Rentang Nilai Data Rentang Nilai Penjelasan


ALGO ALGO Data Pascal
BOOLEAN TRUE, FALSE boolean Data boolean hanya
bisa bernilai TRUE
atau FALSE
(benar atau salah)
BILBUL Integer :
-∞ s.d. ∞ -
2147483648
deretan angka

s.d
2147483648

Smallint:
-32768 s.d
32768

Terjemahan Bahasa ALGO ke Bahasa Pascal Hlm 12 dari 18


Tipe Data Rentang Nilai Data Rentang Nilai Penjelasan
ALGO ALGO Data Pascal
BilRIIL 3.4x10-38 s.d
-∞ s.d. ∞ 3.4x1038
Nilai bilangan riil
disimpan dalam format
yang
kompleks.Pada bahasa
Pascal,, bilangan riil dapat
ditulis sebagai fixed-point
dengan karakter E yang
memisahkan mantis
eksponen.
Maka, 452.13 = 4.5213e2
TEKS Semua karakter Semua karakter Tipe string dalam Pascal
(angka, huruf, sesuai dengan adalah sebuah karakter atau
karakter khusus, pengkodean
yang dipakai
sederetan karakter yang
karakter tak kelihatan)
yang muncul di papan
dapat diikuti dengan
kunci atau yang ingin Anda spesifikasi ukurannya.
tuliskan Perhatikan
penulisan dalam pascal
dengan tAnda petik
tunggal: 'a' 'B' '+'

Catatan : Hal-hal yang harus diperhatikan (penulisan pesan) dalam input/output , agar
pengguna program tidak perlu membaca source code untuk dapat memberikan input yang
benar.

Konvensi penulisan nama variabel penting untuk diperhatikan. setiap kali seorang pemrogram
mulai menulis program dalam bahasa tertentu (termasuk bahasa Pascal), ia perlu
mempelajari konvensi penulisan nama variabel dalam bahasa tersebut. Pascal case dan Camel
case adalah 2 konvensi penamaan yang sering diacu [2].

Camel case dan Pascal case sama. Keduanya menyarankan bahawa nama variabel terdiri dari
kata majemuk dan kata pertama ditulis dengan huruf besar. Kata berikutnya diawali dengan
huruf besar. Perbedaannya, Pascal case menuliskan huruf kata pertama juga dalam huruf
kapital, yang bukan konvensi camel case, seperti pada contoh berikut
Contoh penamaan variabel dalam Pascal
TanggalLahir
JumlahTotal
Sum
Maksimum
HariKe
AnakKe2

Operator
Operator dalam bahasa ALGO diterjemahkan ke dalam bahasa Pascal pada Tabel

4. Tabel 4. Terjemahan Operator bahasa ALGO ke Pascal

Terjemahan Bahasa ALGO ke Bahasa Pascal Hlm 13 dari 18


Operator ALGO Operator dalam Bhs Inggris Operator Pascal

[+,-,*,/,div,mod} [+,-,*,/,div,mod} [+,-,*,/,div,mod}

[NOT, AND, OR ] [NOT, AND, OR ] [not,and, or ]

[<,>,=,≠,≤,≤,≥,≥] [<,>,=,≠,≤,≤,≥,≥] [<,>,=,<>,<=,>=]

Blok Instruksi
Blok instruksi adalah sekumpulan instruksi yang dicakup dalam sebuah pola. Terjemahan
penulisan blok instruksi ALGO menjadi blok bahasa Pascal diberikan pada Tabel 5. Dalam
sebuah blok, yaitu teks yang ditulis anta { dan } , adalah deretan instruksi berpola tertentu
yang akan dieksekusi program

Tabel 5. Penulisan Blok Instruksi


Blok bahasa ALGO Blok bahasa Pascal Penjelasan

{ begin Blok sebuah PROGRAM utuh

} end.

{ begin Blok dalam sebuah pola kalimat

} end;

Ekspresi

Ekspresi adalah sebuah teks yang berisi operan dan operator setipe. Pada program Pascal
ditulis secara infix, seperti penulisan rumus matematika pada umumnya, Tabel 6. berisi
contoh ekspresi untuk setiap tipe, dalam ALGO dan Pascal

Tabel 6. Terjemahan ekspresi ALGO ke Pascal


Tipe Ekspresi Contoh Ekspresi ALGO Contoh Ekspresi Pascal

BOOLEAN TRUE OR FALSE true or false

BILBUL 100 x 3 + 7 100 * 3 + 7


(20-3)/(7*8+1) (20-3)/(7*8+1)

// jika A,B,C sudah terdefinisi // jika A,B,C sudah


sebagai tipe BilBul dan ada terdefinisi sebagai
nilainya integer dan ada nilainya

A x B + 7*C A * B + 7*C
(A-3)/(B*C+A) (A-3)/(B*C+A)

Terjemahan Bahasa ALGO ke Bahasa Pascal Hlm 14 dari 18


Tipe Ekspresi Contoh Ekspresi ALGO Contoh Ekspresi Pascal

BILRIIL 100,2 x 3,5 + 7,0 100.2 * 3.5 + 7.0


(20,45 - 3,33)/(0,7* 8,5 +1,9) (20.45 – 3.33)/(0.7* 8.5
+1.9)
// jika X,Y,Z sudah terdefinisi
sebagai tipe BILRIIL dan ada // jika X,Y,Z sudah
nilainya terdefinisi sebagai
float dan ada nilainya
X + Y + Z
(X-3,3)/(Y*Z) X + Y + Z
(X-3.3)/(Y*Z)

TEKS // teks tidak dapat


dioperasikan, hanya bisa di
BACA dan di TULIS

Karakter Khusus
Karakter khusus yang ditulis pada bahasa ALGO sebagian sudah dijelaskan. Terjemahannya
ke bahasa Pascal diberikan pada Tabel 7.

Tabel 7. Terjemahan Karakter/Kata Khusus ALGO ke PAscal


Karakter Khusus Makna Pascal
{ PenAnda awal blok // Blok sesuai pola kalimat
begin
{ end;
PenAnda ahir blok
// Blok Program utuh
begin

end.

// PenAnda //
komentar/catatan atau
(*)

< PenAnda awal

> PenAnda akhir Tidak akan muncul di teks program Pascal,


diganti dengan nama, kondisi atau lainnya
sesuai makna

Kata Pengenal (identifier)


Kata pengenal (identifier) adalah simbol/nama yang dipakai untuk merepresentasi nama
program, nama data atau komponen lain dari sebuah program secara presisi sesuai tipe nilai
yang disimpannya. [https://wiki.freepascal.org/Identifier]

Berikut ini adalah panduan untuk memilih nama identifier yang baik”:

Terjemahan Bahasa ALGO ke Bahasa Pascal Hlm 15 dari 18


1. Satu nama hanya dipakai satu kali dengan satu makna.
2. Bahasa Pascal adalah bahasa ketat tipe sehingga setiap nama data akan terkait tipe. Pilih
nama yang bermakna, atau menjelaskan struktur data.
3. Tulis semua identifier dalam bahasa natural (bahasa Indonesia, Inggris), bukan kata kunci.
“English is de facto the lingua franca in programming.”
4. Kompromistis antara panjang nama dengan makna. Menyingkat nama membuat teks
program menjadi lebih pendek, tetapi akan mengurangi keterbacaan teks program.
5. Pergantian nama identifier akan berakibat harus mengubah kemunculannya dalam teks.

POLA KALIMAT
Pola kalimat bahasa ALGO akan dipetakan ke Pascal seperti pada Tabel 8.

Tabel 8. TERJEMAHAN POLA KALIMAT


Bahasa ALGO Bahasa Pascal
VARIABEL VAR
{ i:BilBul i:integer;
j:BilRiil j:real;
cc: teks cc: string;
} found : boolean;

VARIABEL VAR
{ i:BilBul =10 i:integer = 10;
Pi:BilRiil = 3,1415 Pi:real = 3.1415;
Nama : teks Nama : string;
}

PROGRAM Hello Program Hello;


{ begin
// komentar (* komentar *)
}
AKHPRG end.

<namaVAR> <-- harga; <namaVAR> := harga;

BACA read (NamaVAR);


{ <nama-var> } readln (NamaVAR);

TULIS write (NamaVAR);


{ <nama-var> } write (NamaVAR);

JIKA <kondisi> MAKA if (kondisi) then


{ Aksi } begin
Aksi
end;

JIKA <kondisi> MAKA if (kondisi) then


{ Aksi-A } begin
JIKATIDAK // not <kondisi> Aksi-A;
{ Aksi-B } end else
Begin
Aksi-B;
end;

Terjemahan Bahasa ALGO ke Bahasa Pascal Hlm 16 dari 18


PILIH if (kondisi-1) then
{ begin
<kondisi-1> : { Aksi-A} Aksi-1
<kondisi-2> : { Aksi-B) end else if (kondisi-2) then
<kondisi-3> : { Aksi-C} begin
… dst Aksi-2
} end else if (kondisi-3) then
begin
Aksi-3;
end else if (kondisi-4) then
begin
Aksi-4;

{boleh diulang sampai banyaknya


pilihan} { ….. }
end;

SELAMA<kondisi-ulang> ULANGI while (kondisi-ULANG) do


{ Aksi } begin
Aksi;
end;

ULANGI repeat (kondisi-ULANG)


{ Aksi } Aksi;
until (kondisi-Stop);
SAMPAI<kondisi-berhenti>

Penutup
Di akhir unit pembelajaran bahasa Pascal ini, lakukan refleksi tentang program dalam
bahasa Pascal dibandingkan dengan program dalam bahasa ALGO.
Apa refleksi Anda setelah mencoba program dalam bahasa Pascal?
Apa perbedaan dan kesamaan bahasa ALGO dibandingkan dengan teks dalam program
Pascal yang disajikan di atas?

Rujukan
[1] [https://wiki.freepascal.org/Basic_Pascal_Tutorial/Chapter_1/Variables_and_Data_Types]
[2] [https://www.theserverside.com/answer/Pascal-case-vs-camel-case-Whats-the-difference]
[3] [https://en.wikipedia.org/wiki/Camel_case]
[4] https://en.wikipedia.org/wiki/Pascal_(programming_language)
[5] https://wiki.freepascal.org/ dan semua sub bab penjelasannya mengenai komponen bahasa
Pascal
[6] [https://www.tutorialspoint.com/pascal/pascal_sets.htm]

Catatan:
Tools Free pascal
https://www.freepascal.org/download.html

Contoh situs untuk memakai IDE bahasa freePascal secara online dan gratis:
Yang dipakai untuk tes program Pascal pada dokumen ini:
https://www.tutorialspoint.com/compile_pascal_online.php

Terjemahan Bahasa ALGO ke Bahasa Pascal Hlm 17 dari 18


Mohon baca dan latihan mandiri : https://www.tutorialspoint.com/pascal/

Anda juga boleh memilih online freepascal compiler lainnya,


misalnya https://www.onlinegdb.com/online_pascal_compiler
https://www.jdoodle.com/execute-pascal-online/
https://onecompiler.com/pascal

Terjemahan Bahasa ALGO ke Bahasa Pascal Hlm 18 dari 18

Anda mungkin juga menyukai