Jump to content

[Resolvido] [Dúvida] inserir em vector


alves077

Recommended Posts

Boa tarde,

Tenho um problema, que pode ter resolução simples, mas assim há primeira vista não estou a ver...

Tenho um array com x posições, tenho que ir inserindo valores nas posições certas, isto é, imaginemos que tenho que inserir o 14 num array cujo o tamanho é igual a 5, inclui o 0...5, na verdade o tamanho e 6. Tenho que inserir o 14 no índice 5, por se contar 0,1,2,3,4,5....14 calha no índice 5. É como tivesse um array circular, e tenho que ir inserindo os valores nos índices correspondentes. Espécie de uma roleta e onde para inseri, contanto sempre com o 0. Pensei implementar num ciclo, mas não queria, penso que matematicamente consigo uma formula que traduza este problema. Alguém têm uma ideia?

Obrigado pela atenção,

alves077

Link to comment
Share on other sites

Imaginando que o array ja esta cheio escreve por cima de outro não há problema, quero guardar o número 14 no correspondente índice, o calculo do índice a guardar, é que é o problema, é como anda-se desdo do índice 0 até X(tamanho máximo do array) á roda até encontrar o número 14, e inserir o respectivo número 14 no índice que calculei.

Exemplo tenho um vector com seguintes índices [0,1,2,3,4,5]

tenho o número 8 para inserir 0,1,2,3,4,5,0,1,2 -> insiro no índice 2.

Obrigado pela atenção,

alves077

Link to comment
Share on other sites

Penso que ele não se está a explicar bem.

Se eu entendi o que ele quer é algo do tipo, tem um array de 6 posições (0,1,2,3,4,5).

E imagina que ele quer fazer a inserção do número 14 nesse array através desta regra:

numero 0 - posicao 0

numero 1 - posicao 1

numero 2 - posicao 2

numero 3 - posicao 3

numero 4 - posicao 4

numero 5 - posicao 5

numero 6 - posicao 0

numero 7 - posicao 1

numero 8 - posicao 2

numero 9 - posicao 3

numero 10 - posicao 4

numero 11 - posicao 5

numero 12 - posicao 0

numero 13 - posicao 1

numero 14 - posicao 2

Ou seja o numero 14 acabaria por ficar na posição 2 porque quando chegamos ao fim do array, voltamos inserir o numero na posicao inicial do array e voltamos a percorrê-lo. Certo?

Edited by Carlos7
Link to comment
Share on other sites

Subtrai-lhe o comeco antes de calcular o resto da divisao

Para meter valores entre 3 e 14 num espaco de 5 elementos calcula o resto da divisao do teu valor - 3 por 5.

Por exemplo, para o valor 3 calcula o resto da divisao de 0 (3 - 3) por 5 (dá 0);

para o valor 14 calcula o resto da divisao de 11 por 5 (dá 1)

What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.