Главная » 2019 » Февраль » 19 » MIN IMIN MAX IMAX
08:39
MIN IMIN MAX IMAX

#include <iostream>
#include <ctime>
using namespace std;
void vvod(int *x, int k);
void vvod2(int *x, int k);
void vivod(int *x, int k);
int min(int *x, int k);
int max(int *x, int k);
int imin(int *x, int k);
int imax(int *x, int k);
int main()
{
    const int n=24;
    int *a=new int[n];
    vvod2(a,n);
    cout<<"massiv0"<<endl; 
    vivod(a,n);
    cout<<"Min="<<min(a,n)<<" iMin="<<imin(a,n)<<endl;
    cout<<"Max="<<max(a,n)<<" iMax="<<imax(a,n)<<endl;

    cout<<"massiv1"<<endl; 
    vivod(a,n/3);
    cout<<"Min="<<min(a,n/3)<<" iMin="<<imin(a,n/3)<<endl;
    cout<<"Max="<<max(a,n/3)<<" iMax="<<imax(a,n/3)<<endl;

    cout<<"massiv2"<<endl; 
    vivod(&a[n/3],n/3);
    cout<<"Min="<<min(&a[n/3],n/3)<<" iMin="<<imin(&a[n/3],n/3)<<endl;
    cout<<"Max="<<max(&a[n/3],n/3)<<" iMax="<<imax(&a[n/3],n/3)<<endl;

    cout<<"massiv2"<<endl; 
    vivod(&a[2*n/3],n/3);
    cout<<"Min="<<min(&a[2*n/3],n/3)<<" iMin="<<imin(&a[2*n/3],n/3)<<endl;
    cout<<"Max="<<max(&a[2*n/3],n/3)<<" iMax="<<imax(&a[2*n/3],n/3)<<endl;

    delete a;
    system("pause");
}
int min(int *x, int k)
{
    int m=x[0];
    for (int i=0;i<k;i++)
        if (x[i]<m) m=x[i];
    return m;
}
int imin(int *x, int k)
{
    int im;
    for (int i=0;i<k;i++)
        if (x[i]==min(x,k)) im=i;
    return im;
}
int max(int *x, int k)
{
    int m=x[0];
    for (int i=0;i<k;i++)
        if (x[i]>m) m=x[i];
    return m;
}
int imax(int *x, int k)
{
    int im;
    for (int i=0;i<k;i++)
        if (x[i]==max(x,k)) im=i;
    return im;
}
void vvod2(int *x, int k)
{
    srand(time(0));
    for (int i=0;i<k;i++) x[i]=rand()%90+10;
}
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;
}

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