Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.01.2014, 10:35   #1
looc-dogg
Пользователь
 
Регистрация: 06.01.2014
Сообщений: 20
По умолчанию Преобразование массива на "Си"

Добрый вечер. Задание таково: дан некоторый массив произвольной длины, требуется преобразовать его так, чтобы элементы с четными индексами были справа, а с нечетными индексами были слева.
Пример:
{0 1 2} -> {1 0 2} или {1 2 0}
{0 1 2 3 4} -> {1 3 0 2 4}
{0 1 2 3 4 5 6 7 8} -> {1 3 5 7 0 2 4 6 8}
Порядок следования элементов в получившемя массиве не важен, важно, чтобы слева были нечетные индексы, а справа четные. Теоретически все не так сложно: обменять элементы с четными индексами первой половины с нечетными второй половины
Но на практике довольно сложно.Заранее спасибо
looc-dogg вне форума Ответить с цитированием
Старый 15.01.2014, 11:51   #2
Helloween
Форумчанин
 
Регистрация: 24.04.2012
Сообщений: 300
По умолчанию

Код:
#include "stdio.h"
#include "time.h"
#include "stdlib.h"

int main()
{ 
   const int asize = 10;
   int* arr = new int[asize];
   unsigned long seed = time(NULL);
   srand(seed);
   for(int i = 0; i < asize; i++)
   {
       arr[i] = i;//rand()%100
       printf("%4d",arr[i]);
   }
   printf("\n");
   for(int i = 0, j = asize % 2 ? asize - 2 : asize - 1; i < asize && j >= asize/2; i += 2, j -= 2)
   {
       int tmp = arr[j];
       arr[j] = arr[i];
       arr[i] = tmp;
   }
   for(int i = 0; i < asize; i++)
       printf("%4d", arr[i]);
   return 0;
}
Помог? Оставляем отзыв =)
Helloween вне форума Ответить с цитированием
Старый 15.01.2014, 12:16   #3
looc-dogg
Пользователь
 
Регистрация: 06.01.2014
Сообщений: 20
По умолчанию

Спасибо,огромнооооееее
looc-dogg вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Постоянно слетает галочка "автоматически" в "Параметры Excel", "Формулы", "Вычисления в книге" Alexsandrr Microsoft Office Excel 4 19.10.2013 14:22
Неявное преобразование типа "string" в "int" невозможно artscorp C# (си шарп) 4 10.02.2013 20:59
Создать класс "Фигура", от него наследованием создать 3 класса ("треугольник", "четырехугольник", "окружность") funnyy Помощь студентам 3 17.10.2012 17:40
Как обойти "преобразование типа из "string" в "float" невозможно" lexluter1988 Помощь студентам 1 07.08.2010 12:23
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04