// Archivo: busca_sum_ant.cpp
 



/* Zona de inclusiones */
#include <iostream>
using namespace std;

/* Zona de definición de constantes */
#define N 4


/* Zona de declaración de prototipos */
void lee_vector(double v[]);
bool busca(double v[], double& n);



/* Zona de definición de la función principal "main" */
int main(void) {
  double mi_vector[N], numero;
  lee_vector(mi_vector);
  if (busca(mi_vector,numero))  
     cout << "El numero buscado es " << numero << endl;
  else 
     cout << "No se ha encontrado un numero que cumpla la propiedad." << endl;

  system("pause");
}



/* Zona de definición de funciones y acciones auxiliares */


/*
* Acción: lee_vector
* Uso:  lee_vector(v);
* --------------------------------------------------
* Esta acción solicita al usuario que introduzca los
* elementos del vector y los almacena en el vector v.
*/


void lee_vector(double v[]) {
  int i;
  cout << "Introduzca los elementos del vector uno a uno." <<
       endl << endl;
  for (i=0;i<N;i++) {
    cout << "Introduzca el siguiente numero: " << endl;
    cin >> v[i];
  }
}




// Uso:  busca(v,n);

bool busca(double v[], double& n) {
  int i=0; double suma=0.; bool encontrado=false;
  while (i<N && !encontrado) {
    if (v[i]==suma) {
       encontrado=true; n=v[i];
    } else {
       suma+=v[i]; i++;
    }   
  }
  return encontrado;
}




