Forum Dhammacitta

Komunitas => Ilmu Pengetahuan dan Teknologi => Topic started by: Jhana78 on 30 March 2009, 11:19:01 AM

Title: Belajar Looping
Post by: Jhana78 on 30 March 2009, 11:19:01 AM
Sobat...

saya sedang belajar pemograman VB. Kemudian saya mencoba program sederhana dengan kode sebagai berikut :

Quote
Private Sub Form_Activate()
Dim Anak As Integer
Anak = 11
Do While Anak > 1
Anak = Anak - 1
Print "anak ayam turun " & Anak
Print "mati satu tinggal " & Anak - 1
If Anak = 1 Then
Print "mati semua tinggal induknya"
End If
Loop

End Sub

setelah program tersebut di jalankan, maka hasilnya adalah sebagai berikut :

Quote
anak ayam turun 10
mati satu tinggal 9
anak ayam turun 9
mati satu tinggal 8
anak ayam turun 8
mati satu tinggal 7
anak ayam turun 7
mati satu tinggal 6
anak ayam turun 6
mati satu tinggal 5
anak ayam turun 5
mati satu tinggal 4
anak ayam turun 4
mati satu tinggal 3
anak ayam turun 3
mati satu tinggal 2
anak ayam turun 2
mati satu tinggal 1
anak ayam turun 1
mati satu tinggal 0
mati semua tinggal induknya

pertanyaannya : bagaimana caranya agar teks yang saya beri warna merah tersebut tidak muncul?

sebelumnya, terima kasih atas kesedian sobat memberikan masukan.
jawabannya dari siapa saja, saya tunggu.
Title: Re: Belajar Looping
Post by: gajeboh angek on 30 March 2009, 11:25:19 AM
Private Sub Form_Activate()
  Dim Anak As Integer
  Anak = 11

  Do While Anak > 1
    Anak = Anak - 1
    Print "anak ayam turun " & Anak
    If Anak > 1 Then
      Print "mati satu tinggal " & Anak - 1
    End If
    If Anak = 1 Then
      Print "mati semua tinggal induknya"
    End If
  Loop
End Sub
Title: Re: Belajar Looping
Post by: hatRed on 30 March 2009, 11:28:43 AM

Private Sub Form_Activate()
Dim Anak As Integer

Anak = 11

Do While Anak > 1

Anak = Anak - 1

Print "anak ayam turun " & Anak

if anak = 1 then

Print "mati semua tinggal induknya"

else

Print "mati satu tinggal " & Anak - 1

End If

Loop

End Sub
Title: Re: Belajar Looping
Post by: gajeboh angek on 30 March 2009, 11:34:49 AM
sama aje, cuma aye kagak tau else di vb, ntar pake elsif bingung lagi
Title: Re: Belajar Looping
Post by: hatRed on 30 March 2009, 11:54:56 AM
result sih sama,

cuma lebih irit satu langkah yg i punya :D
Title: Re: Belajar Looping
Post by: Jhana78 on 30 March 2009, 12:56:44 PM
 [at]  hatred dan wolverine

terima kasih banyak.

setelah saya bingung 7 keliling, akhirnya anda memberi pencerahan.

enak juga ya di forum..? bisa kursus gratis. he..he..he..

Title: Re: Belajar Looping
Post by: johan3000 on 30 March 2009, 01:09:12 PM
Anak = 11
for n=(anak-1) to 1 step -1
   Print "anak ayam turun " & n
   if (n-1)<>0 then Print "mati satu tinggal " & n - 1
next n
Print "mati semua tinggal induknya"

apakah yg diatas BENAR ? (asumsi anak >=2)
Title: Re: Belajar Looping
Post by: Jhana78 on 30 March 2009, 02:48:04 PM
 [at]  johan

kalo yang gitu, saya lom ngerti algoritmanya.
Title: Re: Belajar Looping
Post by: Sumedho on 30 March 2009, 04:31:33 PM
ini aja yg simple

QuotePrivate Sub Form_Activate()
  Dim Anak As Integer
  Anak = 11

  Do While Anak > 1
    Print "anak ayam turun " & Anak
    Anak = Anak - 1
    Print "mati satu tinggal " & Anak
  Loop
    Print "mati semua tinggal induknya"

End Sub
Title: Re: Belajar Looping
Post by: hatRed on 30 March 2009, 05:17:48 PM
Quote from: Sumedho on 30 March 2009, 04:31:33 PM
ini aja yg simple

QuotePrivate Sub Form_Activate()
  Dim Anak As Integer
  Anak = 11

  Do While Anak > 1
    Print "anak ayam turun " & Anak
    Anak = Anak - 1
    Print "mati satu tinggal " & Anak
  Loop
    Print "mati semua tinggal induknya"

End Sub

ralat , kalo gitu inisialisasi anak harus 10
Title: Re: Belajar Looping
Post by: Sumedho on 30 March 2009, 05:41:00 PM
oh iye ;D thanks om :)
Title: Re: Belajar Looping
Post by: hatRed on 30 March 2009, 06:43:56 PM
setelah dianalis, langkah om medho paling singkat... (bis gak pake compare lagi sih)

yg paling banyak om johan.. (bis kebanyakan variable)
Title: Re: Belajar Looping
Post by: johan3000 on 30 March 2009, 06:50:13 PM
Quote from: Jhana78 on 30 March 2009, 02:48:04 PM
[at]  johan

kalo yang gitu, saya lom ngerti algoritmanya.

utk loop itu kan bisa bermacam2

Looping structure
do while....
for...next
do...until
repeat....until

utk jelasnya bisa dilihat di defenisi VB beserta contoh2nya..

kalau

for n=start to stop step xStep
   ...
next n

maksudnya n mulai dgn nilai start dan akan berhenti dgn nilai stop,
setiap kali loop nilainya akan ditambahkan xStep..
   (sedangkan xStep bisa bernilai positif maupun negatif)...

kira2 begitulah...
Title: Re: Belajar Looping
Post by: johan3000 on 30 March 2009, 06:59:04 PM
Anak = 11

1 for n=anak to 2 step -1
2   Print "anak ayam turun " & str$(n-1)
3   Print left$("mati satu tinggal " & str$( n - 2)),  n-2) 
4 next n
5 Print "mati semua tinggal induknya"

pada baris 3, kalau n-2=0, maka left$("mati...",0) menghasilkan output ""

Kalau yg ini tanpa IF tapi menggunakan LEFT STRING, apakah juga layak dicoba?
Title: Re: Belajar Looping
Post by: johan3000 on 30 March 2009, 07:02:38 PM
Quote from: hatRed on 30 March 2009, 06:43:56 PM
setelah dianalis, langkah om medho paling singkat... (bis gak pake compare lagi sih)

yg paling banyak om johan.. (bis kebanyakan variable)

Kalau ngak ada contoh yg JELEK (johan3000),
mana bisa tau yg BAIK (suhu Medho) ?
Title: Re: Belajar Looping
Post by: gajeboh angek on 30 March 2009, 07:48:34 PM
maklum aye 0 sks dalam refactoring =))
Title: Re: Belajar Looping
Post by: Sukma Kemenyan on 31 March 2009, 05:18:02 AM
biar pun telat... ga mo ktinggalan... :P
C:\>php -r "$i=10;while($i>1) { echo 'anak ayam turun '.$i.', '; echo 'mati satu tinggal '.(--$i).chr(10); } echo 'mati semua tinggal induknya';"
anak ayam turun 10, mati satu tinggal 9
anak ayam turun 9, mati satu tinggal 8
anak ayam turun 8, mati satu tinggal 7
anak ayam turun 7, mati satu tinggal 6
anak ayam turun 6, mati satu tinggal 5
anak ayam turun 5, mati satu tinggal 4
anak ayam turun 4, mati satu tinggal 3
anak ayam turun 3, mati satu tinggal 2
anak ayam turun 2, mati satu tinggal 1
mati semua tinggal induknya
Title: Re: Belajar Looping
Post by: Sumedho on 31 March 2009, 06:44:10 AM
bedanya cuma di -- tuh yg kgk ada di vb :))
Title: Re: Belajar Looping
Post by: tesla on 31 March 2009, 09:16:49 AM
wah banyak coder di sini ternyata :))

ikutan:

Quote from: java
public class A {
  public static void main(String[] args) {
    int i = 10;
    while (i > 0) {
      System.out.println("anak ayam turun " + i);
      i--;
      System.out.println("mati satu tinggal " + i);
    }
    System.out.println("mati semua tinggal induknya");
  }
}
Title: Re: Belajar Looping
Post by: Sumedho on 01 April 2009, 06:18:38 AM
kalo versi java condensednya

Quote

public class ayam {
  public static void main(String[] args) {
    int i = 10;
    while (i > 0) {
      System.out.println("anak ayam turun " +i +", mati satu tinggal " + --i);
    }
    System.out.println("mati semua tinggal induknya");
  }
}

Title: Re: Belajar Looping
Post by: johan3000 on 01 April 2009, 06:35:51 AM
Quote from: Kemenyan on 31 March 2009, 05:18:02 AM
biar pun telat... ga mo ktinggalan... :P
C:\>php -r "$i=10;while($i>1) { echo 'anak ayam turun '.$i.', '; echo 'mati satu tinggal '.(--$i).chr(10); } echo 'mati semua tinggal induknya';"
anak ayam turun 10, mati satu tinggal 9
anak ayam turun 9, mati satu tinggal 8
anak ayam turun 8, mati satu tinggal 7
anak ayam turun 7, mati satu tinggal 6
anak ayam turun 6, mati satu tinggal 5
anak ayam turun 5, mati satu tinggal 4
anak ayam turun 4, mati satu tinggal 3
anak ayam turun 3, mati satu tinggal 2
anak ayam turun 2, mati satu tinggal 1
mati semua tinggal induknya

Nah,... utk PR tsb diatas, selain outputnya bener...
hanya boleh satu baris codingnya....

maka itu dimenangkan oleh bro Kemenyan....
(tapi memasang PHP+SQL nya apa ngak jauh lebih sulit?)

Apa benar pakai Apacer itu... yg gampang utk installednya?
Title: Re: Belajar Looping
Post by: tesla on 01 April 2009, 04:59:40 PM
Quote from: Sumedho on 01 April 2009, 06:18:38 AM
kalo versi java condensednya

Quote

public class ayam {
  public static void main(String[] args) {
    int i = 10;
    while (i > 0) {
      System.out.println("anak ayam turun " +i +", mati satu tinggal " + --i);
    }
    System.out.println("mati semua tinggal induknya");
  }
}


++i
i++
--i
i--

imo, jgn disisipkan di statement yg panjang2... susah debugnya ntar :))

selain itu juga...
(!condition)

utk yg panjang2 lebih baik ditulis: (condition != true)

lebih humanis :)

trus nama class, demi standarisasi kasih huruf besar awalnya... :P
Title: Re: Belajar Looping
Post by: gajeboh angek on 01 April 2009, 05:05:22 PM
Quote from: johan3000 on 01 April 2009, 06:35:51 AM
Nah,... utk PR tsb diatas, selain outputnya bener...
hanya boleh satu baris codingnya....

maka itu dimenangkan oleh bro Kemenyan....
(tapi memasang PHP+SQL nya apa ngak jauh lebih sulit?)

Apa benar pakai Apacer itu... yg gampang utk installednya?

php itu interpreter, dan mysql itu database, jadi kagak harus install mysql.
lagian install php gampang, apalagi di linux.
Title: Re: Belajar Looping
Post by: tesla on 01 April 2009, 05:08:48 PM
Quote from: johan3000 on 01 April 2009, 06:35:51 AM
Nah,... utk PR tsb diatas, selain outputnya bener...
hanya boleh satu baris codingnya....
itu ga 1 baris... :))

yg 1 baris gimana codenya yah? mungkin:


for (int i = 10; i > 0; i--) if (i == 1) System.out.println("anak ayam turun " + i + "\nmati semua  tinggal induknya"); else System.out.println("anak ayam turun " + i + "\nmati satu tinggal " + (i-1)");

susah bacanya...
Title: Re: Belajar Looping
Post by: Adhitthana on 01 April 2009, 11:52:30 PM
Quote from: Kemenyan on 31 March 2009, 05:18:02 AM
biar pun telat... ga mo ktinggalan... :P
C:\>php -r "$i=10;while($i>1) { echo 'anak ayam turun '.$i.', '; echo 'mati satu tinggal '.(--$i).chr(10); } echo 'mati semua tinggal induknya';"
anak ayam turun 10, mati satu tinggal 9
anak ayam turun 9, mati satu tinggal 8
anak ayam turun 8, mati satu tinggal 7
anak ayam turun 7, mati satu tinggal 6
anak ayam turun 6, mati satu tinggal 5
anak ayam turun 5, mati satu tinggal 4
anak ayam turun 4, mati satu tinggal 3
anak ayam turun 3, mati satu tinggal 2
anak ayam turun 2, mati satu tinggal 1
mati semua tinggal induknya
OOt ... dikit  :P ;D
yg ciptain lagu anak ayam turun .... sapa yaaah?
kok tau ..... akan ada wabah flu burung?   :))
Title: Re: Belajar Looping
Post by: tesla on 02 April 2009, 08:17:03 AM
signaturenya virya keren
Title: Re: Belajar Looping
Post by: Adhitthana on 02 April 2009, 10:50:23 PM
Quote from: tesla on 02 April 2009, 08:17:03 AM
signaturenya virya keren
Thanks .....
tapi kata2nya lebih cocok pake tesla punya deeeg ......  ;D