0 / 0 / 0
Регистрация: 24.01.2014
Сообщений: 35
1

ООП. Напечатать слова, отличные от последнего слова, предварительно преобразовав каждое из них по правилу

26.03.2014, 22:18. Показов 981. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Напечатать слова, отличные от последнего слова, предварительно преобразовав каждое из них по правилу: удалить из слова первую букву. Использовать функции.

С помощью чего можно удалить букву из слова в строке? И как бы эту программу написать с классами и объектами используя функции?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.03.2014, 22:18
Ответы с готовыми решениями:

Напечатать все слова, отличные от последнего слова, предварительно преобразовав каждое из них по заданному правилу
Дан текст, содержащий от 2 до 30 слов, в каждом из которых от 2 до 10 латинских букв; между...

Напечатать все слова, отличные от последнего слова, предварительно преобразовав каждое из них
Дан текст, содержащий от 2 до 30 слов, в каждом из которых от 2 до 10 латинских букв; между...

Напечатать все слова, отличные от последнего слова, предварительно преобразовать каждое из них по следующему правилу
Задан текст. Напечатать все слова, отличные от последнего слова, предварительно преобразовать...

Напечатать все слова последовательности, предварительно преобразовав каждое из них по следующему правилу
Задача: Код: #include <iostream> #include <string> using namespace std; int main(){ char...

5
95 / 95 / 58
Регистрация: 04.10.2012
Сообщений: 189
26.03.2014, 22:27 2
Насчет ООП не совсем понял, но удалить букву можно просто сдвинув массив чаров.
Простейшая реализация для затирания первого символа в строке s:
C++
1
2
*s = '\0';
strcat(s, s+1);
1
0 / 0 / 0
Регистрация: 24.01.2014
Сообщений: 35
26.03.2014, 22:33  [ТС] 3
uburuntu, спасибо, вспомнил. Нужно в программе определить классы и создать объекты (объектно-ориентированное), но пока не понял что там нужно прописывать (и для чего это вообще если всё можно проще).
0
95 / 95 / 58
Регистрация: 04.10.2012
Сообщений: 189
26.03.2014, 22:33 4
И да, где находятся слова? В одной строке или сразу разбиты на отдельные?
0
0 / 0 / 0
Регистрация: 24.01.2014
Сообщений: 35
26.03.2014, 22:37  [ТС] 5
uburuntu, всё в одной строке, текст может и из 3-х слов состоять
0
95 / 95 / 58
Регистрация: 04.10.2012
Сообщений: 189
26.03.2014, 22:46 6
Достал из закутков такую функцию:
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
#include <string.h>
 
int parse (char *s, const char *sep, char **words, int max_words)
    {
        char *p = s;
        int len_remain = strlen(s);
        int count = 0;
        int i_sep, i_word;
        
        while (1)
            {
                i_word = strspn(p, sep);
                for (int i = 1; i <= i_word; i++) *p++ = 0;
                words[count++] = p;
                
                if (i_word == len_remain) break;
                len_remain -= i_word;
                
                i_sep = strcspn(p, sep);
                if (i_sep == len_remain) break;
                len_remain -= i_sep;
                
                p += i_sep;
                
                if (count == max_words) break;
            }
            
        return count-1;
    }
Она разбивает входную строку s на слова, разделенные символами из sep (сепараторы, в твоем случае это просто пробел) и заносит эти слова в массив строк words. И возвращает количество получившихся слов.
Я бы на твоем месте сделал бы так: разбил строку, потом сравнивал бы words[n-1] со всеми остальными.

Но это один из способов решения, можешь придумать свой.
0
26.03.2014, 22:46
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.03.2014, 22:46
Помогаю со студенческими работами здесь

Напечатать все слова отличные от последнего слова, предварительно перенести последнюю букву в начало слова
Дано текст, содержащий от 2 до 30 слов, в каждом из которых от 2 до 10 латинских букв, между...

Вывести все слова текста, которые отличны от последнего слова, предварительно преобразовав их
Решить задачу на обработку текста, используя функции работы со строками. Предполагается, что...

Записать в файл слова отличные от последнего предварительно удаляя первые буквы из каждого слова
Здравствуйте, помогите работаться с ошибками, мучаюсь уже две недели, и не могу понять в чем дело...

Напечатать слова, которые отличны от последнего слова текста, предварительно удалив из слова последнюю букву
Дана последовательность содержащая от 1 до 30 слов, в каждом из которых от 1 до 5 строчных...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru