Um homem precisa atravessar um rio com um barco que possui capacidade apenas para carregar ele mesmo e mais uma de suas três cargas, que são: um lobo, um bode e um maço de alfafa. O que o homem deve fazer para conseguir atravessar o rio sem perder suas cargas? Escreva um algoritmo utilizando a linguagem natural para mostrar a resposta, ou seja, indicando todas as ações necessárias para efetuar uma travessia segura.
Passo 1
Antes de tudo, devemos reunir algumas características do problema.
Informações:
- Um barco com 2 lugares;
- Um homem;
- Um lobo;
- Um bode;
- Um maço de alfafa.
E que se ficarem sozinhos (sem a presença do homem):
- Lobo devora bode;
- Bode devora alfafa.
Passo 2
Estando todos em uma margem do rio, a primeira travessia no barco deve ser feita com o homem e o bode, deixando o lobo e o maço de alfafa sozinhos:
Passo 3
Agora, devemos voltar ao lado oposto do rio para buscar um dos remanescentes:
Passo 4
Já no lado oposto, podemos realizar a travessia de volta com o lobo ou o maço de alfafa, nesse caso escolheremos o lobo e deixaremos o maço:
Passo 5
Com o lobo e o bode na outra margem do rio, o homem não pode voltar sem carga para buscar o maço de alfafa, pois o lobo devora o bode:
Passo 6
Já na margem oposta, o mesmo acontece com o bode e o maço de alfafa. Então, o homem deve deixar o bode e atravessar com o maço de alfafa:
Passo 7
Nesse momento, temos em uma margem o Lobo e o maço de alfafa e na outra o bode. Como não há problema em deixar o maço de alfafa e o lobo sozinhos:
Passo 8
Na margem oposta resta apenas o bode, sendo assim:
Resposta
Dessa forma, o algoritmo completo para a realização de travessias seguras é: