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

строка символов - C++

Восстановить пароль Регистрация
 
wazaabi
0 / 0 / 0
Регистрация: 01.07.2011
Сообщений: 19
11.07.2011, 10:04     строка символов #1
не понимаю как решить задачу решите пожалуйста если не трудно заранее спасибо.


Дана строка символов S. Выяснить имеется ли в строке такие числа последовательности Sj ,Sj+1, что Sj-это запятая, а Sj+1 - тире
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.07.2011, 10:04     строка символов
Посмотрите здесь:

C++ Дана строка символов, пользователь вводит комбинацию символов проверить сколько раз встечается эта комбинация в строке.
Дана строка символов. Изменить строку – во всех словах, имеющих нечетное количество символов, средний символ удалить. C++
C++ Дана строка символов. Подсчитать общее число вхождений символов .,+ в строку
C++ Дана строка символов. Подсчитать общее число вхождений символов
Дана строка символов до точки. Составить программу, проверяющую, является ли данная строка палиндромом, т. е. читается ли она слева направо и справа н C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vergil111
31 / 31 / 6
Регистрация: 30.11.2010
Сообщений: 81
11.07.2011, 10:51     строка символов #2
Лови
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <string>
#include <process.h>
 
using namespace std;
 
int main(){
    string str;
    cout << "Enter string: ";
    cin >> str;
    for (int i=0; i<str.size()-1; i++){
        if (str[i]==',' && str[i+1]=='-'){
            cout << "Yes" << endl;
            exit(1);
        }
    }
    cout << "No" << endl;
    return 0;
}
kravam
быдлокодер
 Аватар для kravam
1512 / 872 / 44
Регистрация: 04.06.2008
Сообщений: 5,270
11.07.2011, 11:41     строка символов #3
Это что ли?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <string>
#include <string.h>
 
using namespace std;
 
int main(){
        string str;
        cout << "Enter string: ";
        cin >> str;
        if (strstr(str.c_str(), ",-"))
         cout<< "YES";
        else
         cout<< "NO";
        return 0;
}
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
11.07.2011, 12:10     строка символов #4
kravam, тогда уж так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
#include <string>
 
using namespace std;
 
int main(){
        string str;
        cout << "Enter string: ";
        cin >> str;
        cout<<(str.find(",-")!=string::npos? "Yes":"No")<<endl;
        return 0;
}
а то как-то не кошерно получается))
Vergil111
31 / 31 / 6
Регистрация: 30.11.2010
Сообщений: 81
11.07.2011, 12:13     строка символов #5
Чего-то про методы string я забыл
На лови, самое короткое)
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <string>
 
using namespace std;
 
int main(){
    string str;
    cout << "Enter string: ";
    cin >> str;
    str.find(",-") ? cout << "No" << endl : cout << "Yes" << endl;
}
Аррррргх, опередили >_<
neske
1419 / 786 / 55
Регистрация: 26.03.2010
Сообщений: 2,689
11.07.2011, 12:15     строка символов #6
Vergil111, самое короткое не есть самое правильное )

Цитата Сообщение от Vergil111 Посмотреть сообщение
int main(){
а рез-тат не возвращаем)
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
11.07.2011, 12:18     строка символов #7
Vergil111, в случае неудачи find() вернет npos (т.е. -1), так, что в твоем случае результат всегда будет "No".
Vergil111
31 / 31 / 6
Регистрация: 30.11.2010
Сообщений: 81
11.07.2011, 12:18     строка символов #8
ААААААА, в рот мне ноги)) Просто казнить меня надо)
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
#include <string>
 
using namespace std;
 
int main(){
    string str;
    cout << "Enter string: ";
    cin >> str;
    str.find(",-") ? cout << "No" << endl : cout << "Yes" << endl;
    return 0;
}
Kastaneda
11.07.2011, 12:22
  #9

Не по теме:

Цитата Сообщение от Vergil111 Посмотреть сообщение
Просто казнить меня надо)
дважды )))
C++
1
str.find(",-") ? cout << "No" << endl : cout << "Yes" << endl;

Vergil111
31 / 31 / 6
Регистрация: 30.11.2010
Сообщений: 81
11.07.2011, 12:24     строка символов #10
Тем не менее
Хотя функции в случае неудачи возвращает -1, как вы и говорили и как я про это благополучно запамятовал, получив ожидаемый результат=)
*Глубоко задумался*
Миниатюры
строка символов   строка символов  
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
11.07.2011, 12:26     строка символов #11

Это потому, что последовательность символов ",-" стоит первой и find() возвращает ноль, т.е. чистая удача!
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.07.2011, 12:55     строка символов
Еще ссылки по теме:

C++ Дана строка, состоящая из M попарно различных символов. Вывести все перестановки символов данной строки.
Дана строка символов. Проверьте,является ли данная строка палиндромом C++

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

Или воспользуйтесь поиском по форуму:
Vergil111
31 / 31 / 6
Регистрация: 30.11.2010
Сообщений: 81
11.07.2011, 12:55     строка символов #12
Все, смекнул почему так вышло, всем спасибо)


Аррррргх, опять опередили, но все равно спасибо, я уже понял сам)
Yandex
Объявления
11.07.2011, 12:55     строка символов
Ответ Создать тему
Опции темы

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