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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 10.11.2015, 23:57   #1
DimaIT
 
Регистрация: 10.11.2015
Сообщений: 6
По умолчанию Сортировка четных элементов массива по возрастанию, а нечетных-по убыванию - C (СИ)

Нужно отсортировать матрицу следующим образом : элементы с чётными значениями должны быть упорядочены внутри строк по убыванию,элементы с нечётными значениями - по возрастанию. Чётные и нечётные элементы не должны меняться местами.
Помогите,пожалуйста, с сортировкой.

Последний раз редактировалось DimaIT; 11.11.2015 в 07:21.
DimaIT вне форума Ответить с цитированием
Старый 11.11.2015, 00:41   #2
Євгеній Бєлік
Пользователь
 
Аватар для Євгеній Бєлік
 
Регистрация: 29.10.2011
Сообщений: 52
По умолчанию

можешь уточнить вид матрицы, четные должны быть упорядочены внутри строк, а нечетные тогда где должны находится..
вот например первые две строки матрицы:
1 2 5 3 6 4
8 7 3 1 9 0

на выходе что должны получить?
Євгеній Бєлік вне форума Ответить с цитированием
Старый 11.11.2015, 07:20   #3
DimaIT
 
Регистрация: 10.11.2015
Сообщений: 6
По умолчанию

На выходе мы получаем такую матрицу :
1 6 3 5 4 2
8 1 3 7 9 0
Т.е. мы не должны менять позиции чётных/нечётных элементов.
DimaIT вне форума Ответить с цитированием
Старый 11.11.2015, 14:41   #4
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,322
По умолчанию

Нужно решить откуда будут вводиться входные данные, например:
  • пользователь вводит матрицу вручную при запуске приложения
  • матрица зашита внутри приложения
  • пользователь вводит в текстовый файл

Мне нравится больше второй и третий варианты, так как это облегчает отладку приложения. В любом случае, нужно сначала написать ту часть приложения, которая получает входные данные от пользователя. Напишите, а мы проверим.
8Observer8 вне форума Ответить с цитированием
Старый 11.11.2015, 15:37   #5
DimaIT
 
Регистрация: 10.11.2015
Сообщений: 6
По умолчанию

Матрица будет заполняться рандомными числами. Вот код,где мы заполняем матрицу, выводим исходную матрицу,а потом и конечную.Между ними и должна находится сортировка.

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

#define n 6

int main()
{

int Array[n][n];




//Filling the array
srand(time(NULL));
for (int i=0;i<n;i++)
{
  for (int j=0;j<n;j++)
  {
    Array[i][j] = rand()%10;
  }
}

printf ("Source array : \n");
for (int i=0;i<n;i++)
{
  printf("\n");
  for (int j=0;j<n;j++)
  {
    printf ("%d ", Array[i][j]);
  }
}

printf("\n\n");

//Sort

//Output
printf("\n\nOutput array : \n");
for (int i=0;i<n;i++)
{
  printf("\n");
  for (int j=0;j<n;j++)
  {
    printf("%d ", Array[i][j]);
  }
}

 getchar(); 
 return 0;

}

Последний раз редактировалось Stilet; 11.11.2015 в 15:47.
DimaIT вне форума Ответить с цитированием
Старый 11.11.2015, 16:14   #6
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,322
По умолчанию

По условию задачи можно ли применять функцию сортировки qsort?
8Observer8 вне форума Ответить с цитированием
Старый 11.11.2015, 16:20   #7
DimaIT
 
Регистрация: 10.11.2015
Сообщений: 6
По умолчанию

Да, можно.
DimaIT вне форума Ответить с цитированием
Старый 12.11.2015, 01:02   #8
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,322
По умолчанию

Цитата:
Сообщение от DimaIT Посмотреть сообщение
Да, можно.
Это несложное задание. Практикуйтесь сами
8Observer8 вне форума Ответить с цитированием
Старый 12.11.2015, 01:29   #9
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,336
По умолчанию

28Observer8
а расскажи, как бы ты делал, используя qsort?
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 12.11.2015, 14:21   #10
DimaIT
 
Регистрация: 10.11.2015
Сообщений: 6
По умолчанию

Цитата:
Сообщение от 8Observer8 Посмотреть сообщение
Это несложное задание. Практикуйтесь сами
Сама сортировка не сложная.У меня трудности вызывает логика,которая должны быть непосредственно перед сортировкой.Мне бы понять как именно мне отсортировать,например, чётные элементы, не изменив позиции чётных элементов.
DimaIT вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
найти номера нечетных элементов , стоящих на четных местах массива voytik Паскаль, Turbo Pascal, PascalABC.NET 5 26.09.2015 07:18
Дан целочисленный массив X(N,M).среди элементов нечетных столбцов массива найти количество четных чисел. darwin1 Паскаль, Turbo Pascal, PascalABC.NET 1 15.03.2014 17:50
Найти и вывести на экран индексы четных элементов каждой строки и нечетных элементов каждого столбца. Richik123 Помощь студентам 0 27.11.2012 16:29
посчитать к-во четных и нечетных элементов массива kwain Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 15.12.2011 10:41
Сортировка элементов массива по убыванию nadminka Общие вопросы .NET 1 18.05.2010 23:08