Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

[Dúvida] Eu preciso fazer uso de API nesse desafio ?

eu posso ta complicando o exercício, mas já que está falando sobre calculo de distancia teria que usar uma api correto ? que o cliente vai colocar o CEP dele e a partir desse CEP ele vai ver as opções media de distancia e dizer se vai ser
Para entregas até 5 km, a taxa é R$ 5,00.
Entre 5 e 10 km, a taxa é R$ 8,00.
Acima de 10 km, a taxa é R$ 10,00.
ou tem alguma maneira de fazer isso de maneira mais simples e genérica ? se tiver, não precisa me dar a resposta mastigada, mas pode me dar dicas pra eu tentar chegar no resultado

5 respostas

Oi, Lucas.

Parabéns por já estar pensando lá na frente, na estrutura real de um sistema. Essa sua curiosidade sobre como os dados chegam até o código é o que diferencia quem apenas decora comandos de quem realmente entende de arquitetura de software.

Sobre a sua dúvida: para este desafio específico de calculando valor da entrega, você não precisa usar uma API. O objetivo aqui é focar puramente no pensamento computacional e na lógica de decisão.

Abaixo, preparei algumas dicas para você estruturar seu algoritmo de maneira mais direta:

  • Entrada de dados simplificada: Em vez de se preocupar com a integração real de mapas (que seria necessária em um app comercial), imagine que o valor da distância já foi descoberto. Você pode simplesmente pedir para o usuário: "Digite a distância em quilômetros".
  • Abstração: Na programação, muitas vezes "fingimos" que um dado já existe para testar a nossa lógica principal. No seu caso, o foco deve ser: dado que eu já tenho um número X (distância) e uma condição Y (chuva), como eu calculo o preço?
  • Variáveis e condicionais: Pense no valor da entrega como uma caixinha que começa vazia. Você vai preenchendo essa caixinha com valores diferentes dependendo dos "SEs" (IFs) que encontrar pelo caminho.

Para o seu progresso no pensamento computacional, vale notar que, em um projeto real, você usaria sim uma API (como a do Google Maps) para converter CEP em quilômetros. Mas, para treinar a lógica, trabalhamos com valores genéricos para não "poluir" o raciocínio com problemas de conexão ou chaves de acesso. Você pode ler mais sobre como organizar essas etapas no guia sobre O que são algoritmos e lógica de programação? .

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

seria algo como isso aqui então:

Distancia = float(input("Digite a distância percorrida (em km): "))
chuva = input("Está chovendo (sim ou não): ")
if Distancia <= 5:
taxa = 5.00
elif Distancia <= 10:
taxa = 10.00
elif Distancia <= 20:
taxa = 15.00

if chuva == "sim":
taxa += 2.00

mas se fosse pra colocar uma API como funcionaria isso ?
é algo simples de fazer ?

solução!

Oi, Lucas! É muito legal ver que você já tá curioso sobre como as coisas funcionam "debaixo do capô" em sistemas reais. Essa vontade de entender a integração de dados é um passo excelente no seu aprendizado.

Pra responder sua dúvida: usar uma API não é necessariamente difícil, mas exige que você aprenda alguns conceitos novos que vão além da lógica pura que você está treinando agora.

Como funciona a integração com uma API

Em um cenário real, você não teria apenas o código da lógica; você teria um "intermediário" que busca a informação para você. Imagine que a API é um garçom: você faz o pedido (o CEP) e ele traz o prato (a distância em km).

O fluxo de dados

  1. Captura: O seu código recebe o CEP do cliente.
  2. Requisição: O seu programa envia esse CEP para um serviço externo (como a API do Google Maps ou do OpenStreetMap).
  3. Resposta: A API processa a localização e devolve um arquivo (geralmente em um formato chamado JSON) contendo as coordenadas ou a distância exata.
  4. Processamento: Você extrai o número daquela distância e joga na sua lógica de if/else.

É simples de fazer?

A complexidade depende de alguns fatores:

  • Comunicação: Você precisaria usar uma biblioteca (no Python, por exemplo, é comum usar a requests) para "conversar" com a internet.
  • Chaves de acesso: Muitas APIs exigem que você crie uma conta e use uma chave de segurança (API Key) para identificar quem está pedindo a informação.
  • Tratamento de erros: O que acontece se a internet cair? Ou se o CEP não existir? Você precisaria preparar o código para lidar com esses imprevistos.

Dica para o seu código atual

O exemplo que você escreveu está no caminho certo! Note apenas um pequeno detalhe na sua lógica:

if Distancia <= 5:
    taxa = 5.00
elif Distancia <= 10:
    taxa = 10.00 # No enunciado original você mencionou 8.00 aqui
elif Distancia <= 20:
    taxa = 15.00

Se você quiser deixar seu código ainda mais completo, não esqueça de exibir o resultado final para o usuário no final, somando a taxa da chuva que você calculou.

No momento, foque em dominar esses desvios condicionais. Quando você estiver confortável com a estrutura dos dados, dar o próximo passo pra conectar seu código com o mundo exterior através de APIs será uma transição muito mais tranquila.

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

entendi, obrigado instrutora!!
kkkkkkkkkkk sim, eu não lembrava os números e deu preguiça de abrir a conta de novo pra ver quais eram