• Matéria: Informática
  • Autor: paulosergio271
  • Perguntado 8 anos atrás

Alguem Pode ajudar?   (Visualg)1. Em um jogo de adivinhação, o jogador deve descobrir um número entre 1 e 10 usando até três tentativas. A cada tentativa o jogador é informado se o número foi descoberto, ou se ele é maior ou menor do que a tentativa. Se após três tentativas o jogador não descobrir o número, então ele perde o jogo. Faça um algoritmo que implemente esse jogo.2. Faça um algoritmo que mostre um triângulo composto por caracteres “#”. O tamanho da base deve ser informado pelo teclado, e deve ser no mínimo 5 e no máximo 15.


isabelabborges: Em linguagem C ?
isabelabborges: ; )

Respostas

respondido por: cledersonbc
20
O VisuAlg tem uma função chamada rand. Ela retorna um valor maior ou igual a zero e menor que um: 0 ≤ x < 1. Exemplo de valores possíveis de serem gerados:
0,00000001...
0,10474885...
0,21545784...
...
0,99985422...

Se multiplicarmos esses valores por 10, teremos:
0,0000001...
1,0474885...
2,1545784...
...
9,9985422...

Mas queremos um número inteiro, não é verdade? Para isso podemos usar uma outra função chamada int() que retorna a parte inteira de um número.
int(0,0000001...) = 0
int(1,0474885...) = 1
int(2,1545784...) = 2
...
int(9,9985422...) = 9

Como o valor máximo será 9 ao multiplicarmos por 10, devemos multiplicar por 11 o número aleatório que foi gerado, assim o maior valor possível será 10 e não 9. Algoritmo:

algoritmo "ExBrainly"
var
   n: inteiro //numero a ser gerado
   x: inteiro // tentativas do usuario
   i: inteiro //contador
inicio
      n <- int(rand * 11)
      x <- -1 //se X for 0 e N for 0 o usuário pode acertar, por isso -1
      i <- 1
     
      escrevaL("Tente advinhar um numero entre 1 e 10. Voce tem 3 tentativas.")
      enquanto (i <= 3) e (x <> n) faca
           escreva(i, " tentativa: ")
           leia(x)
          
           se (x = n) entao
              escrevaL("ACERTOU")
           senao
                se (x > n) entao
                   escrevaL("O numero e menor")
                senao
                    escrevaL("O numero e maior")
                fimse
           fimse
           i <- i + 1
      fimenquanto
     
      se (x <> n) entao
         escrevaL("Tentativas esgotadas")
      fimse
fimalgoritmo

Perguntas similares