Koedoes’s Weblog











{October 18, 2007}   Kompiler Project #1 – Scientific Text Calculator

Kompiler Project #1 – Scientific Text Calculator

Pembuatan sebuah kalkulator ekspresi aritmatika berbasis teks yang bisa diinputkan ke dalam suatu text box atau text area dan kemudian ekspresi tersebut dikonversikan terlebih dahulu ke dalam ekspresi postfiks ( bisa menggunakan stack atau tree ), dan terakhir dapat dihitung nilai hasil ekspresinya.

Jenis operator yang diterima adalah: +, *, /, % (modulus/sisa hasil bagi), ^ (pangkat) , dan –
Jenis operand yang diterima adalah: bilangan negatif dan positif, baik itu bilangan bulat ataupun pecahan (dengan tanda pemisah pecahan adalah titik (.)).
Jenis operator lain yang bisa diterima adalah tanda kurug buka dan tutup yang akan digunakan untuk memberikan kejelasan urutan pengerjaan operasi. Dan perlu diperhatikan juga tentang derajat operator.

Contoh ekspresi aritmatika:
(((3 + 2) * (10 – 5) / -5)^2) % 2 * (-3 + 12)
Hasil postfix:
3 2 + 10 5 – * -5 / 2 ^ 2 % -3 12 + *
Hasil Akhir: 9

Program dapat dibuat dengan bahasa pemrograman apapun. Saran bahasa pemrograman yang dapat digunakan adalah Pascal, Delphi, C, C++, Visual Basic, .NET, Java, JavaScript (tidak boleh menggunakan fungsi eval), VBScript, dan PHP/ASP.
Program dibuat dengan mengimplementasikan teknik parsing, regular expression, dan error handling. Program TIDAK BOLEH dibuat dengan menggunakan database apapun juga. Diperbolehkan menggunakan FoxPro asalkan tidak menggunakan database.

Tugas dikerjakan secara pribadi dan dikumpulkan maksimal pada tanggal 5 Oktober 2006 pukul 12.00 WIB melalui email ke anton@ukdw.ac.id dalam bentuk file ZIP yang bernama <NIMANDA>.zip. Lewat waktu tersebut tugas tidak akan dinilai.
Dalam file ZIP tersebut harus disertakan source code file, EXE (jika ada), dan README.txt yang berisi NIM, nama, dan keterangan program (misalnya cara penggunaan, cara kompilasi, cara eksekusi, dan lain-lain) secara jelas, singkat dan tidak bertele-tele.

Program dibuat secara individual, sehingga tidak boleh ada perkerjaan yang sama (mencontek). Jika ada pekerjaan yang ketahuan sama maka semua pekerjaan tersebut akan diberi nilai -15%.

Contoh dapat dilihat dan dicoba disini:

Arithmatic Expression:
Postfix Expression:

The Result :



Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

et cetera
%d bloggers like this: