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

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

Восстановить пароль Регистрация
 
сержи
6 / 6 / 0
Регистрация: 03.07.2010
Сообщений: 222
09.11.2013, 20:15     Создание класса по обработке данных массива #1
Добрый день!!!Помогите в решении задачи на массивы. А то в них вообще бум-бум..

Нужно написать программу по обработке массива, как объекта созданного Вами класса «Массив», реализовать программно и используя указатели без индексов:
Задача №1. Дана вещественная квадратная матрица порядка M. Упорядочить строки матрицы по возрастанию диагональных элементов.

Добавлено через 2 часа 0 минут
upppppppppppppppppppp
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.11.2013, 20:15     Создание класса по обработке данных массива
Посмотрите здесь:

Создание Массива Объектов класса C++
Создание класса по обработке массива. C++
C++ Создание массива классов(обектов класса)
Создание массива экземпляров класса C++
C++ Создание массива объектов класса
C++ Создание массива класса
Создание массива класса, с установленным конструктором C++
SFML Создание массива экземпляров класса C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Folko
 Аватар для Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
10.11.2013, 00:11     Создание класса по обработке данных массива #2
сержи, подробнее, в чем у вас затруднения?
сержи
6 / 6 / 0
Регистрация: 03.07.2010
Сообщений: 222
11.11.2013, 17:11  [ТС]     Создание класса по обработке данных массива #3
Цитата Сообщение от Folko Посмотреть сообщение
сержи, подробнее, в чем у вас затруднения?
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
#include <iostream>
#include <time.h>
using std::cout;
using std::endl;
using std::cin;
 
int main()
{
    srand( time(0) );
    int N;
    cout << "Enter number of elements:" <<endl;
    cin >> N;
    int counter = 0;
    int **mat;
    mat = new int* [ N ];
    for ( int i = 0; i < N; i ++ )
    {
        mat[i] = new int [ N ];
        for ( int j = 0; j < N; j ++ )
        {
            mat[i][j] = rand() % 50;
        }
    }
 
    cout << "Base matrix:" << endl;
    for ( int i = 0; i < N; i ++ )
    {
        for ( int j = 0; j < N; j ++ )
            cout << mat[i][j] << "\t";
        cout << endl;
    }
 
 
    bool flag = true;
    while ( flag && counter < 20)
    {
        flag = false;
        counter ++;
        for ( int i = 0; i < N - 1; i ++ )
            for ( int j = i +1 ; j < N; j ++ )
            {
                if (mat[i][i] > mat [j][j] )
                    for ( int k = 0; k < N; k ++)
                    {
                        flag = true;
                        int tmp = mat[i][k];
                        mat[i][k] = mat[j][k];
                        mat[j][k] = tmp;
                    }
            
            }
 
    }
 
 
    if ( counter < 20 ) {
    cout << endl;
    for ( int i = 0; i < N; i ++ )
    {
        for ( int j = 0; j < N; j++ )
            cout << mat[i][j] << "\t";
        cout << endl;
    }
    }
    else cout << "Programm cant sort the matrix" << endl;
    
 
 
 
    for ( int i = 0; i < N; i ++ )
        delete [] mat[i];
 
    system("pause");
    return 0;
    }
Добавлено через 2 минуты
Вроде сделал что бы она: Упорядочить строки матрицы по возрастанию диагональных элементов.
А не могли бы вы проверить правильно ли все сделал, если нет то подрехтовать ее.

Добавлено через 16 минут
uppp

Добавлено через 19 минут
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
// laba3_oop.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
 
#include <clocale>
#include <iostream>
#include <time.h>
using std::cout;
using std::endl;
using std::cin;
 
int main()
{
    setlocale(0, "Rus");
    srand( time(0) );
    int M;
    cout << "Введите число элементов:" <<endl;
    cin >> M;
    int counter = 0;
    int **mat;
    mat = new int* [ M ];
    for ( int i = 0; i < M; i ++ )
    {
        mat[i] = new int [ M ];
        for ( int j = 0; j < M; j ++ )
        {
            mat[i][j] = rand() % 50;
        }
    }
 
    cout << "Базовая матрица:" << endl;
    for ( int i = 0; i < M; i ++ )
    {
        for ( int j = 0; j < M; j ++ )
            cout << mat[i][j] << "\t";
        cout << endl;
    }
 
 
    bool flag = true;
    while ( flag && counter < 20)
    {
        flag = false;
        counter ++;
        for ( int i = 0; i < M - 1; i ++ )
            for ( int j = i +1 ; j < M; j ++ )
            {
                if (mat[i][i] > mat [j][j] )
                    for ( int k = 0; k < M; k ++)
                    {
                        flag = true;
                        int tmp = mat[i][k];
                        mat[i][k] = mat[j][k];
                        mat[j][k] = tmp;
                    }
            
            }
 
    }
 
 
    if ( counter < 20 ) {
    cout << endl;
    for ( int i = 0; i < M; i ++ )
    {
        for ( int j = 0; j < M; j++ )
            cout << mat[i][j] << "\t";
        cout << endl;
    }
    }
    else cout << "Программа не может отсортировать матрицу" << endl;
    
 
 
 
    for ( int i = 0; i < M; i ++ )
        delete [] mat[i];
 
    system("pause");
    return 0;
    }
Yandex
Объявления
11.11.2013, 17:11     Создание класса по обработке данных массива
Ответ Создать тему
Опции темы

Текущее время: 21:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru