Forum Dhammacitta

Komunitas => Kafe Jongkok => Personality => Topic started by: johan3000 on 07 July 2009, 10:16:43 AM

Title: [TEST] Your Programming Skill.
Post by: johan3000 on 07 July 2009, 10:16:43 AM
Apa benar, anda dapat menulis program ?


Write code that returns the length of a string without using any built-in functions.


(Tulislah program yg mengembalikan panjang string, tanpa menggunakan build-in function.

contoh build-in function : LEN(xString) atau LENGTH(xString)
dpt ditulis dalam bahasa Visual Basic atau bahasa programming lainnya)

Dan jawaban mohon diletakkan di spoiler... supaya yg lain bisa mencobanya.

Terus terang, gw belum tau jawabannya...
Ini dari pertanyaan dari perusahaan software raksasa ....

silahkan mencoba!..
_/\_
Title: Re: [TEST] Your Programming Skill.
Post by: 7 Tails on 07 July 2009, 10:21:37 AM
maksudnya goggling skill yah wakkaaaa
Title: Re: [TEST] Your Programming Skill.
Post by: HokBen on 07 July 2009, 10:40:38 AM
pake pseudocode aja nih:

[spoiler]
        //a1 = input
        //output = panjang
   
   i = 1
   x = Mid(a1,i,1)
   panjang = 0
   
   While x <> ""
      panjang = panjang + 1
      i = i + 1
      x = Mid(a1,i,1)
   End While
       
[/spoiler]
Title: Re: [TEST] Your Programming Skill.
Post by: dipasena on 07 July 2009, 10:42:25 AM
mid itu bukannya build-in function ?? ;D
Title: Re: [TEST] Your Programming Skill.
Post by: HokBen on 07 July 2009, 10:47:46 AM
ga boleh sama skali pake build function apa pun yah? bukan cuma len aja?
Title: Re: [TEST] Your Programming Skill.
Post by: johan3000 on 07 July 2009, 11:53:13 AM
Quote from: HokBen on 07 July 2009, 10:47:46 AM
ga boleh sama skali pake build function apa pun yah? bukan cuma len aja?

Rasanya sama sekali tidak boleh pakai build in function.....
(Maklum ini salah satu soal test interview di perusahaan Microsoft.....
hahahhaha yg konon pertanyaannya aneh2 deh...)
Title: Re: [TEST] Your Programming Skill.
Post by: johan3000 on 07 July 2009, 11:54:55 AM
Quote from: 7 Tails on 07 July 2009, 10:21:37 AM
maksudnya goggling skill yah wakkaaaa

Utk menemukan jawabnya, jelas anda boleh pakai google deh...
Title: Re: [TEST] Your Programming Skill.
Post by: Sukma Kemenyan on 07 July 2009, 01:04:24 PM
php yee...
[spoiler]$str='Hello World';
for ($i=0; $c=$str[$i]; $i++)
  if ($c == '') break;
echo 'String Length: '.$i;


String Length: 11[/spoiler]


err... rasanya gw curang...
soalnya kalo di implement di language laen masih butuh mid()...
Title: Re: [TEST] Your Programming Skill.
Post by: Sumedho on 07 July 2009, 03:05:56 PM
teori aja yah

append spasi terus dan hitung berapa kali sampe overflow. lalu limit string capacity dikurangkan berapa spasi yg ditambahkan. dapatlah length dari string itu.
Title: Re: [TEST] Your Programming Skill.
Post by: hatRed on 07 July 2009, 03:44:32 PM
^

   cara apa tuh.....  :whistle:


dalam c lang...

a string is an array of char

jadi karena array of string itu memliki kepala (pointer) sama buntut (Null char)

maka kita bisa..... :P

nb : size of a char is 2 byte ( <--- cmiiw)
Title: Re: [TEST] Your Programming Skill.
Post by: johan3000 on 08 July 2009, 01:26:38 PM
Quote from: hatRed on 07 July 2009, 03:44:32 PM
^

  cara apa tuh.....  :whistle:


dalam c lang...

a string is an array of char

jadi karena array of string itu memliki kepala (pointer) sama buntut (Null char)

maka kita bisa..... :P

nb : size of a char is 2 byte ( <--- cmiiw)

Rasanya jawab bro HatRed yg mendekatin kebenaran.

Jadi address dari pointer yg menunjuk pada address string tsb yg ditambah,
sampai ketemu END OF STRING character...

(ini yg sebenarnya low level function spt Assembly language membuat LEN atau LENGTH)

2 tumbs up utk hatRed!...

Suhu Medho juga benar, karna di assembly language bisa selalu check flagnya overflow!
Bro Kemenyan juga benar, menggunakan STR, walaupun ini mirip function.
bro HokBen juga bener... siip deh... (hasil google ? hahahaah)

Solusi terbaik adalah menggunakan pointer!
Bagaimana menurut yg lain?
Title: Re: [TEST] Your Programming Skill.
Post by: hatRed on 08 July 2009, 08:18:07 PM
dapet hadiah apa neh... :P