lunes, 7 de noviembre de 2016

Ejemplo de arreglos con funciones que entregan mas de un valor para n valores

#include <iostream>
#include <stdlib.h>
#include <iomanip>

using namespace std;
void LeerDatosArreglo (int A[10],int n);
int encontrarMayor (int A[10], int n);
void desplegarDatosArreglo (int A[10],int n);
int calcularPromedio (int A[10],int n);
double calcularProducto(int A[10],int n);
void desplegarMayorIgualPromedio(int A[10],int n);
void EncontrarMayorPosicion(int A[10],int n, int &may, int &pos);

int main()
{
    int numeros[10], mayor,posicion,cantidad;
    do
    {

     cout<<"\n\nCuantos datos desea almacenar del 1 a 10 : ";
     cin>>cantidad;
     if(cantidad <1 || cantidad > 10)
    {
        cout<<"\n\nLa cantidad de datos incorrecta\n";
        cout<<"Los datos que puede almacenar esta en el rango 1 a 10\n";
    }
    }
    while(cantidad <1 ||cantidad>10);

    LeerDatosArreglo(numeros,cantidad);

   desplegarDatosArreglo(numeros,cantidad);

    cout<<"El dato mayor es: "<< encontrarMayor(numeros,cantidad)<<endl;

   cout<<"\n\nEl promedio de los numeros es "<<calcularPromedio(numeros,cantidad)<<endl;

   desplegarMayorIgualPromedio(numeros,cantidad);

   cout<<fixed<<setprecision(2)<<endl;

   cout<<"\n\nEl producto es: "<<calcularProducto(numeros,cantidad)<<endl;

   EncontrarMayorPosicion(numeros,cantidad,mayor,posicion);

   cout<<"\n\nEl dato mayor es "<<mayor<<" esta en la posicion "<<posicion<<endl;
    return 0;
}
void LeerDatosArreglo(int A[10],int n)
{
int i;
cout<<"\n\nIntroducir "<<n<<" valores enteros\n";
for (i=0; i<n; i++)
{
    cout<<"Valor "<<i+1<<" : ";
    cin>>A[i];
}
}
int encontrarMayor(int A[10],int n)
{
    int i;
    int mayor=A[0];
    for(i=1; i<n;i++)
    {
    if (A[i]>mayor)
    {
        mayor=A[i];
    }
    }
    return mayor;
}
void desplegarDatosArreglo(int A[10],int n)
{
    int i;
    system("cls");
    cout<<"Listado de "<<n<<" Valores enteros\n\n";
    for(i=0;i<n;i++)
    {
        cout<<A[i]<<"\t";

    }
   cout<<endl;
}
int calcularPromedio(int A[10],int n)
{
    int i;
    int suma=0;
    for(i=0;i<n;i++)
    {
        suma +=A[i];
    }
    return suma/n;

}
void desplegarMayorIgualPromedio(int A[10],int n)
{
    int i;
    int promedio=calcularPromedio(A,n);
    cout<<"\n\nValores Mayores e iguales a "<<promedio<<endl;

    for(i=0;i<n;i++)
    {
        if(A[i]>=promedio)
        {
            cout<<A[i]<<"\t";
        }

    }
     cout<<endl;
}
double calcularProducto(int A[10],int n)
{
    int i;
    double prod=1;
    for(i=0;i<n;i++)
    {
        prod *=A[i];
    }
    return prod;
}
void EncontrarMayorPosicion(int A[10], int n, int &may, int &pos)
{
    int i;
    may=A[0];
    for(i=1;i<n;i++)
    {
        if(A[i]>may)
        {
            may=A[i];
            pos=i;
        }

    }
    pos++;
}

No hay comentarios:

Publicar un comentario