Autor Tema: desplazar los valores de un array  (Leído 17259 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado fastyx

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 353
desplazar los valores de un array
« en: 01 de Julio de 2011, 18:55:58 »
Amigos :espero puedan ayudarme. senso el estado de un pin y en funcion de si es uno o cero , coloco ese valor en la posicion cero del array n de 16 posiciones.

luego tengo que desplazar los valores del array una posicion a la derecha.

no pude hacerlo. no me salió.

desde ya gracias!!

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: desplazar los valores de un array
« Respuesta #1 en: 01 de Julio de 2011, 19:28:33 »
Con << o >>

A=A<<1;
No contesto mensajes privados, las consultas en el foro

Desconectado fastyx

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 353
Re: desplazar los valores de un array
« Respuesta #2 en: 01 de Julio de 2011, 19:33:15 »
gracias suki por contestar!

cuando te referis a A , estas hablando del nombre del array?


Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: desplazar los valores de un array
« Respuesta #3 en: 01 de Julio de 2011, 20:42:58 »
gracias suki por contestar!

cuando te referis a A , estas hablando del nombre del array?



No, A es una variable, es un ejemplo solamente... Puedes ser más claro en lo que necesitas, y colocar el código de como lo has intentado  ;-)


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado preslei elvis

  • PIC10
  • *
  • Mensajes: 9
Re: desplazar los valores de un array
« Respuesta #4 en: 01 de Julio de 2011, 21:07:52 »
Lo que yo haria:

1- Genero un vector de buck up llamado b de 16 posiciones: intX b[16]
2- Cuando tenga que realizar el corrimiento, primero guardo todos los valores del vector n en b

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: desplazar los valores de un array
« Respuesta #5 en: 02 de Julio de 2011, 03:34:47 »
Para correr a la derecha:

Código: [Seleccionar]
recorrer desde el último al primero en orden descendente
     array[i]=array[i-1];

Para correr a la izquierda:

Código: [Seleccionar]
recorrer desde el primero al último en orden ascendente
     array[i]=array[i+1];

Si quieres conservar el dato que está en el extremo, debes salvarlo en otra variable antes del bucle.

Desconectado preslei elvis

  • PIC10
  • *
  • Mensajes: 9
Re: desplazar los valores de un array
« Respuesta #6 en: 02 de Julio de 2011, 08:54:40 »
Perdon,no se porque no salio completo el mensaje completo.

1- Genero un vector de buck up llamado b: intX b[16]

2- Guardo el contenido del vector n en el vector b:

        for(i=0,i<=15,++i)
        {b=n}

3- Coloco el valor deseado en la posicion cero del vector n: n[0]=valor

4- Cargo los valores restantes en el vector n con los almacenados en b:

        for(i=1,i<=15,++i)
        {n=b[i-1]}

Espero que te sirva, sino aclara un poco mas o coloca algo del codigo.

Slds.