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

Выяснить, по возрастанию или убыванию упорядочена указанная строка матрицы - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Не работает сортировка элементов массива или неправильно записываются элементы в файл http://www.cyberforum.ru/cpp-beginners/thread213894.html
Доброго времени суток! Проблема с сортировкой элементов. Не понимаю в чем дело: #include <stdio.h> #include <stdlib.h> #include <conio.h> int main(int argc, char* argv) {double otr,pol,ch; int kol=0,i=0,j=0,kol_otr=0,kol_pol=0;
C++ Преобразовать массив таким образом, чтобы сначала располагаись все положительные элементы, а потом-все отлицательные Преобразовать массив таким образом, чтобы сначала располагаись все положительные элементы, а потом-все отлицательные (элементы, равные 0, считать положитеьными). помогите кто знает,пожалуйста http://www.cyberforum.ru/cpp-beginners/thread213882.html
C++ Программа, с типом char.
Помогите написать программу, которая к любому введенному слову на экране выдавало бы это же слово, но с ++++ в начале и с *****.(просто подставить при выводе нельзя, нужно чтобы все выводило через одну переменную). Заранее благодарен.
C++ Решение слау.
Здравствуйте. Я пишу программу, которая будет решать слау одним из выбранных мною методов. Методы решения мне известны и организовать их в с++ думаю смогу, но вот одна проблема. Я написал (точнее наглая копипаста) меню для этой проги, но вот, когда запускаю, то ничего не происходит: т.е. меню не выводит. Помогите пожалуйста разобраться. вот код #include <iostream> #include <fstream> #include...
C++ не могу разобраться с матрицей. http://www.cyberforum.ru/cpp-beginners/thread213873.html
Здравствуйте. Дело в том что я лох в программировании На C++ и нужна помощь с задачей. Задача: Дана матрица А(4,3) 1. Найти произведение для элементов 2-ой строки по формуле: 2. Создать новый одномерный массив, из минимальных элементов каждой строки данной матрицы. 3. Поменять местами значение произведения и элемент . Подскажите пожалуйста решение. Только не кусок программы а всю...
C++ Блок схемы #include <conio.h> #include <stdio.h> #include<iostream> int main() { int l,i,j,k=0,S=1,A,x,y,n,p; for(i=0;i<3;i++) for(j=0;j<3;j++) A=0; printf("\n j1 j2 j3\n"); подробнее

Показать сообщение отдельно
lemegeton
 Аватар для lemegeton
2910 / 1339 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
18.12.2010, 16:29     Выяснить, по возрастанию или убыванию упорядочена указанная строка матрицы
Мальца мутненько, на скору руку, но в целом суть должна быть ясна.
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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
#include <cstdlib>
#include <ctime>
#include <iostream>
#include <iomanip>
 
using namespace std;
 
        template <class _Tp>
        void quickSort(int left, int right, _Tp* arr, bool (*compare)(const _Tp, const _Tp))
        {
                int i = left, j = right;
                _Tp pivot = arr[(left + right) / 2];
 
                /* partition */
                while (i <= j)
                {
                        while (compare(arr[i], pivot))
                                i++;
                        while (compare(pivot, arr[j]))
                                j--;
                        if (i <= j)
                        {
                                _Tp tmp = arr[i];
                                arr[i] = arr[j];
                                arr[j] = tmp;
                                i++;
                                j--;
 
                        }
                };
 
                /* recursion */
                if (left < j)
                        quickSort(left, j, arr, compare);
                if (i < right)
                        quickSort(i, right, arr, compare);
        }
 
template <class _Tp>
bool is_sorted(int size, _Tp *arr, bool (*compare)(_Tp a, _Tp b))
{
        for (int i=0; i<size-1; i++)
                if (!compare(arr[i], arr[i+1]))
                        return false;
        return true;
}
 
bool sortup(const int a, const int b) { return a<b; }
bool sortdown(const int a, const int b) { return a>b; }
bool sortedup(const int a, const int b) { return a<=b; }
bool sorteddown(const int a, const int b) { return a>=b; }
 
 
int main (int argc, char*  argv[])
{
        srand(static_cast<unsigned int>(time(0)));
        const int str=5;
        const int stolb=10;
        int mass[str][stolb];
 
        for (int i=0; i<str; i++)
        {
                for (int j=0; j<stolb; j++)
                        mass[i][j] = rand()%100;
 
                if (rand()%10>6)
                        quickSort(0, stolb-1, &mass[i][0], sortup);
                else
                if (rand()%10>6)
                        quickSort(0, stolb-1, &mass[i][0], sortdown);
        }
 
        for (int i=0; i<str; i++)
        {
                for (int j=0; j<stolb; j++)
                        cout << setw(3) << mass[i][j];
                cout << endl;
        }
        cout << endl;
 
        for (int i=0; i<str; i++)
                if (is_sorted(stolb, &mass[i][0], sortedup))
                        cout << "Line " << i << " sorted up." << endl;
                else
                if (is_sorted(stolb, &mass[i][0], sorteddown))
                        cout << "Line " << i << " sorted down." << endl;
                else
                {
                        cout << "Line is not sorted. Sorting down." << endl;
                        quickSort(0, stolb-1, &mass[i][0], sortdown);
                }
        cout << endl;
 
        for (int i=0; i<str; i++)
        {
                for (int j=0; j<stolb; j++)
                        cout << setw(3) << mass[i][j];
                cout << endl;
        }
        cout << endl;
        return 0;
}
 
Текущее время: 02:54. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru