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

Матрица m x n. Найти макс значение среди средних значений для каждой строки матрицы. Вернуть номер строки - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Считать текст из файла и найти в нем все палиндромы http://www.cyberforum.ru/cpp-beginners/thread1069308.html
В произвольном тексте (взятом из файла), содержащем не более 10 строк, в каждой строке не более 80 символов (текст вывести на экран), найти и вывести на экран все слова, являющиеся палиндромами (то есть одинаково читающиеся как справа налево, так и слева направо) и их количество. Результат также записать в выходной файл, имя файла задает пользователь. очень прошу текст программы с...
C++ Поменять местами элементы в очереди 1-ая Сделать очередь (любым способом). Распечатать её содержимое. Поменять местами первый и ТРЕТИЙ элемент. Снова распечатать. 2-ая Сделать очередь (любым способом). Распечатать её содержимое. Поменять местами первый и ПОСЛЕДНИЙ элемент. http://www.cyberforum.ru/cpp-beginners/thread1069305.html
Перемножение матриц C++
Делаю перемножение матриц. В результате выдает некорректные числа #include <iostream> #include <stdlib.h> #include <conio.h> using namespace std; int **mas_1; int **mas_2;
Не работает проверка C++
Вообщем тут такое дело, я все вычислил, вывел в консоль результат (чтобы проще было), отнял от ранее заданной переменной y переменную fall, переменная fall равняется формуле по которой вычесляется падение пули. Переменная timeto=865:rандом число, проще говоря находим t=s:v,время полета до цели=расстояние:время,fall=9.8*время полета до цели в квадраде, затем : 2, получается fall это количество...
C++ Двумерные массивы. Определить произведение элементов в тех строках, которые не содержат отрицательных элементов http://www.cyberforum.ru/cpp-beginners/thread1069269.html
Дана целочисленная квадратная матрица. Определить произведение элементов в тех строках, которые не содержат отрицательных элементов; максимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы
C++ Сформировать массив Сформировать массив J(10) из массива I(10) по следующему принципу: J(N)=I(N)+N подробнее

Показать сообщение отдельно
IntM
0 / 0 / 0
Регистрация: 21.10.2013
Сообщений: 9
12.01.2014, 16:52     Матрица m x 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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#include <iostream>
#include "matrix.h"
 
using namespace std;
 
Matrix::Matrix(int rows, int cols){
    this->rows = rows;
    this->cols = cols;
 
    mas = new int*[rows];
 
    for(i=0; j<rows; i++){
        mas[i] = new int[cols];
        for(j=0; j<cols; j++){
            mas[i][j]=0;
        }
    }
}
 
 
void Matrix::Middle(int rows){
    this->rows = rows;
    for(i = 0; i < cols; i++)
        max += mas[0][i];
    for(i = 1; i < rows; i++){
        tmp = 0;
        for(j = 0; j< cols; j++)
            tmp = mas[i][j];
        if(tmp > max){
            max = tmp;
            nj = j;
        }
    }
    max/=cols;
}
 
 
void Matrix::Fill(){
 
    for(i = 0; i < rows; i++){
        for(j = 0; j < cols; j++){
            mas[i][j] = (int)rand();
        }
        Middle(i);
    }
    return;
}
 
void Matrix::Display(){
    cout<<endl<<"Matrix"<<endl;
    for(i = 0; i < rows; i++){
        printf("Строка:%i> ", i+1);
        for(j = 0; j < cols; j++){
            printf("%d ", mas[i][j]);
        }
    }
    cout<<max<<endl;
    cout<<nj<<endl;
    return;
}
matrix.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#pragma once
 
class Matrix{
private:
    int i, j;
    int rows;
    int cols;
    int nj;
    int **mas;
    int max;
    int tmp;
public:
    Matrix(int rows, int cols);
    void Fill();
    void Middle(int rows);
    void Display();
};
main.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
//создать класс, для представления и обработки данных по заданию.
//обработка эл прямоугольной матрицы MxN
//найти макс значение среди средних значений для каждой строки матрицы. Вернуть номер строки.
 
#include <iostream>
#include "matrix.h"
 
using namespace std;
 
void main(){
 
    setlocale(0,"");
 
    int rows, cols;
    //Вводим строки и столбцы
    cout<<"Количество строк: ";
    cin>>rows;
    cout<<"Количество столбцов: ";
    cin>>cols;
 
    Matrix Matrix(rows, cols);//Передаем данные
    Matrix.Fill();//Находим максимальное значение среди средних значений для каждой строки матрицы
    Matrix.Display();//Отображаем
 
    system("pause");
}
Добавлено через 2 часа 7 минут
Некоторая замена
matrix.h
C++
1
int nj;
на
C++
1
int ni;
matrix.cpp
C++
1
nj = j;
на
C++
1
ni++;
и
C++
1
cout<<nj<<endl;
на
C++
1
cout<<ni<<endl;
Заметил, что оно тупо не хочет выводить матрицу
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 08:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru