Problema com Array
10/12/2022
0
Eu gostaria de uma ajuda. Eu to resolvendo uma atividade de JavaScript e travei em uma parte faz dias.
A questão quer pontuar quando uma dentro de Array tiver uma sequência específica de letras. Por exemplo
i = ["P", "G", "G", "P", "G", "G", "G", "P", "G", "P", "P","P"]; //aqui o programa deve dizer que teve 1 ponto, pois teve uma sequência de 3 "G".
Queria saber como faço para que meu programa entenda isso ?
A questão quer pontuar quando uma dentro de Array tiver uma sequência específica de letras. Por exemplo
i = ["P", "G", "G", "P", "G", "G", "G", "P", "G", "P", "P","P"]; //aqui o programa deve dizer que teve 1 ponto, pois teve uma sequência de 3 "G".
Queria saber como faço para que meu programa entenda isso ?
Lucas Licurgo
Curtir tópico
+ 0
Responder
Posts
27/12/2022
Arthur Heinrich
Você tem dois arrays, sendo um com 12 elementos e outro com 3, que contém a sequência a ser pesquisada no primeiro.
A sua sequência de 3 elementos pode aparecer em qualquer lugar na sequência principal, desde a posição (1, 2, 3), (2, 3, 4), (3, 4, 5), ..., até a posição (10, 11, 12).
Então, você precisa de um loop para varrer a posição inicial de 1 a 10. O 1 é fixo e o 10 é calculado com (<tamanho do array 1> + 1 - <tamanho do array 2>)
Para cada uma destas posições, verifique se cada letra da busca corresponde ao elemento da lista.
A sua sequência de 3 elementos pode aparecer em qualquer lugar na sequência principal, desde a posição (1, 2, 3), (2, 3, 4), (3, 4, 5), ..., até a posição (10, 11, 12).
Então, você precisa de um loop para varrer a posição inicial de 1 a 10. O 1 é fixo e o 10 é calculado com (<tamanho do array 1> + 1 - <tamanho do array 2>)
Para cada uma destas posições, verifique se cada letra da busca corresponde ao elemento da lista.
ocorrencias = 0 for i in 1..10 achou = true for l in 1..3 if lista[i+l-1] <> busca[l] achou = false if achou ocorrencias = ocorrencias + 1
Responder
Clique aqui para fazer login e interagir na Comunidade :)