#include <iostream>
#include "VectorEnteros.h"

//Constructores
VectorEnteros::VectorEnteros(){
	tamano = 0;
}
VectorEnteros::VectorEnteros(const VectorEnteros& vec){
	int i,j;
	tamano = vec.tamano;
	for(i=0; i<tamano; i++){
		if(vec.tamano > i){
			valores[i] = vec.valores[i];
		}
	}
}
VectorEnteros::VectorEnteros(const int t, const int *vals){
	int i;
	tamano = t;
	for(i=0; i<t; i++){
		valores[i] = vals[i];
	}
}

//Destructor
VectorEnteros::~VectorEnteros(){
}

//Métodos de acceso
int VectorEnteros::obtenerElemento(const int i){
	return this->valores[i];
}
int VectorEnteros::obtenerTamano(){
	return tamano;
}
void VectorEnteros::mostrarVector(){
	int i;
	for(i=0; i<tamano; i++){
		cout<<valores[i]<<endl;
	}
}

//Métodos de modificación
void VectorEnteros::asignarElemento(const int i, const int val){
	valores[i] = val;
}
void VectorEnteros::inicializarVector(){
	int i;
	for(i=0; i<TAMMAX; i++)
		valores[i] = 0;
}

VectorEnteros VectorEnteros::operator+(VectorEnteros v){
	int i;
	if(v.tamano == this->tamano){
		//cout<<v.tamano<<endl<<this->tamano<<endl;
		VectorEnteros vr(v);
		for(i=0; i<v.tamano; i++){
			vr.valores[i] = v.valores[i] +
					this->valores[i];
		}
		return vr;
	}
	else{
		if(this->tamano < v.tamano){
			VectorEnteros vr(v);
			for(i=0; i<this->tamano; i++){
			    vr.valores[i] = this->valores[i] +
						v.valores[i];
			}
			return vr;
		}
		else{
			VectorEnteros vr(*this);
			for(i=0; i<v.tamano; i++){
			    vr.valores[i] = this->valores[i] +
						v.valores[i];
			}
			return vr;
		}
	}
}

//Sobrecarga de operadores
bool VectorEnteros::operator==(VectorEnteros){
}

