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

Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 21, средняя оценка - 4.90
ромыч
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 46
15.11.2009, 00:42     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! #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
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.h>
#include<stdio.h>
#include<string.h>
#include<conio.h>
#include<stdlib.h>
 
void main(void)
{
clrscr();
char our_string[100];
char my_string[] = "exit";
int strings_count = 0;// shetchik strok
int words_count = 0;// shetchik slov
char *words;
char iskomoe_slovo[1000];
 
int iskomaya_stroka[100];
 
 
int i;
int ok;
 
cout << "Vvedite iskomoe slovo: " << endl;
cin >> iskomoe_slovo;
cout << "Vvedite text, dlya vihoda naberite 'exit': " << endl;
gets(our_string);
int j=0;  
while(strcmp(our_string,my_string)!=0){// esli nasha stroka = exit, to vihodim
words = strtok(our_string," . ; ? ! , ");
strings_count++;// uvelichivaem colvo strok na 1
    while(words != NULL){
        words_count++;// colvo slov uvelichivaem na 1
 
                ok=1;
                for(i=0;i <= strlen(iskomoe_slovo)-1;i++){
                
                    if((iskomoe_slovo[i] == words[i])&&(ok==1)){
                 
                        ok = 1;
                    }
                    else{
                        ok = 0;
                    }
                }
             if(ok==1)
{
 
 
 
    iskomaya_stroka[j]=strings_count;
                        
            j++;  
}
 
    words = strtok(NULL," . ; ? ! , ");// razbivaem stroku
    }
gets(our_string);// eshe raz prosim vvesti stroku
}
 
 
cout << endl << "strings count = " << strings_count;
cout << endl << "words count = " << words_count;
cout << endl << "iskomie stroki pod nomerami: " << endl;
        for(i=0;i<j;i++)        // вывод на экран номеров
        cout<<iskomaya_stroka[i]<<" ";
 
getch();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.11.2009, 00:42     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово!
Посмотрите здесь:

C++ С++.Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово!
Преобразовать массив так, чтобы сначала располагались все положительные элементы, а потом отрицательные C++
Преобразовать последовательность чисел так, чтобы сначала были нули, а потом все остальные. C++
C++ Считать текст из файла и вывести на экран сначала вопросительные, а потом восклицательные предложения
C++ Преобразовать массив таким образом чтобы сначала располагались все элементы равные нулю а потом остальные
C++ Подскажите, что мне надо поменять в моем коде, чтобы найти сумму по столбцам?
C++ Преобразовать массив таким образом, чтобы сначала располагались четные, а потом нечетные элементы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
patriot2008
 Аватар для patriot2008
70 / 70 / 4
Регистрация: 04.12.2008
Сообщений: 463
15.11.2009, 00:46     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! #2
C++
1
2
3
4
cout << "Vvedite text, dlya vihoda naberite 'exit': " << endl;
gets(our_string);
cout << "Vvedite iskomoe slovo: " << endl;
cin >> iskomoe_slovo;
Так?
Андрейка
419 / 223 / 27
Регистрация: 25.03.2009
Сообщений: 744
15.11.2009, 00:50     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! #3
ромыч, код прям смесь С++ и Сишного алгоритма)
ромыч
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 46
15.11.2009, 01:44  [ТС]     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! #4
А exit то после текста должен выходить,а не искомого слова,как это исправить?

Добавлено через 11 минут
patriot2008, а что с exit-ом делать?

Добавлено через 25 минут
patriot2008, и как увеличить размер текста,чтобы не только одна строка вводилась???ответь пож...
ромыч
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 46
15.11.2009, 13:06  [ТС]     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! #5
Цитата Сообщение от ромыч Посмотреть сообщение
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
69
Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово!И exit после текста должен выходить,а не искомого слова,как это исправить?
#include<iostream.h>
#include<stdio.h>
#include<string.h>
#include<conio.h>
#include<stdlib.h>
 
void main(void)
{
clrscr();
char our_string[100];
char my_string[] = "exit";
int strings_count = 0;// shetchik strok
int words_count = 0;// shetchik slov
char *words;
char iskomoe_slovo[1000];
 
int iskomaya_stroka[100];
 
 
int i;
int ok;
 
cout << "Vvedite iskomoe slovo: " << endl;
cin >> iskomoe_slovo;
cout << "Vvedite text, dlya vihoda naberite 'exit': " << endl;
gets(our_string);
int j=0;  
while(strcmp(our_string,my_string)!=0){// esli nasha stroka = exit, to vihodim
words = strtok(our_string," . ; ? ! , ");
strings_count++;// uvelichivaem colvo strok na 1
    while(words != NULL){
        words_count++;// colvo slov uvelichivaem na 1
 
                ok=1;
                for(i=0;i <= strlen(iskomoe_slovo)-1;i++){
                
                    if((iskomoe_slovo[i] == words[i])&&(ok==1)){
                 
                        ok = 1;
                    }
                    else{
                        ok = 0;
                    }
                }
             if(ok==1)
{
 
 
 
    iskomaya_stroka[j]=strings_count;
                        
            j++;  
}
 
    words = strtok(NULL," . ; ? ! , ");// razbivaem stroku
    }
gets(our_string);// eshe raz prosim vvesti stroku
}
 
 
cout << endl << "strings count = " << strings_count;
cout << endl << "words count = " << words_count;
cout << endl << "iskomie stroki pod nomerami: " << endl;
        for(i=0;i<j;i++)        // вывод на экран номеров
        cout<<iskomaya_stroka[i]<<" ";
 
getch();
}
Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово!И exit после текста должен выходить,а не искомого слова,как это исправить?

Добавлено через 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
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.h>
#include<stdio.h>
#include<string.h>
#include<conio.h>
#include<stdlib.h>
 
void main(void)
{
clrscr();
char our_string[100];
char my_string[] = "exit";
int strings_count = 0;// shetchik strok
int words_count = 0;// shetchik slov
char *words;
char iskomoe_slovo[1000];
 
int iskomaya_stroka[100];
 
 
int i;
int ok;
 
cout << "Vvedite iskomoe slovo: " << endl;
cin >> iskomoe_slovo;
cout << "Vvedite text, dlya vihoda naberite 'exit': " << endl;
gets(our_string);
int j=0;  
while(strcmp(our_string,my_string)!=0){// esli nasha stroka = exit, to vihodim
words = strtok(our_string," . ; ? ! , ");
strings_count++;// uvelichivaem colvo strok na 1
    while(words != NULL){
        words_count++;// colvo slov uvelichivaem na 1
 
                ok=1;
                for(i=0;i <= strlen(iskomoe_slovo)-1;i++){
                
                    if((iskomoe_slovo[i] == words[i])&&(ok==1)){
                 
                        ok = 1;
                    }
                    else{
                        ok = 0;
                    }
                }
             if(ok==1)
{
 
 
 
    iskomaya_stroka[j]=strings_count;
                        
            j++;  
}
 
    words = strtok(NULL," . ; ? ! , ");// razbivaem stroku
    }
gets(our_string);// eshe raz prosim vvesti stroku
}
 
 
cout << endl << "strings count = " << strings_count;
cout << endl << "words count = " << words_count;
cout << endl << "iskomie stroki pod nomerami: " << endl;
        for(i=0;i<j;i++)        // вывод на экран номеров
        cout<<iskomaya_stroka[i]<<" ";
 
getch();
}
Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово!
TanT
эволюционирую потихоньку
 Аватар для TanT
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
15.11.2009, 13:27     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! #6
может проще переделать по людски? но если следовать вашей логике то как-то так
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
69
70
71
72
73
74
#include<iostream.h>
#include<stdio.h>
#include<string.h>
#include<conio.h>
#include<stdlib.h>
 
 
void main(void)
{
    clrscr();
    char our_string[100], buf[100]="";
    char my_string[] = "exit";
    int strings_count = 0;// shetchik strok
    int words_count = 0;// shetchik slov
    char *words;
    char iskomoe_slovo[1000];
 
    int iskomaya_stroka[100];
 
 
    int i;
    int ok;
    cout << "Vvedite text, dlya vihoda naberite 'exit': " << endl;
    do 
    {
        gets(our_string);
        strcat(buf,our_string);
    } while (strcmp(our_string,my_string)!=0);
 
    strcpy(our_string,buf);
    cout << "Vvedite iskomoe slovo: " << endl;
    cin >> iskomoe_slovo;
    
    int j=0;  
 
        words = strtok(our_string," . ; ? ! , ");
        strings_count++;// uvelichivaem colvo strok na 1
        while(words != NULL){
            words_count++;// colvo slov uvelichivaem na 1
 
            ok=1;
            for(i=0;i <= strlen(iskomoe_slovo)-1;i++){
 
                if((iskomoe_slovo[i] == words[i])&&(ok==1)){
 
                    ok = 1;
                }
                else{
                    ok = 0;
                }
            }
            if(ok==1)
            {
 
 
 
                iskomaya_stroka[j]=strings_count;
 
                j++;  
            }
 
            words = strtok(NULL," . ; ? ! , ");// razbivaem stroku
        }
 
 
 
    cout << endl << "strings count = " << strings_count;
    cout << endl << "words count = " << words_count;
    cout << endl << "iskomie stroki pod nomerami: " << endl;
    for(i=0;i<j;i++)                // вывод на экран номеров
        cout<<iskomaya_stroka[i]<<" ";
 
    getch();
}
ромыч
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 46
15.11.2009, 13:44  [ТС]     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! #7
TanT, Ну а как переделать по людски?
TanT
эволюционирую потихоньку
 Аватар для TanT
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
15.11.2009, 13:51     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! #8
тут пост номер три
ромыч
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 46
15.11.2009, 14:13  [ТС]     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! #9
Цитата Сообщение от TanT Посмотреть сообщение
может проще переделать по людски? но если следовать вашей логике то как-то так
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
69
70
71
72
73
74
#include<iostream.h>
#include<stdio.h>
#include<string.h>
#include<conio.h>
#include<stdlib.h>
 
 
void main(void)
{
    clrscr();
    char our_string[100], buf[100]="";
    char my_string[] = "exit";
    int strings_count = 0;// shetchik strok
    int words_count = 0;// shetchik slov
    char *words;
    char iskomoe_slovo[1000];
 
    int iskomaya_stroka[100];
 
 
    int i;
    int ok;
    cout << "Vvedite text, dlya vihoda naberite 'exit': " << endl;
    do 
    {
        gets(our_string);
        strcat(buf,our_string);
    } while (strcmp(our_string,my_string)!=0);
 
    strcpy(our_string,buf);
    cout << "Vvedite iskomoe slovo: " << endl;
    cin >> iskomoe_slovo;
    
    int j=0;  
 
        words = strtok(our_string," . ; ? ! , ");
        strings_count++;// uvelichivaem colvo strok na 1
        while(words != NULL){
            words_count++;// colvo slov uvelichivaem na 1
 
            ok=1;
            for(i=0;i <= strlen(iskomoe_slovo)-1;i++){
 
                if((iskomoe_slovo[i] == words[i])&&(ok==1)){
 
                    ok = 1;
                }
                else{
                    ok = 0;
                }
            }
            if(ok==1)
            {
 
 
 
                iskomaya_stroka[j]=strings_count;
 
                j++;  
            }
 
            words = strtok(NULL," . ; ? ! , ");// razbivaem stroku
        }
 
 
 
    cout << endl << "strings count = " << strings_count;
    cout << endl << "words count = " << words_count;
    cout << endl << "iskomie stroki pod nomerami: " << endl;
    for(i=0;i<j;i++)                // вывод на экран номеров
        cout<<iskomaya_stroka[i]<<" ";
 
    getch();
}
Здесь c exit-ом нормально,но программа не выводит правильно результаты,количество строк,слов и искомую строку?

Добавлено через 1 минуту
TanT, Здесь c exit-ом нормально,но программа не выводит правильно результаты,количество строк,слов и искомую строку?
TanT
эволюционирую потихоньку
 Аватар для TanT
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
15.11.2009, 14:31     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! #10
сейчас весь текст собрался в одну строку и получается беда. чтобы этого избежать, надо тогда не склеивать строки, а доблять их в массив. то есть получиться у тебя массив строк и по нему, построчно будешь производить поиск.
но лучше, воспользоваться кодом Андрейки

Добавлено через 3 минуты
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
69
70
71
72
73
74
75
76
#include<iostream.h>
#include<stdio.h>
#include<string.h>
#include<conio.h>
#include<stdlib.h>
 
 
void main(void)
{
    //clrscr();
    char our_string[100][100], buf[100]="";
    char my_string[] = "exit";
    int strings_count = 0;// shetchik strok
    int words_count = 0;// shetchik slov
    char *words;
    char iskomoe_slovo[1000];
 
    int iskomaya_stroka[100];
    int cnt=0;
 
    int i;
    int ok;
    cout << "Vvedite text, dlya vihoda naberite 'exit': " << endl;
    do 
    {
        gets(our_string[cnt++]);
    } while (strcmp(our_string[cnt-1],my_string)!=0);
 
 
    cout << "Vvedite iskomoe slovo: " << endl;
    cin >> iskomoe_slovo;
 
    int j=0;  
 for (int c=0; c<cnt; c++)
 {
     words = strtok(our_string[c]," . ; ? ! , ");
     strings_count++;// uvelichivaem colvo strok na 1
     while(words != NULL){
         words_count++;// colvo slov uvelichivaem na 1
 
         ok=1;
         for(i=0;i <= strlen(iskomoe_slovo)-1;i++){
 
             if((iskomoe_slovo[i] == words[i])&&(ok==1)){
 
                 ok = 1;
             }
             else{
                 ok = 0;
             }
         }
         if(ok==1)
         {
 
 
 
             iskomaya_stroka[j]=strings_count;
 
             j++;  
         }
 
         words = strtok(NULL," . ; ? ! , ");// razbivaem stroku
     }
 } // по всему массиву
    
 
 
 
    cout << endl << "strings count = " << strings_count;
    cout << endl << "words count = " << words_count;
    cout << endl << "iskomie stroki pod nomerami: " << endl;
    for(i=0;i<j;i++)                // вывод на экран номеров
        cout<<iskomaya_stroka[i]<<" ";
 
    getch();
}
ромыч
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 46
15.11.2009, 14:46  [ТС]     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! #11
TanT, А ты сможешь создать этот массив строк,чтобы построчно считывать снего,и написать мне код,попробуй пож...просто я не хотел пока свою прогу изменять...

Добавлено через 11 минут
TanT, Да прога считает,но надо сделать так чтобы он exit не считывал,в результате он выводит строки и слова включая exit,как исправить?
TanT
эволюционирую потихоньку
 Аватар для TanT
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
15.11.2009, 14:46     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! #12
ну так на топик выше и создал. а свою прогу лучше отредактируй. не аккуратненько, развивайся
ромыч
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 46
15.11.2009, 14:51  [ТС]     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! #13
TanT, А написать код сможешь,как создать,пож...
А если в конце,когда результаты выводятся,просто cout-ы строк и слов на 1 уменьшить?
TanT
эволюционирую потихоньку
 Аватар для TanT
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
15.11.2009, 15:27     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! #14
я всё могу, что мне надо, а если я чего-то не могу...значит оно мне не надо...

язык у тебя всё таки С или С++? STL ты использовать будешь или категорически против?

Добавлено через 18 минут
Цитата Сообщение от ромыч Посмотреть сообщение
TanT, Да прога считает,но надо сделать так чтобы он exit не считывал,в результате он выводит строки и слова включая exit,как исправить?
изменить for (int c=0; c<cnt; c++) на for (int c=0; c<cnt-1; c++)
ну
строк и слов на 1 уменьшить
ромыч
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 46
15.11.2009, 15:47  [ТС]     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! #15
Цитата Сообщение от TanT Посмотреть сообщение
я всё могу, что мне надо, а если я чего-то не могу...значит оно мне не надо...

язык у тебя всё таки С или С++? STL ты использовать будешь или категорически против?
Язык у меня С++...Код Андрейки выводит ошибки,там через классы надо делать,менять...

Насчет редактирования,лучше отредактировать?так думаешь не пройдет?..

Добавлено через 6 минут
TanT,
Насчет редактирования,лучше отредактировать?так думаешь не пройдет?..

Добавлено через 11 минут
Цитата Сообщение от TanT Посмотреть сообщение
сейчас весь текст собрался в одну строку и получается беда. чтобы этого избежать, надо тогда не склеивать строки, а доблять их в массив. то есть получиться у тебя массив строк и по нему, построчно будешь производить поиск.
но лучше, воспользоваться кодом Андрейки

Добавлено через 3 минуты
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
69
70
71
72
73
74
75
76
#include<iostream.h>
#include<stdio.h>
#include<string.h>
#include<conio.h>
#include<stdlib.h>
 
 
void main(void)
{
    //clrscr();
    char our_string[100][100], buf[100]="";
    char my_string[] = "exit";
    int strings_count = 0;// shetchik strok
    int words_count = 0;// shetchik slov
    char *words;
    char iskomoe_slovo[1000];
 
    int iskomaya_stroka[100];
    int cnt=0;
 
    int i;
    int ok;
    cout << "Vvedite text, dlya vihoda naberite 'exit': " << endl;
    do 
    {
        gets(our_string[cnt++]);
    } while (strcmp(our_string[cnt-1],my_string)!=0);
 
 
    cout << "Vvedite iskomoe slovo: " << endl;
    cin >> iskomoe_slovo;
 
    int j=0;  
 for (int c=0; c<cnt-1; c++)
 {
     words = strtok(our_string[c]," . ; ? ! , ");
     strings_count++;// uvelichivaem colvo strok na 1
     while(words != NULL){
         words_count++;// colvo slov uvelichivaem na 1
 
         ok=1;
         for(i=0;i <= strlen(iskomoe_slovo)-1;i++){
 
             if((iskomoe_slovo[i] == words[i])&&(ok==1)){
 
                 ok = 1;
             }
             else{
                 ok = 0;
             }
         }
         if(ok==1)
         {
 
 
 
             iskomaya_stroka[j]=strings_count;
 
             j++;  
         }
 
         words = strtok(NULL," . ; ? ! , ");// razbivaem stroku
     }
 } // по всему массиву
    
 
 
 
    cout << endl << "strings count = " << strings_count;
    cout << endl << "words count = " << words_count;
    cout << endl << "iskomie stroki pod nomerami: " << endl;
    for(i=0;i<j;i++)                // вывод на экран номеров
        cout<<iskomaya_stroka[i]<<" ";
 
    getch();
}
Пожалуйста добавь комментарии на последнем примере,на все строки которые ты добавил,просто очень надо описать программу...

Добавлено через 46 секунд
TanT, Пожалуйста добавь комментарии на последнем примере,на все строки которые ты добавил,просто очень надо описать программу...
TanT
эволюционирую потихоньку
 Аватар для TanT
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
15.11.2009, 16:01     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! #16
вижу я, другим занят, видешь подпись... освобожусь сделаю
ромыч
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 46
15.11.2009, 18:28  [ТС]     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! #17
Цитата Сообщение от TanT Посмотреть сообщение
вижу я, другим занят, видешь подпись... освобожусь сделаю
Язык у меня С++...Код Андрейки выводит ошибки,там через классы надо делать,менять...
Насчет редактирования,лучше отредактировать?так думаешь не пройдет?..

Пожалуйста добавь комментарии на последнем примере,на все строки которые ты добавил,просто очень надо описать программу...

Добавлено через 7 минут
TanT, Пожалуйста добавь комментарии на последнем примере,на все строки которые ты добавил,просто очень надо описать программу...

Добавлено через 58 секунд
TanT, Пожалуйста добавь комментарии на последнем примере,на все строки которые ты добавил,просто очень надо описать программу...
TanT
эволюционирую потихоньку
 Аватар для TanT
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
15.11.2009, 18:32     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! #18
во-первых, какие ошибки выводит у тебя код Андрейки?
попробуй заменить первую строку #include <iostream> на #include <iostream.h>

ты знаешь контейнер string ?
ромыч
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 46
15.11.2009, 19:41  [ТС]     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! #19
Цитата Сообщение от TanT Посмотреть сообщение
во-первых, какие ошибки выводит у тебя код Андрейки?
попробуй заменить первую строку #include <iostream> на #include <iostream.h>

ты знаешь контейнер string ?
Контейнер я не знаю,там может код не подходит на С++?
Ты мне комментарии к последней программе напиши пожалуйста...
И еще вопрос,как сделать,чтобы после проверки текста если нет искомого слова вывести "искомое слово не найдено" в твоем примере?

Добавлено через 9 минут
TanT, Ошибки разные,от замены includ-а ошибка не исправляется,а выводит файл "iostrem"-а
не используется...
Может просто тот пример оставить,думаешь он не прокатит?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.11.2009, 19:52     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово!
Еще ссылки по теме:

C++ Переписать файл так, чтобы сначала шли положительные, потом отрицательные числа
C++ Расположить элементы массива так, чтобы сначала были отрицательные и нули, а потом положительные
C++ Переписать файл целых чисел так, чтобы сначала шли положительные, а потом - отрицательные
C++ Преобразовать массив, чтобы сначала располагались элементы, модуль которых не превышает 5, а потом остальные
C++ Распределить элементы массива так, чтобы сначала стояли положительные, а потом отрицательные

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
TanT
эволюционирую потихоньку
 Аватар для TanT
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
15.11.2009, 19:52     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово! #20
срИпя сердцем, дописал коментарии к своим строкам, понимаю что вы ещё юны, но код желательно оптимизировать

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
69
70
71
72
73
#include<iostream.h>
#include<stdio.h>
#include<string.h>
#include<conio.h>
#include<stdlib.h>
 
 
void main(void)
{
    //clrscr();
    char our_string[100][100], buf[100]="";
    char my_string[] = "exit";
    int strings_count = 0;// shetchik strok
    int words_count = 0;// shetchik slov
    char *words;
    char iskomoe_slovo[1000];
 
    int iskomaya_stroka[100];
    int cnt=0;
 
    int i;
    int ok;
    cout << "Vvedite text, dlya vihoda naberite 'exit': " << endl;
    do                                                  // цикл... 
    {
        gets(our_string[cnt++]);    // ...считывает строки в массив our_string, инкрементируя cnt...
    } while (strcmp(our_string[cnt-1],my_string)!=0);       //...пока не встетит слово my_string
 
 
    cout << "Vvedite iskomoe slovo: " << endl;
    cin >> iskomoe_slovo;
 
    int j=0;  
    for (int c=0; c<cnt; c++)           // перебор всех строк из массива our_string
    { // это всё твоё
        words = strtok(our_string[c]," . ; ? ! , ");
        strings_count++;// uvelichivaem colvo strok na 1
        while(words != NULL){
            words_count++;// colvo slov uvelichivaem na 1
 
            ok=1;
            for(i=0;i <= strlen(iskomoe_slovo)-1;i++){
 
                if((iskomoe_slovo[i] == words[i])&&(ok==1)){
 
                    ok = 1;
                }
                else{
                    ok = 0;
                }
            }
            if(ok==1)
            {
                iskomaya_stroka[j]=strings_count;
 
                j++;  
            }
 
            words = strtok(NULL," . ; ? ! , ");// razbivaem stroku
        }
    } // перебор по всему массиву
 
 
 
 
    cout << endl << "strings count = " << strings_count;
    cout << endl << "words count = " << words_count;
    cout << endl << "iskomie stroki pod nomerami: " << endl;
    for(i=0;i<j;i++)                // вывод на экран номеров
        cout<<iskomaya_stroka[i]<<" ";
 
    getch();
}
Добавлено через 1 минуту
про "искомое слово не найдено", если счётчик слов нулевой выводи эту фразу. делов то
Yandex
Объявления
15.11.2009, 19:52     Мне надо поменять cout-ы,чтобы сначала вводился текст,а потом искомое слово!
Ответ Создать тему
Опции темы

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