Self generating program atau sering dikenal dengan istilah quine adalah sebuah program komputer yang menghasilkan sebuah copy dari source code program tersebut sebagai keluaran dari program tersebut. Program Quine dapat dibuat di dalam bahasa pemrograman apapun selama bahasa tersebut memiliki kemampuan untuk mengeluarkan string. Nama quine program berasal dari pencetusnya yakni, Willard Van Orman Quine yang membuat studi mengenai indirect self-reference.
Pada tugas kali ini, saya akan mencoba menerapkan prinsip dari self generating program yang akan ditulis dalam bahasa Java. Kode yang saya tuliskan dibawah apabila dieksekusi dapat menghasilkan source code dari program tersebut.
Source code dari program dapat dijabarkan sebagai berikut :
public class Quine {
public static void main (String[] args) {
char c = 34;
int i = 1;
int p = 3;
if (i != 1) {
System.out.println(p);
}
System.out.println(str+c+str+c+';'+'}');
}
static String str = "public class Quine { public static void main(String[] args){ char c = 34; int i = 1; int p = 3; if(i != 1) { System.out.println(p);} System.out.println(str+c+str+c+';'+'}'); } static String str=";}
Apabila dijalankan pada command prompt maka didapatkan keluaran sebagai berikut
Satu hal yang perlu diperhatikan disini adalah deklarasi 'char c = 34' digunakan untuk membuat tanda " pada program. Sehingga pada penulisan ' String s' dapat ditambahkan karakter " . Kemudian, sisanya adalah print string seperti biasa. Sekian pembahasan mengenai Self Generating Program yang saya buat.

Tidak ada komentar:
Posting Komentar