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

Удвоить все найденные вхождения строки в текст - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Есть ли какая-нибудь возможность рандомизировать процесс перемешивания элементов контейнера http://www.cyberforum.ru/cpp-beginners/thread624388.html
Есть в библиотеке алгоритмов такой алгоритм, который случайным образом перемешивает элементы данного контейнера. Все бы хорошо, но вот только в том, что он всегда перемешивает их одним и тем же образом. Есть ли какая-нибудь возможность рандомизировать этот процесс?
C++ С++ Скорость компиляции Всем привет. Подскажите пожалуйста как отображать скорость компиляции программы в консольном окошечке как на этом изображении. http://plasmon.rghost.ru/39234434/image.png http://www.cyberforum.ru/cpp-beginners/thread624366.html
C++ дана матрица вывести на экран сумма диагонали матрицы
буду благодарен дана матрица вывести на экран сумма диагонали матрицы
C++ Массив: Вывести на экран элементы массива, квадрат которых не будет превышать N
помогите пожалуйста Дан массив вывести на экран элементы массива квадрат которых не будет превышать N
C++ Инициализация членов структуры http://www.cyberforum.ru/cpp-beginners/thread624330.html
Здравствуйте. Имеется код: #include <iostream> struct Pizza { char name; double diametr; double weidth; };
C++ Перемешать массив строк. Здравствуйте, не могу сделать программу, где будет генерироваться имена без повторов, тоесть даны к примеру 8 имен, и она должна выдавать их примерно так: имя1 и имя7 имя3 и имя5 имя8 и имя2 имя6 и имя4 Имя не должно повторяться. Каким образом сделать так, чтобы имена не повторялись? подробнее

Показать сообщение отдельно
Catstail
Модератор
 Аватар для Catstail
21442 / 10227 / 1666
Регистрация: 12.02.2012
Сообщений: 17,105
16.07.2012, 12:21     Удвоить все найденные вхождения строки в текст
Вот "детское" (но работающее) решение:

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
#include <iostream.h>
#include <string.h>
 
char * DupWord(char *stri, char *word)
{
    int i,j,k,n,l;
    char *curr;
 
    n=strlen(stri);
    l=strlen(word);
    
    char *wd=new char[l+1];
    char *Res=new char[n*2+1];
 
    for (i=0; i<n*2+1; i++) Res[i]=0;
 
    i=0;
    k=0;
    curr=stri;
 
    while(1)
    {
        // áåðåì l ñèìâîëîâ Г± i-Г© ïîçèöèè
        for (j=0; j<l; j++) wd[j]=stri[i+j];
        wd[l]=0;
        // ïðîâåðÿåì, Г*ГҐ Г*Г*øëè ëè ñëîâî?
        if (strcmp(wd,word) == 0)
        {
            // êðîïèðóåì Гў âûõ. ñòðîêó äâГ*æäû
            for (j=0; j<l; j++) Res[k++]=word[j];
            for (j=0; j<l; j++) Res[k++]=word[j];
            i=i+l-1;
        }
        else
        {   // êîïèðóåì îäèГ* ñèìâîë
            Res[k++]=stri[i];
        }
        i++;
        if ((n-i) < l)
        {   // êîïèðóåì îñòГ*òîê äî ГЄГ®Г*Г¶Г* ñòðîêè
            for (j=0; j<n-i; j++) Res[k++]=stri[j];
            Res[k++]=0;
            break;
        }
    }
 
    delete [] wd;
    return Res;
 
}
 
int main(int argc, char* argv[])
{
        char *S="To be or not to be";
        char *R=DupWord(S,"be");
 
        cout << R << endl;
 
        delete [] R;
 
        return 0;
}
 
Текущее время: 14:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru