0 / 0 / 0
Регистрация: 05.06.2019
Сообщений: 12

Удалить все слова которые начинаются и заканчиваются на одну и ту же букву

21.06.2019, 16:52. Показов 3197. Ответов 0

Author24 — интернет-сервис помощи студентам
Ребята помогите пожалуйста. Вот задание:
1) посчитать кол-во цифр в тексте
2) вывести на экран слова начинающиеся на согласную букву
3) удалить все слова которые начинаются и заканчиваются на одну и ту же букву
Сделал всё кроме последнего, программа крашится. Делал через argc argv, просто так удобней со словами работать(как по мне). Помогите пжж
Вот код:
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
#include <iostream>
#include "conio.h"
#include <stdio.h>
#include <ctime>
#include <cmath>
#include <locale>
 
using namespace std;
 
int NumOfDigits(string *str, int size, int &count)
{
    count = 0;
    for (int j = 1; j < size; j++)
    {
        for (int i = 0; i < str[j].length(); i++)
        {
            if (isdigit(str[j][i]))
            {
                ++count;
            }
        }
    }
    return count;
}
 
void ConsonantLetter(string *str, char *arr, int arrsize, int size)
{
    for (int j = 1; j < size; j++)
    {
        for (int k = 0; k < arrsize; k++)
        {
            if (str[j][0] == arr[k])
            {
                cout << str[j] << " ";
            }
        }
    }
}
 
string *DeleteElement(string *str, int &size, int j)
{
    string *ArrStr = new string[size - 1];
    int k = 0;
    for (int i = 0; j < size; i++)
    {
        if (i != j)
        {
            ArrStr[k++] = str[j];
        }
    }
    size = k;
    delete[] str;
    str = ArrStr;
    return str;
}
 
int main(int argc, char* argv[])
{
    srand(time(0));
    setlocale(LC_ALL, "Russian");
 
    string *ArrStr = new string[30];
    for (int i = 1; i < argc; i++)
    {
        ArrStr[i] = argv[i];
        cout << ArrStr[i] << " ";
    }
    int size = argc;
 
    int digits = 0;
    char arr[40] = 
    {
        'B', 'b', 'C', 'c', 'D', 'd', 'F', 'f', 'G', 'g',
        'H', 'h', 'J', 'j', 'K', 'k', 'L', 'l', 'M', 'm',
        'N', 'n', 'P', 'p', 'Q', 'q', 'R', 'r', 'S', 's',
        'T', 't', 'V', 'v', 'W', 'w', 'X', 'x', 'Z', 'z'
    };
    int arrsize = 40;
 
    //----------------------------------------------------------------------------------------------------------------------
 
    cout << "\nЗАДАНИЕ №1" << endl;
 
    digits = NumOfDigits(ArrStr, size, digits);
    cout << "Количество цифр в строке: " << digits;
 
    //----------------------------------------------------------------------------------------------------------------------
 
    cout << "\nЗАДАНИЕ №2" << endl;
 
    ConsonantLetter(ArrStr, arr, arrsize, size);
 
    //----------------------------------------------------------------------------------------------------------------------
 
    cout << "\nЗАДАНИЕ №3" << endl;
 
    int x = 0;
 
    for (int j = 1; j < size; j++)
    {
        x = ArrStr[j].length() - 1;
        if (ArrStr[j][0] == ArrStr[j][x])
        {
            ArrStr = DeleteElement(ArrStr, size, j);
            j--;
        }
    }
 
    for (int i = 1; i < size; i++)
    {
        cout << ArrStr[i] << " ";
    }
 
    system("pause");
    return 0;
}
Добавлено через 5 минут
кажись, я уже сам нашел в чем проблема
C++
1
2
3
4
5
6
7
 for (int i = 0; j < size; i++)
    {
        if (i != j)
        {
            ArrStr[k++] = str[j];
        }
    }
не те буквы поставил
должно быть (int i = 0; i < size; i++) и ArrStr[k++] = str[i];

Добавлено через 36 минут
ну и еще delete[] ArrStr; в конце мейна добавить
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.06.2019, 16:52
Ответы с готовыми решениями:

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

Удалить все слова в тексте, которые начинаются и заканчиваются на одну и ту же букву
Пропустил несколько занятий по дисциплине, задали написать программу с использованием строк и библиотекой &lt;string.h&gt; Пытался сам...

Вывести все слова, которые начинаются и заканчиваются на одну букву
Задан текст заканчивающийся точкой. Вывести все слова, которые начинаются и заканчиваются на одну букву.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.06.2019, 16:52
Помогаю со студенческими работами здесь

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

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

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

Дан текст. Удалить все слова, которые начинаются на одну и ту же букву
Дан текст. Удалить все слова, которые начинаются на одну и ту же букву.

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


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

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

Новые блоги и статьи
Вопросы на собеседованиях по микросервисам
ArchitectMsa 27.03.2025
Работодатели ищут не просто разработчиков, знающих базовые концепции, а специалистов, разбирающихся в тонкостях масштабирования, отказоустойчивости и производительности. Сейчас на первый план выходят. . .
Взаимодействие Python с REST API
py-thonny 27.03.2025
REST API - это архитектурный стиль взаимодействия компонентов распределённого приложения в сети. Python располагает функциональным набором инструментов для работы с REST API и основная библиотека для. . .
sshd restrictions, ssh access limitations
jigi33 26.03.2025
sshd restrictions | ssh access limitations рестрикции доступа на сервер sshd статья: https:/ / www. golinuxcloud. com/ restrict-allow-ssh-certain-users-groups-rhel
Компиляция C++ с Clang API
NullReferenced 24.03.2025
Компиляторы обычно воспринимаются как черные ящики, которые превращают исходный код в исполняемые файлы. Мы запускаем компилятор командой в терминале, и вуаля — получаем бинарник. Но что если нужно. . .
Многопоточное программировани­е в C#: Класс Thread
UnmanagedCoder 24.03.2025
Когда запускается приложение на компьютере, операционная система создаёт для него процесс - виртуальное адресное пространство. В C# этот процесс изначально получает один поток выполнения — главный. . .
SwiftUI Data Flow: Передача данных между представлениями
mobDevWorks 23.03.2025
При первом знакомстве со SwiftUI кажется, что фреймворк предлагает избыточное количество механизмов для передачи данных: @State, @Binding, @StateObject, @ObservedObject, @EnvironmentObject и другие. . . .
Моки в Java: Сравниваем Mockito, EasyMock, JMockit
Javaican 23.03.2025
Как протестировать класс, который зависит от других сложных компонентов, таких как базы данных, веб-сервисы или другие классы, с которыми и так непросто работать в тестовом окружении? Для этого и. . .
Архитектурные паттерны микросервисов: ТОП-10 шаблонов
ArchitectMsa 22.03.2025
Популярность микросервисной архитектуры объясняется множеством важных преимуществ. К примеру, она позволяет командам разработчиков работать независимо друг от друга, используя различные технологии и. . .
Оптимизация рендеринга в Unity: Сортировка миллиона спрайтов
GameUnited 22.03.2025
Помните, когда наличие сотни спрайтов в игре приводило к существенному падению производительности? Время таких ограничений уходит в прошлое. Сегодня геймдев сталкивается с задачами совершенно иного. . .
Образование и практика
Igor3D 21.03.2025
Добрый день А вот каково качество/ эффективность ВУЗовского образования? Аналитическая геометрия изучается в первом семестре и считается довольно легким курсом, что вполне справедливо. Ну хорошо,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru