Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Помогите решить 2 задачи в С++

54K
10 декабря 2009 года
SeIZVeIZ
5 / / 10.12.2009
Решить обязательно в С++( можно без комментариев и т.д главное решение)
1. В заданной строке-предложении со стандартным набором символов-разделителей между словами найти и вывести слова: С не повторяющимися гласными буквами

2. В заданной строке-предложении со стандартным набором символов-разделителей между словами найти и вывести слова: Совпадающие с первым словом;
392
13 декабря 2009 года
cronya
421 / / 03.01.2009
А массив строк тебе не о чем не говорит!:)
Если нет тогда тебе не повезло:(
54K
13 декабря 2009 года
SeIZVeIZ
5 / / 10.12.2009
Суть в том что на условии 2ой задачи не могу составить функцию как из строки 1 слово выделить и потом всё строку сравнивать с ним, мне вот это главное а первая задача уже фиг с ней хотя бы 2ую сделать
12K
13 декабря 2009 года
Ghox
297 / / 26.07.2009
Цитата: SeIZVeIZ
Суть в том что на условии 2ой задачи не могу составить функцию как из строки 1 слово выделить и потом всё строку сравнивать с ним, мне вот это главное а первая задача уже фиг с ней хотя бы 2ую сделать


Пример решения второй задачи с использованием объектов и функций класса std::string (код не проверял - проверяйте и отлаживайте сами):

Код:
#include <iostream>
#include <string>
using namespace std;

const string delim_set = ".,:;!?'\" ";

int main()
{
    string str;
    cout << "Enter string:\n";
    cin << str;
    int n1 = str.find_first_not_of(delim_set);
    if(n1 == string::npos)
    {
        cout << "String does not contain any words\n";
        return 0;
    }
    int n2 = str.find_first_of(delim_set, n1);
    if(n2 == string::npos)
    {
        cout << "String contains only one word\n";
        return 0;
    }
    string word = str.substr(n1, n2 - n1);
    cout << "The first word is '" << word << "'\n";
    ++n1;
    n2 = 2;
    while((n1 = str.find(word, n1)) != string::npos)
        cout << "Entry #" << n2++ << " of the first word: pos # " << n1++ << endl;
}
54K
13 декабря 2009 года
SeIZVeIZ
5 / / 10.12.2009
спасибо немного подправил и подошло
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог