diff --git a/desafios/03/README.org b/desafios/03/README.org
new file mode 100644
index 0000000..bd887b9
--- /dev/null
+++ b/desafios/03/README.org
@@ -0,0 +1,81 @@
+#+title: Shell Script na Prática
+#+author: Blau Araujo
+#+email: blau@debxp.org
+
+
+* Desafio 3: Jogo da adivinhação
+
+** Objetivos
+
+- Estrutura de decisão
+- Números aleatórios
+- Operação de módulo (resto)
+- Repetições condicionais
+- Execução de comandos em paralelo
+
+** Enunciado
+
+No jogo da adivinhação, a pessoa jogadora tem que adivinhar um número oculto
+entre 0 e 100 que é gerado aleatoriamente pelo programa. A mensagem inicial
+deve ser:
+
+#+begin_example
+JOGO DA ADIVINHAÇÃO
+#+end_example
+
+O /prompt/ da entrada de cada palpite deve ser:
+
+#+begin_example
+Digite um número entre 0 e 100:
+#+end_example
+
+Se o palpite for menor do que o número oculto, o programa deve imprimir:
+
+#+begin_example
+Baixo demais.
+Digite um número entre 0 e 100:
+#+end_example
+
+Se for maior, a mensagem será:
+
+#+begin_example
+Alto demais.
+Digite um número entre 0 e 100:
+#+end_example
+
+Acertando, o programa termina imprimindo a mensagem:
+
+#+begin_example
+Parabéns! Você acertou com tentativas!
+#+end_example
+
+Onde ~~ deve ser o número de palpites dados.
+
+** Evolução 1
+
+Em vez de terminar diretamente, o programa deve perguntar:
+
+#+begin_example
+Quer jogar novamente (s/N)?
+#+end_example
+
+Onde a opção padrão, teclando ~[Enter]~, será ~N~ (de "não"). Caso seja teclado
+~s~ (maiúsculo ou minúsculo), o terminal deve ser limpo.
+
+** Evolução 2
+
+A cada /prompt/ de palpite, se for digitado ~q~ (maiúsculo ou minúsculo),
+o jogo deve terminar com a mensagem:
+
+#+begin_example
+Que vergonha... Vaza!
+#+end_example
+
+** Evolução 3
+
+Ao imprimir a mensagem de acerto, um pequeno áudio de vitória deve ser
+tocado.
+
+Ao imprimir a provocação final, um áudio de galinhas cacarejando deve
+ser tocado. Esse mesmo áudio deve ser tocado se a pessoa jogadora decidir
+não jogar novamente.