Главная » 2015 » Март » 5 » сдвиг массива вправо на 2 позиции (циклический)
09:15
сдвиг массива вправо на 2 позиции (циклический)

#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;

    // сдвиг вправо на 2 позиции
    int b=get(n-1);
    int c=get(n-2);
    for (int i=n-1;i>1;i--)
    {
        put(i)=get(i-2);
    }
    put(1)=b;
    put(0)=c;

    cout <<"Сдвиг вправо на 2 позиции, массив"<<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;
}

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