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

сгенерировать квадратную матрицу n*n и сортировать ее в порядке возрастания - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Армия http://www.cyberforum.ru/cpp-beginners/thread26978.html
Армия (Время: 1 сек. Память: 16 Мб Сложность: 58%) Всем известно, что в армии без строевой подготовки и порядка дело не обходится и за этим там строго следят. Однажды утром сержант построил всех своих подчиненных в K рядов по N человек в каждом, но оказалось, что солдаты выстроились не по росту, и поэтому сержант решил их наказать. Солдаты должны были выстроиться по росту в каждом отдельном...
C++ Найти порядковые номера двух соседних чисел, сумма которых максимальна. 7.79. Дана последовательность целых чисел Х1, Х2,..., Хn где n >= 3. Найти: в) порядковые номера двух соседних чисел, сумма которых максимальна. Если таких пар чисел несколько, то найти номера чисел первой такой пары; 7.116. Даны 20 чисел, образующие неубывающую последовательность. Несколько чисел, идущие подряд, равны между собой. Найти количество таких чисел. Сколько различных чисел имеется... http://www.cyberforum.ru/cpp-beginners/thread26972.html
Игнорирует cin в цикле. C++
Здравствуйте, уважаемые. Прошу помочь. Не могу понять почему в приведенном ниже коде при втором и последующем прохождении цмкла команда cin игнорируется: int uzl = 0; bool bzz = 0; do { cout << _r("Введите колличество и нажмите <Enter>") << endl; cout << ">> "; cin >> uzl; if ((uzl <= 0) || (uzl > 255))
C++ Международная телефонная станция
Привет Всем. Вот нам задали задачку, а я не понимаю как ее решить. На международной телефонной станции картотека абонентов, содержащая сведения о телефонах и их владельцах, организована как двоичное дерево. Составить программу, которая: 1*) Обеспечивает начальное формирование картотеки в виде двоичного дерева; 2*) Производит вывод всей картотеки; 3*)...
C++ Создание мини теста на С http://www.cyberforum.ru/cpp-beginners/thread26941.html
люди добрые, помогите пожалуйста решить такого рода задачку на языке С: надо написать прогу, которая поочерёдно задаёт врозброс 10 вопросов(вопросы берутся не с файла). после каждого вопроса пользователь должен дать ответ. Если ответ верный - идёт переход на следующий вопрос. Если ответ неверный - прога предлагает ввести ответ ещё один раз. Если ответ неверный и после второго раза - идёт переход...
C++ Найти и напечатать слово, в котором содержится больше всего символов “А” Дан текст, который содержит буквы и пропуски. Найти и напечатать слово, в котором содержится больше всего символов “А”. Словом считать последовательность букв, разделенных пропусками. помогите мне всего кода ненужно, только алгоритм нахождения. подробнее

Показать сообщение отдельно
lavan
51 / 51 / 1
Регистрация: 21.03.2009
Сообщений: 371

сгенерировать квадратную матрицу n*n и сортировать ее в порядке возрастания - C++

21.03.2009, 22:39. Просмотров 540. Ответов 4
Метки (Все метки)

подскажите кто знает.я уже запарился.язык С
надо сгенерировать квадратную матрицу n*n и сортировать ее в порядке возрастания.
у меня проблема в том,что цикл отвечающий за сортировку(сортирую прямым перебором)сортирует массив но он заменяет там цифры
т.е есть такой набор
8 6 9 5 0
получаю после сортировки
0 5 5 8 9
т.е 6 заменилась на 5 вместо исходной одной 5 и 6 стало две 5.из -за этого последняя строка матрици,вообще не сортируется.ПОДСКАЖИТЕ ЧТО ДЕЛАТЬ??
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<stdio.h>
#include<conio.h>
#include<stdlib.h>
#define M 5
#define N 5
int main(){
int m[M][N];
int a[M];
int i,j,buf,min,k;
printf("sgener mas\n");
randomize();
for(i=0;i<M;i++) {
printf("\n");
for(j=0;j<N;j++) {
m[i][j]=random(10);
printf("%3d",m[i][j]);
}
}
 
for(i=0;i<M;i++){//prisvaivaem a[i]
printf("\n"); //znachenia m[i][j]
for(j=0;j<N;j++){
a[i]=m[i][j];
//printf("%d",a[i]);
}
}
 
for(i=0;i<M*N-1;i++){ //sortiryem a[i]
min=i;
for(j=i+1;j<M*N;j++)
if(a[j]<a[min])
min=j;
buf=a[i];
a[i]=a[min];
a[min]=buf;
}
for(i=0;i<M;i++){ //teper prisvaivaem m[i][j]
for(j=0;j<N;j++){ //otsortir massiv a[i]
m[i][j]=a[i];
printf("\n otsort mas\n");
for(i=0;i<M;i++){
printf("\n");
for(j=0;j<N;j++) {
printf("%3d",m[i][j]);
}
}
}
}
getch();
return(0);
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 19:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru