Ir para conteúdo
  • ×   Você colou conteúdo com formatação.   Remover formatação

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.

  • Conteúdo Similar

    • Por Gabrielbdec
      Boa noite,
       
      Eu precisava de uma ajuda em encontrar uma lógica para resolver meu problema. Tenho certeza que qualquer programação seria possível.
       
       
      Eu tenho 5 espaços.
       
      _ _ _ _ _
       
      Cada um desses espaços vai um número de 0 a X. Esse X é dado pelo usuário (inteiro). O problema é que tem de ser feita uma distribuição desses espaços em X. Ou seja, a soma de todos os espaços tem de ser exatamente X.
       
      Exemplo:
       
      1 -> 1000/01000/00100/00010/00001
      2 -> 2000/11000/10100/10010/10001/02000/01100/01010/01001/00200/00110/00101/00020/00011/00002
       
      E assim se segue.
       
      Eu coloquei um contador que rodava como se fosse um relógio digital e ele só fazia a minha função o momento que ele somava e conseguia o X, como segue abaixo:
      Do While t <> (x + 1) v = v + 1 If v = (x + 1) Then m = m + 1 v = 0 End If If m = (x + 1) Then l = l + 1 m = 0 v = 0 End If If l = (x + 1) Then e = e + 1 l = 0 m = 0 v = 0 End If If e = (x + 1) Then t = t + 1 e = 0 l = 0 m = 0 v = 0 End If If t + e + l + m + v = x Then 'Função... End If Loop O problema, é que quando eu colocava um X como 20 já demorava 2 segundos para me retornar o valor, cada número que aumento em x cresce exponencialmente a quantidade de cálculos e, consequentemente, o tempo. Em força bruta (como estou fazendo) não está me ajudando. Tinha o mesmo problema para 2 espaços e era super tranquilo distribuir os dados, para 3 foi um pouco mais difícil, mas consegui, agora, para 5, não consegui achar um padrão de mudança para cada algarismo.
       
      Alguém teria alguma forma de me ajudar? Alguma dica de como buscar diminuir a quantidade de cálculos?
       
       
      Muito obrigado de qualquer modo, att.
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.