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

Посимвольное чтение - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Процедуры на С++ http://www.cyberforum.ru/cpp-beginners/thread396745.html
Помогите пожалуйста с такой задачей: Составить процедуру упорядочения одномерного массива по убыванию. С помощью процедуры отсортировать столбцы произвольно заданной двумерной матрицы. При этом вновь полученные строки также должны быть отсортированы по убыванию. Заранее большое спасибо.
C++ Алгоритм нахождения периметра матрицы(сумму элементов на верхней и нижней строках и по бокам) Надо найти сумму элементов на верхней и нижней строках и по бокам. Как реализовать это в программе? Добавлено через 1 час 28 минут как и в 99% случаев без ответа и неактуально. Если кому понадобилось то вот код for (int i=0;i<n;i++) for (int j=0;j<m;j++) if (i == 0 || i == n - 1) http://www.cyberforum.ru/cpp-beginners/thread396743.html
Одномерные массивы в С#(С++) C++
Помогите пожалуйсто,пишу программу,а она чего-то не хочет писаться,выдает многочисленные ошибки.На основании этой программы нужно сделать вот эту:"вынести инициализацию массива и поиск максимального элемента в отдельный класс.В Main оставить только вызов этих методов". using System; using System.Collections.Generic; namespace new { class MainClass { public static void Main(string...
Задача хищник -жертва. C++
Помогите кто может . Завалилась с лабами . Нужна прога на С++ ( Visual Studio) задачи хищник -жертва. Может у кого-то готовая есть. Задание такое : ареал размером L включает две благоприятные для жизни жертв несвязанные области с размерами L1 и L2 ,которые существенно меньше L.Рассмотреть одномерную задачу. Благодарность гарантирую, подскажите только сумму.
C++ В строке символов заменить каждый второй символ s на f http://www.cyberforum.ru/cpp-beginners/thread396728.html
Подскажите,пожалуйста,как в строке символов заменить каждый второй символ s на f
C++ Подсчитать среднее арифметическое четных элементов Привет всем))У меня простейшая задача, но не пойму её суть)) Задача: Дан массив размером n*n, элементы которого целые числа: Подсчитать среднее арифметическое четных элементов, расположенных ниже главной диагонали. У меня постоянно происходит зацикливание программы, напишите пожалуйста решение, я где-то что - то напутал, но не пойму где. подробнее

Показать сообщение отдельно
gooseim
Эксперт С++
508 / 412 / 37
Регистрация: 23.09.2010
Сообщений: 1,159
01.12.2011, 22:22     Посимвольное чтение
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
#include <iostream>
#include <string>
#include <boost/regex.hpp>
#include <algorithm>
#include <map>
#include <list>
#include <boost/lexical_cast.hpp>
#include <numeric>
#include <functional>
 
int main()
{
   std::string s = "a=3 b=7\n"
                   "z=32 a=1\n"
                   "y=2\n"
                   "b=7\n";
   
   boost::regex reg("((\\w)\\s*=\\s*(\\d+))"); 
   
   boost::smatch res;
   
   std::map< char, std::list<int> > v;
   
   std::map< char, double> amean;  
   std::map< char, int > sum;  
      
   std::string::const_iterator start = s.begin();
   std::string::const_iterator end = s.end();
   
   while( boost::regex_search(start , end , res, reg) )
   {
      v[res[2].first[0]].push_back(boost::lexical_cast<int>(std::string(res[3])));
      start= res[1].second;
   }
 
   for(std::map< char, std::list<int> >::iterator it = v.begin(); it != v.end(); ++it)
   {      
      sum[it->first] = std::accumulate(it->second.begin(), it->second.end(), 0);
      amean[it->first] = (double)sum[it->first] / it->second.size();      
   }
   
   for(std::map< char, std::list<int> >::const_iterator it = v.begin(); it != v.end(); ++it)
   {
      std::cout<<it->first<<" ";
      std::cout<<amean[it->first]<<" "<<sum[it->first]<<std::endl;
   }
}
Работу с файлами сами доделайте.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru