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

Получить слово во множественном числе - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Копирование в массив http://www.cyberforum.ru/cpp-beginners/thread1055843.html
Не получается скопировать выведенные двузначные числа в массив RT, т.е необходимо добавить уже к введенному массиву найденные двузначные числа. Подскажите пожалуйста как можно это сделать. #include <iostream> using namespace std; int main() { setlocale(LC_ALL, "Russian"); char RT;// = "egagaeg4gae85gfea4fgea8fgea45gaeg8f4eafg4545ae4gg48g45 faf45eaf85";//or: =>
C++ Информация о видеоадаптере (разрешение экрана) Нужно написать программу которая выводит на экран данные о видеокарте (объем) и текущее разрешение экрана. Друг сказал что такого в интернете полно, но я не нашел =( http://www.cyberforum.ru/cpp-beginners/thread1055816.html
C++ Периметр и площадь треугольника
Привет всем. Я в который раз обращаюсь к вам за помощью:D Вот мой код: #include <stdio.h> #include <math.h> int T,count; int main() { double a,b,s,p;
Создать шаблон C++
Создать шаблон класса для работы с одномерным массивом. Выполнить тестирование путем создания и обработки массивов, со- держащих элементы различных типов (например, сортировка эле- ментов массивов различными методами).
C++ что нужно сделать? http://www.cyberforum.ru/cpp-beginners/thread1055799.html
просто обьясните что нужно найти, вот условие: дана целочисленная квадратная матрица определить: максимум ср.сумм модулей элементов которые находятся: 1)на побочной диагонали 2)на параллельных
C++ Как работает функция sort(); ? Помогите разобраться с функцией sort(); Вот например: void SORT(int **arr, int M, int N){ for (int i = 0; i < M; i++) { sort(&arr, &arr, f); } } Объясните. подробнее

Показать сообщение отдельно
leonP4
 Аватар для leonP4
4 / 1 / 1
Регистрация: 08.03.2013
Сообщений: 63
25.12.2013, 04:40     Получить слово во множественном числе
Помогите решить задачу для зачета =)

для большинства существительных, оканчивающихся на -онок и -енок, множественное число образуется от другой основы. Как правило, это происходит по образцу: цыпленок - цыплята, мышонок-мышата и т.д. (в новой основе пред последней буквой Т пишется А или Я в зависимости от предыдущей буквы: если это шипящая, то А иначе - я)ю Имеются слова - исключения, из которых укажем следующие: ребенок(дети), бесенок(бесенята), опенок(опята), звонок(звонки), позвонок(позвонки), подонок(подонки). Есть еще ряд малоупотребительных слов-исключений, которые мы не рассматриваем.

Дан текст, среди символов которого имеется пробел, группа символов, предшествующая первому пробелу, представляет собой русское слово, оканчивающееся на -онок или -енок. Получить это слово во множественном числе.

А это код, начал писать, и напоролся на ошибку

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
51
52
53
#include "stdafx.h"
#include"math.h"
#include <locale>
#include <iostream>
#include <string>
#include <vector>
#include<conio.h>
using namespace std;
 
 
 
void split(std::vector<std::string>& v, const std::string& s, const std::string& delim) //юзаем велосипед
{
    std::string::size_type first = 0;
    std::string::size_type last = 0;
 
    while( (first = s.find_first_not_of(delim, last)) != std::string::npos )
    {
        if( (last = s.find_first_of(delim, first) ) != std::string::npos )
            v.push_back( s.substr(first, last - first) );
        else
            v.push_back( s.substr(first, s.length() - first) );
    }
}
 
int main()
{
    int mas = 0;
    std::string Vv;
    setlocale(LC_CTYPE, "russian");
    int end;
    std::string s = "Вороненок выпал из гнезда и сказал: мышонок ципленок олененок ребенок опенок подонок кроленок";
    std::vector<std::string> v;
    split(v, s, " ,.:");
 
    cout<<"Выделяем слова из текста: "<<endl<<endl;
    for(size_t i = 0; i < v.size(); ++i) {
        cout << v[i] << " ";
    }
 
    cout<<endl<<endl<<"Ищем нужные нам слова: "<<endl<<endl;
    for(size_t i = 0; i < v.size(); ++i) {
        mas = v[i].size();
        Vv = v[i];
        for(int ji=0; ji<=mas; ji++ ) {
           if((Vv[ji] == *"онок") || (Vv[ji] == *"енок")) {
               тут изменяем окончание слов и выводим на экран
           }
        }
    }
 
    cin>>end;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 07:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru