Ir ao conteúdo

Posts recomendados

Postado
Algoritmo "Sistema de Restaurante"

tipo

   cardapio = Registro
      nome: Caractere
      valor: Real
   fimregistro

Var

   menu: Real
   cardapio_rest: vetor[1..10] de cardapio
   i, itens: inteiro
   op_menu:vetor [1..3] de Inteiro


Inicio

   Repita
      Escreval("----------------------------------------")
      Escreval("--------       RESTAURANTE       -------")
      Escreval("----------------------------------------")
      Escreval("Opção 1 - Inclusão de itens no cardapio ")
      Escreval("Opção 2 - Registro de pedido ")
      Escreval("Opção 3 - Resumo do pedido ")
      Escreval("Opção 4 - Sair ") // verificar se deixa como opcao 4 ou de deixa ou OUTROCASO
      Escreval("----------------------------------------")
      Escreval("Qual a sua escolha no restaurante? ")
      Leia(menu)
      Escolha(menu)
      Caso 1
         Para i de 1 ate 2 faca // lembrar de alterar para 10
            Escreval("informe os itens no cardapio por dia: ")
            Leia(cardapio_rest[i].nome)
            Escreva("Informe os valores dos itens do cardapio: ")
            Leia(cardapio_rest[i].valor)
         Fimpara

         Escreval("----------------------------------------")
         Para i de 1 ate 2 faca
            Escreval(cardapio_rest[i].nome, cardapio_rest[i].valor)
         Fimpara

      Caso 2
         para i de 1 ate 3 faca
            Escreva("Digite até três itens do cardapio ")
            leia(op_menu[i])
         fimpara

         Escolha op_menu[i]
         caso 1
            pedido_cliente[i] <- cardapio_rest[1].nome
            valor_pedido[i] <- cardapio_rest[1].valor

         caso 2
            pedido_cliente[i] <- cardapio_rest[2].nome
            valor_pedido[i] <- cardapio_rest[2].valor
            
         caso 3
            pedido_cliente[i] <- cardapio_rest[3].nome
            valor_pedido[i] <- cardapio_rest[3].valor
            
         caso 4
            pedido_cliente[i] <- cardapio_rest[4].nome
            valor_pedido[i] <- cardapio_rest[4].valor

         caso 5
            pedido_cliente[i] <- cardapio_rest[5].nome
            valor_pedido[i] <- cardapio_rest[5].valor

         caso 6
            pedido_cliente[i] <- cardapio_rest[6].nome
            valor_pedido[i] <- cardapio_rest[6].valor
            
         caso 7
            pedido_cliente[i] <- cardapio_rest[7].nome
            valor_pedido[i] <- cardapio_rest[7].valor

         caso 8
            pedido_cliente[i] <- cardapio_rest[8].nome
            valor_pedido[i] <- cardapio_rest[8].valor

         caso 9
            pedido_cliente[i] <- cardapio_rest[9].nome
            valor_pedido[i] <- cardapio_rest[9].valor

         caso 10
            pedido_cliente[i] <- cardapio_rest[10].nome
            valor_pedido[i] <- cardapio_rest[10].valor


            Escreval("----------------------------------------")

         caso 3
            Escreval
            Escreval("===========================")
            EscrevaL("|  COMANDA DE PEDIDO      |")
            Escreval("===========================")
            Escreval("| QTD |   ITENS   | VALOR |")
            Escreval("---------------------------")
            Escreval("|", itens, "|  | Valor |")


         fimescolha
      Ate menu=4

Fimalgoritmo

 

Não estou  conseguindo ligar os pontos... Quando coloco os nomes e valores dos itens, ele não guarda... E a parte do resumo do pedido, como faria? Tem alguma dica?

 

  • Membro VIP
Postado
55 minutos atrás, bibalinda disse:

Quando coloco os nomes e valores dos itens, ele não guarda

 

Tá, mas acontece o quê?

Para ser direto, faltou fechar o fimEscolha dentro do caso 2.

Dica básica. se atente sempre a deixar as estruturas prontas. Se começou um escolha, tem que ter o seu fimEscolha. Se começou um se, tem que ter o seu fimSe etc. Ainda mais no VisualG que "não tem compilador", ou seja, só mostra o erro quando o código roda (em vez de já mostrar quando tenta compilar).

 

 

Sobre os pedidos, use um vetor para controlar. Os comandos seriam algo como:
 

contPedido <- contPedido+1
leia(pedidos[contPedido].codItem)
leia(pedidos[contPedido].qtd)


Segue esboço de código:
 

algoritmo "Sistema de Restaurante"
const
   TAM = 3
tipo
   t_item = registro
      nome :caractere
      //valor :real
      valor: inteiro //por enquanto, para facilitiar gerar valores
   fimRegistro

   t_pedido = registro
      codItem :inteiro
      qtd :inteiro
   fimRegistro

var
   menu :real
   cardapio :vetor[1..10] de t_item
   pedidos :vetor[1..3] de t_pedido
   i :inteiro
inicio
   repita
      escrevaL("----------------------------------------")
      escrevaL("--------       RESTAURANTE       -------")
      escrevaL("----------------------------------------")
      escrevaL("Opção 1 - Inclusão de itens no cardapio ")
      escrevaL("Opção 2 - Registro de pedido            ")
      escrevaL("Opção 3 - Resumo do pedido              ")
      escrevaL("Opção 4 - Sair                          ")
      escrevaL("----------------------------------------")
      escrevaL("Qual a sua escolha no restaurante? ")
      leia(menu)

      escolha menu
      caso 1
         escrevaL("Informe os itens no cardapio por dia: ")
         para i de 1 ate TAM faca
            escreva ("Descrição : ")
            ALEATORIO ON
            LISTA "ESTADOS"
            leia(cardapio[i].nome)
            ALEATORIO OFF
            escreva ("Valor     : R$ ")
            ALEATORIO 1, 80
            leia(cardapio[i].valor)
            ALEATORIO OFF
         fimPara

         escrevaL("----------------------------------------")
         para i de 1 ate TAM faca
            escrevaL(i, " ", cardapio[i].nome:20, " R$", cardapio[i].valor:1:2)
         fimPara

      caso 2
         para i de 1 ate TAM faca
            escrevaL("Item: ", cardapio[i].nome:30, " R$", cardapio[i].valor:1:2)
         fimPara




      caso 3
         escrevaL("EM CONSTRUÇÃO")
      fimEscolha
   ate menu=4
fimAlgoritmo


Por enquanto se preocupe apenas em conseguir cadastrar pedidos... que o vetor seja preenchido corretamente. Só depois para calcular (que basicamente será pegar os dados desse vetor de registro e fazer as contas).

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!