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

Функция для определения% содержания символа в строке - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Массив http://www.cyberforum.ru/cpp-beginners/thread365112.html
Создать массив из 13 элементов, где каждый элемент будет заполнен значениями функции -5х+х*х -10/х. Где х - это переменна я итератора массива. Первому элементу массива (нулевому) присвоить 0. А затем отсортировать массив, по убыванию. Вывести на экран изначальный массив и отсортированный массив.
C++ Классы. Конструкторы и деструкторы Создать класс «матрица». Данный класс должен содержать элементы типа int, определяющие число строк, столбцов и состояние ошибки. Определить конструктор без параметров, конструктор с одним параметром, конструктор с двумя параметрами, деструктор. Определить метод, возвращающий значение элемента матрицы и его адрес. Определить функцию печати матрицы. Определить функции поиска максимального и... http://www.cyberforum.ru/cpp-beginners/thread365091.html
Шифр Полибия и Тюремная Азбука C++
Всем привет! У меня вот такая проблемка...)) Нужно сделать шифр Полибия и в нем же тюремную азбуку...Вот все на что ума хватило..)) Помогите пожалуйста довести до логического конца))) #include "stdafx.h" #include <iostream> #include <windows.h> #include <string.h> using namespace std; void pick(int row, int col) {
Помогите определиться как сделать оболочку для электронного определителя C++
Собственно, проблема в том что создаем электронный определитель с помощью html и немного скриптов, сразу говорю проект не коммерческий, просто собрать деньги на бумажный невозможно. Проблема в том, чтоб создать оболочку на С++ которая бы отображала контент написанный на html. Все это планируется закатывать на CD диски, поэтому нужно скрыть исходные файлы html. Скажите пожалуйста возможно ли...
C++ Вычислить значение функции переменных при заданных значениях параметров http://www.cyberforum.ru/cpp-beginners/thread365054.html
X=6t^2-(ctg z+1)/y^2 при y=2; z=4; t=sin(2+z) Попробовал сделать эту задачу исходя из своих знаний и понял что ничего не знаю =( #include <stdio.h> #include <math.h> main() { float x,y,z,t,q; y=2;
C++ В консольном приложении код работает нормально, в оконном - нет суть в чем. используется один и тот же модуль ATD. Но в консольном приложении работает нормально все, все методы. А вот в окне формы работает функция сравнивания неверно. Всегда возвращает False хотя точно такой же массив создается в консольном и там он возвращает True. Неясно почему. Да и не выводит массивы в textbox. Приложил консольный проект и оконный. подробнее

Показать сообщение отдельно
lemegeton
 Аватар для lemegeton
2910 / 1339 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
13.10.2011, 08:54     Функция для определения% содержания символа в строке
Например так.
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 <map>
#include <algorithm>
#include <ctime>
#include <cstdlib>
 
class RandomSymbol {
 public:
  RandomSymbol(char min, char max) : min_(min), max_(max) {}
  char operator()() const { return std::rand() % (max_ - min_ + 1) + min_; }
 private:
  char min_, max_;
};
 
std::string randomString(size_t size) {
  std::string result(size, ' ');
  std::generate(result.begin(), result.end(), RandomSymbol('a', 'z'));
  return result;
}
 
int main(int argc, char *argv[]) {
  std::srand(std::time(NULL));
  typedef std::map<char, size_t> SymbolsMap;
 
  std::string source = randomString(25);
 
  SymbolsMap symbols;
  for (std::string::const_iterator i = source.begin(); i != source.end(); ++i)
    ++symbols[*i];
 
  size_t maxUses = 0;
  for (SymbolsMap::const_iterator i = symbols.begin(); i != symbols.end(); ++i)
    if ((*i).second > maxUses) maxUses = (*i).second;
 
  std::cout << source << std::endl;
  for (SymbolsMap::const_iterator i = symbols.begin(); i != symbols.end(); ++i)
    std::cout << (*i).first << " = " << (*i).second << std::endl;
 
  std::cout << std::endl << "Max used symbols that used " << maxUses
    << " time(s): ";
  for (SymbolsMap::const_iterator i = symbols.begin(); i != symbols.end(); ++i)
    if ((*i).second == maxUses) std::cout << (*i).first << " ";
  std::cout << std::endl;
 
  return 0;
}
 
Текущее время: 06:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru