CONTINUE W = W*V

5 CONTINUE W = W*V

7 CONTINUE C++ dlh bhs bersskn objek yng dicipt di Bell Lb oleh Bjrne trous-

trup (http://www.research.att.com/~bs/homepage.html) pd thun 1983. I menmbhkn ciri-ciri objek kepd bhs C bersskn ide dri bhs imul. d mulny i dikenli sebgi bhs C with Classes. Bhs ini bnyk di- gunkn dlm pembngunn sistem yng besr dn komplek seperti pensuisn telefon, sistem GI, pengwsn tr k jlnry dn lin-lin.

Dlm stu mklh, pencipt bhs ini dilporkn berkt,”C mkes it esy to shoot yourself in the foot; C++ mkes it hrder, but when you do it blows your whole leg off.” (C memudhkn nd menembk kki nd sendiri; C++ menyulitkn hl itu. pi jik nd menembk kki nd sendiri, i kn menghpuskn terus kki nd). Contoh tur cr bersskn objek dlm C++ dlh seperti berikut.

void gen_array::read(istream\NC in, string s) { clear();

cout << s; int i = 0; while (in \NC \NC

i < sz) read_el(v[i++],in); while (i < sz) init_entry(v[i++]); }

gen_array::gen_array(int a, int b) { if (a>b) error_handler(1,string("array: bad [%d..%d]",a,b));

Low = a;

7.7. CONTOH ATUR CARA 149 High = b;

sz = b-a+1; v = new GenPtr[sz]; if (v==0) error_handler(99,"array: out of memory"); last = v+sz-1;

Jv dlh bhs bersskn objek yng dicipt pd thun 1995 oleh Jmes Gos- ling. I mempunyi ciri-ciri C++ dn imul. Jv menukr tur cr Jv kepd byte- code , bukn kepd kod objek , dn byte-code ini boleh dilrikn pd mn-mn sis- tem pengendlin dengn menggunkn mesin my Jv tnp sebrng perubhn. Kedh ini membolehkn stu perisin Jv bersift mudh-lih ntr bnyk sistem komputer.

d mulny, Jv bnyk digunkn dlm menghsilkn gr k dn nimsi pd lmn internet. Jv telh populr dengn slogn, Tulis Sekali, Dilarikan di mana-mana. Contoh Jv dlh seperti berikut.

// Sieve of Eratosthenes import java.awt.*; public class Sieve extends java.applet.Applet implements Runnable

Thread sieveThread; String results1, results2;

public void start() sieveThread = new Thread(this); sieveThread.start();

void runSieve() int SIZE = 8190; boolean flags[] = new boolean[SIZE+1]; int i, prime, k, iter, count;

startTime = System.currentTimeMillis(); while (true)

count=0; for(i=0; i<=SIZE; i++) flags[i]=true; for (i=0; i<=SIZE; i++)

if(flags[i]) prime=i+i+3;

150 BAB 7. BAHASA PENGATURCARAAN for(k=i+prime; k<=SIZE; k+=prime)

flags[k]=false; count++; iterations++;

ython dlh stu bhs skrip bersskn objek yng boleh digunkn untuk pem- bngunn prototip, pemprosesn dt bersskn teks, menghubungi pngkln dt dn sebginy. I bnyk digunkn di google.com. Antr ppliksi yng telh dibin menggunkn python dlh peluncur web, buku lmt, pengurusn rngki- n komputer dn perisin stronomi. klumt lnjut tentng python boleh diperolehi pd http://www.python.org. Contoh tur cr python berikut boleh digunk- n untuk menghitung bilngn perktn dlm stu dokumen.

from sys import * from string import * count = {} for line in open(argv[1], 'r').readlines():

for word in split(line): if count.has_key(word): count[word] = count[word] + 1 else:

count[word] = 1

words = count.keys() words.sort() for word in words:

print "%15s\t%10d" % (word, count[word])