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

Работа с классами. Найти сумму элементов каждой строки матрицы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ strrok_s http://www.cyberforum.ru/cpp-beginners/thread808997.html
Есть код, компилятор (вижуал студио 2010) не выдает ошибок и варнингов. В определенный момент просто пишет, что работа программы прикращена, что не так можете пожалуйста взглянуть, подозреваю, что что-то связанное с стртоком. В дебаге что-то писало про неправильное значение &context #include "stdafx.h" #include <iostream> #include <conio.h> #include <iomanip> #include <stdio.h> #include...
C++ Программа if-else (координаты и радиус круга) Здравствуйте! Необходимо написать программу: пользоатель вводит 2 координаты и радиус круга, программа их высчитывает и в зависимости от результата должна написать в какой четверти находится точка. Прикладываю условие и часть выполненной мною программы. Не знаю как заставить понимать, что точка находиться в третьей и четвертой системе координат. #include <locale.h> #include <conio.h>... http://www.cyberforum.ru/cpp-beginners/thread808987.html
C++ Считывание текста с файла
Здравствйте,нужна программа которая будет считывать текст с файла и выводить его в другой файл.Что то не выходитюПрограмма просто создает пустой файлюПомогите! #include<stdio.h> int main() { FILE *fin,*fout; fin = fopen("D:\\input.txt","r"); fout= fopen("D:\\output.txt","w");
Считывание текстового масива , русского C++
Возможно вопрос баян и отправьте меня куда-то смотреть ответ, но я не нашёл как сделать это, мне надо считать в массив текст введённый в консоли на русском языке. вот к примеру обрывок int main () { char mass; cin>>mass; Добавлено через 1 час 45 минут Ну т.е что бы у меня в массив записались именно русские символы.
C++ Написать вывод из файла 2 способами в С++ табуляцию функции http://www.cyberforum.ru/cpp-beginners/thread808940.html
написать вывод из файла 2 способами в С++ табуляцию функции F(x)=2tg(x-1) на с шагом 0,1..
C++ Виртуальные методы ...в голове не укладываются. Помогите кто может :confusion: У меня про них сложилось впечатление, что они только усложняют жизнь. Если это не так, с удовольствием послушаю. Стало интересно для начала потому, что не могу понять. подробнее

Показать сообщение отдельно
ForEveR
В астрале
Эксперт С++
7969 / 4731 / 320
Регистрация: 24.06.2010
Сообщений: 10,539
Завершенные тесты: 3
15.03.2013, 14:58     Работа с классами. Найти сумму элементов каждой строки матрицы
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
#include <iostream>
#include <vector>
#include <algorithm>
#include <iterator>
 
class Matrix
{
public:
   Matrix(int rows, int cols, int def = 0):
      matrix(rows, std::vector<int>(cols, def))
   {
   }
   std::vector<int>& operator [] (int idx)
   {
      return matrix[idx];
   }
   const std::vector<int>& operator [] (int idx) const
   {
      return matrix[idx];
   }
   size_t rows() { return matrix.size(); }
   size_t cols() { return matrix.front().size(); }
   int get_row_sum(size_t rownum)
   {
      return get_row_sum(matrix[rownum]);
   }
   std::vector<int> get_rows_sum()
   {
      std::vector<int> result;
      std::for_each(matrix.begin(), matrix.end(), [&result, this](const std::vector<int>& v)
      {
         result.push_back(get_row_sum(v));
      });
      return result;
   }
   friend std::ostream& operator << (std::ostream&, const Matrix&);
private:
   int get_row_sum(const std::vector<int>& v)
   {
      return std::accumulate(v.begin(), v.end(), 0);
   }
   std::vector<std::vector<int>> matrix;
};
 
std::ostream& operator << (std::ostream& os, const Matrix& m)
{
   std::for_each(m.matrix.begin(), m.matrix.end(), [&os](const std::vector<int>& v)
   {
      std::copy(v.begin(), v.end(), std::ostream_iterator<int>(os, " "));
      os << std::endl;
   });
   return os;
}
 
int main()
{
   Matrix m(2, 2);
   m[0][0] = 5;
   m[0][1] = 10;
   m[1][0] = 8;
   m[1][1] = 3;
   std::cout << m << std::endl;
   auto sums(m.get_rows_sum());
   for (auto i : sums)
   {
      std::cout << i << std::endl;
   }
}
http://liveworkspace.org/code/3MQGbt$0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru