Escolar Documentos
Profissional Documentos
Cultura Documentos
O Que É Ciência de Dados - Material
O Que É Ciência de Dados - Material
Todo esse processo precisa ter um forte embasamento estatístico e matemático e ser
diretamente ligado ao negócio, além de poder ser feito de forma escalável e replicável.
Módulo 1 – O que é Ciência de Dados?
• Usar dados históricos para fazer previsões sobre o futuro e tentar ser cada vez mais
assertivo com a estratégia futura da empresa;
• Descobrir diferenciais para o negócio;
• Encontrar oportunidades ocultas;
• Buscar padrões que não estavam perceptíveis ao olho humano;
• Responder perguntas do negócio e/ou fazer recomendações capazes de serem
diferenciais para o negócio.
Módulo 1 – O que é Ciência de Dados?
Toda essa parte de teste, validação, de fazer as suas próprias perguntas e validar se
aquelas perguntas realmente estão acontecendo, isso faz parte do processo científico.
Ciência de
Dados
Módulo 1 – O que é Ciência de Dados?
Quando se fala em dados, logicamente quer dizer que é necessário a existência deles e
que estejam armazenados ou que pelo menos comecem a ser armazenados a partir do
início do projeto.
Ciência de
Dados
Então para entregar um bom projeto de Data Science é necessário todo um conjunto
de tecnologia e de conhecimento.
Ciência de
Dados
Conhecimento
Informações
Dados
Módulo 1 – O que é Ciência de Dados?
Conhecimento
Informações
Barulho de apito
Dados repetindo 3 vezes
Módulo 1 – O que é Ciência de Dados?
Conhecimento
Informações
Barulho de apito
Dados repetindo 3 vezes
Módulo 1 – O que é Ciência de Dados?
Conhecimento
Barulho de apito
Dados repetindo 3 vezes
Módulo 1 – O que é Ciência de Dados?
Conhecimento
Barulho de apito
Dados repetindo 3 vezes
Módulo 1 – O que é Ciência de Dados?
Barulho de apito
Dados repetindo 3 vezes
Módulo 1 – O que é Ciência de Dados?
Barulho de apito
Dados repetindo 3 vezes
Módulo 1 – O que é Ciência de Dados?
Barulho de apito
Dados repetindo 3 vezes
Módulo 1 – O que é Ciência de Dados?
Um mesmo dado pode ter contextos diferentes que vão levar a uma tomada de decisão
diferente.
Vamos comparar a seguir a tomada de decisão para um mesmo dado, utilizando como
exemplo o alarme de incêndio e o micro-ondas.
Módulo 1 – O que é Ciência de Dados?
Então, para todo dado é necessário avaliar esse conhecimento para depois aplicar uma
tomada de decisão.
Porém, se a venda do meu produto principal for baixa, eu preciso entender para agir o
mais rápido possível.
Módulo 1 – O que é Ciência de Dados?
Agora um exemplo prático: Apenas com o dado não sabemos o significado desses
números.
Inteligência
Conhecimento
Informações
Agora um exemplo prático: Agora com a informação foi colocado um rótulo do que
cada coluna está dizendo. Porém ainda não podemos
concluir se esse estoque é bom.
Inteligência
Conhecimento
Produto: Chocolate X,
Informações brutas, registros de
Informações Estoque: 2000, Venda
ocorrência, observações
Mensal: 10000
Inteligência
Produto: Chocolate X,
Informações brutas, registros de
Informações Estoque: 2000, Venda
ocorrência, observações
Mensal: 10000
Produto: Chocolate X,
Informações brutas, registros de
Informações Estoque: 2000, Venda
ocorrência, observações
Mensal: 10000
Então uma informação que antes não tinha sentido como “Chocolate X;2000;10000” nos
proporcionou o insight de enviar mais chocolate à loja para que não falte pois a páscoa
está próxima.
Esse insight é o que nós vamos fazer em escalas maiores, como por exemplo, colocar um
produto do lado de outro porque a probabilidade é maior desses produtos venderem
juntos ou oferecer um produto para um cliente porque a chance dele comprar é alta.
Módulo 1 – O que eu quero responder?
São necessárias muitas perguntas e observações para fazer as nossas hipóteses, mas
existe uma pergunta fundamental que garante o nosso sucesso na Ciência de Dados:
O QUE EU QUERO
RESPONDER?
Módulo 1 – O que eu quero responder?
Na maioria das vezes em projeto de dados não trabalhamos sozinho, trabalhamos para
um cliente ou para um chefe. Sempre vai ter alguém querendo saber alguma coisa.
Em geral, essas perguntas são muito abertas e não nos dizem o que eles realmente
querem saber. É por isso que vamos precisar investigar e procurar um pouco mais.
Por exemplo: a venda geral dos produtos foi ruim ou apenas a venda de um produto
em específico?
Módulo 1 – O que eu quero responder?
Se a conclusão apresentada para o chefe foi de que a venda foi ruim em todas as
empresas, mas ele queria saber se aquele produto vendeu nas outras empresas, a
resposta que ele precisava não foi dita.
A pergunta estava muito clara para ele, mas não respondemos. Por isso, vamos
trabalhar no nosso framework de data Science que é: como fazer as perguntas, como
mapear o que exatamente a gente precisa descobrir, para depois começar a entrar nos
dados.
Módulo 1 – O que eu quero responder?
Matemática /
Estatística
Módulo 1 – Os Pilares da Ciência de Dados
Matemática /
Estatística
Módulo 1 – Os Pilares da Ciência de Dados
Automações
tradicionais Negócios
(excel, SAS, etc)
Automações
tradicionais Negócios
Sem a tecnologia atrelada não é possível (excel, SAS, etc)
Matemática /
Estatística
Módulo 1 – Os Pilares da Ciência de Dados
Automações
tradicionais Negócios
pode ter pouca validade, ou até (excel, SAS, etc)
Matemática /
Estatística
Módulo 1 – Os Pilares da Ciência de Dados
Automações
tradicionais Negócios
lojas ou muito mais vendedores, essa (excel, SAS, etc)
sentido.
Matemática /
Estatística
Módulo 1 – Os Pilares da Ciência de Dados
Automações
tradicionais Negócios
índice de insatisfação está alto. Pela (excel, SAS, etc)
Quando se analisa a estatística dessa informação, nota-se que na verdade nessa filial de
maior média salarial, o salário do gerente é muito maior que o das outras filiais. Então,
essa média é maior por causa do salário do gerente, porém o salário de todos os outros
funcionários é muito menor, isso acontece pois a média pode ser afetada pelos outliers.
Softwares
tradicionais
(excel, SAS, etc)
A filial que tem a MAIOR média salarial é a que tem
a PIOR satisfação entre os colaboradores
Nessa filial o salário do gerente é muito maior
que do gerente de todas as outras filiais
Softwares
tradicionais
(excel, SAS, etc)
A filial que tem a MAIOR média salarial é a que tem
a PIOR satisfação entre os colaboradores
Nessa filial o salário do gerente é muito maior
que do gerente de todas as outras filiais
A decisão foi tomada, mas não tinha validade estatística e a decisão prejudicou a
empresa.
Softwares
tradicionais
(excel, SAS, etc)
A filial que tem a MAIOR média salarial é a que tem
a PIOR satisfação entre os colaboradores
Nessa filial o salário do gerente é muito maior
que do gerente de todas as outras filiais
Vamos para um outro exemplo: estamos na dúvida entre uma viagem para as cidades 1 e 2 e o
nosso objetivo é ir à praia. Observamos que a Cidade 2 tem uma temperatura média maior que a
Cidade 1. Como o objetivo é ir à praia, eu vou escolher a Cidade 2 que tem uma média de
temperatura maior.
Softwares
tradicionais
(excel, SAS, etc)
Temp
Cidade
Média
Cidade 1 30,5
Cidade 2 31,3
Módulo 1 – Os Pilares da Ciência de Dados
Temp
Cidade Conclusões que estão corretas mas
Média estatisticamente tem pouca validade
Cidade 1 30,5
Softwares
Cidade 2 31,3 tradicionais
(excel, SAS, etc)
Temperatura Média
60
40
20
0
Mar
Mai
Out
Nov
Set
Jan
Ago
Fev
Jun
Abr
Jul
Dez
Módulo 1 – Os Pilares da Ciência de Dados
Embora a Cidade 1 tenha uma média menor, a sua temperatura é mais constante. Ou seja, se eu
quiser uma segurança de viajar com uma temperatura agradável eu deveria escolher a Cidade 1.
Nesse caso, iríamos escolher um lugar que tinha a chance de sentir frio na praia, porque não
entendemos esses conceitos básicos de estatística.
Temp
Cidade Conclusões que estão corretas mas
Média estatisticamente tem pouca validade
Cidade 1 30,5
Softwares
Cidade 2 31,3 tradicionais
(excel, SAS, etc)
Temperatura Média
60
40
20
0
Mar
Mai
Out
Nov
Set
Jan
Ago
Fev
Jun
Abr
Jul
Dez
Módulo 1 – Os Pilares da Ciência de Dados
Automações
tradicionais Negócios
pilar que é mais importante. (excel, SAS, etc)
Dados.
estatística
tradicional
Matemática /
Estatística
MÓDULO 2
Introdução a Ciência de
Dados
Módulo 2 – O que é ser um cientista?
A primeira coisa do cientista é ele entender que ele não está buscando coisas novas,
que ele busca coisas em artigos que já existem, programas que outras pessoas já
escreveram.
Módulo 2 – O que é ser um cientista?
O método científico exige que o nosso estudo consiga ser replicado, ou seja, não
adianta fazer um modelo ótimo, nível de certeza alto se aquele modelo não consegue
ser replicado.
Existe um método científico! Observação,
hipóteses, testes e validação, análises,
monitoramento.
Ciência de
Dados
Experimento
Análise /
Resultados
Conclusão
Módulo 2 – O que é ser um cientista?
Conclusão
Módulo 2 – O que é ser um cientista?
Análise /
Resultados
Conclusão
Módulo 2 – O que é ser um cientista?
Podemos usar o CRISP-DM (CRoss Industry Standard Process for Data Mining) que é
um processo existente como base para o nosso framework.
Entendimento do negócio
Preparação/
Entendimento dos dados
Visualização
Análise / Modelagem
Módulo 2 – Um framework para Ciência de Dados
Entendimento do negócio
O entendimento do negócio é
dividido em 2 etapas:
Preparação/
• Definição do problema: entender Entendimento dos dados
Visualização
qual pergunta o seu chefe quer
que você responda Definição do Alinhamento de
problema expectativas
Análise / Modelagem
Módulo 2 – Um framework para Ciência de Dados
em 3 etapas:
Preparação/
• Análise exploratória Entendimento dos dados
Visualização
Análise Tratamento Definição do
Exploratória dos dados modelo
• Tratamento de dados
Análise / Modelagem
Módulo 2 – Um framework para Ciência de Dados
alcançarmos a segurança no
tratamento de dados para colocar no Preparação/ Entendimento
modelo. dos dados
Visualização
Análise Tratamento
O modelo vai executar, selecionar Exploratória dos dados
Engenharia
de dados
qual o melhor modelo, selecionar
variáveis e escolher o menor erro. Validação
Preparação dos dados
Análise / Modelagem
Módulo 2 – Um framework para Ciência de Dados
Análise / Modelagem
Módulo 2 – Um framework para Ciência de Dados
Entendimento do negócio
Na apresentação o projeto pode ser
aceito ou o contratante pode falar que
não era isso que ele queria.
Preparação/
Entendimento dos dados
Visualização
Análise / Modelagem
Módulo 2 – Um framework para Ciência de Dados
Monitoramento
e ajustes
Preparação dos dados
Validação
Análise / Modelagem
Módulo 2 – Um framework para Ciência de Dados
Todas essas etapas são muito importantes para o projeto de Data Science.
Definição do problema
Implementação Alinhamento de
expectativas
Melhoria
Apresentação contínua Entendimento
do resultado dos dados
Validação Engenharia
do modelo de dados
Monitoramento
e ajustes
Definição do Preparação
modelo dos dados
O mercado de trabalho para o cientista de dados e para quem conhece python é muito
amplo.
Dados
Análise
Análise do modelo
Visualização
Módulo 2 – Um framework para Ciência de Dados
O mercado de trabalho para o cientista de dados e para quem conhece python é muito
amplo.
Dados Web scraping
Análise Chatbot
Análise Chatbot
40%
SALÁRIOS ACIMA DE 12 MIL / MÊS SALÁRIOS ABAIXO DE 4 MIL / MÊS
de aumento na remuneração
entre 2019 e 2021
Módulo 2 – Um framework para Ciência de Dados
A procura por cientista de dados com conhecimento em Python aumentou, pois é uma
linguagem que está crescendo e as empresas estão utilizando cada vez mais.
7.477
+ de 33 mil vagas
Módulo 2 – Um framework para Ciência de Dados
Além de todas essas áreas, existem competições que dão prêmios em dinheiro.
A Netflix deu 1 milhão para quem conseguisse melhorar o seu algoritmo, ou seja, a
ciência de dados é muito valorizada e as empresas reconhecem a importância disso,
porque elas sabem que isso vai trazer novos clientes.
MÓDULO 3
Python Básico
Módulo 3 – Explicando esse módulo
Ao instalar o Anaconda será instalado o Jupyter junto, que é onde vamos escrever o
código, executar e visualizar os resultados.
No lugar do Jupyter poderia ser utilizado o Google Colab, porém nesse curso vamos
utilizar o Jupyter porque ele nos obriga a instalar os programas no computador e não
precisa de internet.
Módulo 3 – Instalando o Python no Windows
Para fazer a instalação entre no link abaixo e escolha o sistema operacional do seu
computador:
Link: https://www.anaconda.com/products/distribution#Downloads
Módulo 3 – Instalando o Python no Windows
3. Selecione Sistema
Agora vamos resolver os 3 principais problemas que acontecem para abrir o Jupyter:
Clique em redefinir
1 Clique nos três 2 Clique em configurações 3 Clique em navegador padrão 4 e escolha o Chrome
pontinhos
Módulo 3 – Problemas na Instalação - Resolvido
1 Abra o Prompt Anaconda 2 Rode o comando: 3 No bloco de notas abra o arquivo que está
no caminho do prompt anaconda
jupyter notebook --generate-config
C:\Users\Usuario\.jupyter e abra o arquivo
jupyter_notebook_config.py
Agora procure o chrome no buscador do Windows, Clique com o botão direito do mouse no
4 clique com o botão direito do mouse e selecione “Abrir 5 atalho do chrome e clique em propriedades.
o local do arquivo”.
Módulo 3 – Problemas na Instalação - Resolvido
No campo Destino está exatamente o caminho do Com o arquivo aberto no bloco de notas, procure
6 local onde está instalado o seu Google Chrome. 7 por “NotebookApp(JupyterApp) configuration” e
Copie o caminho todo. altere a linha:
# c.NotebookApp.browser = ‘’ por
c.NotebookApp.browser = ‘ caminho %s’
“O Jupyter abre na pasta Documentos e eu queria que ele abrisse em outra Pasta”
1 Abra o Prompt Anaconda 2 Rode o comando: 3 No bloco de notas abra o arquivo que está
no caminho do prompt anaconda
jupyter notebook --generate-config
C:\Users\Usuario\.jupyter e abra o arquivo
jupyter_notebook_config.py
#c.NotebookApp.notebook_dir = ‘’ por
c.NotebookApp.notebook_dir = r‘Local’
Exemplo: c.NotebookApp.notebook_dir = r'E:’
(Você deve colocar entre aspas simples o caminho da pasta
onde você quer que o Jupyter abra. No caso do exemplo, o
jupyter abrirá no disco E)
Módulo 3 – Problemas na Instalação - Resolvido
“O Jupyter abre na pasta Documentos e eu queria que ele abrisse em outra Pasta”
“O Jupyter abre na pasta Documentos e eu queria que ele abrisse em outra Pasta”
3 Caso não resolva desinstale o Anaconda e REINICIE 4 Depois entre nesse link que tem todas
O COMPUTADOR. as versões que saíram até hoje:
(É sério, tem que reiniciar o computador) https://repo.anaconda.com/archive/
Geralmente recomendo baixar essa aqui:
Anaconda3-2019.10-Windows-x86_64.exe mas se
não funcionar continue testando.
Módulo 3 – Problemas na Instalação - Resolvido
5 Sempre que for testar uma nova versão é importante 6 Alguma versão (sobre tudo das mais recentes)
que você desinstale o Anaconda antes, reinicie o deve funcionar normalmente no computador.
computador (sim, toda vez que desinstalar você
precisa reiniciar) e instale uma nova versão.
Módulo 3 –Mac, Linux e Google Colab
O procedimento para fazer a instalação no Mac e no Linux é o mesmo que para fazer a
instalação no Windows. Para fazer a instalação entre no link abaixo e escolha o sistema
operacional do seu computador:
Link: https://www.anaconda.com/products/distribution#Downloads
Uma alternativa para quem não quer baixar nenhum programa é o Google Colab.
Ele é bem simples de usar e só precisa de internet e uma conta no gmail.
Procure por google colab
1 e clique no primeiro site 2 Clique em cancelar para ir para a página inicial
Módulo 3 –Mac, Linux e Google Colab
Nome do arquivo
Google Drive
Nome do arquivo
Botão de
salvar
Interromper Lista
Executar
Estrutura: print(número)
Estrutura: print(“texto”)
qtde_vendas = 1500
Módulo 3 – Variáveis
Quando estamos tratando de variáveis o termo igual (=) não significa igual e sim,
recebe.
Na programação, sempre o que está à esquerda do “=“ recebe o valor do que está
escrito à direita do “ = “
Módulo 3 – Variáveis
Até agora, atribuímos valores para as variáveis sem dizer qual é o tipo dela, isso porque,
o Python já entende o tipo da variável. Os tipos mais básicos de variáveis são:
• Float → Números com casas decimais (ponto flutuante). Lembrando que no Python
a casa decimal é representada pelo ponto.
Estrutura: type(variável)
Lista com os principais nomes para você evitar quando for colocar nome nas variáveis:
https://drive.google.com/file/d/15qWxRRoC5qiGnmORacbQemTsKLcAp5fa/view?usp=sh
aring
Módulo 3 – Estrutura do if – Condições no Python
Quase todo programa no Python utiliza a função if, provavelmente você vai ter que
fazer alguma verificação ou tratar alguma condição.
Identações
meta = 50000
qtde_vendida = 65300
Módulo 3 – Estrutura do if – Condições no Python
meta = 50000
qtde_vendida = 65300
If qtde_vendida>meta:
print(‘Batemos a meta de Iphone, vendemos {} unidades’.format(qtde_vendida)
Módulo 3 – Estrutura do if – Condições no Python
Nota: a função format é utilizada para substituir uma variável nas chaves ({}).
Módulo 3 – Estrutura do if – Condições no Python
Atenção: Tudo que estiver dentro do tab ele só vai executar se a condição for
verdadeira.
Ambos com tab
Porém, se não estiver dentro do tab e a condição for falsa ele vai executar.
Sem tab
Módulo 3 – Estrutura do if – Condições no Python
Quando usamos o if, nem sempre queremos apenas analisar o caso verdadeiro, em boa
parte das vezes queremos fazer alguma coisa caso a condição seja verdadeira e fazer
outra coisa caso a condição seja falsa.
Utilizando o mesmo exemplo prático, agora nosso programa deve avisar nos 2 casos:
• Se ele não bateu a meta do mês, devemos exibir a mensagem: “Infelizmente não
batemos a meta, vendemos {} unidades. A meta era de {} unidades”
meta = 50000
qtde_vendida = 65300
Módulo 3 – Estrutura do if – Condições no Python
meta = 50000
qtde_vendida = 65300 Se essa condição for verdadeira
If qtde_vendida>meta:
print(‘Batemos a meta de Iphone, vendemos {} unidades’.format(qtde_vendida)
Else:
print(‘Infelizmente não batemos a meta, vendemos {} unidades. A meta era de {}
unidades) format(meta)
Caso contrário
Módulo 3 – Estrutura do if – Condições no Python
Observação: a função format pode ser utilizada para substituir mais de uma
variável nas chaves ({}).
Meta
Quantidade vendida
Módulo 3 – Elif
Agora vamos trabalhar com o acréscimo do if, que é um caso mais complexo onde
não temos apenas 1 condição, mas 2 ou mais.
Nova condição a ser Condição 1
testada caso a condição
anterior seja falsa
As condições são:
As condições são:
meta = 20000
vendas = 1500
Módulo 3 – Elif
meta = 20000
vendas = 1500
Mas agora a gente não pode falar que ela vai ganhar 3% de bônus porque existem 2
condições.
Módulo 3 – Elif
== igual
!= diferente
> maior que (>= maior ou igual)
< menor que (<= menor ou igual)
in texto existe dentro de outro texto
not verifica o contrário da comparação
Observação: Lembre-se que termo igual (=) não significa igual e sim, recebe.
Módulo 3 – Comparadores
Até agora utilizamos o if para analisar uma condição de cada vez, mas em alguns casos
vamos precisar usar conectores and e or para acrescentar mais condições a um mesmo
teste.
Vamos utilizar o and para analisar se duas condições são verdadeiras ao mesmo tempo
e or se pelo menos uma das duas condições forem verdadeiras.
Módulo 3 – And e Or
Vamos ver um exemplo prático sobre cálculo de meta de vendas dos funcionários:
• Caso o funcionário tenha batido a meta de vendas individual dele, mas a loja não
tenha batido a meta de vendas da loja como um todo, o funcionário não ganha
bônus.
Módulo 3 – And e Or
Nessa empresa, existe um outro caso também que garante que o funcionário ganhe
um bônus, independente das vendas que ele fez naquele mês.
Nesse caso, temos que todas as condições são verdadeiras, logo o funcionário vai
ganhar bônus.
Condição verdadeira
Agora vamos considerar que o valor da nota ao invés de 9 (exemplo anterior) passe a
ser 5.
Nesse caso, temos que apenas a condição da nota é falsa, porém como no or apenas
uma das condições precisa ser verdadeira, então o funcionário vai ganhar bônus.
Condição verdadeira
Condição Condição
Condição falsa
verdadeira verdadeira
Módulo 3 – And e Or
Agora vamos considerar que o valor das vendas ao invés de 280000 (exemplo anterior)
passe a ser 200000.
Condição
Condição falsa Condição falsa
verdadeira
Módulo 3 – Listas em Python
Agora vamos tratar das Listas que são objetos muito importantes e serão muito
utilizadas no curso. Quando importamos uma base de dados para o Python,
normalmente ele é lido como uma "lista" ou como alguma "variação de lista“.
Listas em Python foram feitas para serem homogêneas (apenas número ou texto),
apesar de aceitarem valores heterogêneos.
Agora vamos aprender com os índices dentro da lista e como pegar ou modificar o
valor de um item dentro da lista.
Para substituir o valor da string podemos utilizar a função replace, mas para isso temos
que criar uma nova variável.
texto = ‘lira@gmail.com’
texto = texto.replace(‘i’, ‘a’)
Agora vamos utilizar uma estrutura de repetição para conseguir executar códigos de
forma repetitiva, ou seja, ao invés de repetir nosso código podemos pedir pra ele olhar
uma lista inteira e percorrer toda aquela lista executando alguma ação. Uma das
estruturas mais úteis e usadas é a for.
Número de
vezes
Forma mais simples de utilizar o FOR:
Indentação
Indentação
Então no código ao lado, pedimos para ele
imprimir o valor de i 5 vezes.
Imagine que você está construindo uma automação para enviar todo dia por e-mail um
resumo da produção de uma fábrica. Ao invés de printar isso 5 vezes, nós vamos colocar
isso dentro de um for.
Retornar o valor da
tabela produção
1ª
2ª
3ª Retornar a marca
4ª
5ª
Módulo 3 – Estrutura de Repetição For
Agora imagine se a lista aumentar ou diminuir, nesse caso nossa estrutura for não
comtemplará todos os valores da lista. Para resolver esse problema vamos usar a
função len que calculará o tamanho da lista e permitirá que mesmo com alteração do
número de itens da lista o nosso for sempre vai contemplar todos.
Retorna o tamanho da
lista produtos
Módulo 3 – For each - Percorrer cada item de uma lista
Variável
É muito comum no Python utilizamos a Lista
Abaixo indicamos uma variável qtde_bateu_meta com valor inicial igual a zero e cada
vez que a meta fosse atingida seria somado 1 a esse valor.
qtde_bateu_meta = qtde_bateu_meta + 1
Módulo 3 – For e if
Vamos ver na prática como isso funciona para criar um programa que funcione
como o registro de vendas de uma empresa.
Nele, a pessoa deve inserir o nome do produto e o produto deve ser adicionado na
lista de venda. Enquanto o usuário não encerrar o programa, significa que ele está
registrando novos produtos, então o programa deve permitir e entrada de quantos
produtos o usuário quiser.
Diferente de vazio
Módulo 3 – Loop infinito no While
Dica de ouro: sempre que for usar o comando while, lembre-se de ter certeza que o
programa vai terminar em algum momento.
Se o while não terminar em algum momento ele entra no que chamamos de loop
infinito e aí duas opções podem ocorrer:
Olhando a condição do while temos que nosso loop será pausado quando a venda for
menor que a meta.
Quando olhamos o código dentro da indentação não temos nada que aumente o
valor de i, que diferente do for aumenta automaticamente.
Módulo 3 – Loop infinito no While