3
respostas

Solução proposta Desafio: Simulador de pedidos em uma cafeteria

defina  valorTotal      = 0,
        valorProduto1   = 2,
        valorProduto2   = 4,
        valorProduto3   = 8,
        continuar       = "S";

faça {
    escreva ("Escolha o seu produto")
    escreva ("Digite 1 para - Produto 1")
    escreva ("Digite 2 para - Produto 2")
    escreva ("Digite 3 para - Produto 3")
    leia (produto)
    escreva ("Digite a Quantidade desejada:")
    leia (qdt)

    se (produto == 1) {
        escreva (qdt + " unidade(s) de Produto 1 adicionado(s) ao pedido")

    valorTotal = valorTotal + (valorProduto1 * qdt)
    }
    
    se (produto == 2) {
        escreva (qdt + " unidade(s) de Produto 2 adicionado(s) ao pedido")

    valorTotal = valorTotal + (valorProduto2 * qdt)
    }

    se (produto == 3) {
        escreva (qdt + " unidade(s) de Produto 1 adicionado(s) ao pedido")

    valorTotal = valorTotal + (valorProduto3 * qdt)
    }

    escreva ("Adicionar mais produtos? Digite 'S' para Sim ou 'N' para finalizar sua compra")
    leia (continuar)
}
    enquanto (continuar == 'S')

escreva ("Obrigado pelo seu pedido, o total é de R$" + valorTotal)
3 respostas

Esqueci da parte dos desconto, vou ajustar aqui e já posto.

defina  valorTotal      = 0,
        valorProduto1   = 2,
        valorProduto2   = 4,
        valorProduto3   = 8,
        continuar       = "S",
        qdt             = 0,
        cadastro        = 0,
        identificação   = "nulo"

faça {
    escreva ("Escolha o seu produto")
    escreva ("Digite 1 para - Produto 1")
    escreva ("Digite 2 para - Produto 2")
    escreva ("Digite 3 para - Produto 3")
    leia (produto)
    escreva ("Digite a Quantidade desejada:")
    leia (qdt)

    se (produto == 1) {
        escreva (qdt + " unidade(s) de Produto 1 adicionado(s) ao pedido")

    valorTotal = valorTotal + (valorProduto1 * qdt)
    }
    
    se (produto == 2) {
        escreva (qdt + " unidade(s) de Produto 2 adicionado(s) ao pedido")

    valorTotal = valorTotal + (valorProduto2 * qdt)
    }

    se (produto == 3) {
        escreva (qdt + " unidade(s) de Produto 3 adicionado(s) ao pedido")

    valorTotal = valorTotal + (valorProduto3 * qdt)
    }

    escreva ("Adicionar mais produtos? Digite 'S' para Sim ou 'N' para finalizar sua compra")
    leia (continuar)
}
    enquanto (continuar == 'S')

escreva ("Possui cadastro na loja? Digite 'S' para Sim ou 'N' caso não tenha")
leia(cadastro)

se(cadastro == "s") {
        escreva ("Digite seu CPF: ")
        leia(identificação)

        se (identificação == (Alguma identificação valida))
            {valorTotal = valorTotal * 0.90}
    }
    
senão {
    escreva ("Considere fazer o cadastro para garantir 10% de desconto nos proximos pedidos")
}

escreva ("Obrigado pelo seu pedido, o total é de R$" + valorTotal)

Oi, Jefferson! Como vai?

Agradeço por compartilhar.

Gostei da evolução da sua solução, você organizou bem o fluxo do pedido e incluiu a parte de cadastro com desconto, o que mostra um bom entendimento da lógica do problema. Importante notar também que você corrigiu a mensagem do Produto 3, deixando o código mais consistente.

Continue praticando esse tipo de melhoria incremental, isso fortalece muito sua lógica de programação.

Dica: para deixar o código mais organizado, você pode usar senão se (else if) no lugar de vários se, evitando verificações desnecessárias e deixando o fluxo mais claro.

Conteúdos relacionados
Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!