Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 03.12.2014
Сообщений: 46
1

Записать фразу в обратной последовательности символов в каждом слове

26.01.2015, 06:11. Просмотров 1059. Ответов 2
Метки нет (Все метки)

Задачу на с++ методом динамического выделения памяти

3. Разработать класс, в котором в качестве данных используются строка символов. Записать фразу в обратной последовательности символов в каждом слове. Например: «мама мыла раму» --> «амам алым умар». Написать пример использования данного класса.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.01.2015, 06:11
Ответы с готовыми решениями:

Ecxel - как укоротить фразу, чтобы в каждом слове осталось до 4х символов
Есть рабочее описание проекта и местонахождения в одной ячейке, обычно 7 - 9 слов. Нужно создать...

В каждом слове поменять буквы (задом наперед), все слова расположить в обратной последовательности
Дан текстовый файл, в каждом слове поменять буквы (задом на перед), все слова расположить в...

В каждом слове текста удалить минимальное количество символов так, чтобы в преобразованном слове не было повторяющихся символов
На форме есть 2: Edit1 и Edit2 из первого считывается, в другой выводится результат. Задание: В...

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

2
57 / 50 / 38
Регистрация: 22.01.2015
Сообщений: 176
26.01.2015, 11:06 2
Лучший ответ Сообщение было отмечено Jambi как решение

Решение

Цитата Сообщение от Jambi Посмотреть сообщение
класс, в котором в качестве данных используются строка символов.
Есть такой класс, как-бы. char называется

Добавлено через 14 минут
C++
1
2
3
4
5
6
7
8
9
10
11
#include <string.h>
char *String=new char*;
//Заполняешь её как хочешь...
int dlinna=new int;
dlinna=strlen(String);
for(int i=0;i<(dlinna/2);i++)
String[i]=String[dlinna-1-i];//-1 потому, что последний символ в строке \0. Получаешь переделанную строку
delete dlinna;
//Делаешь, чё там тебе надо со String, выводишь на экран, в эдит, куда хочешь
delete *String;
*String=0;
Всё, как просил, с динамическим выделением памяти.
0
30 / 30 / 38
Регистрация: 23.01.2015
Сообщений: 174
26.01.2015, 11:45 3
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>
#include <wchar.h>
#include <locale.h>
 
class CStrRev
{
    wchar_t* string;
    void Swap(wchar_t& c1, wchar_t& c2)
     { wchar_t _tc = c1; c1 = c2; c2 = _tc; }
public:
    CStrRev(wchar_t* str);
    CStrRev() { string = NULL; };
    CStrRev operator=(wchar_t* str) { return CStrRev(str); }
    wchar_t* GetString() const { return string;  }
public:
    void Reverse();
};
 
CStrRev::CStrRev(wchar_t* str)
{
    if (string == NULL)
    {
        string = new wchar_t[wcslen(str)];
        wcscpy(string, str);
    }
}
 
void CStrRev::Reverse()
{
    wchar_t* word = wcstok(string, _T(" "));
    wchar_t* str_t = new wchar_t[wcslen(string)];
    memset((void*)str_t, 0x00, sizeof(wchar_t)* wcslen(string));
 
    while (word != NULL)
    {
        wchar_t* word_t = new wchar_t[wcslen(word)];
        wcscpy(word_t, word);
 
        for (int iIndex = 0; iIndex != wcslen(word_t) / 2; iIndex++)
            this->Swap(word_t[iIndex], word_t[wcslen(word_t) - iIndex - 1]);
 
        wcscat(str_t, word_t);
        wcscat(str_t, _T(" "));
 
        word = wcstok(NULL, _T(" "));
    }
 
    str_t[wcslen(str_t) - 1] = '\0';
    wcscpy(string, str_t);
}
 
int main(int argc, char* argv[])
{
    setlocale(LC_ALL, "Russian"); 
 
    CStrRev strrev = _T("мама мыла раму");
 
    wprintf(_T("%s\n"), strrev.GetString());
 
    strrev.Reverse();
 
    wprintf(_T("%s\n"), strrev.GetString());
 
    _getch();
 
    return 0;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.01.2015, 11:45

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

Определить количество символов в каждом слове
В веденном предложении (вводится в начале с клавиатуры) определить количество символов в каждом...

Количество содержащихся символов в каждом слове
В текстовом файле записаны предложения, заканчивающиеся точками, слова в предложениях отделены друг...

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

Посчитайте количество символов в каждом слове
1)Дана стро ка состоящая из нескольких слов. посчитайте колличество символов в каждом слове .


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.