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

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

Войти
Регистрация
Восстановить пароль
 
klim2611
0 / 0 / 0
Регистрация: 14.04.2014
Сообщений: 4
#1

Сортировка массива. Ошибка после ввода размерности массива - C++

14.04.2014, 02:04. Просмотров 312. Ответов 2
Метки нет (Все метки)

подскажите почему после ввода размерности массива выдает ошибку
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
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
#include<iostream>
#include<cstdlib>
#include<conio>
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
    srand(time(NULL));
int rows, cols, temp, i, j;
cout<<"Êîëè÷åñòâî ñòðîê: ";
cin>>rows;
cout<<endl<<"Êîëè÷åñòâî ñòîëáöîâ: ";
cin>>cols;
int** mass = new int*[rows];
for( i=0; i<rows; i++)
{
     mass[rows] = new int [cols];
}
for(i=0; i<rows; i++)
{
         for(j=0; j<cols; j++)
         {
                  mass[i][j]=rand()%100;
         }
}
cout<<"èñõîäГ*ûé Г¬Г*Г±Г±ГЁГў:";
for(i=0; i<rows; i++)
{
         for(j=0; j<cols; j++)
         {
                  cout<<mass[i][j];
         }
         cout<<endl;
}
for(int k =0; k<rows; k++)
{
        for(int l=0; l<cols; l++)
        {
                for(i=0; i<rows-1; i++)
                {
                         for(j=0; j<cols-1; j++)
                         {
                             if(i+1 == rows and  j+1 == cols) continue;
                             else
                             {
                                     if(j+1==cols && mass[i][j]>mass[i+1][0])
                                     {
                                          temp = mass[i][j];
                                          mass[i][j]=mass[i+1][0];
                                          mass[i+1][0]=temp;
                                     }
                             
                                     else
                                     {
                                         if(mass[i][j]>mass[i][j+1])
                                         {
                                              temp = mass[i][j];
                                              mass[i][j] = mass[i][j+1];
                                              mass[i][j+1] = temp;
                                         }     
                                     }
                             }   
                          }
                }       
        }
}
cout<<"îòñîðòèðîâГ*Г*ûé Г¬Г*Г±Г±ГЁГў:";
for(i=0; i<rows; i++)
{
         for(j=0; j<cols; j++)
         {
                  cout<<mass[i][j];
         }
         cout<<endl;
}
getch();
return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.04.2014, 02:04
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сортировка массива. Ошибка после ввода размерности массива (C++):

Ошибка очистки памяти после ввода динамического массива char - C++
Уважаемые форумчане, помогите, пожалуйста. Вроде такой темы на форуме нет. Нужно, дословно, по тексту учебной задачи: ввести строку...

Сортировка элементов массива размерности n в порядке возрастания - C++
1). Разработать функцию для сортировки элементов одномерного целочисленного массива размерности n в порядке возрастания. С использованием...

Ввод двумерного массива, ввод размерности массива, заполнение массива случайными числами - C++
#include &quot;stdafx.h&quot; #include &quot;locale.h&quot; #include &quot;stdlib.h&quot; #include &quot;math.h&quot; void main() { setlocale(LC_ALL,&quot;rus&quot;); int...

С помощью функции определения среднего значения элементов массива обработать два массива разной размерности - C++
Помогите составить программу с использованием только функции. Эту тему прошли, но свое задание я так и не сделал, т.к не совсем разобрался...

Программа закрывается после ввода массива - C++
Доброго времени суток, помогите, пожалуйста, поправить код. Опыт программирования = 0. В visual studio 2013 запускается без ошибок, но...

Зависает программа после ввода массива - C++
Помогите найти ошибку, программа ищет и выводит на экран два максимальных элемента всех нечетных строк массива: #include &lt;iostream.h&gt; ...

2
cooller
565 / 533 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
14.04.2014, 02:17 #2
Цитата Сообщение от klim2611 Посмотреть сообщение
mass[rows] = new int [cols];
C++
1
mass[i] = new int [cols];
1
klim2611
0 / 0 / 0
Регистрация: 14.04.2014
Сообщений: 4
14.04.2014, 17:10  [ТС] #3
спасибо, но есть еще одна проблема
если количество столбцов задать один, то сортировка не работает
как исправить?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.04.2014, 17:10
Привет! Вот еще темы с ответами:

Из данного массива и другого массива того же типа, но другой размерности сформируйте общий массив и найдите его максимальный элемент - C++
помогите пожалуйста Из данного массива и другого массива того же типа, но другой размерности сформируйте общий массив и найдите...

Ошибка во время ввода значений элементов массива - C++
Во время ввода элементов массива просто выбивает ошибку &quot;Прекращена работа программы&quot;. Как вы поняли программа запрашивает у...

Сортировка массива до и после определенного элемента - C++
Есть одномерный массив из 20 последовательных элементов. Нужно: перемешать элементы массива, выбрать случайный элемент и отсортировать...

Сделать так, чтобы после ввода одного значения массива, не перескакивало на другую строку - C++
Возможно ли, и если возможно, то как, сделать так, чтобы после ввода одного значения массива, не перескакивало на другую строку? for...


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

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

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