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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Tay69
0 / 0 / 0
Регистрация: 17.05.2010
Сообщений: 8
#1

Поиск символа A в слове В - C++

11.12.2011, 16:57. Просмотров 296. Ответов 2
Метки нет (Все метки)

пытаюсь написать программу для нахождения количества символов В в слове А.
написал вот этот код, но он постоянно зависает.
подскажите в чем ошибка, пожалуйста

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream.h>
#include <stdio.h>
void main()
{int i=0,j=0,n=1,m;
 char str[80],b;
cout <<"Vvod stroki A\n";
gets(str);
cout<<"Vvod simvola B";
cin>>b;
cout<<"Vvod nomera slova";
cin>>m;
 
while (str[i] !='.')
{if (n=m) {
       while ((str[i]!=' ') || (str[i]!='.')){
         if (str[i]=b){j++;} i++;} }
if (str[i]=' ') {n++;}
i++;
}
cout <<"Simvolov ="<<j;
}
Добавлено через 1 час 53 минуты
изменил циклы на for. зависать перестал но счетчик символов не изменяется почему то
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
#include <iostream.h>
#include <stdio.h>
#include <string.h>
 
void main()
{int i=0,j=0,n=1,m;
 char str[80],b;
cout <<"Vvod stroki A\n";
gets(str);
cout<<"Vvod simvola B";
cin>>b;
cout<<"Vvod nomera slova";
cin>>m;
int len;
len = strlen(str);
for  (i; i<len; i++)
{
if (str[i]=' ') n++;
 
if (n=m) {
       for (i; str[i]!=' '; i++)
        if (str[i]=b) j++;
     }
 
 
}
cout <<"Simvolov ="<<j;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.12.2011, 16:57     Поиск символа A в слове В
Посмотрите здесь:

C++ Поиск символа в слове
Поиск символа - непойму C++
C++ Поиск символа на консоли
Поиск вхождения символа C++
C++ Поиск символа в строке
C++ Поиск позиции символа в строке
C++ ASCII код последного символа в слове
Поиск символа в массиве C++
Создать функцию удаления последнего символа в слове C++
C++ Поиск символа с конца строки
Удалить в каждом слове массиве все символы после символа ‘*’ C++
C++ Поиск символа в текстовом файле

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Lawlietb32
14 / 14 / 2
Регистрация: 31.03.2011
Сообщений: 118
11.12.2011, 17:30     Поиск символа A в слове В #2
В цикле необходимо указывать начальное значение... для первого цикла i=0, а для второго цикла необходимо использовать другую переменную, анпример j=i; j<len; j++

так же для сравнения надо использовать выражение ==

Добавлено через 27 минут
Вот так будет работать:
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.h>
#include <stdio.h>
#include <string.h>
 
void main()
{int i=0,j=0,n=1,m, k=0;
 char str[80], b;
cout <<"Vvod stroki A\n";
gets(str);
cout<<"Vvod simvola B ";
cin>>b;
cout<<"Vvod nomera slova ";
cin>>m;
int len;
len = strlen(str);
str[len]='\0';
n=1;
for  (i=0; i<len; i++)
{
    if (str[i]==' ') 
        n++;
    if (n==m)
    {
        j=i+1;
        k=0;
        while(str[j]!=' ' && str[j]!='\0')
        {
            if (str[j]==b)
                k++;
            j++;
        }
        break;
    }
}
    cout << "\n\nSimvolov =  " << k;
 
}
Tay69
0 / 0 / 0
Регистрация: 17.05.2010
Сообщений: 8
11.12.2011, 17:42  [ТС]     Поиск символа A в слове В #3
спасибо огромное. я себе мозг вынес с этой программкой
Yandex
Объявления
11.12.2011, 17:42     Поиск символа A в слове В
Ответ Создать тему
Опции темы

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