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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.10.2009, 22:03   #1
amerhant
Пользователь
 
Регистрация: 19.10.2009
Сообщений: 24
По умолчанию Задача по массивам в си

Помогите плиз как это ришить:
Переставить элементы целочисленного массива X=(x1,x2, ...,xn) таким образом, чтобы находящиеся в нем четные (ч) и нечетные (нч) элементы были рассположины попарно: ч нч ч нч ч нч ... В конце массива рассположить избыточные четные или не четные элементы.
amerhant вне форума Ответить с цитированием
Старый 20.10.2009, 00:07   #2
val_nnm
Форумчанин
 
Регистрация: 18.10.2009
Сообщений: 185
По умолчанию

Вот чтото вроде такого
Код:
#include "stdafx.h"

void Process(int* A, int ArraySize)
{
	int p = 0; // Указатель на элемент для обраотки
	while (p<ArraySize)
	{
		// Если p - чётное то вставляем чётное значение, если нет то нечётное
			int i=p;
		while ((i<ArraySize)&&((A[i]%2)!=(p%2))) { i++;	} // Ищим первый подходящий элемент
		if (i>=ArraySize) { return; } // Подходящий элементов больше нет. В конце остались неподходящие. Значит выходим
		int temp = A[i];
		for (int j=i;j>p;j--) { A[j] = A[j-1]; } // Сдвигаем елементы на одну позицию вперёд
		A[p] = temp; // Вставляем элемент в нужную позицию
		p++;
	}
};

int main(int argc, char* argv[])
{
	int A[] = { 0,1,2,3,4,6,7,8,10,12,15 };
	Process(A,11);
	for (int i = 0;i<11;i++)
	{
		printf(" %u ",A[i]);
	}
	return 0;
};
На С# пишу лучше чем на русском.
"У меня правильнописание хромает. Оно хорошее, но почему-то хромает."
val_nnm вне форума Ответить с цитированием
Старый 08.11.2009, 22:17   #3
amerhant
Пользователь
 
Регистрация: 19.10.2009
Сообщений: 24
По умолчанию

Спасибо друг очень выручил
amerhant вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
# Delphi - Задача по массивам. forumu Помощь студентам 5 02.04.2010 20:37
Задача по массивам. Срочно решить Baby33 Паскаль, Turbo Pascal, PascalABC.NET 2 20.01.2009 14:09
Задача к одномерным массивам. kry Паскаль, Turbo Pascal, PascalABC.NET 2 29.12.2008 09:57
# Delphi - Задача по массивам. Mysia Помощь студентам 4 05.05.2008 17:39
Задача по массивам grerg Помощь студентам 1 30.10.2007 08:25