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

Пузырьковая сортировка - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Создать класс Triad (тройка чисел). Выдает ошибку http://www.cyberforum.ru/cpp-beginners/thread1150950.html
задание звучит так: создать класс Triad (тройка чисел); определить методы изменения полей и вычисления суммы чисел. Определить производный класс Triangle с полями-сторонами. Определить методы вычисления углов и площади треугольника. // Triangle class.cpp: определяет точку входа для консольного приложения. // #include "stdafx.h" #include "math.h" #include <iostream> using namespace std;
C++ Преобразовать строку по заданному алгоритму Заданная строка S. Преобразовать S следующим образом: 1) удалить из S первое вхождение буквосочетание 'const'; 2) после первой буквы V вставить буквосочетание 'аг'; 3) в строку X скопировать 7 символов из строки S, начиная с 10 позиции; 4) заменить все буквосочетание 'were' на 'are'. #include <iostream> http://www.cyberforum.ru/cpp-beginners/thread1150949.html
C++ Вставка элемента в одномерный массив
Задан упорядоченный по возростанию массив целых чисел A и число B. Для числа B найти такое место среди элементов массива А, чтобы после вставки числа В на это место упорядоченность массива не нарушилась. Если вследствие равенства между собой значений элементов массива А число В можно вставлять на разные места, то следует определить ближайшее к началу массива место. Эта задача называется задачей...
C++ Вычислить среднее арифметическое целочисленных координат дискретных точек отрезка [-10.5; 10.5]
Для данной задачи разработать алгоритм и написать соответствующую программу с выводом результатов на экран. Требования к программе: - Входные данные ввести с помощью стандартных процедур ввода; - На печать вывести значение входной информации и результаты вычислений; - Входные данные взять произвольными, в пределах допустимых, если они явно не заданы в условии задачи. Вычислить среднее...
C++ Решение нелинейного уравнения http://www.cyberforum.ru/cpp-beginners/thread1150866.html
С помощью метода итераций необходимо найти корень функции f(x) = 1/(1+exp(x)) при нулевом приближении 2,1 Пытался подставить в эту реализацию свою функцию и приближения, но программа висит. Прошу помощи :)
C++ Ошибка в коде: массиву присваиваются пробелы Господа, массиву massiv massiv присваиваются пробелы, хотя по условию не должны. Помогите разобраться. Спасибо. #include<iostream> using namespace std; int main() { char massiv; подробнее

Показать сообщение отдельно
Виктор27
10 / 10 / 2
Регистрация: 21.11.2013
Сообщений: 292

Пузырьковая сортировка - C++

18.04.2014, 18:05. Просмотров 579. Ответов 20
Метки (Все метки)

Здравствуйте. Есть код, который сортирует методом пузырька по строчкам, что мне поменять, чтобы была сортировка по столбцам начиная с первого.? Заранее спасибо.

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
85
86
87
#include <iostream>
#include <iomanip>
 
using namespace std;
 
void main (void)
{
    setlocale(LC_ALL, "Rus");
    const int n = 3, m = 3;
    int c = 0;
    int mas[n][m];
    mas[0][0] = 5;
    mas[0][1] = 12;
    mas[0][2] = 7;
 
 
    mas[1][0] = 17;
    mas[1][1] = 25;
    mas[1][2] = 18;
    
    mas[2][0] = 20;
    mas[2][1] = 15;
    mas[2][2] = 30;
 
    cout << "Исходный массив:" << endl << endl;
    for (int i=0; i<n; i++)
    {
        for (int j=0; j<m; j++)
        {
            cout << mas[i][j] << "\t";
        }
        cout << endl;
    }
    cout << endl << endl;
 
    cout << "После пузырьковай сортировки:" << endl << endl;
 
    for (int k=0; k<n; k++)
    {
        for (int l=0; l<m; l++)
        {
            for (int j=0; j<n; j++)
            {
                for (int i=0; i<m; i++)
                {
                    if (i+1 == n && j+1 == m)
                    {
                        continue;
                    }
                    else
                    {
                        if (j+1 == n && mas[i][j] > mas[0][j+1])
                        {
                            int t = mas[i][j];
                            mas[i][j] = mas[0][j+1];
                            mas[0][j+1] = t;
                            c=c+1;
                        }
                        else
                        {
                            if (mas[i][j] > mas[j+1][i])
                            {
                                int t = mas[i][j];
                                mas[i][j] = mas[j+1][i];
                                mas[j+1][i] = t;
                                c=c+1;
                            }
                        }
                    }
                }
            }           
        }       
    }
 
    for (int i=0; i<n; i++)
    {
        for (int j=0; j<m; j++)
        {
            cout << mas[i][j] << "\t";
        }
        cout << endl;
    }
    cout << endl;
    cout << "Колличество перестановок = " << c << endl << endl;
    
    system("Pause");
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru