С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.94
BVas31
0 / 0 / 0
Регистрация: 02.12.2010
Сообщений: 6
#1

Напишите функцию для обмена строк двумерного массива и с ее помощью отсортируйте массив с элементами третьего столбика - C++

02.12.2010, 22:27. Просмотров 2462. Ответов 7
Метки нет (Все метки)

Помогите,пожалуйста,написать функцию.Вот задание:
Напишите функцию для обмена строк двумерного массива и с ее помощью отсортируйте массив с элементами третьего столбика.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.12.2010, 22:27
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Напишите функцию для обмена строк двумерного массива и с ее помощью отсортируйте массив с элементами третьего столбика (C++):

Написать функцию для обмена строк двумерного массива - C++
Написать функцию для обмена строк двумерного массива с ее помощью отсортировать массив по элементам третьего столбца.

нужна функция для обмена строк двумерного массива на плюсах - C++
доброго времени суток нужна ваша помощь в решении задачи вот здесь она уже решена но это c# а мне нужно точно такаяже прога на плюсах...

Напишите функцию для обращения двумерного массива в одномерный - C++
Здраствуй

Написать функцию для обмена строк двумерного массива и с ее помощью отсортировать массив - C (СИ)
нужно написать функцию для обмена строк двумерного массива и с ее помощью отсортировать массив по элементам третьего столбца. я написала...

Написать функцию для обмена строк двумерного массива - C#
Написать функцию для обмена строк двумерного массива с ее помощью отсортировать массив по элементам третьего столбца. помогите с этой...

В классе Arrs напишите функцию PrintArr3 для вывода двумерного массива массивов - C#
Ребят, нужна помощь с заданием. 1. В классе Arrs напишите функцию PrintArr3 для вывода двумерного массива массивов; Методические...

7
Vladimir.
158 / 158 / 10
Регистрация: 24.11.2009
Сообщений: 375
03.12.2010, 07:15 #2
Видимо, имеется ввиду сортировка по элементам третьего столбца...
Вспоминаем, что в си двумерный массив - массив массивов, с другой стороны имя массива является указателем на первый элемент. Значит: если нужно обменять две строки, то вовсе не обязательно менять значения элементов строк массива, можно просто поменять указатели на эти строки. Естественно при этом двумерный массив должен быть массивом строк.
решение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#include<iostream>
//для генерации случайного массива:
#include<time.h>
#include<stdlib.h>
//прототип нашей функции:
void my_swap(double* &a, double* &b);
 
 
int main(void){
 
//Создадим массив:
    double** matrix;
    int num_of_row = 8;
    int num_of_col = 6; //не меньше трёх
 
    matrix = new double* [num_of_row];
        for (int i=0; i<num_of_row; i++)
                matrix[i]= new double [num_of_col];
//заполним его случайными числами от 1 до 100
    srand(time(NULL));
    for (int i=0; i<num_of_row;i++)
        for (int j=0;j<num_of_col;j++)
            matrix[i][j] = rand()%100 + 1;
// покажем до сортировки:
    for(int i=0;i<num_of_row;i++){
        for(int j=0;j<num_of_col;j++) 
            std::cout<<matrix[i][j]<<"\t";
        std::cout<<std::endl;
    }
std::cout<<std::endl;
 
// собственно сортировка(ради разнообразия "гномья") 
// c помощью нашей функции my_swap:
    for (int i = 1;i < num_of_row;){
        if (matrix[i-1][2]>matrix[i][2]){
            my_swap(matrix[i-1],matrix[i]);
            i--;
        }
        else i++;
        
        if(i == 0) i++;
            
    }
    //покажем после сортировки:
    for(int i=0;i<num_of_row;i++){
        for(int j=0;j<num_of_col;j++) 
            std::cout<<matrix[i][j]<<"\t";
        std::cout<<std::endl;
    }       
 
//Освобождаем память:
    for (int i=0; i<num_of_row; i++)
        delete[] matrix[i];
    delete[] matrix;
 
return 0;   
}
 
void my_swap(double* &a, double* &b){
    double* tmp = a;
    a = b;
    b = tmp;
}
2
Bibi
0 / 0 / 0
Регистрация: 14.03.2013
Сообщений: 11
01.05.2013, 15:57 #3
Vladimir., здравствуйте!
Я запускаю программу, но задержку экрана сделать не получается!!!
Помогите пожалуйста!
0
faLek
99 / 100 / 7
Регистрация: 06.03.2012
Сообщений: 478
01.05.2013, 17:19 #4
Bibi, перед
C++
1
return 0;
,
C++
1
system("pause")
;
1
Bibi
0 / 0 / 0
Регистрация: 14.03.2013
Сообщений: 11
02.05.2013, 16:08 #5
faLek, извините пожалуйста, но у меня еще один вопрос... программа компилируется!
И результат такой...
0
Bibi
0 / 0 / 0
Регистрация: 14.03.2013
Сообщений: 11
02.05.2013, 16:14 #6
Напишите функцию для обмена строк двумерного массива и с ее помощью отсортируйте массив с элементами третьего столбика
Правильно да???
0
Bibi
0 / 0 / 0
Регистрация: 14.03.2013
Сообщений: 11
03.05.2013, 11:39 #7
правильно оказывается
0
yozzi
3 / 3 / 1
Регистрация: 14.03.2013
Сообщений: 149
13.11.2014, 11:58 #8
Vladimir., а можно тоже самое, только реализовать без указателей?
0
13.11.2014, 11:58
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.11.2014, 11:58
Привет! Вот еще темы с ответами:

Ввести двумерный массив 10х10 и создать одномерный массив с упорядоченными по убыванию элементами двумерного массива. - Free Pascal
Здравствуйте, срочно нужна помощь! 1. Ввести двумерный массив 10х10 и создать одномерный массив с упорядоченными по убыванию...

Не работает программа сортировки строк с помощью двумерного массива указателей - C (СИ)
Не работает программа сортировки строк с помощью двумерного массива указателей. Не подскажете где ошибка? #include &lt;stdio.h&gt; ...

Напишите программу поиска максимального элемента среди минимальных элементов строк двумерного массива - Delphi
a) Напишите программу поиска максимального элемента среди минимальных элементов строк двухмерного целочисленного массива

Отсортируйте элементы массива, расположенные между первым положительным и последним отрицательным элементами массива. - C#
В консольном приложении реализуйте указанную задачу, используя одномерный массив 10 целых чисел. Элементы массива считываются с клавиатуры....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.