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

Квадратная матрица - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Бинарный и интерполяционный поиск http://www.cyberforum.ru/cpp-beginners/thread194250.html
Бинарный и интерполяционный поиск реализовать надо в одной программе помогите,плиз
C++ время запуска/конца выполнения программы с точностью до миллисекунд С. как сделать чтобы в начале программы выводилась дата и время с миллисекундами и тоже самое при её завершении? http://www.cyberforum.ru/cpp-beginners/thread194216.html
C++ Использование указателя на метод вместо виртуального метода
Имеется базовый класс Base. Имеется производный от Base класс Derived. В классе Derived требуется выполнить некоторое действие, которое практически полностью эквивалентно для любого производного от Base класса, за исключением небольшого фрагмента. Схематично код выглядит так: class Base { void Exec (void) { // общие действия ...
Компилятор C++
Здравствуйте. Пишу компилятор pas->asm на с++ Может кто-то подскажет генератор конструкцый или что-то подобное: <переменная1>+<переменная2> mov ax,<переменная1>; mov bx,<переменная2>; add ax,bx;
C++ Дан файл F, содержащий координаты множества точек на плоскости. Переписать в файл G попарно точки, через которые проходят медианы этого множества. http://www.cyberforum.ru/cpp-beginners/thread193967.html
Помогите плз. Дан файл F, содержащий координаты множества точек на плоскости. Переписать в файл G попарно точки, через которые проходят медианы этого множества. Медианой множества, состоящего из четного числа точек плоскости, никакие три из которых не лежат на одной прямой, называется прямая, проходящая через две точки, с обеих сторон которой лежит равное число точек. (С++)
C++ C или C++(не холивар) Здравствуйте. Участвую в различных олимпиадах по программированию, пишу обычно на C++, используя все его вкусности в виде STL, ООП, темплэйтов и проч. Накануне в двух задачах не уложился в ограничение по времени(нужно было макс. 1 секунду на выполнение программы, у меня же 1.07 и 1.5). Отсюда возникает вопрос: что более целесообразно использовать на олимпиаде, что быстрее: C или C++? Конечно,... подробнее

Показать сообщение отдельно
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
21.11.2010, 18:09     Квадратная матрица
Любой каприз.

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 <iostream>
#include <cstdlib>
#include <ctime>
#include <iomanip>
 
void sort(int**, int);
void fill(int**, int, int, int);
void print(int**, int);
 
int main()
{
        srand(static_cast<unsigned>(time(0)));
        const int min=200;
        const int max=400;
        int** Arr;
        int n;
        std::cout<<"Enter n: ";
        std::cin>>n;
        Arr=new int*[n];
        for(int i=0; i<n; ++i)
        {
                Arr[i]=new int[n];
        }
        fill(Arr, n, min, max);
        std::cout<<"Matrix\n";
        print(Arr, n);
        sort(Arr, n);
        std::cout<<"Transformed matrix\n";
        print(Arr, n);
        for(int i=0; i<n; ++i)
                delete[] Arr[i];
        delete[] Arr;
        return 0;
}
 
void fill(int** Arr, int n, int min, int max)
{
    for(int i=0; i<n; ++i)
    {
        for(int j=0; j<n; ++j)
        {
            Arr[i][j]=(rand()%max)-min;
        }
    }
}
 
void print(int** Arr, int n)
{
    for(int i=0; i<n; ++i)
    {
        for(int j=0; j<n; ++j)
        {
            std::cout<<std::setw(4)<<Arr[i][j]<<' ';
        }
        std::cout<<'\n';
    }
}
 
void sort(int** Arr, int n)
{
        for(int i=0; i<n; ++i)
        {
                for(int j=i; j<n; ++j)
                {
                        if(Arr[0][i]>Arr[0][j])
                        {
                                int* tmp=new int[n];
                                for(int k=0; k<n; ++k)
                                {
                                        tmp[k]=Arr[k][i];
                                }
                                for(int k=0; k<n; ++k)
                                {
                                        Arr[k][i]=Arr[k][j];
                                }
                                for(int k=0; k<n; ++k)
                                {
                                        Arr[k][j]=tmp[k];
                                }
                                delete[] tmp;
                        }
                }
        }
}
 
Текущее время: 17:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru