Главная » 2018 » Февраль » 16 » Массив 13 задача
10:17
Массив 13 задача

#include<iostream>
using namespace std;
void vvod (int *x, int k);
void vivod (int *x, int k);
double Sr_Ar_Max_Min (int *x, int k);
int main()
{
        setlocale(LC_ALL, "Russian");      
        const int n=10;
        int a[n];
        cout<<"Введите массив"<<endl;
        vvod(a,n);
        cout<<"Введенный массив"<<endl;
        vivod(a,n);
        cout<<"Среднее арифметическое между Max и Min = "<<Sr_Ar_Max_Min(a,n)<<endl;
        system("pause");
        return 0;
}
void vvod(int *x, int k)
{
    for (int i=0; i<k; i++)
        cin >> x[i];
}
void vivod(int *x, int k)
{        
    for (int i=0; i<k; i++)
        cout << x[i]<<" ";
    cout << endl;
}
double Sr_Ar_Max_Min (int *x, int k)
{
    int max,imax,min,imin;
    max=x[0]; imax=0;
    min=x[0]; imin=0;
    for (int i=0; i<k; i++)
    {
        if (x[i]>max) 
        {
            max=x[i]; imax=i;
        }
        if (x[i]<min) 
        {
            min=x[i]; imin=i;
        }
    }
    int n=abs(imax-imin)+1;
    int Summa=0;
    if (imax<=imin)
        for (int i=imax; i<=imin; i++) 
            Summa+=x[i];
    else
        for (int i=imin; i<=imax; i++) 
            Summa+=x[i];
    return (double)Summa/(double)n;
}

Просмотров: 323 | Добавил: denjes | Рейтинг: 0.0/0
Всего комментариев: 0
avatar