Представьте, что перед нами стоят бочки с номерами на их. Нас

Представьте, что перед нами стоят бочки с номерами на их. Нас очень требуют переставить их местами так, что нечетные бочки остались на месте, а четные шли в оборотном порядке исходному.
Язык си либо с++

Задать свой вопрос
Лилия Иозенас
Номера бочек порядковые либо вводятся с клавиатуры? Их количество также вводится с клавиатуры?
Полина Оксентюк
В первой строке записано одно естественное число - количество бочек. Во второй строке записаны номера бочек, в том порядке, в котором они стояли вначале.
2 ответа

include lt;iostreamgt;

using namespace std;

int main()

 int n,k,m;

 coutlt;lt;"n = "; cingt;gt;n; k=n-1;

 int a[n];

 for (int i=0; ilt;n; i++) cingt;gt;a[i];

 for (int i=0; ilt;n; i++)

   if (a[i]%2==0)

      while ((a[k]%2!=0) amp;amp; (kgt;i)) k--;

      if (kgt;i)  

        m=a[i]; a[i]=a[k]; a[k]=m; k--;  

       

       

   coutlt;lt;a[i]lt;lt;" ";

 

 coutlt;lt;endl;

 system("pause");

 return 0;

n = 11

2 3 5 7 4 6 8 9 13 10 11

10 3 5 7 8 6 4 9 13 2 11

include lt;iostreamgt;

using namespace std;

int main()

int n, m=0, r;

cingt;gt;n;

int arr[n], arrb[n];

for (int i=0; ilt;n; ++i)

 cingt;gt;arr[i];

 if(arr[i]%2==0)

  arrb[m]=i;

  ++m;

 

--m;

r=m;

for (int i=0; ilt;=m/2; ++i)

 int buf = arr[arrb[i]];

 arr[arrb[i]]=arr[arrb[r]];

 arr[arrb[r]]=buf;

 --r;

for (int i=0; ilt;n; ++i) coutlt;lt;arr[i]lt;lt;" ";

Будут вопросы по решению - пиши.

, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт