Menu
Coddy logo textTech

Resumo - Adivinhador de Números

Parte da seção Fundamentos do Journey de Terminal da Coddy. Lição 73 de 82.

challenge icon

Desafio

Fácil

Crie um shell script chamado guesser.sh que simule um jogo de adivinhação de números com uma sequência fixa de tentativas.

Seu script deve:

  1. Começar com a linha shebang (#!/bin/bash)
  2. Definir uma variável chamada secret com o valor 5
  3. Definir uma variável chamada guess com o valor inicial 0
  4. Usar um loop while que continue enquanto guess não for igual a secret
  5. Dentro do loop, incrementar guess em 1
  6. Usar uma instrução if para verificar a tentativa:
    • Se guess for menor que secret, imprimir: Guess [guess]: Too low!
    • Se guess for igual a secret, imprimir: Guess [guess]: Correct!

Torne o script executável e execute-o. Sua saída deve ser:

Guess 1: Too low!
Guess 2: Too low!
Guess 3: Too low!
Guess 4: Too low!
Guess 5: Correct!

Escrever um script de várias linhas com um echo por linha funciona, mas existe uma maneira mais curta: um documento here envia tudo até a palavra de fechamento diretamente para o arquivo.

cat > script.sh << 'EOF'
#!/bin/bash
echo "hello"
EOF

As aspas ao redor de 'EOF' impedem que $variables sejam expandidas enquanto o arquivo é escrito, que é exatamente o que você quer quando o próprio script as utiliza.

Dica: Use -ne para "not equal" na condição while, -lt para "less than" na instrução if e -eq para "equal to". Incremente a tentativa no início de cada iteração do loop com guess=$((guess + 1)).

Experimente você mesmo

Terminal

Todas as lições de Fundamentos

Pratique por conta própria: Playground de Terminal