Pular para o conteúdo

Identificar intervalo

Responder tópico
  • Denunciar
  • Indicar
01 02

13. Re: Identificar intervalo

Enviado em 03/11/2017 - 15:21h

drizze escreveu:

A ideia do msoliver foi genial, mas não resolve esse problema, pois ele mexeu na sequência e não pode. Pelo que entendi, precisa pegar as sequências que contenha o menor número nelas e que essa mesma sequência seja maior que 06. Outro detalhe importante é que precisam ser consecutivos, não pode conter número repetido.

Então se eu tenho essa seguinte sequência:
02 02 03 04 05 06 07 01 02 03 04 05 06 07 08 09 10 11 12 05 06 07 01 02 03 04 05 06 07
Creio que deverão ser impressos apenas essas 2 sequências:

01 02 03 04 05 06 07 08 09 10 11 12
01 02 03 04 05 06 07
Estou correto?

No exemplo do seu primeiro post, nos dá o retorno de 01 ao 10, porém, vai até o 15.

Boa tarde Drizze.
Não alterei a sequencia....
A minha lógica foi, montar sequências, e buscar por elas na var SEQ:
SEQ="01 02 03 01 02 03 04
01 02 03 04 05 06 07 08 09 10 
12 13 14 15 16 17 18 19 20"
Observe que no exemplo do 1º post, a sequencia é interrompida. Não tem o nº "11".

mso

Responder tópico

14. Re: Identificar intervalo

Enviado em 03/11/2017 - 15:38h

msoliver escreveu:

drizze escreveu:

A ideia do msoliver foi genial, mas não resolve esse problema, pois ele mexeu na sequência e não pode. Pelo que entendi, precisa pegar as sequências que contenha o menor número nelas e que essa mesma sequência seja maior que 06. Outro detalhe importante é que precisam ser consecutivos, não pode conter número repetido.

Então se eu tenho essa seguinte sequência:
02 02 03 04 05 06 07 01 02 03 04 05 06 07 08 09 10 11 12 05 06 07 01 02 03 04 05 06 07
Creio que deverão ser impressos apenas essas 2 sequências:

01 02 03 04 05 06 07 08 09 10 11 12
01 02 03 04 05 06 07
Estou correto?

No exemplo do seu primeiro post, nos dá o retorno de 01 ao 10, porém, vai até o 15.

Boa tarde Drizze.
Não alterei a sequencia....
A minha lógica foi, montar sequências, e buscar por elas na var SEQ:
SEQ="01 02 03 01 02 03 04
01 02 03 04 05 06 07 08 09 10 
12 13 14 15 16 17 18 19 20"
Observe que no exemplo do 1º post, a sequencia é interrompida. Não tem o nº "11".

mso


Exato, a função do primeiro post está mal definida. Mas ainda assim, curti sua ideia.

15. Re: Identificar intervalo

Enviado em 04/11/2017 - 07:35h

Não acho que precise pegar a sequência porque — duh! — ela é uma sequência. Basta saber identificar onde ela começa e qual o seu comprimento.

O script que eu mostrei faz isso, desde que esteja um número por linha.

Se os números estiverem todos numa mesma linha, contida na variável linha, basta fazer algo como “echo $linha | tr " " \\n | script”.

16. Re: Identificar intervalo

Enviado em 04/11/2017 - 19:48h

paulo1205 escreveu:

Não acho que precise pegar a sequência porque — duh! — ela é uma sequência. Basta saber identificar onde ela começa e qual o seu comprimento.

O script que eu mostrei faz isso, desde que esteja um número por linha.

Se os números estiverem todos numa mesma linha, contida na variável linha, basta fazer algo como “echo $linha | tr " " \\n | script”.
Exato ... entendeu perfeitamente ... eu só preciso identificar o intervalo onde começa e onde termina... desde q obedeça aos critérios.

os números estão em linha separados por espaço ... é totalmente viável e é bem provavel de eu precisar mesmo fazer essa identificação da linha numa variável no script original !!!


------------------------------------------| Linux User #621728 |-----------------------------------------

" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"

------------------------------------------| Linux User #621728 |-----------------------------------------

01 02

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder