Faça um Programa para controlar o acesso de pessoas a um restaurante. O restaurante possui uma capacidade de 40 vagas, que não poderá ser ultrapassada. O controle se dará através de códigos, conforme a tabela:
0 – FIM
1 – ENTRA UMA PESSOA (escrever: “Entrou”)
2 – SAI UMA PESSOA (escrever: “Saiu”)
3 – MOSTRAR QUANTOS LUGARES ESTÃO DISPONÍVEIS
4 – MOSTRAR O TOTAL DE PESSOAS QUE ENTRARAM
5 – MOSTRAR O TOTAL DE PESSOAS QUE SAÍRAM
Outro código escrever: “Código Inválido”
USANDO O PORTUGOL!! :)
Soluções para a tarefa
Resposta:
1. Algoritmo feito no Portugol Studio
programa{
funcao inicio (){
inteiro opcao, max, dentro, livres, sairam
max = 40
dentro = 0
livres = 0
sairam = 0
escreva("1. Entra uma pessoa\n")
escreva("2. Sai uma pessoa\n")
escreva("3. Mostrar quantos lugares estão disponiveis\n")
escreva("4. Mostrar o total de pessoas que entraram\n")
escreva("5. Mostrar o total de pessoas que saíram\n")
escreva("0. Fim\n")
escreva("Escolha uma opção: ")
leia(opcao)
enquanto(opcao != 0){
escolha(opcao){
caso 0:
pare
caso 1:
se (dentro < max){
dentro = dentro + 1
escreva("Entrou\n")
escreva("1. Entra uma pessoa\n")
escreva("2. Sai uma pessoa\n")
escreva("3. Mostrar quantos lugares estão disponíveis\n")
escreva("4. Mostrar o total de pessoas que entraram\n")
escreva("5. Mostrar o total de pessoas que saíram\n")
escreva("0. Fim\n")
escreva("Escolha uma opção: ")
leia(opcao)
} senao {
escreva("A capacidade maxima do restaurante foi atingida.\n")
escreva("1. Entra uma pessoa\n")
escreva("2. Sai uma pessoa\n")
escreva("3. Mostrar quantos lugares estão disponíveis\n")
escreva("4. Mostrar o total de pessoas que entraram\n")
escreva("5. Mostrar o total de pessoas que saíram\n")
escreva("0. Fim\n")
escreva("Escolha uma opção: ")
leia(opcao)
}
pare
caso 2:
dentro = dentro - 1
sairam = sairam + 1
escreva("Saiu\n")
escreva("1. Entra uma pessoa\n")
escreva("2. Sai uma pessoa\n")
escreva("3. Mostrar quantos lugares estão disponíveis\n")
escreva("4. Mostrar o total de pessoas que entraram\n")
escreva("5. Mostrar o total de pessoas que saíram\n")
escreva("0. Fim\n")
escreva("Escolha uma opção: ")
leia(opcao)
pare
caso 3:
livres = max - dentro
escreva("São ", livres, " lugares disponiveis.\n")
escreva("1. Entra uma pessoa\n")
escreva("2. Sai uma pessoa\n")
escreva("3. Mostrar quantos lugares estão disponiveis\n")
escreva("4. Mostrar o total de pessoas que entraram\n")
escreva("5. Mostrar o total de pessoas que saíram\n")
escreva("0. Fim\n")
escreva("Escolha uma opção: ")
leia(opcao)
pare
caso 4:
escreva(dentro, " estão dentro do restaurante.\n")
escreva("1. Entra uma pessoa\n")
escreva("2. Sai uma pessoa\n")
escreva("3. Mostrar quantos lugares estão disponíveis\n")
escreva("4. Mostrar o total de pessoas que entraram\n")
escreva("5. Mostrar o total de pessoas que saíram\n")
escreva("0. Fim\n")
escreva("Escolha uma opção: ")
leia(opcao)
pare
caso 5:
escreva(sairam, " sairam do restaurante.\n")
escreva("1. Entra uma pessoa\n")
escreva("2. Sai uma pessoa\n")
escreva("3. Mostrar quantos lugares estão disponíveis\n")
escreva("4. Mostrar o total de pessoas que entraram\n")
escreva("5. Mostrar o total de pessoas que saíram\n")
escreva("0. Fim\n")
escreva("Escolha uma opção: ")
leia(opcao)
pare
caso contrario:
escreva("Opção invalida.\n")
escreva("1. Entra uma pessoa\n")
escreva("2. Sai uma pessoa\n")
escreva("3. Mostrar quantos lugares estão disponíveis\n")
escreva("4. Mostrar o total de pessoas que entraram\n")
escreva("5. Mostrar o total de pessoas que saíram\n")
escreva("0. Fim\n")
escreva("Escolha uma opção: ")
leia(opcao)
pare
}
}
}
}
2. Algoritmo
algoritmo "controle_do_restaurante"
var
max, dentro, livres, sairam: inteiro;
inicio
max <- 40
dentro <- 0
livres <- 0
sairam <- 0
escreval("1. Entra uma pessoa");
escreval("2. Sai uma pessoa");
escreval("3. Mostrar quantos lugares estão disponíveis");
escreval("4. Mostrar o total de pessoas que entraram");
escreval("5. Mostrar o total de pessoas que saíram");
escreval("0. Fim");
escreval("Escolha uma opção: ");
leia(opcao);
enquanto(opcao != 0) faça
escolha(0):
pare;
escolha(1):
se(dentro < max) entao
dentro = dentro + 1
escreval("1. Entra uma pessoa");
escreval("2. Sai uma pessoa");
escreval("3. Mostrar quantos lugares estão disponíveis");
escreval("4. Mostrar o total de pessoas que entraram");
escreval("5. Mostrar o total de pessoas que saíram");
escreval("0. Fim");
escreval("Escolha uma opção: ");
leia(opcao);
senao
escreval("A capacidade maxima do restaurante foi atingida.");
escreval("1. Entra uma pessoa");
escreval("2. Sai uma pessoa");
escreval("3. Mostrar quantos lugares estão disponíveis");
escreval("4. Mostrar o total de pessoas que entraram");
escreval("5. Mostrar o total de pessoas que saíram");
escreval("0. Fim");
escreval("Escolha uma opção: ");
leia(opcao);
pare
escolha 2
dentro = dentro - 1;
sairam = sairam + 1;
escreval("Saiu");
escreval("1. Entra uma pessoa");
escreval("2. Sai uma pessoa");
escreval("3. Mostrar quantos lugares estão disponíveis");
escreval("4. Mostrar o total de pessoas que entraram");
escreval("5. Mostrar o total de pessoas que saíram");
escreval("0. Fim");
escreval("Escolha uma opção: ");
leia(opcao);
pare
caso 3
livres <- max - dentro;
escreval("São ", livres, " lugares disponíveis.")
escreval("1. Entra uma pessoa");
escreval("2. Sai uma pessoa");
escreval("3. Mostrar quantos lugares estão disponíveis");
escreval("4. Mostrar o total de pessoas que entraram");
escreval("5. Mostrar o total de pessoas que saíram");
escreval("0. Fim");
escreval("Escolha uma opção: ");
leia(opcao);
pare
caso 4
escreval(dentro, " estão dentro do restaurante.");
escreval("1. Entra uma pessoa");
escreval("2. Sai uma pessoa");
escreval("3. Mostrar quantos lugares estão disponíveis");
escreval("4. Mostrar o total de pessoas que entraram");
escreval("5. Mostrar o total de pessoas que saíram");
escreval("0. Fim");
escreval("Escolha uma opção: ");
pare
caso 5
escreval(sairam, " sairam do restaurante.");
escreval("1. Entra uma pessoa");
escreval("2. Sai uma pessoa");
escreval("3. Mostrar quantos lugares estão disponíveis");
escreval("4. Mostrar o total de pessoas que entraram");
escreval("5. Mostrar o total de pessoas que saíram");
escreval("0. Fim");
escreval("Escolha uma opção: ");
pare
fimescolha
fimalgoritmo
Explicação:
Dois algoritmos feitos em portugol, o primeiro no portugol studio e o segundo criado em pseudocódigo.
Espero ter ajudado.