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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 20, средняя оценка - 4.70
avada kedavra
0 / 0 / 0
Регистрация: 28.12.2011
Сообщений: 13
#1

Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*" - C++

28.12.2011, 13:31. Просмотров 2693. Ответов 19
Метки нет (Все метки)

Даны натуральное число n, символы S1, S2, ..., Sn. Подсчитать: сколько раз среди данных символов встречается символ "+" и сколько раз символ "*"
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.12.2011, 13:31     Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*"
Посмотрите здесь:
C++ Сколько раз среди данных символов встречается символ "+" и символ "*"
C++ В заданной строке подсчитать сколько раз встречается символ "*" и сколько раз символ "+"
C++ Подсчитать, колько раз в произвольном тексте встречается символ "*" и "+"
Найти сколько раз в строке из 16 символов встречается слово "she" C++
Подсчитать, сколько раз в заданной последовательности символов встречается буква "x" C++
Ввести строку. Подсчитать сколько раз в последовательности символов встречается "abc" C++
На C++ в строке после символа - "+" поставить символ "*" и посчитать сколько "+" C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
-=ЮрА=-
Заблокирован
Автор FAQ
28.12.2011, 13:50     Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*" #2
Цитата Сообщение от avada kedavra Посмотреть сообщение
Даны натуральное число n, символы S1, S2, ..., Sn. Подсчитать: сколько раз среди данных символов встречается символ "+" и сколько раз символ "*"
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
#include <iostream>
#include <cstdlib>
#include <cstring>
using namespace std;
 
int getNumCharInString(char * s, char chFind)
{
    int num  = 0;
    long pos = 0;
    char * buf = strchr(s,pos);
    while(buf)
    {
        num++;
        pos = strlen(s - strlen(buf));
        buf = strchr(s,pos + 1);
    }
    return num;
}
 
int main()
{
    int i, m, n;
    char * s;
    while(true)//ÏðîãðГ*ììГ* áóäåò Г°Г*áîòГ*ГІГј Гў ГўГҐГ·Г*îì öèêëå, 
        //êîãäГ* Г§Г*õîòèì ГҐВё Г§Г*âåðøèòü ïðîñòî Г§Г*êðûâГ*ГҐГ¬ ГЄГ®Г*ñîëü ГЁ ГўГ±Вё
    {
        cout<<"Enter n : ";
        cin>>n;
        s = new char[n];
        //ГѓГҐГ*åðèðóåì ñëó÷Г*Г©Г*ГіГѕ ïîñëåäîâГ*òåëüГ*îñòü ASCII
        //ГЁГ§ Г«Г*ГІГЁГ*Г±ГЄГЁГµ ГЎГіГЄГў ГЁ Г§Г*Г*êîâ Г¬Г*òîïåðГ*öèé
        cout<<"Generated char sequence : \n";
        for(i = 0; i < n; i++)
            cout<<(s[i] = ' ' + rand()%(128 - 32));
        cout<<"\nAnalizing sequence\n";
        m = getNumCharInString(s,'+');
        if(m < 1)
            cout<<"Input string not coontain [+] symbol\n";
        else
            cout<<"Input string contains from "<<m<<" [+] symbols\n";
        m = getNumCharInString(s,'*');
        if(m < 1)
            cout<<"Input string not coontain[*] symbol\n";
        else
            cout<<"Input string contains from "<<m<<"[*] symbols\n";
        delete [] s;
    }
    return 0;
}
Миниатюры
Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*"  
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
28.12.2011, 13:53     Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*" #3
-=ЮрА=-, Неверно.
-=ЮрА=-
Заблокирован
Автор FAQ
28.12.2011, 14:00     Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*" #4
avada kedavra, я здесь очепятался и скобочку пропустил
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
pos = strlen(s - strlen(buf));
-
запишите вот так
C++
1
pos = strlen(s) - strlen(buf);
avada kedavra
0 / 0 / 0
Регистрация: 28.12.2011
Сообщений: 13
28.12.2011, 14:01  [ТС]     Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*" #5
Цитата Сообщение от ForEveR Посмотреть сообщение
-=ЮрА=-, Неверно.
что теперь делать? т__т
-=ЮрА=-
Заблокирован
Автор FAQ
28.12.2011, 14:06     Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*" #6
ForEveR, всё там верно с учётом этого
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
я здесь очепятался и скобочку пропустил
Сообщение от -=ЮрА=-
pos = strlen(s - strlen(buf));


Вот корректная функция
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
int getNumCharInString(char * s, char chFind)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int getNumCharInString(char * s, char chFind)
{
    int num  = 0;
    long pos = 0;
    char * buf = strchr(s,pos);
    while(buf)
    {
        num++;
        pos = strlen(s) - strlen(buf);
        buf = strchr(s,pos + 1);
    }
    return num;
}
Dani
1300 / 637 / 56
Регистрация: 11.08.2011
Сообщений: 2,280
Записей в блоге: 2
Завершенные тесты: 1
28.12.2011, 14:25     Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*" #7
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <algorithm>
#include <string>
 
 
bool zvezda (char c) {  return c=='*'; }
bool plus (char c)   {  return c=='+'; }
 
 
int main()
{
    std:: string s;
    int n;
    std:: cin >> n >> s;
 
    std:: cout << "Kol-vo *: " << std:: count_if (s.begin(),s.end(),zvezda) << ' '
               << "Kol-vo +: " << std:: count_if (s.begin(),s.end(),plus) << '\n';
 
    system ("pause");
    return 0;
}
avada kedavra
0 / 0 / 0
Регистрация: 28.12.2011
Сообщений: 13
28.12.2011, 14:26  [ТС]     Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*" #8
программа не работает. не правильно подсчитывает количество символов
-=ЮрА=-
Заблокирован
Автор FAQ
28.12.2011, 14:28     Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*" #9
Всё я понял, да уж потерял сноровку
Теперь ВСЁ ОК!
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
#include <iostream>
#include <cstdlib>
#include <cstring>
using namespace std;
 
int getNumCharInString(char * s, char chFind)
{
    int num  = 0;
    long pos = 0;
    char * buf = strchr(s, chFind);
    while(buf != NULL)
    {
        num++;
        pos = strlen(s) - strlen(buf);
        buf = strchr(s + pos + 1, chFind);
    }
    return num;
}
 
int main()
{
    int i, m, n;
    char * s;
    while(true)//ÏðîãðГ*ììГ* áóäåò Г°Г*áîòГ*ГІГј Гў ГўГҐГ·Г*îì öèêëå, 
        //êîãäГ* Г§Г*õîòèì ГҐВё Г§Г*âåðøèòü ïðîñòî Г§Г*êðûâГ*ГҐГ¬ ГЄГ®Г*ñîëü ГЁ ГўГ±Вё
    {
        //srand(time(&t));
        cout<<"Enter n : ";
        cin>>n;
        s = new char[n];
        //ГѓГҐГ*åðèðóåì ñëó÷Г*Г©Г*ГіГѕ ïîñëåäîâГ*òåëüГ*îñòü ASCII
        //ГЁГ§ Г«Г*ГІГЁГ*Г±ГЄГЁГµ ГЎГіГЄГў ГЁ Г§Г*Г*êîâ Г¬Г*òîïåðГ*öèé
        cout<<"Generated char sequence : \n";
        for(i = 0; i < n; i++)
            cout<<(s[i] = ' ' + rand()%(128 - 32));
        cout<<"\nAnalizing sequence\n";
        m = getNumCharInString(s,'+');
        if(m < 1)
            cout<<"Input string not coontain [+] symbol\n";
        else
            cout<<"Input string contains from "<<m<<" [+] symbols\n";
        m = getNumCharInString(s,'*');
        if(m < 1)
            cout<<"Input string not coontain[*] symbol\n";
        else
            cout<<"Input string contains from "<<m<<"[*] symbols\n";
        delete [] s;
    }
    return 0;
}
Миниатюры
Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*"  
-=ЮрА=-
Заблокирован
Автор FAQ
28.12.2011, 14:33     Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*" #10
avada kedavra, я накосил вначале здесь
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
strchr(s,pos);
- искать то надо символ а я позицую поставил, так нужно было
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
strchr(s, chFind);
даже не знаю почему так вышло
avada kedavra
0 / 0 / 0
Регистрация: 28.12.2011
Сообщений: 13
28.12.2011, 14:36  [ТС]     Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*" #11
все равно не подсчитывает. выдает только одно значение = 1717986916
-=ЮрА=-
Заблокирован
Автор FAQ
28.12.2011, 14:44     Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*" #12
Цитата Сообщение от avada kedavra Посмотреть сообщение
все равно не подсчитывает. выдает только одно значение = 1717986916
- ты мой код не изменял???А и да если пишешь в 10-й студии я чуток должен под стандарт код подогнать (10-ка геморна в эксплуатации и пищит на всё даже простительное, ну и как следствие не считает). Если можешь дай скрин неверного подсчёта, ведь я последний скрин не от руки рисовал - всё работало
soon
2540 / 1305 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
28.12.2011, 14:47     Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*" #13
Что вы паритесь, вам же на предыдущей странице Dani отписал. Только непонятно зачеме через count_if
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
#include <algorithm>
#include <string>
 
int main()
{
    std::string str;
    std::cin >> str;
    std::cout << std::count(str.begin(), str.end(), '*') << std::endl;
    std::cout << std::count(str.begin(), str.end(), '+') << std::endl;
    return 0;
}
-=ЮрА=-
Заблокирован
Автор FAQ
28.12.2011, 14:53     Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*" #14
Цитата Сообщение от soon Посмотреть сообщение
Что вы паритесь, вам же на предыдущей странице Dani отписал
- потому что count - єто голый алгоритм, а нужно понимание того как работает count

avada kedavra, реально покажите скрин я вам доведу задание, просто потратте немного вашего времени и всё будет хорошо!
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.12.2011, 14:53     Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*"
Еще ссылки по теме:
C++ Найти сколько раз буква "a" встречается в заданном слове
Даны натур число n,символы s1. Подсчитать:а) сколько раз среди данных символов встречается символ + C++
Посчитать сколько раз встречается латинская буква "а" в первом и последнем столбце массива C++
C++ Определить, сколько раз в тексте встречается слово "мир" или сообщить об отсутствии. Вывести текст и результат
C++ Заменить в последовательности символов после первого вхождения символа "+" все цифры на символ "-"

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

Или воспользуйтесь поиском по форуму:
avada kedavra
0 / 0 / 0
Регистрация: 28.12.2011
Сообщений: 13
28.12.2011, 14:53  [ТС]     Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*" #15
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
- ты мой код не изменял???А и да если пишешь в 10-й студии я чуток должен под стандарт код подогнать (10-ка геморна в эксплуатации и пищит на всё даже простительное, ну и как следствие не считает). Если можешь дай скрин неверного подсчёта, ведь я последний скрин не от руки рисовал - всё работало
код не меняла, тупо скопировала и вставила. стоит 8 версия.

Что вы паритесь, вам же на предыдущей странице Dani отписал.
так же не подсчитывает. выдает одно и то же число, которое я написала ранее
Yandex
Объявления
28.12.2011, 14:53     Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*"
Ответ Создать тему
Опции темы

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