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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Spb1337
-13 / 0 / 0
Регистрация: 24.09.2012
Сообщений: 13
#1

Подсчет и формирование массива - C++

10.12.2012, 19:23. Просмотров 295. Ответов 0
Метки нет (Все метки)

Характеристикой строки целочисленной матрицы называется сумма ее положительных четных элементов.
Переставляя строки заданной матрицы,расположить их в соответствии с ростом характеристик.

Обработка матрицы с использованием иерархии классов
скидываю два файла ключевых.. по которым нужна помощь..
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
// Печать матрицы
//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Стремная печать!!!!!!!!!!!!!!!!!!!!!!!!!!!! =)
void MATRIX::PrintMatrix(fstream &f)
{
    f << "Исходные данные:" << endl;
    f << "Количество строк в матрице:" << N << endl; 
    f << "Количество столбцов в матрице:" << M << endl;
 
 
 
    // !!!!!!!!!!!!!!!!!!!! Это все (то, что ниже, будет в производном классе ChildMATRIX !!!!!!!!!!!!!
    // Причем там будет 3 ф-ции: 1 - подсчет и формирование массива m[] и перестановка строк самой матрицы
    //                           2 - СВОЯ функция печати матрицы (необычная - с печатью строки матрицы и 
    //                               характеристики (m[i]).     
    // А в базовом классе - только это:
 
    for(int i=0; i<N; i++)
    {
        for(int j=0; j<M; j++)
        {
            f << setw(5) << left << pA[i][j];   
        }
 
        f << "\n\n";
    }
 
    int *m, t;
    m = NULL;
    m = new int [N];
    for (int i=0; i <N; i++)
    {
        *(m+i) = 0;
        for (int j=0 ; j <M; j++ )
        {
            if(pA[i][j] > 0 && pA[i][j]%2 == 0)
            {
                *(m+i) += pA[i][j];
            }
        }
    }
 
    //for(int i=0; i<N; i++)
    //{
    //  for(int j=0; j<M; j++)
    //  {
    //      f << setw(5) << left << pA[i][j];
    //      //f << setw(12) << ":" << m[i] << endl;   
    //  }
 
    //  f << "\n\n";
    //}
}
matrix.cpp

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
// Конструктор производного класса
ChildMATRIX::ChildMATRIX(int N, int M):MATRIX(N, M)
{
}
 
// Функция выполнения задания
 
void ChildMATRIX::f_task(fstream &f)
{
    int *m,t;
 
    //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Выделить память под m[]
    //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Заполнить m[] значениями характеристик
//!!!! А вот ТОЛЬКО!!! потом переставлять строки матрицы!!!!!!!!!!!!!!!!!!
 
    t=0;
    int *massiv;
    for(int k = 0; k < N-1; k++ )
    
    {
        for(int p = k + 1; p < N; p++ )
        
        {
            if(*(m+k) > *(m+p))         
            {
                massiv = pA[k];
                pA[k] = pA[p];
                pA[p] = massiv;
 
                t = m[k];
                m[k]= m[p];
                m[p] = t;
            }
        }
    }
    return;
}
childmatrix.cpp


Нужно помочь написать ту самую функцию о которой упомянуто в комментариях.. не могу сам справиться.. помогите пожалуйста((

Добавлено через 26 минут
up1!!!

Добавлено через 37 минут
uP!!!!!

Добавлено через 10 часов 36 минут
up!!!!

Добавлено через 8 часов 17 минут
UP!!!!!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.12.2012, 19:23
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Подсчет и формирование массива (C++):

Формирование из элементов массива A нового массива B - C++
Собственно, это и есть весь вопрос. Предположим, задан некий массив A. Все элементы данного массива, удовлетворяющие некоторому свойству,...

Формирование нового массива - C++
Задан массив А(20). Сформировать новый массив В(20) элементами которого является разница между произведениями всех элементов массива и...

Формирование двумерного массива - C++
Даны целые положительные числа M и N. Сформировать целочисленную матрицу размера M х N, у которой все элементы J-го столбца имеют значение...

Формирование массива из другого - C++
Найти произведение элементов массива A = {1, 3.5, 4, -0.8, 1.9, 5, 13}, удовлетворяющих условию , если С = 2, D = 10. Сформировать из этих...

формирование массива объектов - C++
Помогите исправит программу! Надо аписать программу, выполняющую: •формирование массива объектов (с конструктором по умолчанию); ...

Формирование двумерного массива - C++
Из полож.элементов матрицы N сформировать матрицу M(10,Kmax),распологая в строки подряд, где Kmax-макс.число полож.элементов строки ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.12.2012, 19:23
Привет! Вот еще темы с ответами:

Задача на формирование массива. - C++
Задан массив целых чисел, вектор U: U 15 5 9 12 1 16 10 6 8 25 Сформировать новый массив V, эл-ты к-го вычисляются по формуле: Vk=...

Формирование двумерного массива - C++
Дана матрица размером (m x n). Нужно из исходной матрицы сформировать новую из тех столбцов исходной, в которых содержится хотя бы два...

Формирование элементов массива - C++
:::::::::::::::::::::::::::::::::::::::::::::::::::: Составить программу формирования элементов масива X и масива Y, их сортировку...

формирование нового массива - C++
формировать новый массив из элементов кратных 3 (на языке Си) заранее спасибо)


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru