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

Одинаковые группы букв и вывод их количества: переделать, чтобы находились абсолютно все группы - C++

Восстановить пароль Регистрация
 
Aecttann
 Аватар для Aecttann
5 / 5 / 0
Регистрация: 19.10.2013
Сообщений: 258
19.06.2014, 23:42     Одинаковые группы букв и вывод их количества: переделать, чтобы находились абсолютно все группы #1
Есть такая прога: находит одинаковые группы букв и выводит их количество, но рабоатет только если буквы стоят по соседству. Как переделать, чтобы находились абсолютно все группы?
Кликните здесь для просмотра всего текста
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
#include <fstream>
#include <iostream>
#include <string.h>
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "RUS");
 
ifstream f("t.txt");
ofstream out("t1");
 
if(!f)
 
    {
 
        cout << "sory!";
        return 1;
    }
 
    int n=0;
    char p=0,s=0;
 
    for(;!f.eof();)
        {
            p=0;
            f.get(p);
            if(s!=p)
            out<<p;
            if(s==p)
            n++;
            s=p;
            cout << s;
        }
 
        out.close();
        f.close();
        cout << endl << "Количество одинаковых символов = " << n;
return 0;
 
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.06.2014, 23:42     Одинаковые группы букв и вывод их количества: переделать, чтобы находились абсолютно все группы
Посмотрите здесь:

Удалит из данной последовательности все группы букв вида abcd C++
удалить из последовательности группы букв C++
C++ Журнал успеваемости студенческой группы (переделать с Паскаля на С++)
Устранить из строки все заданные группы букв C++
В строке удалить все заданные группы букв C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
GuGo1991
267 / 261 / 93
Регистрация: 02.08.2012
Сообщений: 609
20.06.2014, 01:21     Одинаковые группы букв и вывод их количества: переделать, чтобы находились абсолютно все группы #2
Цитата Сообщение от Aecttann Посмотреть сообщение
Как переделать, чтобы находились абсолютно все группы?
Что подразумевается под группой? Надо исключить пробелы, знаки, символы? Приведите пример.
Aecttann
 Аватар для Aecttann
5 / 5 / 0
Регистрация: 19.10.2013
Сообщений: 258
20.06.2014, 10:57  [ТС]     Одинаковые группы букв и вывод их количества: переделать, чтобы находились абсолютно все группы #3
GuGo1991, допустим, в файле мм нн гг поп, прога выведет, что количество одинаковых символов - 3, так как увидит только первые три группы букв, а две буквы п, в слове поп, не увидит и не выведет
GuGo1991
267 / 261 / 93
Регистрация: 02.08.2012
Сообщений: 609
20.06.2014, 14:34     Одинаковые группы букв и вывод их количества: переделать, чтобы находились абсолютно все группы #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Aecttann
Кликните здесь для просмотра всего текста
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
#include <iostream>
#include <string>
#include <fstream>
#include <conio.h>
 
int main()
{
    std::ifstream file("file.txt");
    if(file)
    {
        std::string str, temp;
        int counter = 0;
        while(file >> str)
        {
            temp = str;
            for(int i = 0; i < temp.size(); i++)
            {
                int size = temp.size();
                size_t found = temp.find(temp[i], i + 1);
                while(found != std::string::npos)
                {
                    temp.replace(found, 1, "");
                    found = temp.find(temp[i], found + 1);
                }
                if(size > temp.size()) counter++;
            } 
        }
        file.close();
        std::cout << "\nSame symbols quantity: " << counter << std::endl;
    }
    else
        perror("Error");
    
    std::cout << "\nOperation succeeded\n";
    getch();
    return 0;
}
Yandex
Объявления
20.06.2014, 14:34     Одинаковые группы букв и вывод их количества: переделать, чтобы находились абсолютно все группы
Ответ Создать тему
Опции темы

Текущее время: 08:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru