Selamat datang di ForSa! Forum diskusi seputar sains, teknologi dan pendidikan Indonesia.

Selamat datang, Pengunjung. Silahkan masuk atau mendaftar. Apakah anda lupa aktivasi email?

Mei 16, 2021, 05:35:41 AM

Masuk dengan nama pengguna, kata sandi dan lama sesi

Topik Baru

Artikel Sains

Anggota
Stats
  • Total Tulisan: 139631
  • Total Topik: 10391
  • Online Today: 50
  • Online Ever: 441
  • (Desember 18, 2011, 12:48:51 AM)
Pengguna Online
Users: 0
Guests: 40
Total: 40

Ikuti ForSa

ForSa on FB ForSa on Twitter

Penulis Topik: program keren VB.net nihh...  (Dibaca 22005 kali)

0 Anggota dan 1 Pengunjung sedang melihat topik ini.

Offline adisae

  • Dosen
  • ****
  • Tulisan: 310
  • IQ: 8
Re: program keren VB.net nihh...
« Jawab #15 pada: Oktober 30, 2010, 02:45:32 AM »
hmm program console y..
rumit ngatur kursor/lokasi tampilan hurufnya..
tapi OK lah

menyederhanakan maksudnya biar mudah dibaca/dimengerti y?
bisa si, solusinya dipecah jadi beberapa function/sub


sub untuk tampilan, cuma copy paste aja sebagian code diatas
Kode: [Pilih]
Shared Sub TampilanAwal()
        WriteLine("----------------------BINGO!!------------------------")
        WriteLine()
        WriteLine("Tebak angka 4 digit dengan angka berbeda [1023-9876].")
        WriteLine("Anda diberi kesempatan 10 x menebak.")
        WriteLine("- Tanda O menunjukkan angka dan posisi benar.")
        WriteLine("- Tanda / menunjukkan angka benar, tapi posisi salah.")
        WriteLine("- Tanda X menunjukkan angka salah.")
        WriteLine()
        WriteLine("Masukkan tebakan anda : ")
        WriteLine("1.  ____ [         ]")
        WriteLine("2.  ____ [         ]")
        WriteLine("3.  ____ [         ]")
        WriteLine("4.  ____ [         ]")
        WriteLine("5.  ____ [         ]")
        WriteLine("6.  ____ [         ]")
        WriteLine("7.  ____ [         ]")
        WriteLine("8.  ____ [         ]")
        WriteLine("9.  ____ [         ]")
        WriteLine("10. ____ [         ]")
End Sub

function random nilai 4 angka
Kode: [Pilih]
Shared Sub RandomNilai(ByRef Num() As Integer)
  Dim i As Integer
  Dim Sudah(9) As Integer

  for i=0 to 3
    Do
      Num(i)=Int(Rnd() * 10)
      if Sudah(Num(i))<>1 then Exit Do
    Loop
    Sudah(Num(i))=1  'tanda angka itu sudah dipakai
  Next
End Sub

sub untuk memecah angka (integer) ke array
agak dirubah, menggunakan mod (modulo), sehingga lebih ringkas
Kode: [Pilih]
Shared Sub Pecah(ByVal Num As Integer, ByRef Pecah() As Integer)
  Pecah(0) = Num \ 1000
  Pecah(1) = (Num \ 100) mod 10
  Pecah(2) = (Num \ 10) mod 10
  Pecah(3) = Num mod 10
End Sub

function untuk mengetahui posisi angka di array
return value (nilai function) 0 s/d 3 jika ditemukan, -1 jika tidak
Kode: [Pilih]
Shared Function PosisiDi(ByVal Nilai As Integer, ByVal Pada() As Integer)
  Dim i As Integer
  PosisiDi=-1
  i=0
  Do Until i=4
    if Pada(i)=Nilai then Return(i)
    i=i+1
  Loop
End Function

kemudian langsung aja ke total kodenya
Kode: [Pilih]
Imports System.console
Module Module1
    Dim data(3), angka(3) As Integer
    Dim tebakan As Integer
    Dim i,j,P,Pos As Integer
    Dim R As String

Sub main()
  TampilanAwal
  Randomize()
  RandomNilai(Data)
  i=0
  Do Until i=10
    CursorTop = 9 + i
    CursorLeft = 4
    Tebakan = Console.ReadLine
    Pecahkan(Tebakan, Angka)
    P = 0
    CursorTop = 9 + i
    CursorLeft = 13
    For j=0 to 3
      Pos=PosisiDi(Angka(j), Dari)
      if j=Pos then
        Write(" O")
        P=P+5
        if P=20 then Exit Do
      else if Pos>=0 then
        Write(" /")
      else
        Write(" X")
      end if
    Next
    i= i + 1
  Loop
  CursorTop = 20
  If P=20 Then
    WriteLine("BINGO!! Anda BENAR di tebakan ke-" & i + 1 & "!")
  Else
    WriteLine("Semua tebakan anda salah. Anda parah dalam menebak angka.")
  End If
  WriteLine()
  Write("Jawaban yang benar adalah : ")
  For i = 0 To 3
    Write(data(i))
  Next
End Sub


'Selanjutnya Sub/Function yang tadi
Shared Sub TampilanAwal()
        WriteLine("----------------------BINGO!!------------------------")
        WriteLine()
        WriteLine("Tebak angka 4 digit dengan angka berbeda [1023-9876].")
        WriteLine("Anda diberi kesempatan 10 x menebak.")
        WriteLine("- Tanda O menunjukkan angka dan posisi benar.")
        WriteLine("- Tanda / menunjukkan angka benar, tapi posisi salah.")
        WriteLine("- Tanda X menunjukkan angka salah.")
        WriteLine()
        WriteLine("Masukkan tebakan anda : ")
        WriteLine("1.  ____ [         ]")
        WriteLine("2.  ____ [         ]")
        WriteLine("3.  ____ [         ]")
        WriteLine("4.  ____ [         ]")
        WriteLine("5.  ____ [         ]")
        WriteLine("6.  ____ [         ]")
        WriteLine("7.  ____ [         ]")
        WriteLine("8.  ____ [         ]")
        WriteLine("9.  ____ [         ]")
        WriteLine("10. ____ [         ]")
End Sub

Shared Sub RandomNilai(ByRef Num() As Integer)
  Dim i As Integer
  Dim Sudah(9) As Integer

  for i=0 to 3
    Do
      Num(i)=Int(Rnd() * 10)
      if Sudah(Num(i))<>1 then Exit Do
    Loop
    Sudah(Num(i))=1  'tanda angka itu sudah dipakai
  Next
End Sub

Shared Sub Pecah(ByVal Num As Integer, ByRef Pecah() As Integer)
  Pecah(0) = Num \ 1000
  Pecah(1) = (Num \ 100) mod 10
  Pecah(2) = (Num \ 10) mod 10
  Pecah(3) = Num mod 10
End Sub

Shared Function PosisiDi(ByVal Nilai As Integer, ByVal Pada() As Integer)
  Dim i As Integer
  PosisiDi=-1
  i=0
  Do Until i=4
    if Pada(i)=Nilai then Return(i)
    i=i+1
  Loop
End Function

End Module

mungkin jadi lebih panjang, tapi kalau mengerti sub dan function jadi lebih mudah dibaca

CATATAN: CODE BELUM TENTU VALID..(karena ga ada VB.Net 2005)

Offline sisca, chemistry

  • Profesor
  • *****
  • Tulisan: 6.977
  • IQ: 222
  • Gender: Wanita
  • I'm a medical student now!! :D
    • Click and Find
Re: program keren VB.net nihh...
« Jawab #16 pada: Oktober 30, 2010, 11:36:14 AM »
wahh..
TQ bang adisae.. ^^
Ntar saya coba.. :D :D
~ You are what you eat ~

Offline sisca, chemistry

  • Profesor
  • *****
  • Tulisan: 6.977
  • IQ: 222
  • Gender: Wanita
  • I'm a medical student now!! :D
    • Click and Find
Re: program keren VB.net nihh...
« Jawab #17 pada: November 01, 2010, 10:11:02 AM »
Imports System.console
Module Module1
    Dim data(3), angka(3) As Integer
    Dim tebakan As Integer
    Dim i,j,P,Pos As Integer
    Dim R As String

Sub main()
  TampilanAwal
  Randomize()
  RandomNilai(Data)
  i=0
  Do Until i=10
    CursorTop = 9 + i
    CursorLeft = 4
    Tebakan = Console.ReadLine
    Pecahkan(Tebakan, Angka)
    P = 0
    CursorTop = 9 + i
    CursorLeft = 13
    For j=0 to 3
      Pos=PosisiDi(Angka(j), Dari)
      if j=Pos then
        Write(" O")
        P=P+5
        if P=20 then Exit Do
      else if Pos>=0 then
        Write(" /")
      else
        Write(" X")
      end if
    Next
    i= i + 1
  Loop
  CursorTop = 20
  If P=20 Then
    WriteLine("BINGO!! Anda BENAR di tebakan ke-" & i + 1 & "!")
  Else
    WriteLine("Semua tebakan anda salah. Anda parah dalam menebak angka.")
  End If
  WriteLine()
  Write("Jawaban yang benar adalah : ")
  For i = 0 To 3
    Write(data(i))
  Next
End Sub

pecahkan dan "dari" itu gak dideklarasikan bang?

Offline adisae

  • Dosen
  • ****
  • Tulisan: 310
  • IQ: 8
Re: program keren VB.net nihh...
« Jawab #18 pada: November 01, 2010, 11:04:17 PM »
o iya ralat..
sub Pecah harusnya Pecahkan
Kode: [Pilih]
Shared Sub Pecahkan(ByVal Num As Integer, ByRef Pecah() As Integer)
  Pecah(0) = Num \ 1000
  Pecah(1) = (Num \ 100) mod 10
  Pecah(2) = (Num \ 10) mod 10
  Pecah(3) = Num mod 10
End Sub

Dari diganti Data
Kode: [Pilih]
      Pos=PosisiDi(Angka(j), Data)

Offline sisca, chemistry

  • Profesor
  • *****
  • Tulisan: 6.977
  • IQ: 222
  • Gender: Wanita
  • I'm a medical student now!! :D
    • Click and Find
Re: program keren VB.net nihh...
« Jawab #19 pada: November 02, 2010, 05:02:59 AM »
oo..
ok ok..
terus bang..
gimana caranya bikin angka tebakan kita itu tidak berulang bang?

Offline adisae

  • Dosen
  • ****
  • Tulisan: 310
  • IQ: 8
Re: program keren VB.net nihh...
« Jawab #20 pada: November 03, 2010, 12:04:14 AM »
maksudnya biar yang udah ditebak ga bisa ditebak lagi yah?
atau gimana?

Offline sisca, chemistry

  • Profesor
  • *****
  • Tulisan: 6.977
  • IQ: 222
  • Gender: Wanita
  • I'm a medical student now!! :D
    • Click and Find
Re: program keren VB.net nihh...
« Jawab #21 pada: November 04, 2010, 06:44:27 AM »
urm..

maksudna..
data(i) jangan 2334 gitu..
kan "3"nya berulang..
hehehe.. :D

Offline adisae

  • Dosen
  • ****
  • Tulisan: 310
  • IQ: 8
Re: program keren VB.net nihh...
« Jawab #22 pada: November 05, 2010, 12:20:46 AM »
hadoh.. y rumit sis..
sebenere itu resiko yang nebak lah.. ;)

mau diaplikasikan kayak apa dulu?
jika ada yang tebakan ke n ada yangkembar maka ??? ???
a. kembali minta tebakan ke n?
b. cuma keluar peringatan aja lanjut ke tebakan berikutnya, ke (n+1)

Offline sisca, chemistry

  • Profesor
  • *****
  • Tulisan: 6.977
  • IQ: 222
  • Gender: Wanita
  • I'm a medical student now!! :D
    • Click and Find
Re: program keren VB.net nihh...
« Jawab #23 pada: November 05, 2010, 02:56:47 PM »
aa..
bingung.. =))

Offline insan sains

  • Staff
  • Profesor
  • *****
  • Tulisan: 579
  • IQ: 68
  • Gender: Pria
  • Life is Beatiful
    • Insan Sains
Re: program keren VB.net nihh...
« Jawab #24 pada: November 16, 2010, 09:54:19 AM »
gmn nie hasilnya? pengen tahu... :D
Menuju Indonesia sebagai THE COUNTRY MASTER OF TECHNOLOGY, 2030

Offline sisca, chemistry

  • Profesor
  • *****
  • Tulisan: 6.977
  • IQ: 222
  • Gender: Wanita
  • I'm a medical student now!! :D
    • Click and Find
Re: program keren VB.net nihh...
« Jawab #25 pada: November 16, 2010, 10:33:30 AM »
ohh..
uda ada bung insan..
Tapi berhubung laptop sisca yang bisa VB lagi rusak, ndak bisa dibuka deh.. hahahhaa..
Besok bung sisca post di sini.. ^^
:D

Offline insan sains

  • Staff
  • Profesor
  • *****
  • Tulisan: 579
  • IQ: 68
  • Gender: Pria
  • Life is Beatiful
    • Insan Sains
Re: program keren VB.net nihh...
« Jawab #26 pada: November 17, 2010, 05:57:02 AM »
@Sisca : ditungguuuuu... :)

Offline sisca, chemistry

  • Profesor
  • *****
  • Tulisan: 6.977
  • IQ: 222
  • Gender: Wanita
  • I'm a medical student now!! :D
    • Click and Find
Re: program keren VB.net nihh...
« Jawab #27 pada: November 21, 2010, 10:59:20 AM »
maap nih mas.. hahaa..
baru OL dari sp**dy..
heheh..
ini dia.. ^^

Offline sisca, chemistry

  • Profesor
  • *****
  • Tulisan: 6.977
  • IQ: 222
  • Gender: Wanita
  • I'm a medical student now!! :D
    • Click and Find
Re: program keren VB.net nihh...
« Jawab #28 pada: November 21, 2010, 11:05:53 AM »
ini yang setelah sisca modif2..
wkwkkwk~

Kalo mau di jalankan, hati2 ya mas.. hehehe..
Ada ranjau.. =))

Offline insan sains

  • Staff
  • Profesor
  • *****
  • Tulisan: 579
  • IQ: 68
  • Gender: Pria
  • Life is Beatiful
    • Insan Sains
Re: program keren VB.net nihh...
« Jawab #29 pada: November 21, 2010, 11:17:45 AM »
@Sisca
Gak bisa dijalanin nie. Gak ada VB soalnya. Ada program yang udah dijadiin executablesnya gak?

 

Related Topics

  Subyek / Dimulai oleh Jawaban Tulisan terakhir
7 Jawaban
8136 Dilihat
Tulisan terakhir Desember 18, 2008, 04:14:56 AM
oleh kn8_satria
JaM keren

Dimulai oleh L « 1 2 » Olah Otak

25 Jawaban
12331 Dilihat
Tulisan terakhir September 04, 2008, 04:39:49 AM
oleh L
0 Jawaban
2071 Dilihat
Tulisan terakhir Mei 01, 2010, 02:07:25 PM
oleh SubaruHoshikawa
1 Jawaban
2777 Dilihat
Tulisan terakhir Agustus 07, 2010, 12:09:05 PM
oleh sisca, chemistry
3 Jawaban
7439 Dilihat
Tulisan terakhir Oktober 08, 2011, 04:02:12 PM
oleh nate river