Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 19.03.2017
Сообщений: 2
1

Упорядочить строки массива T(9,7) по возрастанию первых элементов строк. Массив ввести из файла

19.03.2017, 01:06. Показов 940. Ответов 2

Author24 — интернет-сервис помощи студентам
Массив, довольно прост, но мой уровень, пока только "конвертер величин"

Сам массив:
1 1 1 1 1 2 3
5 6 9 7 4 5 6
3 2 3 6 4 4 7
4 5 6 9 8 7 1
7 5 6 2 1 7 4
8 5 4 7 8 2 1
2 4 5 8 7 5 6
9 6 9 3 4 7 1
0 5 8 7 8 7 4

То,что предстоит написание кода с #include <fstream> и, а последствии с ifstream f("array.txt") мне тоже ясно. Но пока что опыт отсутствует. А сдавать работу скоро. Буду благодарен за помощь в решении вопроса и за советы.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.03.2017, 01:06
Ответы с готовыми решениями:

Упорядочить строки массива по не возрастанию значений первых элементов строк
Составить программу обработки матрицы размерности NxM. Выполнить программу для N=3, M=4. В...

Упорядочить строки матрицы по возрастанию первых элементов строк
from random import random N = int(input(&quot;Введите количество строк: &quot;)) M = int(input(&quot;Введите...

В матрице размером N строк и M столбцов упорядочить строки по возрастанию их первых элементов
Дана матрица размером N строк и M столбцов. Упорядочить ее строки по возрастанию их первых...

Упорядочить строки матрицы по возрастанию первых четных положительных элементов строк
Упорядочить строки массива U (10,8) целых чисел по возрастанию первых четных положительных...

2
7803 / 6567 / 2988
Регистрация: 14.04.2014
Сообщений: 28,706
19.03.2017, 11:10 2
Возьми любой алгоритм сортировки и сортируй по первым элементам строк, но перестановку делай строк целиком.
1
0 / 0 / 0
Регистрация: 19.03.2017
Сообщений: 2
02.04.2017, 21:25  [ТС] 3
В общем, победа выглядела вот так:
C++ (Qt)
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
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
    setlocale(LC_ALL, "Russian");                      // для отображения информации на рус.языке
    const int m = 9, n = 7;                            // объявляем константные значения строк и столбцовs
    int T[m][n], a, b, i, j;                           // объвлем массив T, размерностью n на m, и остальные переменные           
    ifstream masiv("array.txt");                       // объявляем переменную "masiv" и считываем в неё массив из файла
    for (int i = 0; i < m; ++i)                        // начинаем цикл для придания считанному массиву вида 9 на 7 
    {
        for (int j = 0; j < n; ++j) 
        {
            masiv >> T[i][j];
            cout << T[i][j] << ' ';
        }
        cout <<'\n';
    }
    printf("    \n");                                   // выводим полученный массив на экран
    cout << "Для выполнения преобразования";
    cout << " массива нажмите ENTER\n";
    cin.get();
                                                        // приступаем к сортировке пузырьковым методом
    for (b = 0; b < m - 1; b++)                         //запускаем цикл по массиву "T"
    {
        for (i = 0; i < m - 1 ; i++)                    //сверяем текущий первый элемент со следующим и 
        {                                               //если текущий больше - следует поменять их местами
            if (T[i][0] > T[i + 1][0])                  
            {
                for (j = 0; j < n; j++)                   
                {
                    a = T[i][j];                        // присваиваем текущее значение "T" переменной "a"
                    T[i][j] = T[i+1][j];                // текущему значению "T" присваеваем следующее
                    T[i+1][j] = a;                      //следующему значению "T" присваиваем предыдущее значение которое хранится в переменной "a"
                }
            }
        }
    }
    for (i = 0; i < m; i++)                              // запускаем цикл, который отобразит результат       
    {
        for (j = 0; j < n; j++) 
        {
            cout << T[i][j] << ' ';                       // выводим массив, который был получен в результате сортировки       
        }
        cout << '\n';
    }
    cout << endl;                                         // это не обязательно, больше для придания эстетичности, отображаемой программе.
    system("pause");                                      
    return 0;
}
Уверен, что найдутся те, кому зададут подобное по информатике.
Оптимизация приветствуется !!!
0
02.04.2017, 21:25
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.04.2017, 21:25
Помогаю со студенческими работами здесь

Дана матрица размером N строк и M столбцов Упорядочить ее строки по возрастанию их первых элементов
Дана матрица размером N строк и M столбцов. Упорядочить ее строки по возрастанию их первых...

Массив: Упорядочить ее строки по возрастанию их первых элементов. где ошибка?
Дана матрица размером NxM. Упорядочить ее строки по возрастанию их первых элементов. Компонент...

Упорядочить строки матрицы таким образом, чтобы значения первых элементов строк были упорядочены по возрастанию
Дана действительная матрица размера N × M. Упорядочить строки матрицы таким образом, чтобы значения...

Массив: Упорядочить элементы строк матрицы по возрастанию, а сами строки по неубыванию произведения четных элементов строк
Дана матрица. Упорядочить элементы строк матрицы по возрастанию, а сами строки по неубыванию...

Упорядочить строки массива по невозрастанию значений первых элементов строк
Задание: Упорядочить строки массива по невозрастанию значений первых элементов строк. Делаю это...

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


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru