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

Двухмерная матрица и функция - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Определитель матрицы n http://www.cyberforum.ru/cpp-beginners/thread203529.html
Помогите пожалуйста... никак не могу сделать..нужен код для вычисления определителя матрицы порядка n разложением по строке...
C++ Использование функций и шаблонов функций Люди помогите пожалуйста буду очень благодарна) вобщем вот первая часть лабы Написать программу, функция main которой включает вызов 3х функций: - 1-я функция осуществляет ввод исходных данных;... http://www.cyberforum.ru/cpp-beginners/thread203518.html
C++ Стек(обмен данных)
Организовать обмен данных между двумя стеками,один из которых построен на статической памяти,а другой на динамической. Помогите пожалуйста!!!
C++ Вывести на экран все простые числа
Вывести на экран все простые числа, не превосходящие заданное число М, кроме единицы и самого себя.
C++ простой пример паттерна (facade) http://www.cyberforum.ru/cpp-beginners/thread203490.html
написал то теории и хотело бы узнать правельно ли я написал?? #include<stdafx.h> #include<iostream> using namespace std; class A { public:
C++ Виртуальные функции Объясните, для чего необходимы виртуальные функции. Где их рационально использовать. P.S. Если есть ссылки на толковые материалы - не жалейте. Заранее благодарен. подробнее

Показать сообщение отдельно
fasked
Эксперт С++
4942 / 2522 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
04.12.2010, 22:47
Пример решения:
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
#include <iostream>
 
int sum(int **a, int rows, int cols) {
        int sum = 0;
        for(int i = 0; i < rows && i < cols; ++i)
                sum += a[i][i];
 
        return sum;
}
 
int main()
{
        int rows = 0;
        int cols = 0;
 
        std::cout << "rows: ";
        std::cin >> rows;
 
        std::cout << "cols: ";
        std::cin >> cols;
 
        int **matrix = new int*[rows];
        for(int i = 0; i < rows; ++i)
                matrix[i] = new int[cols];
 
        std::cout << "matrix " << rows << "x" << cols << " size" << std::endl;
        for(int i = 0; i < rows; ++i) {
                for(int j = 0; j < cols; ++j)
                        std::cin >> matrix[i][j];
        }
 
        std::cout << "sum: " << sum(matrix, rows, cols) << std::endl;
 
        for(int i = 0; i < rows; ++i)
                delete[] matrix[i];
        delete[] matrix;
 
        return 0;
}
Функция вычисления суммы у Вас вычисляет результат типа double, а возвращает int.
Память под матрицу выделяется динамически, следовательно функция должна принимать указатель.
Проход по главной диагонали матрицы осуществляется проще.

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