1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Jogo "Quem quer ser Milionario em VB

Discussão em 'Programação' iniciada por Net_Holer, 2 de Março de 2008. (Respostas: 6; Visualizações: 7439)

  1. Net_Holer

    Net_Holer Power Member

    Boas. Tive a dar uma vista de olhos nesta parte do fórum mas não encontrei o que preciso.

    Tenho de criar um jogo em VB 2005 para a escola... acontece é que não tenho muitos conhecimentos de VB pois demos muito poucas aulas.

    O jogo é ao estilo do quem quer ser milionário por exemplo... ou seja, é um jogo tipo quiz... o objetivo é acertar nas 20 perguntas (cada uma com 4 opcoes) para chegar ao fim. As perguntas devem também aparecer por ordem aleatória e nunca repetidas.

    Alguém me pode ajudar com isto? Um tutorialzito disto (do jogo, não de VB) também era óptimo, encontrei um mas é muito básico não é bem o que eu quero.

    Obrigado desde já ;)
     
  2. balute

    balute Power Member

    Primeiro, vais ter de arranjar uma forma de criar as perguntas para o teu programa.
    Por exemplo, podes utilizar um ficheiro em que cada linha contém a pergunta e 4 possíveis respostas:
    Código:
    Pergunta1_respostaA_respostaB_respostaC_respostaD
    Pergunta2_respostaA_respostaB_respostaC_respostaD
    ...
    E o conteúdo de cada linha terá depois de ser lido e interpretado pelo programa.

    Também podes meter as perguntas directamente no teu programa, mas acho que fica mais feio.
    Utilizando um array de strings de 2 dimensões (1ª = nº da pergunta; 2ª = pergunta + respostas), ficaria algo assim:
    Código:
    Dim perguntas(19, 4) As String = New String() { _
    {"pergunta1", "respostaA", "respostaB", "respostaC", "respostaD"} _
    {"pergunta2", "respostaA", "respostaB", "respostaC", "respostaD"} _
    ...
    }
    Assim até fica mais fácil porque não tens o trabalho de interpretar o conteúdo do ficheiro. Fica logo tudo pronto para ser usado.
    Código:
    perguntas(9, 0) 'devolve a pergunta 10
    perguntas(9, 1) 'devolve a resposta A da pergunta 10
    perguntas(9, 2) 'devolve a resposta B da pergunta 10
    perguntas(9, 3) 'devolve a resposta C da pergunta 10
    perguntas(9, 4) 'devolve a resposta D da pergunta 10
    Ou então, se quiseres que fique mais bonito, podes criar um tipo chamado "Pergunta":
    Código:
    Structure Pergunta
       Dim Texto As String
       Dim Respostas() As String
       Sub Inicializar()
          ReDim Respostas(3)
       End Sub
    End Structure
    E, para criar as perguntas:
    Código:
    Dim Perguntas(19) As Pergunta
    For i As Integer = 0 to 19
      Perguntas(i).Inicializar
    Next
    
    With Perguntas(0)
      .Texto = "pergunta1"
      .Respostas(0) = "respostaA"
      .Respostas(1) = "respostaB"
      .Respostas(2) = "respostaC"
      .Respostas(3) = "respostaD"
    End With
    With Perguntas(1)
      .Texto = "pergunta2"
      .Respostas(0) = "respostaA"
      .Respostas(1) = "respostaB"
      .Respostas(2) = "respostaC"
      .Respostas(3) = "respostaD"
    End With
    ...
    Quanto ao resto... vai tentando fazer e posta aqui dúvidas concretas. ;)
     
    Última edição: 3 de Março de 2008
  3. mOrSa

    mOrSa Power Member

    Eu tornava isso mais difícil e usava uma base de dados para guardar perguntas e respostas! :) era giro :D
     
  4. Net_Holer

    Net_Holer Power Member

    Ш¡zard·σf·Шαr eu usei os dois ultimos codigos que me deste mas nao consigo por o programa a correr da uma serie de erros :|
     
  5. m00s

    m00s Power Member

    posta aí os erros.
     
  6. Net_Holer

    Net_Holer Power Member

    Como sao varios erros eu posto uma imagem... nao sei se da para ter uma ideia dos erros assim de qualquer forma se nao der avisa que eu depois meto todos um a um aqui.

    (Nao pesco quase nada mesmo de VB secalhar sao coisas simples e eu nao faço ideia...)
    [​IMG]
     
  7. balute

    balute Power Member

    Tens que pôr o código dentro de alguma subrotina...
    Por exemplo,
    Código:
    Sub CriarPerguntas()
      'coloca o código aqui
    End Sub
    Depois, para executar esse código, basta chamar esta subrotina (CriarPerguntas).

    Já a Structure, tem que ser posta fora das subrotinas (foi o que fizeste). É criada logo quando executas o programa, tal como acontece com as variáveis globais.
     

Partilhar esta Página