Informática, perguntado por GalSilva91, 4 meses atrás

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

Respondido por marcosintergo
1

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.

Perguntas interessantes