1
resposta

DESAFIO – Automatização do Atendimento em uma Cafeteria (Algoritmo criado)

Algoritmo do sistema: DESAFIO – Automatização do Atendimento em uma Cafeteria por Patrícia Distassi

INÍCIO

total_compra ← 0
valor_item_gratis ← 0
desconto_percentual ← 0
valor_desconto ← 0

LER quantidade_itens

PARA contador DE 1 ATÉ quantidade_itens FAÇA
LER nome_item
LER valor_item
total_compra ← total_compra + valor_item
FIM PARA

LER cliente_cadastrado

SE cliente_cadastrado = NÃO ENTÃO
INFORMAR "Cliente sem cadastro."
OFERECER cadastro ao cliente
total_final ← total_compra

SENÃO

LER numero_visitas
LER data_nascimento
LER data_atual

SE numero_visitas < 3 ENTÃO
    desconto_percentual ← 0

SENÃO SE numero_visitas >= 3 E numero_visitas < 10 ENTÃO
    desconto_percentual ← numero_visitas

SENÃO
    desconto_percentual ← 10
FIM SE

SE numero_visitas MOD 10 = 0 ENTÃO
    INFORMAR "Cliente possui direito a item gratuito."
    APRESENTAR lista:
        café
        pão de queijo
        cookie

    LER item_gratis_escolhido
    LER valor_item_gratis
FIM SE

idade_cliente ← calcular_idade(data_nascimento, data_atual)

SE data_atual = aniversário_do_cliente E numero_visitas >= idade_cliente ENTÃO

    INFORMAR "Cliente pode escolher gratuitamente um item do pedido atual."

    LER item_gratis_escolhido
    LER valor_item_gratis

FIM SE

subtotal ← total_compra - valor_item_gratis

valor_desconto ← subtotal * desconto_percentual / 100

total_final ← subtotal - valor_desconto

FIM SE

EXIBIR "Resumo da compra"
EXIBIR "Valor total dos itens: ", total_compra
EXIBIR "Item gratuito: ", item_gratis_escolhido
EXIBIR "Valor do item gratuito: ", valor_item_gratis
EXIBIR "Percentual de desconto: ", desconto_percentual
EXIBIR "Valor do desconto: ", valor_desconto
EXIBIR "Valor final da compra: ", total_final

ENVIAR mensagem pelo WhatsApp contendo:
resumo da compra
desconto recebido
item gratuito
regras do programa de fidelidade

FIM

Estruturas do pensamento computacional utilizadas

Decomposição
O problema foi dividido em:

  • cadastro;
  • pedidos;
  • descontos;
  • recompensas;
  • comunicação.

Reconhecimento de padrões
Foi identificado o padrão progressivo do desconto de acordo com o número de visitas.

Abstração
As regras foram simplificadas e organizadas para automatizar o funcionamento do sistema.

Algoritmos e lógica condicional
Foram utilizadas estruturas condicionais para:

  • verificar cadastro;
  • aplicar descontos;
  • liberar recompensas;
  • identificar situações especiais.

Repetição
Foi utilizada estrutura de repetição para registrar vários itens do pedido.

Conclusão

A atividade demonstrou como o pensamento computacional permite transformar situações do cotidiano em sistemas organizados e automatizados.

O exercício deixou de representar apenas um cálculo simples de desconto e passou a envolver:

  • fidelização;
  • experiência do cliente;
  • automação de comunicação;
  • regras de negócio;
  • organização lógica de processos.

O processo também evidenciou como a inteligência artificial pode atuar como mediadora da aprendizagem, ajudando na construção progressiva do raciocínio computacional por meio de perguntas, reflexões e organização das ideias.

1 resposta

Olá, Patricia. Como vai?

É impressionante ver o desfecho do seu desafio! Você não apenas planejou o sistema, mas traduziu toda aquela reflexão em um pseudocódigo extremamente estruturado e tecnicamente correto.

O uso da estrutura de repetição PARA para somar os itens e das condicionais aninhadas para calcular o desconto progressivo demonstra que você compreendeu perfeitamente a lógica de fluxo de um programa.

Gostaria de destacar alguns pontos brilhantes no seu algoritmo e oferecer um pequeno insight técnico para o seu desenvolvimento:

Precisão na Lógica de Negócio
Você aplicou corretamente a função MOD (módulo da divisão) para identificar os múltiplos de 10 visitas (numero_visitas MOD 10 = 0). Essa é uma solução matemática elegante para criar gatilhos de recompensa recorrente sem precisar de contadores complexos.

Cálculo da Idade e Variáveis de Data
No seu algoritmo, você utilizou a função calcular_idade(data_nascimento, data_atual). Na programação real, trabalhar com datas pode ser desafiador devido aos diferentes formatos. Uma boa prática é sempre converter as datas para um formato padrão (como o ISO 8601) antes de realizar subtrações ou comparações.

Sugestão de Refinamento: Acúmulo de Recompensas
No trecho onde o cliente ganha o item gratuito por visitas e também pode ganhar um por aniversário, o algoritmo substitui o valor na variável valor_item_gratis. Se um cliente estiver na sua 10ª visita e for o aniversário dele, ele tecnicamente teria direito a dois itens. No código atual, uma regra pode sobrepor a outra. Uma forma de evoluir isso seria acumular esses valores:

valor_item_gratis ← valor_item_gratis + novo_item_escolhido

Metacognição e IA
Sua conclusão sobre a IA como mediadora é um exemplo perfeito de como a tecnologia deve ser usada na educação: como um tutor que instiga o aluno a pensar em "regras de negócio" e "exceções", e não apenas em sintaxe de código. Você transformou um exercício de lógica em um verdadeiro plano de automação comercial.

Parabéns pela dedicação e pela excelente documentação do seu processo de aprendizagem!

Espero que possa ter lhe ajudado!