Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: JHONALEJOO en 20 Noviembre 2014, 16:14 pm



Título: SUMA DE VECTORES
Publicado por: JHONALEJOO en 20 Noviembre 2014, 16:14 pm
Dado dos Vectores A y B de 7 elementos numéricos cada uno realice la siguiente operación. Llene el Vector A con números pares comprendidos en el intervalo 20 a 40. El Vector B debe llenarse a partir del último elemento del Vector A (forma decreciente). El resultado es que el primer elemento del vector B debe ser el último elemento del vector A, y el último elemento del vector B debe ser el primer elemento del vector A. Reste ambos Vectores A-B y almacénelo en el vector R
NO SE COMO HACER LA ULTIMA PARTE

   int vecA[3],vecB[3],vecR[3],i;
                
   cout<<"ingrese los numeros pares conprendidos entre 20 y 40  para el vertor A"<<endl;
        for(i=1;i<=3;i++)   
         {cout<<"ingrese un numero"<<endl;
         cin>>vecA;        
            if(vecA>=20 && vecA<=40 && vecA%2==0 )
            {
               
               
            }else{
               cout<<"error el numero de ser par y estar entre 20 y 40"<<endl;
               i--;
            }
         }
        for(i=3;i>=1;i--){
           
        vecB=vecA;
           
        }


Título: Re: SUMA DE VECTORES
Publicado por: MeCraniDOS en 20 Noviembre 2014, 16:30 pm
Creo que deberias revisar tu programa,  tiene algunos errores  :o

Código
  1. for(i=1;i<=3;i++)

Eso esta mal, las posiciones del vector van de 0 a 2, ya que tiene tres posiciones, por lo que se sale del vector cuando llega a 3,

Código
  1. cin>>vecA;

Asi accedes a una variable de tipo int, no a un vector de enteros (vecA[posicion])

Código
  1. if(vecA>=20 && vecA<=40 && vecA%2==0 )

Esa comparacion no hace lo que tu quieres, si quieres saber si en una determinada posicion es par y en ese rango, es como he puesto antes
Código
  1. if(vecA[posicion] >= 20 /* && ... */)


Código
  1. for(i=3;i>=1;i--)
  2. {
  3.    vecB=vecA;
  4. }

Ídem, se sale del vector y no estas cambiando valores (vecA[posicion])

Saludos


Título: Re: SUMA DE VECTORES
Publicado por: rir3760 en 20 Noviembre 2014, 17:18 pm
Dado dos Vectores A y B de 7 elementos numéricos cada uno realice la siguiente operación [...]
Cuando publiques código fuente por favor utiliza las etiquetas de código. Estas se agregan mediante el cuadro desplegable con el texto "GeSHi" en la pagina de composición de mensajes, solo tienes que seleccionar ahí el lenguaje (C, C++, etc.).

----

El fragmento que publicas tiene varios errores, el mas importante es declarar los arrays con tres elementos cuando el enunciado te pide que sean siete.

También hay que modificar el bucle para utilizar los indices 0 .. 6 y cuando obtienes un numero lo almacenas en la posición "i" del primer vector y "6 - i" del segundo. A continuación restas los vectores, la descripción de esa operación la encuentras en la red en menos de cinco minutos cortesía de cualquier buscador decente.

Un saludo