All pastes #758006 Raw Edit

Someone

public text v1 · immutable
·published 2007-11-01 20:38 UTC
rendered paste body
Option Strict On
Imports System.Console

Module Module1
    Sub Main()
        Dim StrYkkoset, StrKakkoset, StrKolmoset, StrNeloset, StrVitoset, StrKutoset As String
        Dim StrPari, StrKaksiparia, StrKolmesamaa, StrNeljasamaa, StrPienisuora, StrSuurisuora As String
        Dim StrMokki, StrSattuma, StrYatzy As String

        Dim IntYkkoset_pisteet, IntKakkoset_pisteet, IntKolmoset_pisteet, IntNeloset_pisteet, IntVitoset_pisteet As Integer
        Dim IntKutoset_pisteet, IntPari_pisteet, IntKaksiparia_pisteet, IntKolmesamaa_pisteet, IntNeljasamaa_pisteet As Integer
        Dim IntPienisuora_pisteet, IntSuurisuora_pisteet, IntMokki_pisteet, IntSattuma_pisteet, IntYatzy_pisteet As Integer

        Dim ykkoset_test, kakkoset_test, kolmoset_test, neloset_test, vitoset_test, kutoset_test As Boolean
        Dim pari_test, kaksiparia_test, kolmesamaa_test, neljasamaa_test, pienisuora_test, suurisuora_test As Boolean
        Dim mokki_test, sattuma_test, yatzy_test As Boolean

        Dim laskuri As Integer
        Dim heitto(4) As Integer
        Dim IntValitselokero As Integer
        Dim i, a, z As Integer

        ykkoset_test = True
        kakkoset_test = True
        kolmoset_test = True
        neloset_test = True
        vitoset_test = True
        kutoset_test = True
        pari_test = True
        kaksiparia_test = True
        kolmesamaa_test = True
        neljasamaa_test = True
        pienisuora_test = True
        suurisuora_test = True
        mokki_test = True
        sattuma_test = True
        yatzy_test = True

        For i = 1 To 15
            For z = 0 To 4
                Randomize()
                heitto(z) = CInt(Int(6 * Rnd()))
            Next
            WriteLine("Heitit seuraavat silmäluvut:")
            WriteLine()
            WriteLine(heitto(0) & ", " & heitto(1) & ", " & heitto(2) & ", " & heitto(3) & " ja " & heitto(4))
            WriteLine()
            If ykkoset_test = True Then
                StrYkkoset = ("  1: Ykköset")
            Else : StrYkkoset = ("")
            End If
            If kakkoset_test = True Then
                StrKakkoset = ("  2: Kakkoset")
            Else : StrKakkoset = ("")
            End If
            If kolmoset_test = True Then
                StrKolmoset = ("  3: Kolmoset")
            Else : StrKolmoset = ("")
            End If
            If neloset_test = True Then
                StrNeloset = ("  4: Neloset")
            Else : StrNeloset = ("")
            End If
            If vitoset_test = True Then
                StrVitoset = ("  5: Vitoset")
            Else : StrVitoset = ("")
            End If
            If kutoset_test = True Then
                StrKutoset = ("  6: Kutoset")
            Else : StrKutoset = ("")
            End If
            If pari_test = True Then
                StrPari = ("  7: Pari")
            Else : StrPari = ("")
            End If
            If kaksiparia_test = True Then
                StrKaksiparia = ("  8: Kaksi paria")
            Else : StrKaksiparia = ("")
            End If
            If kolmesamaa_test = True Then
                StrKolmesamaa = ("  9: Kolme Samaa")
            Else : StrKolmesamaa = ("")
            End If
            If neljasamaa_test = True Then
                StrNeljasamaa = ("  10: Neljä samaa")
            Else : StrNeljasamaa = ("")
            End If
            If pienisuora_test = True Then
                StrPienisuora = ("  11: Pieni suora")
            Else : StrPienisuora = ("")
            End If
            If suurisuora_test = True Then
                StrSuurisuora = ("  12: Suuri suora")
            Else : StrSuurisuora = ("")
            End If
            If mokki_test = True Then
                StrMokki = ("  13: Mökki")
            Else : StrMokki = ("")
            End If
            If sattuma_test = True Then
                StrSattuma = ("  14: Sattuma")
            Else : StrSattuma = ("")
            End If
            If yatzy_test = True Then
                StrYatzy = ("  15: Yatzy")
            Else : StrYatzy = ("")
            End If
            Do
                WriteLine("Valitse vapaa paikka.")
                WriteLine("Vapaita paikkoja ovat:")
                WriteLine()
                WriteLine(StrYkkoset & "" & StrKakkoset & "" & StrKolmoset & "" & StrNeloset & "" & StrVitoset)
                WriteLine(StrKutoset & "" & StrPari & "" & StrKaksiparia & "" & StrKolmesamaa & "" & StrNeljasamaa)
                WriteLine(StrPienisuora & "" & StrSuurisuora & "" & StrMokki & "" & StrSattuma & "" & StrYatzy)
                WriteLine()
                WriteLine("Valitse lokero syöttämällä sitä vastaava numero:")
                WriteLine()
                IntValitselokero = CInt(ReadLine())
                WriteLine()
                If IntValitselokero < 1 Or IntValitselokero > 12 Then
                    WriteLine()
                    WriteLine("Lokero on valittava numeroilla 1-12. Yritä uudestaan.")
                    WriteLine()
                End If

                Select Case IntValitselokero
                    ' Katsotaan minkä lokeron käyttäjä on valinnut, ja tarkistetaan kunkin lokeron kohdalla onko käyttäjä
                    ' oikeasti heittänyt lokeroon sopivat silmäluvut:

                    Case Is = 1
                        ykkoset_test = False
                        For a = 0 To 4
                            If heitto(a) = 1 Then
                                laskuri = laskuri + 1
                            End If
                        Next
                        If laskuri >= 1 Then
                            WriteLine("Heitit lokeroon sopivat silmäluvut. Laske saamasi pisteet:")
                            IntYkkoset_pisteet = CInt(ReadLine())
                        Else
                            WriteLine("Et heittänyt lokeroon sopivia silmälukuja. Sait lokeroon 0 pistettä.")
                            IntYkkoset_pisteet = 0
                        End If
                        laskuri = 0
                        ' __________________________________________________
                        ' Ykköset-lokero on tarkistettu ja pisteytetty yllä.

                    Case Is = 2
                        kakkoset_test = False
                        For a = 0 To 4
                            If heitto(a) = 2 Then
                                laskuri = laskuri + 1
                            End If
                        Next
                        If laskuri >= 1 Then
                            WriteLine("Heitit lokeroon sopivat silmäluvut. Laske saamasi pisteet:")
                            IntKakkoset_pisteet = CInt(ReadLine())
                        Else
                            WriteLine("Et heittänyt lokeroon sopivia silmälukuja. Sait lokeroon 0 pistettä.")
                            IntKakkoset_pisteet = 0
                        End If
                        laskuri = 0
                        '___________________________________________________
                        ' Kakkoset-lokero on tarkistettu ja pisteytetty yllä.

                    Case Is = 3
                        kolmoset_test = False
                        For a = 0 To 4
                            If heitto(a) = 3 Then
                                laskuri = laskuri + 1
                            End If
                        Next
                        If laskuri >= 1 Then
                            WriteLine("Heitit lokeroon sopivat silmäluvut. Laske saamasi pisteet:")
                            IntKolmoset_pisteet = CInt(ReadLine())
                        Else
                            WriteLine("Et heittänyt lokeroon sopivia silmälukuja. Sait lokeroon 0 pistettä.")
                            IntKolmoset_pisteet = 0
                        End If
                        laskuri = 0
                        '____________________________________________________
                        ' Kolmoset-lokero on tarkistettu ja pisteytetty yllä.

                    Case Is = 4
                        neloset_test = False
                        For a = 0 To 4
                            If heitto(a) = 4 Then
                                laskuri = laskuri + 1
                            End If
                        Next
                        If laskuri >= 1 Then
                            WriteLine("Heitit lokeroon sopivat silmäluvut. Laske saamasi pisteet:")
                            IntNeloset_pisteet = CInt(ReadLine())
                        Else
                            WriteLine("Et heittänyt lokeroon sopivia silmälukuja. Sait lokeroon 0 pistettä.")
                            IntNeloset_pisteet = 0
                        End If
                        laskuri = 0
                        '____________________________________________________
                        ' Neloset-lokero on tarkistettu ja pisteytetty yllä.

                    Case Is = 5
                        vitoset_test = False
                        For a = 0 To 4
                            If heitto(a) = 5 Then
                                laskuri = laskuri + 1
                            End If
                        Next
                        If laskuri >= 1 Then
                            WriteLine("Heitit lokeroon sopivat silmäluvut. Laske saamasi pisteet:")
                            IntVitoset_pisteet = CInt(ReadLine())
                        Else
                            WriteLine("Et heittänyt lokeroon sopivia silmälukuja. Sait lokeroon 0 pistettä.")
                            IntVitoset_pisteet = 0
                        End If
                        laskuri = 0
                        '____________________________________________________
                        ' Neloset-lokero on tarkistettu ja pisteytetty yllä.

                    Case Is = 6
                        kutoset_test = False
                        WriteLine("Montako pistettä laskit lokeroon? (Laske kaikki heittämäsi kutoset yhteen)")
                        IntKutoset_pisteet = CInt(ReadLine())
                    Case Is = 7
                        pari_test = False
                        WriteLine("Montako pistettä laskit lokeroon? (Laske parin silmäluvut yhteen)")
                        IntPari_pisteet = CInt(ReadLine())
                    Case Is = 8
                        kaksiparia_test = False
                        WriteLine("Montako pistettä laskit lokeroon? (Laske molempien parien silmäluvut yhteen)")
                        IntKaksiparia_pisteet = CInt(ReadLine())
                    Case Is = 9
                        kolmesamaa_test = False
                        WriteLine("Montako pistettä laskit lokeroon? (Laske saamasi kolme samaa silmälukua yhteen)")
                        IntKolmesamaa_pisteet = CInt(ReadLine())
                    Case Is = 10
                        neljasamaa_test = False
                        WriteLine("Montako pistettä laskit lokeroon? (Laske saamasi neljä samaa silmälukua yhteen)")
                        IntNeljasamaa_pisteet = CInt(ReadLine())
                    Case Is = 11
                        pienisuora_test = False
                        WriteLine("Jos sait pienen suoran, saat 15 pistettä. Jollet, saat 0.")

                    Case Is = 12
                        suurisuora_test = False
                    Case Is = 13
                        mokki_test = False
                    Case Is = 14
                        sattuma_test = False
                    Case Is = 15
                        yatzy_test = False
                End Select
            Loop Until IntValitselokero >= 1 And IntValitselokero <= 15
        Next
        ReadLine()
    End Sub
End Module