Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
poztalion
0 / 0 / 1
Регистрация: 30.11.2013
Сообщений: 7
1

Функция сортировки массива в структуре

06.12.2013, 12:15. Просмотров 563. Ответов 3
Метки нет (Все метки)

Помогите пожалуйста в написании функции осуществляющей перестановку строк двухмерного массива: первую и последнюю вторую и предпоследнюю, которая будет включена в структуру.
Буду очень признателен.

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
// Итоговая работа
#include "stdafx.h"
#include <cstdio>
#include <cstdlib>
#include <iostream>
#include<math.h>
 
using namespace std;
 
void main()
{
    setlocale(LC_ALL, "Russian");
    const int m = 7, n = 7;
    // Структура данных
    struct st                                       
    {
        //Двухмерный массив
        int tab[m][n];
        // Функция заполнения случайными цифрами
        int random()
        {
            return rand() % 100;
        }
    };
    st tri;
    tri.tab[m][n];
    int i1, i2;
    for (i1 = 0; i1< m; i1++)
    for (i2 = 0; i2 < n; i2++)
        tri.tab[i1][i2] = tri.random();
    for (i1 = 0; i1< m; i1++)
     {
      for (i2 = 0; i2< n; i2++)
                   
  cout << tri.tab[i1][i2]<<"\t";        
        cout<<"\n";
    }
    system("Pause");
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.12.2013, 12:15
Ответы с готовыми решениями:

Исследовать возможности адаптации различных методов сортировки к структуре исходного массива
Исследовать возможности адаптации различных методов сортировки к структуре исходного массива. С...

Функция сортировки массива
Необходимо написать функцию сортировки массива структур с информацией по книгам по возрастанию года...

Функция сортировки массива
Задание - необходимо осуществить сортировку, используя функцию. Я написал код, но он не...

Функция сортировки массива
Дан массив целых чисел. Напишите функцию, которая получает данный массив в качестве аргумента и...

Встроенная функция сортировки массива
Здравствуйте! Подскажите, пожалуйста, как отсортировать только нечетные элемента массива c помощью...

3
newb_programmer
238 / 238 / 113
Регистрация: 03.09.2011
Сообщений: 558
06.12.2013, 19:11 2
poztalion,
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
#include <iostream>
#include<math.h>
 
using namespace std;
 
void main()
{
    setlocale(LC_ALL, "Russian");
    const int m = 7, n = 7;
    // Структура данных
    struct st                                       
    {
        //Двухмерный массив
        int tab[m][n];
        // Функция заполнения случайными цифрами
        int random()
        {
            return rand() % 100;
        }
        void mix(int m, int n) {
            int* temp=new int[n];
            for (int i1=0,i2=m-1; i1<i2; i1++,i2--)
                for (int j=0; j<n; j++) {
                    temp[j]=tab[i1][j];
                    tab[i1][j]=tab[i2][j];
                    tab[i2][j]=temp[j];
                }
        }
    };
    st tri;
    tri.tab[m][n];
    int i1, i2;
    for (i1 = 0; i1< m; i1++)
        for (i2 = 0; i2 < n; i2++)
            tri.tab[i1][i2] = tri.random();
    for (i1 = 0; i1< m; i1++)
     {
      for (i2 = 0; i2< n; i2++)        
            cout << tri.tab[i1][i2]<<"\t";        
        cout<<"\n";
    }
    cout<<endl;
    tri.mix(m,n);   
    for (i1 = 0; i1< m; i1++)
     {
      for (i2 = 0; i2< n; i2++)        
            cout << tri.tab[i1][i2]<<"\t";        
        cout<<"\n";
    }
    system("Pause");
}
1
poztalion
0 / 0 / 1
Регистрация: 30.11.2013
Сообщений: 7
06.12.2013, 20:57  [ТС] 3
Огромное спасибо все работает. Не могли бы Вы еще помочь записать полученную перестановку в файл и по запросу осуществить контрольное чтение с выводом на экран.
Буду очень признателен.
0
newb_programmer
238 / 238 / 113
Регистрация: 03.09.2011
Сообщений: 558
06.12.2013, 22:47 4
poztalion, добавьте вот этот код в конец, перед system(pause); с файлами работать не умею, поэтому написал только так как понимаю, можно наверно оптимизировать=)))
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
    ofstream file;
    file.open("E:\\test.txt");
    for (i1 = 0; i1< m; i1++) {
        for (i2 = 0; i2< n; i2++) {
            file<<tri.tab[i1][i2]<<"\t";
        }
        file<<endl;
    }
    file.close();
 
    st test;
 
    ifstream f;
    f.open("E:\\test.txt");
    for (i1 = 0; i1< m; i1++)
        for (i2 = 0; i2< n; i2++)
            f >> test.tab[i1][i2];
    f.close();
    cout<<"\nTest reading from the file!\n";
    for (i1 = 0; i1< m; i1++)
     {
      for (i2 = 0; i2< n; i2++)        
            cout << test.tab[i1][i2]<<"\t";        
        cout<<"\n";
    }
 
    system("Pause");
0
06.12.2013, 22:47
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.12.2013, 22:47

Функция сортировки двумерного массива
необходимо написать функцию сортирующую двумерный массив. за основу взял сортировку при помощи...

Шаблонная функция сортировки двумерного массива
Помогите пожалуйста написать шаблонную функцию сортировки двумерного массива (матрицы) любым...

Функция для сортировки массива пузырьком
Помогите исправить код. Скорей всего проблема в сортировке. Условие: Дана матрица...


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

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

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