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

Найти самое длинное слово, которое заканчивается на "н" - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.88
egormolokov
0 / 0 / 0
Регистрация: 26.04.2012
Сообщений: 12
20.05.2012, 00:32     Найти самое длинное слово, которое заканчивается на "н" #1
Дана строка текста, в которой слова разделены пробелами и запятыми. Необходимо:
найти самое длинное слово, которое заканчивается на "н"
исключить эти слова из строки
вывести результат в файл
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.05.2012, 00:32     Найти самое длинное слово, которое заканчивается на "н"
Посмотрите здесь:

C++ найти самое длинное слово которое содержит изображение десятичного числа
найти самое длинное слово в тексте которое состоит из цифр C++
C++ Распечатать самое длинное слово, первые две буквы которого "КО"
C++ Строки. В заданном тексте найти самое длинное слово и самое длинное предложение.
C++ Найти самое короткое и самое длинное слово в строке
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Gepar
 Аватар для Gepar
1173 / 529 / 20
Регистрация: 01.07.2009
Сообщений: 3,508
20.05.2012, 00:47     Найти самое длинное слово, которое заканчивается на "н" #2
Скучное задание, воспользуйся поиском по форуму, 100500 раз писал парсер слов. Тебе нужно тоже самое + проверка что слово заканчивается на 'н'.
egormolokov
0 / 0 / 0
Регистрация: 26.04.2012
Сообщений: 12
20.05.2012, 00:54  [ТС]     Найти самое длинное слово, которое заканчивается на "н" #3
мне код нужен
rapidexact
20.05.2012, 01:00
  #4

Не по теме:

Здесь помогают с твоими вопросами, или ошибками, а полностью писать прогу это в раздел "программы на заказ" или как-то так.

Gepar
 Аватар для Gepar
1173 / 529 / 20
Регистрация: 01.07.2009
Сообщений: 3,508
20.05.2012, 01:10     Найти самое длинное слово, которое заканчивается на "н" #5
Цитата Сообщение от egormolokov Посмотреть сообщение
мне код нужен
Ну полностью готового кода не будет (будет просто парсер слов), скучно эти парсеры писать так что самому тебе нуно будет подредактировать его чтобы на буквы "н" внимание обращал, усилий не так много для этого и надо чтобы дописать. Ну или плати денюжку в "заказать программу" если лень во всём разбираться и дописывать.
egormolokov
0 / 0 / 0
Регистрация: 26.04.2012
Сообщений: 12
20.05.2012, 08:35  [ТС]     Найти самое длинное слово, которое заканчивается на "н" #6
ок скиньте ссылку на парсер если не трудно спасибо
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
26.05.2012, 14:44     Найти самое длинное слово, которое заканчивается на "н" #7
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
#include <stdio.h>
#include <ctype.h>
#include <string.h>
 
int main()
{
    static char psz[256] = "lemon apple ten violin gain span grain camin token\0";
 
    int max = 0, max_i = max;
    for (int i = 0; psz[i] != '\0'; i++)
        if ((isspace(psz[i])) || (i == strlen(psz)-1))
            if (psz[i-1] == 'n')
            {
                int k = i-1;
                while ((psz[k] != ' ') && (k > 0)) k--;
                int delta = (k <= 0) ? i : (i - k) - 1;
                if (delta > max) { max = delta; max_i = k+1; }
            }
 
    for (int i = max_i; !isspace(psz[i]); i++)
        printf("%c",psz[i]);
    printf("\n");
 
    return 0;
}
http://liveworkspace.org/code/e224e2...e088a02a51def6
egormolokov
0 / 0 / 0
Регистрация: 26.04.2012
Сообщений: 12
26.05.2012, 18:48  [ТС]     Найти самое длинное слово, которое заканчивается на "н" #8
спасибо огромное
igorrr37
 Аватар для igorrr37
1593 / 1221 / 118
Регистрация: 21.12.2010
Сообщений: 1,868
Записей в блоге: 7
29.05.2012, 20:50     Найти самое длинное слово, которое заканчивается на "н" #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
#include <iostream>
#include <string>
#include <fstream>
 
int main()
{
    std::fstream ifs("1.txt", std::ios::in), ofs("2.txt", std::ios::out);
    if(ifs.is_open() && ofs.is_open())
    {
        std::string s((std::istreambuf_iterator<char>(ifs.rdbuf())), std::istreambuf_iterator<char>()), sDelims(" ,\n");
        s += sDelims.front();
        std::string::size_type iBeg(0), iEnd(0), maxLen(0);
        for(iBeg = 0, iEnd = 0; ((iBeg = s.find_first_not_of(sDelims, iEnd)) != std::string::npos) && ((iEnd = s.find_first_of(sDelims, iBeg)) != std::string::npos); )
        {
            if(-19 == s.at(iEnd - 1) && iEnd - iBeg > maxLen)
            {
                maxLen = iEnd - iBeg;
            }
        }
        for(iBeg = 0, iEnd = 0; ((iBeg = s.find_first_not_of(sDelims, iEnd)) != std::string::npos) && ((iEnd = s.find_first_of(sDelims, iBeg)) != std::string::npos); )
        {
            if(-19 == s.at(iEnd - 1) && iEnd - iBeg == maxLen)
            {
                s.erase(iBeg, iEnd - iBeg);
                iEnd = iBeg;
            }
        }
        ofs << s;
    }
    else std::cerr << "Unable to open file(s)\n";
    ifs.close();
    ofs.close();
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.05.2012, 22:45     Найти самое длинное слово, которое заканчивается на "н"
Еще ссылки по теме:

Найти самое длинное и самое короткое слово в тексте C++
C++ Найти слово в фразе из 3 слов, которое начинаеться на букву "M"

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

Или воспользуйтесь поиском по форуму:
egormolokov
0 / 0 / 0
Регистрация: 26.04.2012
Сообщений: 12
29.05.2012, 22:45  [ТС]     Найти самое длинное слово, которое заканчивается на "н" #10
спасибо
Yandex
Объявления
29.05.2012, 22:45     Найти самое длинное слово, которое заканчивается на "н"
Ответ Создать тему
Опции темы

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