00:00:00
o exercício com vetores são bastante
00:00:02
comuns para que está aprendendo
00:00:03
programação E você já deve ter se
00:00:05
deparado com todos os que eu vou
00:00:07
apresentar nesse vídeo aqui eu faço um
00:00:09
compilado rápido resolvendo 8 exercícios
00:00:12
super comuns é que envolvem vetores e
00:00:16
programação seja para você aprender ou
00:00:18
relembrar sobre esses elementos Assista
00:00:21
esse vídeo no vídeo eu falo sobre a
00:00:23
leitura e escrita de valores de um vetor
00:00:25
o preenchimento do vetor com valores
00:00:27
sequenciais e também valores aleatórios
00:00:30
mostrar o vetor de trás para frente
00:00:32
calcular a soma dos elementos do vetor
00:00:35
calcular a média dos valores do vetor
00:00:39
é obter o maior e o menor valor do vetor
00:00:42
contar quantas vezes um determinado
00:00:45
valor aparece no vetor desse vídeo
00:00:47
apresenta o bem sucintamente essas
00:00:49
questões essenciais relacionadas a
00:00:51
vetores na descrição do vídeo eu deixo o
00:00:54
link para o desalinhamento de cada um
00:00:56
desses o que pode ser importante se você
00:00:58
não entendeu alguma coisa da minha
00:01:00
explicação que está sendo apresentada
00:01:02
Neste vídeo
00:01:03
e como começar a ilustrando com vetor de
00:01:06
44 unidades net com quatro posições e eu
00:01:10
já tenho aqui o código que faz a leitura
00:01:12
de dados do teclado para esse vetor e já
00:01:15
mostra o resultado né O que tem guardado
00:01:17
dentro deste vetor é o que eu vou ler
00:01:19
qualquer valor três quatro cinco seis e
00:01:23
ele mostra aqui o vetor com os valores
00:01:25
três quatro cinco seis é o meu retorno
00:01:28
de Freud e eu só tô mostrando com uma
00:01:31
casa depois da, conforma com a
00:01:33
configuração aqui do meu PF
00:01:35
agora para mostrar o preenchimento desse
00:01:38
vetor com algum valor que não é lido
00:01:40
pelo usuário eu vou considerar que
00:01:42
qualquer valor sequencial eu vou alterar
00:01:45
essa linha aqui
00:01:46
eu vou deixar aquela comentada para
00:01:48
adicionar uma outra onde eu faço vetor
00:01:51
na posição ir
00:01:52
perceber o valor que pode ser que o
00:01:57
valor aí por exemplo porque o e vale
00:01:59
zero depois no próximo passo 1 2 3 4 e
00:02:01
assim por diante com isso e se o vetor
00:02:03
vai estar preenchido com valores que são
00:02:05
sequenciais que é o que a gente consegue
00:02:07
ver aqui mexer com 0 1 2 3 os valores aí
00:02:10
conforme o valor de Lógico que eu posso
00:02:13
fazer uma alteração para controlar isso
00:02:15
poderia por exemplo mostrar os valores
00:02:18
aqui do i x 10 que acaba mostrando que
00:02:21
como o resultado 0 x 10 qd 01 vez da
00:02:24
esquina 10 20 30 e assim por diante
00:02:26
mesmo a substituição com relação a essa
00:02:29
forma de incrementar sequencialmente ou
00:02:32
ter valores sequenciais para poder
00:02:34
preencher o meu vetor uma outra
00:02:37
alternativa
00:02:38
e é preencher com valores que são
00:02:40
aleatórios então eu faço meu vetore
00:02:44
receber um número aleatório
00:02:47
tá eu Onde eu posso fazer simplesmente
00:02:49
desta maneira que estão aqui geral dos
00:02:51
valores aleatórios gerou 41 número bem
00:02:54
grande o número bem grande o número
00:02:55
maior ainda ele gera realmente valores
00:02:58
totalmente aleatório é os números
00:03:01
aleatórios são criados eu não tenho
00:03:03
nenhum tipo de controle eles podem ser
00:03:04
realmente qualquer número é normalmente
00:03:06
eu tenho o interesse de controlar por
00:03:08
exemplo eu quero sortear como se fosse
00:03:10
um dado onde aparece só o número 1 2 ou
00:03:12
3 4 5 ou 6 nesse sentido eu posso fazer
00:03:17
aqui ou eu preciso fazer aqui uma
00:03:18
operação aritmética para transformar
00:03:20
esses valores por um controle onde se eu
00:03:23
fizer o resto da divisão aqui usando
00:03:26
esse resto da divisão pelo número 6 eu
00:03:28
tenho garantia de que os meus números
00:03:30
possíveis a serem gerados são número
00:03:32
zero 1 o 2 o 3 o 4 eo 5 a São todos os
00:03:37
números possíveis serem gerados a
00:03:38
divisão por 6 então se eu quisesse
00:03:41
realmente simular um dado eu tenho que
00:03:42
fazer aqui
00:03:44
mais um Tá eu já pegaria o resto da
00:03:47
divisão por 6 sou Maria um porque no
00:03:50
lugar de zero seria o meu número um no
00:03:53
lugar de cinco que é o meu maior número
00:03:55
possível seria o número 6 né que eu
00:03:58
estaria ali simulando a jogada de um
00:04:00
dado
00:04:02
e eu vejo aqui os números gerados 66 15
00:04:05
e 15 constantemente aqui repetiu os
00:04:07
números
00:04:09
assim como poderia ter feito aqui e vez
00:04:12
disso aqui fazer aqui por 10 Mixaria
00:04:14
números de 0 a 9
00:04:19
há
00:04:21
174 e o próprio zero então aqui eu tenho
00:04:24
o controle dessas dessas leituras então
00:04:27
eu fiz leitura por parte do usuário
00:04:28
usuário digita os valores valores
00:04:31
sequenciais preenchidos pro vetor ou
00:04:33
então a geração de números aleatórios
00:04:34
para que ele vetor
00:04:40
bom então para poder fazer isso eu
00:04:42
inicialmente vou fazer aqui o print fd1
00:04:44
barrar ele só para escrever esse retorno
00:04:47
uma nova linha
00:04:49
e eu também tenho agora vou fazer uso
00:04:51
esse fora aqui bem parecido só não
00:04:54
control c control V
00:04:55
onde a diferença é por onde eu começo a
00:04:59
mostrar esse meu vetor então isso vai
00:05:01
mudar eu vou começar a última posição
00:05:03
desse vetor indo decrementando para a
00:05:06
primeira posição decrementando eu vou
00:05:08
fazer isso aqui nesse passo então em
00:05:10
menos menos ele vai fazer aí recebe
00:05:12
menos um e para começar a última posição
00:05:15
no meu caso a última posição do vetor
00:05:17
meu vetor de quatro posições aqui é o
00:05:20
número
00:05:21
se eu colocar o número 4 tem um problema
00:05:24
porque os índices do vetor de quatro
00:05:25
posições é o índice zero um ou dois e o
00:05:29
três então meu último é o três então
00:05:31
cuidado aí na hora de encontrar esse
00:05:33
último valor essa última posição último
00:05:35
índice do vetor A e termina com três vão
00:05:39
fazer aqui simplesmente colocando desta
00:05:41
maneira não colocando fixamente o três
00:05:43
poderia ter colocado aqui nesse caso mas
00:05:46
tô colocando aqui que eu 4 - 1 o tamanho
00:05:48
do vetor menu a ficar bem claro e aqui a
00:05:51
minha condição também vai ser diferente
00:05:53
porque agora eu começo do quatro depois
00:05:55
eu vou mostrar né eu vou fazer uma
00:05:57
interação com o número 3 ou melhor
00:05:59
dizendo começa com três né Depois com
00:06:01
dois depois com um depois com 10 e daí
00:06:03
eu não tenho mais interesse Então minha
00:06:05
condição aqui é enquanto E se for maior
00:06:08
ou igual a 0
00:06:11
é mas é que todo o código eu vejo que tá
00:06:13
aqui é o meu retorno aqui nessa ordem
00:06:15
agora ele primeiro que tá por último
00:06:17
segundo tá por último ou penúltimo tá
00:06:19
como seguro do último tá com o primeiro
00:06:21
valor neste meu vetor
00:06:24
e agora vou mostrar para poder fazer uma
00:06:27
acumulação dos valores do vetor fazer um
00:06:28
somatório dos valores desse vetor para
00:06:31
isso eu vou copiar também esse trecho de
00:06:33
código que eu já tinha aqui para mostrar
00:06:35
o vetor
00:06:36
é tão fácil de ser um outro né poderia
00:06:38
começar do primeiro valor até o último
00:06:40
último até o primeiro mas eu vou pela
00:06:42
estratégia aqui no primeiro até o último
00:06:43
para isso eu mando a diferença é que eu
00:06:46
preciso uma variável que faça essa
00:06:48
acumulação que guarde esse valor
00:06:50
acumulado Então vou querer aqui como o
00:06:52
meu vetor tem valores float e Então essa
00:06:55
minha variável que vai fazer a soma vai
00:06:57
guardar o somatório também tem que ser
00:06:58
forte
00:07:00
eu vou fazer soma eu já vou começar lá
00:07:02
com 0 que eu tenho que inicializar essa
00:07:03
variável e aqui é cada etapa tão para
00:07:07
cada posição do meu vetor eu vou fazer
00:07:09
com que soma receba o valor que tem soma
00:07:12
mas
00:07:14
o meu vetor que se chama Vet na posição
00:07:18
aqui eu tenho então o somatório dos
00:07:21
valores do vetor
00:07:22
e eu vou mostrar o resultado e chefe
00:07:25
como eu somatório ando o valor float eu
00:07:29
vou colocar aqui com uma casa só depois
00:07:31
da vírgula
00:07:33
tô mostrando só um
00:07:37
e é que o resultado da execução do meu
00:07:39
código
00:07:45
e ficou aqui tudo junto né eu vou
00:07:47
melhorar essa saída mas somou tudo um
00:07:48
com
00:07:50
7884
00:07:51
1250 12 mesmo então aqui tá o resultado
00:07:54
da soma dos valores então só para
00:07:56
melhorar a formatação desse número
00:08:00
se
00:08:01
você aqui que eu vou mostrar a soma tá e
00:08:05
eu sou uma propriamente dita e eu vou
00:08:08
começar Isso numa nova linha Então esse
00:08:09
daqui eu vou dar o rake 1/0 para começar
00:08:13
uma nova linha não ficar lá parecendo
00:08:15
que é um número do vetor
00:08:17
oi pra poder mostrar a média a média
00:08:20
nada mais é do que a soma dividido pela
00:08:22
quantidade de valores daquele daquela
00:08:25
soma né quantidade de itens que foram
00:08:27
somados então aqui basicamente que eu
00:08:29
preciso fazer um print F aqui mesmo onde
00:08:31
eu vou mostrar a média
00:08:34
o que nada mais é do que o quantidade da
00:08:37
soma / 4 no caso porque o vetor tem
00:08:39
quatro posições
00:08:42
então agora vou estar mostrando a soma
00:08:45
que a gente abre o que é doce
00:08:47
Oi e a média que no caso é 12 / 414
00:08:51
elementos da três aí média 3 e o
00:08:53
resultado aqui desta forma
00:08:57
é uma coisa que já pode ter sido
00:08:59
percebida que toda vez que eu rodando
00:09:01
esse meu código toda vez ele está
00:09:03
fazendo os mesmos números aleatórios né
00:09:06
parece que ele parou de fazer os números
00:09:08
aleatório exatamente isso que aconteceu
00:09:10
aí parou de fazer os números aleatórios
00:09:12
a repetindo sempre os mesmos valores
00:09:13
aleatórios sorteados e eu posso mudar
00:09:17
isso tá eu posso resolver isso para
00:09:19
fazer isso eu vou precisar adicionar que
00:09:21
uma biblioteca
00:09:23
o que
00:09:25
a time que eu vou utilizar uma função da
00:09:27
biblioteca time E para isso eu vou aqui
00:09:30
no começo do código eu vou plantar
00:09:33
é uma semente o sind-rede aqui com
00:09:38
Esse é um conjunto para que tenha sempre
00:09:41
um conjunto toda vez que eu rodar esse
00:09:42
código ele vai acabar gerando um
00:09:44
conjunto Novo de valores aleatórios para
00:09:45
poder preencher o meu meu vetor
00:09:49
E aí tá agora foi o novo conjunto eu
00:09:51
vejo que tá aqui em vestido o resultado
00:09:52
da soma
00:09:55
848 com seis 14:14 mais 14 2828 / por
00:10:00
quatro das sete horas então tá aqui o
00:10:02
resultado do meu da minha média da minha
00:10:04
soma aqui sendo mostrado também agora
00:10:06
com novo valores aleatórios e eu posso
00:10:09
ver que se eu voltar de novo e vai
00:10:10
sortear um outro conjunto é de uma outra
00:10:12
soma de uma outra média aqui também
00:10:15
sendo mostrada é lógico que quando eu tô
00:10:17
testando um código que eu tô fazendo uma
00:10:18
variação de um código nem é interessante
00:10:20
que ele realmente sorteio Novos Valores
00:10:23
até ficar constante a interessante que
00:10:25
eu não preciso toda vez ficar calculando
00:10:27
de novo então aqui eu tive que
00:10:28
recalcular todos o somatório recalcular
00:10:31
média para ver se ele realmente estava
00:10:32
conseguindo calcular corretamente esse
00:10:34
esses dois elementos né some Média a
00:10:37
importante fazer isso algumas vezes para
00:10:39
garantir que o meu algoritmo tá certo
00:10:40
mas depois que eu tenho garantindo que
00:10:42
aquele trecho tá correto é ruim ficar
00:10:44
voltando e tentando recalcular para ver
00:10:46
se tá certo
00:10:46
E se eu conseguir manter os mesmos
00:10:48
números aleatórios sendo gerados é
00:10:51
interessante para eu não precisar ficar
00:10:52
recalculando meus meus resultados que
00:10:55
estão sendo mostrados pelo algoritmo
00:10:57
todas as vezes a então Eu muitas vezes
00:10:59
eu ignora essa instrução aqui
00:11:02
porque eu já depois eu habilito no final
00:11:05
do algoritmo quando ele tiver pronto
00:11:07
porque ele sorteia mas eu já garanti que
00:11:09
o conjunto de teste tá tudo avaliado e
00:11:11
validar vou mostrar agora como encontrar
00:11:13
o maior e o menor valor que existam
00:11:16
dentro desse vetor né que valor é o
00:11:17
maior e o menor que está aí presente
00:11:19
para isso eu vou precisar de duas
00:11:20
variáveis uma para poder ter guardado
00:11:22
Qual que é o maior valor de qualquer
00:11:24
menor como o meu os valores dentro do
00:11:26
meu retorsão floating eu vou criar essas
00:11:28
variáveis do tipo flaut
00:11:30
o que maior e menor Eu inicialmente já
00:11:33
vou dizer que o maior e o menor
00:11:36
são valores que tem dentro do meu vetor
00:11:41
Ah tá então o meu primeiro valor do
00:11:43
vetor já tá com esse maior valor e
00:11:45
conhecer menor valor e depois eu vou
00:11:47
percorrer o vetor substituindo esse
00:11:49
esses valores da variável maior e menor
00:11:51
por algum outro caso que não algum que
00:11:54
por acaso encontre que seja maior ou
00:11:56
menor efetivamente do que aqueles que eu
00:11:58
tinha guardado tá então se algum valor
00:12:00
for maior do que aquele meu primeiro do
00:12:02
vetor eu vou substituir no meu código
00:12:04
para isso eu vou fazer um novo só também
00:12:07
ele vai começar lá da primeira posição
00:12:08
do vetor e quanto e for menor do que 4 e
00:12:12
mais mais
00:12:16
Oi e para cada etapa eu vou testar se o
00:12:19
meu valor da variável maior for menor do
00:12:22
que algum outro valor do meu vetor então
00:12:24
aqui no caso da posição ir eu vou fazer
00:12:26
o meu maior receber o valor do meu
00:12:30
retorno né já que esse valor era maior
00:12:32
do que o que eu tinha guardado na
00:12:34
variável maior
00:12:36
eu encontrei então o número maior dentro
00:12:38
do vetor então substitua aquela valor da
00:12:40
variável por esse novo valor que eu
00:12:42
encontrei no vetor
00:12:44
A ideia é parecida com relação ao menor
00:12:47
só que agora
00:12:48
testando com relação ao menor a lógica
00:12:51
invertida se algum número dentro do meu
00:12:52
vetor for menor do que aquele que eu já
00:12:56
tinha como sendo o menor de todos então
00:12:59
substitua o valor da variável menor pelo
00:13:02
valor que está no meu vetor
00:13:05
bom então aqui
00:13:07
eu preciso mostrar né Não posso esquecer
00:13:09
disso então print f
00:13:13
e para poder mostrar esses dois valores
00:13:15
eu vou mostrar então aqui o maior
00:13:19
como sendo
00:13:22
é uma casa só depois da, vai ser o
00:13:25
número front eu já vou colocar aqui na
00:13:28
mesma linha só separado aqui para uma
00:13:31
barra o menor também dizendo que vai ser
00:13:35
um número só com uma casa de coisa viva
00:13:38
também é um show e aqui eu mostro meu
00:13:40
maior e o menor
00:13:43
Tô testando o código
00:13:51
só ficou faltando uma uma nova linha
00:13:54
aqui tá mas ele disse que meu maior de
00:13:56
todos aqui é o sete e o menor é o zero
00:13:58
que foi encontrado testando de novo
00:14:01
E como eu tirei lá ué se rende acaba
00:14:04
sendo sempre os mesmos valores aqui tão
00:14:05
sorteados dentro do vetor Então não
00:14:08
preciso recalcular o mostrar só preciso
00:14:10
lembrar de colocar aqui o Barra zero
00:14:12
para mostrar a nova linha
00:14:18
eu quero agora contabilizar Quantas
00:14:20
vezes aparece um determinado valor
00:14:23
dentro desse vetor ainda vou pedir para
00:14:25
o usuário digitar um valor que ele quer
00:14:26
que seja verificado e depois vou ver
00:14:28
quantas vezes aquele valor aparece no
00:14:30
meu vetor para isso vou precisar de uma
00:14:32
nova variável
00:14:33
essa variável
00:14:35
vou fazer aqui do tipo flaut mesmo
00:14:37
porque meus valores do vetor são
00:14:39
floating chamei ela de um eu também vou
00:14:42
precisar de um contador que eu vou
00:14:44
começar ali com 0 que vai me dizer
00:14:46
quantas vezes aparece Aquele número que
00:14:48
o usuário pediu
00:14:49
eu vou ter que ler esse valor então só
00:14:52
vou fazer aqui um print F para pedir
00:14:54
esse valor
00:14:59
o próprio usuário me dizer qual que é o
00:15:00
valor que ele quer que eu conte
00:15:02
é que eu vou ler esse valor
00:15:11
O que é o que tá na minha variável num e
00:15:14
agora vou percorrer o vetor
00:15:16
eu vou copiar aqui mesmo
00:15:20
o cuidar na hora da control c control V
00:15:22
que se o código antigo tivesse algum
00:15:24
erro ele vai estar sendo reproduzido e
00:15:26
tão interessante ficar testando o código
00:15:27
conforme for evoluindo como eu estou
00:15:29
fazendo faça uma etapa perto do código
00:15:31
boca próxima etapa teste o código
00:15:33
realmente para poder garantir que seu
00:15:35
desses control c control V
00:15:37
eu não vou estar pegando alguma coisa
00:15:39
errada ali propagando no código e depois
00:15:41
eu vou ter que sair caçando para poder
00:15:43
corrigir cada uma dessas pastas
00:15:46
é só que eu percorri e agora eu vou
00:15:49
fazer aqui os testes que eu preciso para
00:15:50
ver se eu encontrei aquele número que o
00:15:52
usuário digitou compareceu fazer um if
00:15:55
se o vetor naquela posição ir se aquele
00:15:59
valor for igual o meu número foi lido
00:16:01
pelo usuário então eu vou fazer com que
00:16:03
aquele meu computador seja incrementado
00:16:04
de uma unidade então aumento ele aqui se
00:16:08
tu ficou com
00:16:12
E aí
00:16:14
o Ok só a corrigir aqui dentro ação do
00:16:16
meu código então aquele contabilizou
00:16:18
nessa variável conte Quantas vezes o
00:16:20
valor repetiu então agora vou daqui o
00:16:22
print f
00:16:27
eu vou mostrar até que uma formatação
00:16:29
diferente eu quero ver quantas vezes
00:16:30
apareceu um determinado número tá então
00:16:33
vai ser aqui o número que foi
00:16:35
pedido:
00:16:38
as vezes que ele apareceu quantas vezes
00:16:40
ele apareceu Então vou primeiro mostrar
00:16:42
no lugar desse porcentagem F aqui que eu
00:16:46
escrevi errado faltou o ponto um aqui
00:16:47
então aqui eu vou mostrar qual que é o
00:16:50
número foi pedido pelo usuário e o
00:16:52
número de vezes que ele apareceu tá na
00:16:54
minha variável como
00:16:57
bom então ele tá esperando a falta um
00:17:00
banho aqui de novo tô esquecendo toda
00:17:01
hora mas digamos quero saber quantas
00:17:03
vezes aparece o número 3 Ele disse que é
00:17:05
ocorrência de roupa 10 vezes eles querem
00:17:09
10 vamos ver o que que eu errei num
00:17:16
E aí
00:17:21
e assim eu disse que aqui eu ia ler um
00:17:23
floating eu acabei dizendo que era o
00:17:25
inteiro nos KF tá demorou um pouquinho e
00:17:27
eu já sei que falta um barra ele deixa
00:17:29
colocar aqui o bairro aí né no meu
00:17:31
código para poder testar de novo qual
00:17:33
que eu quero testar três eu já sabia que
00:17:35
devia dar zero né da ocorrência e três
00:17:37
foi 10 vezes tá aí aqui eu sei que tenho
00:17:40
7 tem quantas vezes aparece número 77
00:17:42
aparece uma vez dentro do meu cobertor
00:17:47
a receita é o item bônus Tá mas fica
00:17:50
claro que eu tô repetindo várias vezes
00:17:52
aqui o valor 444 quase todo meu fora que
00:17:55
tem o número 4 associado o cálculo da
00:17:57
minha média tô / 4 Se eu quisesse
00:17:59
trabalhar com vetor de 10 posições eu
00:18:01
queria que lembrar de trocar todos os
00:18:02
lugares onde esse quatro representa o
00:18:05
tamanho do vetor pelo número 10 e eu
00:18:07
tenho uma me esquecer de fazer isso se o
00:18:09
código foi muito grande aqui eu já tenho
00:18:11
muitas coisas que esse código faz então
00:18:13
eu posso dizer que ele está
00:18:14
relativamente grande nesse sentido eu
00:18:17
vou utilizar aqui uso de uma
00:18:20
Bom dia de uma constante eu vou definir
00:18:22
uma constante chamada TAM que tem aqui o
00:18:25
tamanho 4 inicialmente e toda vez que
00:18:28
ser quatro que aparece como o tamanho do
00:18:30
vetor eu vou trocar por essa constante
00:18:32
chamada tam tam tam tam
00:18:37
e por isso aqui que eu deixei o menos um
00:18:39
tá então eu pego aquele tamanho menos um
00:18:41
eu tinha pensado nisso antes
00:18:44
Aqui também é TAM
00:18:47
e aqui não posso crescer que aqui também
00:18:49
é tran que eu não era só dentro dos
00:18:52
porque eu tinha que fazer isso eu tenho
00:18:53
outros lugares que eu tenho que fazer
00:18:55
então são muitos lugares realmente para
00:18:57
ficar observando de trocando
00:19:00
por isso que alguns já fazer uma
00:19:02
constante desde o começo acredito que eu
00:19:04
tenho trocado em todos os lugares vou
00:19:06
testar meu código mas eu tenho que
00:19:07
testar realmente
00:19:10
ah ah mas aqui eu já sei né que os
00:19:12
valores são esses daqui que eu acabei
00:19:13
não contando uma nova semente a soma
00:19:14
dava 12 Eu já tinha visto isso antes é a
00:19:17
média da três e daí né 12 / 4 da três o
00:19:21
maior de todos é o sétima menor todo 00
00:19:23
as repetições do vão pedir aqui número
00:19:26
um apareceu uma vez ok
00:19:31
e é aqui ficou faltando/aí antes
00:19:35
a E agora se eu mudar isso daqui para o
00:19:37
tamanho 10 meu vetor vai tá funcionando
00:19:40
o meu algoritmo vai estar funcionando
00:19:42
para um vetor bem maior né com 10 com 10
00:19:45
valores teria que verificar Realmente
00:19:46
você está contabilizando aqui todas as
00:19:48
vezes né corretamente a sua uma média o
00:19:50
maior valor ou menor maior e fácil de
00:19:52
ver o maior 19 Mesmo menor é 10 Ok
00:19:55
quantas vezes aparece o número 4
00:19:58
e eu quatro apareceu três vezes uma
00:20:01
duas três vezes correto aí também
00:20:04
contando Quantas vezes aparece o número
00:20:06
4