Вопрос задан 02.10.2023 в 23:45. Предмет Информатика. Спрашивает Тотушев Руслан.

Как в С++ найти повторяющиеся буквы более 3-х раз в предложении? и заменить их на другой символ

0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Рыбакова Елизавета.

Ответ:

сделать массив, кинуть туда строку, раздилить на символы.С делать проверку каждого символа.Если символ под индексом допустим 1 будет равен символу по индексу 2 то символы под индексом 2 и 1 = другому символу.

Объяснение:

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для поиска повторяющихся букв более 3 раз в строке и их замены на другой символ в C++, вы можете использовать следующий код:

cpp
#include <iostream> #include <string> #include <unordered_map> int main() { std::string inputSentence; char replacementChar = '*'; // Заменяющий символ std::cout << "Введите предложение: "; std::getline(std::cin, inputSentence); // Создаем unordered_map для подсчета количества каждой буквы в предложении std::unordered_map<char, int> charCount; // Проходим по каждому символу в строке и увеличиваем счетчик для этой буквы for (char c : inputSentence) { if (std::isalpha(c)) { // Проверка, что символ - буква charCount[c]++; } } // Проходим снова и заменяем буквы, которые встречаются более 3 раз на replacementChar for (char &c : inputSentence) { if (std::isalpha(c) && charCount[c] > 3) { c = replacementChar; } } std::cout << "Результат: " << inputSentence << std::endl; return 0; }

Этот код сначала считывает предложение с клавиатуры, затем использует unordered_map для подсчета количества каждой буквы в предложении. Затем он проходит по предложению снова и заменяет буквы, которые встречаются более 3 раз, на заданный вами символ (в данном случае, символ '*'). Результат выводится на экран.

Обратите внимание, что этот код не учитывает регистр букв, поэтому 'A' и 'a' будут считаться одной и той же буквой. Если вам нужно учитывать регистр, то вы можете использовать функции std::toupper или std::tolower для нормализации регистра перед подсчетом.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос