Форум программистов, компьютерный форум CyberForum.ru

Упорядочить по возрастанию элементы каждого столбца матрицы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Двумерные массивы. Сформировать и вывести матрицу на экран http://www.cyberforum.ru/cpp-beginners/thread27656.html
Задача: Сформировать квадратную матрицу порядка n по заданному образцу . Вывод матрицы на экран оформить в виде процедуры. 1 n 1 n ... N 2 n-1 2 n-1 ... n-1 3 n-2 3 n-2 ... n-2 ... ... ... ... ... ... n-1 2 n-1 2 ... 2
C++ непонятная для меня ошибка прошу объяснить знающих людей Я обращаюсь с проблемой во вроде бы рабочей программе. Задача была построить программу с сортировкой массивов методами пузырька и шейкера. Программа сортирует даные но зачастую происходит непонятный казус вместо задаваемых чисел она выводит нули или единицы и что самое страное такое случается не всегда например если ввести кол-во масива 4 и сами элементы четыре четвёрки то он так и отпишется а... http://www.cyberforum.ru/cpp-beginners/thread27641.html
Conversion from 'size_t' to 'int' и еще кое-что C++
cout << "Vvedite slovo: "; string word; cin >> word; char temp; int i; int j; for (j=0, i=word.size() - 1; j < i; --i, ++j) { temp = word; word = word;
C++ АТД-однонаправленный список
доброй ночи =) .......я человек не смыслящий в этом атд классе, нуждаюсь в вашой помощи.......вот мне попалось такое задание Атд-однонаправленый список с элементами типа char. Дополнительно перегрузить след.функции: + и - добавить элемент в конец (list + char) - - - удалить элемент с конца ( тип list---) ! =- проверка на неравенство кто сможет, буду признательна.......
C++ Найти наибольший элемент в каждом столбце матрицы и непер наименьшего из них? http://www.cyberforum.ru/cpp-beginners/thread27622.html
Найти наибольший элемент в каждом столбце матрицы и непер наименьшего из них?
C++ Подскажите в чём ошибка Я плохо разбираюсь в програмирование но среда обитания принуждает учиться в этом направление и прога проста до идиотизма простая сортировка пузырьком но она постаяно подводит когда вводишь например 5 элементов массива и сами элементы пять 5 ну или другие элементы в этом роде он 1 из них приравнивает к единице.Но основная проблема с которой я обращаюсь так это я хотел чтоб i элементы массива не... подробнее

Показать сообщение отдельно
kazak
3034 / 2355 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
27.03.2009, 12:48     Упорядочить по возрастанию элементы каждого столбца матрицы
Незнаю пойдет или нет, но как-то так:
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
//---------------------------------------------------------------------------
 
#include <vcl.h>
#include <iostream.h>
#include <iomanip.h>
#include <stdlib.h>
#include <time.h>
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
const rowSize = 20, columnSize = 20;
 
void PrintArray( const int [][columnSize], int);
 
void SortArray( int [][columnSize], int);
 
void FillArray(int [][columnSize], int);
 
int main(int argc, char* argv[])
{
   int array [rowSize][columnSize];
 
   srand(time(NULL));
 
   FillArray(array, rowSize);
   cout << "Massiv do sortirovki " << endl;
   PrintArray(array, rowSize);
   SortArray(array, rowSize);
   cout << "Massiv posle sortirovki " << endl;
   PrintArray(array, rowSize);
 
   system("pause");
   return 0;
}
 
void PrintArray(const int ar[][columnSize], int rowSize)
{
   for (int i = 0; i < rowSize; i++)
   {
      for (int j = 0; j < columnSize; j++)
      {
         cout << setw(3) << ar[i][j];
      }
      cout << endl;
   }
}
 
void SortArray(int ar[][columnSize], int rowSize)
{
   int buf = 0, cyc = rowSize;
 
   for (int j = 0; j < columnSize; j++)
   {
      for (int i = 0; i < rowSize; i++)
      {
         for (int c = 0; c < cyc - 1; c++)
         {
            if (ar[c][j] > ar[c + 1][j])
            {
               buf = ar[c][j];
               ar[c][j] = ar[c + 1][j];
               ar[c + 1][j] = buf;
            }
 
         }
         cyc--;
      }
      cyc = rowSize;
   }
 
 
}
 
void FillArray(int ar[][columnSize], int rowSize)
{
   for (int i = 0; i < rowSize; i++)
   {
      for (int j = 0; j < columnSize; j++)
         ar[i][j] = rand() % 100;
   }
}
//---------------------------------------------------------------------------
Делал в билдере.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru