Visual Basic 150-200 Kelime Arasından Rastgele Seçim Yapmak

Yardım edebilirsimin?

  • Walla bi bilgim yok krşm

    Kullanılan: 4 80.0%
  • Yardım etmeye çalışacağım

    Kullanılan: 0 0.0%
  • Ettim bile

    Kullanılan: 1 20.0%

  • Kullanılan toplam oy
    5

Bu konuyu okuyanlar

Kırmızı_iPhone

Öğrenci
Katılım
21 Aralık 2017
Mesajlar
26
Reaksiyon puanı
0
Puanları
3
Yaş
38
Arkadaşlar proje ödevim var bir bilgisayar oyunu yapıyorum oyunla ilgili benim seçtiğim kelimelerin arasından 1 tane seçicek.Daha sonra tuş tıklandıktan yada süre bittikten sonra o kelime ile ilgili başka bir şey göstericek. mesela 3 geldiğinde buton tıklanınca "üç" 2 geldiğinde buton tıklanınca "2" yazması gerekiyor.
Kelimeleri programa nası tanıtıcam ve aralarından nasıl rastgele seçim yaptıracağım.

---- Mesajlar birleştirildi ----

Kimse yokmu

---- Mesajlar birleştirildi ----

Refresh tuşu bozuldu :D
 

Kırmızı_iPhone

Öğrenci
Katılım
21 Aralık 2017
Mesajlar
26
Reaksiyon puanı
0
Puanları
3
Yaş
38
Hocam çözdüm bu arada acele etmemin sebebi proje notum buna bağlı
Çözümü yukarıya yazacağım

---- Mesajlar birleştirildi ----

düzenleyemiyorum

---- Mesajlar birleştirildi ----

Buraya yazayım
RND ile label a rastgele bir sayı yazdırıyoruz
İf ile sayıyı kontrol ediyoruz ve her sayıya birer kelime atıyoruz
Kelimeleri başka bir labela yazdırıyoruz
 
Son düzenleme:

MrtAltg

Müdavim
Emektar
Katılım
22 Şubat 2007
Mesajlar
9,826
Reaksiyon puanı
12,058
Puanları
113
yada ilk olarak
rakam ve kelime değişkenlerini ata
rakam değişkene rnd ile bir değer ver
if ile değişkeni kelimelere ata
kelime değişkeni label de yazdır
 

kmurat

Müdavim
Katılım
8 Şubat 2014
Mesajlar
8,486
Çözümler
3
Reaksiyon puanı
3,709
Puanları
113
Diziler kullan (Array) ve dizi içinden rastgele okut.
 

Samet UCA

Müdavim
Katılım
3 Ağustos 2012
Mesajlar
3,277
Reaksiyon puanı
2,912
Puanları
113

Böyle bir şey istiyorsan eğer IF sorgusu uygulamayı çok uzatır. Direk index değeri üzerinden diziden kelimeyi çekebilirsin.
Rastgele üretilen sayıyı da diğer label'e yazdırırsın.

1.png
 

Kırmızı_iPhone

Öğrenci
Katılım
21 Aralık 2017
Mesajlar
26
Reaksiyon puanı
0
Puanları
3
Yaş
38
Böyle bir şey istiyorsan eğer IF sorgusu uygulamayı çok uzatır. Direk index değeri üzerinden diziden kelimeyi çekebilirsin.
Rastgele üretilen sayıyı da diğer label'e yazdırırsın.

Ekli dosyayı görüntüle 38583
Sorun şu ben Visual Basic de programlıyorum ve if ile fazla uzun olmadı.
If Label7.Text = "35" Then ListBox1.Items.Add("puzzles")

---- Mesajlar birleştirildi ----

Bu C# yada C++ oluyo sanırım
 
Son düzenleme:

Samet UCA

Müdavim
Katılım
3 Ağustos 2012
Mesajlar
3,277
Reaksiyon puanı
2,912
Puanları
113
Sorun şu ben Visual Basic de programlıyorum ve if ile fazla uzun olmadı.
If Label7.Text = "35" Then ListBox1.Items.Add("puzzles")

---- Mesajlar birleştirildi ----

Bu C# yada C++ oluyo sanırım
Evet bu C#. VB ise çok daha basit bir dil bunu VB ye çevirebiliriz eğer projeniz devam ediyor ise?
 

Samet UCA

Müdavim
Katılım
3 Ağustos 2012
Mesajlar
3,277
Reaksiyon puanı
2,912
Puanları
113
1.png


Şöyle bir şey yaptım
Kod:
Public Class Form1
    Public Function GetRandom(ByVal min As Integer, ByVal max As Integer) As Integer
        Static staticRandomGenerator As New System.Random
        max += 1
        Return staticRandomGenerator.Next(If(min > max, max, min), If(min > max, min, max))
    End Function
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        '------> Tüm değerleri sıfırlıyoruz.
        labeloyuncu1baslik.ForeColor = Color.Black
        labeloyuncu2baslik.ForeColor = Color.Black
        labeloyuncu3baslik.ForeColor = Color.Black

        labeloyuncu1puani.ForeColor = Color.Black
        labeloyuncu2puani.ForeColor = Color.Black
        labeloyuncu3puani.ForeColor = Color.Black
        ' Tüm değerleri sıfırlıyoruz <-----------.

        '1 ile 3 arasında rastgele sayi üretiyoruz ve üretilen sayıya göre işlem yapıyoruz
        Dim rastgelesayiüret = GetRandom(1, 3)
        '1 ile 250 arasında rastgele sayi üretiyoruz ve bu sayıyı yukarıda üretilen sayıya atıyoruz
        Dim puanüret = GetRandom(1, 250)

        'İlk ürettiğimiz sayıyı masa puanı olarak yazıyor ki kim ne kadar kazandı bilelim.
        labelmasadakipuan.Text = puanüret

        If rastgelesayiüret = 1 Then
            labelsanslioyuncu.Text = "1"
            labeloyuncu1puani.Text += puanüret
            labeloyuncu1baslik.ForeColor = Color.SeaGreen
            labeloyuncu1puani.ForeColor = Color.SeaGreen

        End If
        If rastgelesayiüret = 2 Then
            labelsanslioyuncu.Text = "2"
            labeloyuncu2puani.Text += puanüret
            labeloyuncu2baslik.ForeColor = Color.SeaGreen
            labeloyuncu2puani.ForeColor = Color.SeaGreen
        End If
        If rastgelesayiüret = 3 Then
            labelsanslioyuncu.Text = "3"
            labeloyuncu3puani.Text += puanüret
            labeloyuncu3baslik.ForeColor = Color.SeaGreen
            labeloyuncu3puani.ForeColor = Color.SeaGreen
        End If


    End Sub
End Class

Proje dosyası
WindowsApp1.rar » Dosya.Pro
 

Kırmızı_iPhone

Öğrenci
Katılım
21 Aralık 2017
Mesajlar
26
Reaksiyon puanı
0
Puanları
3
Yaş
38
Ekli dosyayı görüntüle 39233

Şöyle bir şey yaptım
Kod:
Public Class Form1
    Public Function GetRandom(ByVal min As Integer, ByVal max As Integer) As Integer
        Static staticRandomGenerator As New System.Random
        max += 1
        Return staticRandomGenerator.Next(If(min > max, max, min), If(min > max, min, max))
    End Function
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        '------> Tüm değerleri sıfırlıyoruz.
        labeloyuncu1baslik.ForeColor = Color.Black
        labeloyuncu2baslik.ForeColor = Color.Black
        labeloyuncu3baslik.ForeColor = Color.Black

        labeloyuncu1puani.ForeColor = Color.Black
        labeloyuncu2puani.ForeColor = Color.Black
        labeloyuncu3puani.ForeColor = Color.Black
        ' Tüm değerleri sıfırlıyoruz <-----------.

        '1 ile 3 arasında rastgele sayi üretiyoruz ve üretilen sayıya göre işlem yapıyoruz
        Dim rastgelesayiüret = GetRandom(1, 3)
        '1 ile 250 arasında rastgele sayi üretiyoruz ve bu sayıyı yukarıda üretilen sayıya atıyoruz
        Dim puanüret = GetRandom(1, 250)

        'İlk ürettiğimiz sayıyı masa puanı olarak yazıyor ki kim ne kadar kazandı bilelim.
        labelmasadakipuan.Text = puanüret

        If rastgelesayiüret = 1 Then
            labelsanslioyuncu.Text = "1"
            labeloyuncu1puani.Text += puanüret
            labeloyuncu1baslik.ForeColor = Color.SeaGreen
            labeloyuncu1puani.ForeColor = Color.SeaGreen

        End If
        If rastgelesayiüret = 2 Then
            labelsanslioyuncu.Text = "2"
            labeloyuncu2puani.Text += puanüret
            labeloyuncu2baslik.ForeColor = Color.SeaGreen
            labeloyuncu2puani.ForeColor = Color.SeaGreen
        End If
        If rastgelesayiüret = 3 Then
            labelsanslioyuncu.Text = "3"
            labeloyuncu3puani.Text += puanüret
            labeloyuncu3baslik.ForeColor = Color.SeaGreen
            labeloyuncu3puani.ForeColor = Color.SeaGreen
        End If


    End Sub
End Class

Proje dosyası
WindowsApp1.rar » Dosya.Pro
Saol kaptan pc de bakarım
 

algea

Doçent
Katılım
15 Temmuz 2011
Mesajlar
505
Reaksiyon puanı
22
Puanları
18
Rastgele ama nasıl doğru zaman dilimine ulaşacaksın bilmek zor. Sadece doğru zaman gelince full rastgele oluyor…
 
Üst