Esta funcion de n sumas , es muy util porque aqui ya aplicas los apuntadores que ahhh como pasan a fastidiar a un principio cuando no tienes ni idea de como funcionan , y pues cuando usas apuntadores es el paso por referencia , asi que pues en esta funcion si voy a tratar de explicar como funciona el codigo .
#include <iostream.h>
#include <conio.h>
using namespace std;
int suma(int *a,int n)
{
indicaciones
}
Primero tenemos que definir el tipo de funcion que vamos a generar o recibir, eneste caso creamos una funcion de tipo entero "int" ya que va a retornar el valor de la suma en tipo entero, despues el nombre de la funcion ,"suma" ,y entre los parentesis "()" , los tipos de valores que recibe la funcion , un apuntador(o vector) , y el numero de elementos a sumar .
Para entender un poco mejor la similitud de vectores y apuntadores , recordemos que estos pueden ser de diferentes tipos , int , double , float , char ......
Ej
*a = a[?]
**a = a[?][?]
***a= a[?][?][?]
****** tipo de valor Nombre de la Funcion
(tipo a ,tipo b ,tipo c,......)
{
indicaciones
}
Ahora pasaremos al contenido de la funcion , esto es mas sencillo de entender
int suma(int *a,int n)
{
int r=0,i; // 'i' va ser el controlador del for , incializamos r con 0 , porque sera un contador
for(i=0;i<n;i++) // Aqui dice : 'i' empieza en 0 , menor que n , incrementara de 1 en 1
{
cout<<"\n Teclee el "<<i+1<<"o entero a sumar : ";
cin>>a[i];
r=r+a[i]; // Estes es el contador , 'i'=0 seria : 0= 0 + a[0] , suponiendo que a[0] es 2 , r =0+2 ,
} // para 'i'=1 seria: 2=2 + a[1] , suponiendo que a[1] es 4 , r = 2+4
return (r); // y como la suma se guardo en el contador 'r' , entonces regresamos el valor de r
}
El main es todavia mas sencillo
int main ()
{
int a[50],c,n; // Realmente No hay funciones de n numeros ya que nosotros limitamos en este caso a 50
system("cls");
cout<<"\n\n\n SUMA DE 'n' NUMEROS ENTEROS";
cout<<"\n\n Cantidad de numeros a sumar : ";
cin>>n;
cout<<"\n\n";
c=suma(a,n); // a 'c' se le va asignar el valor que retorne 'r' de nuestra funcion 'suma'
cout<<"\n\n\n SUMA : "<<c; /// que recibe el vector para generar la suma y el numero de elementos
getch();
return 0;
}
Descargar Cpp de la Funcion suma de n elementos
CODIGO COMPLETO
#include <iostream.h>
#include <conio.h>
using namespace std;
int suma(int *a,int n)
{
int r=0,i;
for(i=0;i<n;i++)
{
cout<<"\n Teclee el "<<i+1<<"o entero a sumar : ";
cin>>a[i];
r=r+a[i];
}
return (r);
}
int main ()
{
int a[50],c,n;
system("cls");
cout<<"\n\n\n SUMA DE 'n' NUMEROS ENTEROS";
cout<<"\n\n Cantidad de numeros a sumar : ";
cin>>n;
cout<<"\n\n";
c=suma(a,n);
cout<<"\n\n\n SUMA : "<<c;
getch();
return 0;
}