Computer Science

Just another Binusian blog site

Tugas Teknik Kompilasi Code Generator – Menentukan Jarak Dari Titik Ke Lingkaran

without comments

Soal Kuis 20 Mei 2014 :

Tentukan apakah dari sebuah titik sembarangan ada didalam, bersinggungan atau diluar lingkaran yang dihasilkan dari sebuah titik sembarang dengan jari-jari R

Misalkan :

Titik pertama berkoordinat x1, y1

Titik kedua berkoordinat x2,y2

Jari-jari untuk titik pertama adalah R

 

PseudoCode :

//inisialisasi variabel

float selisihx

float selisihy

float totalselisih

input x1,y1,x2,y2,R

 

//perhitungan jarak antar 2 titik

selisihx=(x1-x2)^2

selisihy=(y1-y2)^2

totalselisih=selisihx + selisihy

 

//syarat titik dalam bersinggungan atau di luar lingkaran

if (R>totalselisih) then

print “Titik didalam lingkaran”

else if (R<totalselisih) then

print “Titik diluar lingkaran”

else

print “Titik bersinggungan dengan lingkaran”

 

Code Generator untuk soal diatas :

  1. Mov x1, r0
  2. Mov x2, r1
  3. Sub r1, r0
  4. Mul r0, r0
  5. Mov r0, selisihx
  6. Mov y1, r2
  7. Mov y2, r3
  8. Sub r3, r2
  9. Mul r2, r2
  10. Mov r2, selisihy
  11. Add selisihy, selisihx
  12. Mov selisihx, totalselisih
  13. Mov R, r4
  14. Mul r4, r4
  15. Gt totalselisih, r4
  16. Jmpf totalselisih, 19
  17. Prt “Titik di dalam lingkaran”
  18. Jmp , 24
  19. Lt totalselisih, r4
  20. Jmpf , 23
  21. Prt “Titik di luar lingkaran”
  22. Jmp 24
  23. Prt “Titik bersinggungan dengan lingkaran”
  24. ……

 

www.binus.ac.id

Written by edwinloho

May 20th, 2014 at 2:09 pm

Posted in Uncategorized

Leave a Reply