Главная » 2015 » Март » 10 » сдвиг массива на k позиций влево
09:57
сдвиг массива на k позиций влево

#include <iostream>
using namespace std;
double &put(int i);
double get(int i);
const int n=10;
double a[n];
double error = -1;
int main()
{
    setlocale(LC_ALL, "Russian");  
    cout <<"Введите массив"<<endl;
    for (int i=0;i<n;i++)
    {
        cin >>put(i);
    }
    cout <<"Введенный массив"<<endl;
    for (int i=0;i<n;i++)
    {
        cout <<get(i)<<" ";
    }
    cout <<endl;

    // сдвиг влево на k позиций
    int k;
    cout <<"Введите k ";
    cin >> k;
    for (int j=1;j<=k;j++)
    {
        int b=a[0];
        for (int i=0;i<n-1;i++)
        {
             put(i)=get(i+1);
        }
    put(n-1)=b;
    }

    cout <<"Сдвиг влево на k позиций, массив"<<endl;
    for (int i=0;i<n;i++)
    {
        cout <<get(i)<<" ";
    }
    cout <<endl;

    system("pause");
    return 0;
}

double &put(int i)
{
    if(i>=0 && i<n)
        return a[i];
        else
            return error;
}

double get(int i)
{
    if(i>=0 && i<n)
        return a[i];
        else
            return error;
}

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