Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.79/29: Рейтинг темы: голосов - 29, средняя оценка - 4.79
0 / 0 / 0
Регистрация: 05.06.2019
Сообщений: 15

Удалить из слов все кратные рядом стоящие одинаковые символы

05.06.2019, 22:45. Показов 6066. Ответов 18
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Имеется текстовый файл, содержащий текст на русском языке. Удалить из слов все кратные рядом стоящие одинаковые символы, оставив по одному: ПППОООГОДДДДАААА -> ПОГОДА. Отредактированный текст записать в другой файл.

0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
05.06.2019, 22:45
Ответы с готовыми решениями:

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

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

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

18
Неэпический
 Аватар для Croessmah
18144 / 10728 / 2066
Регистрация: 27.09.2012
Сообщений: 27,026
Записей в блоге: 1
05.06.2019, 22:48
Цитата Сообщение от Fedor33 Посмотреть сообщение
содержащий текст на русском языке
При таких словах сразу должна быть указана кодировка.
0
Злостный нарушитель
 Аватар для Verevkin
10242 / 5670 / 1260
Регистрация: 12.03.2015
Сообщений: 26,276
05.06.2019, 22:58
Цитата Сообщение от Croessmah Посмотреть сообщение
При таких словах сразу должна быть указана кодировка.
Зачем? Символы ж сравнивать только между собой надо.
0
Неэпический
 Аватар для Croessmah
18144 / 10728 / 2066
Регистрация: 27.09.2012
Сообщений: 27,026
Записей в блоге: 1
05.06.2019, 23:02
Цитата Сообщение от Verevkin Посмотреть сообщение
Зачем? Символы ж сравнивать только между собой надо.
Так сначала их прочитать надо.
И тупо сравнивать байты в какой-нибудь utf-8 не получится.
0
Злостный нарушитель
 Аватар для Verevkin
10242 / 5670 / 1260
Регистрация: 12.03.2015
Сообщений: 26,276
05.06.2019, 23:08
Цитата Сообщение от Croessmah Посмотреть сообщение
Так сначала их прочитать надо.
В какой-нибудь utf-8 не получится тупо сравнить соседние байты.
Прочитать надо в UTF16 в любом случае. И сравнивать по 2 байта, а не по одному.
Но да, ты прав.
0
0 / 0 / 0
Регистрация: 05.06.2019
Сообщений: 15
05.06.2019, 23:29  [ТС]
Упс...Честно говоря я не в курсе про кодировку. Мне задали такое задание и я впервые работаю с русским языком. Как бы это правильно узнать?
0
Злостный нарушитель
 Аватар для Verevkin
10242 / 5670 / 1260
Регистрация: 12.03.2015
Сообщений: 26,276
06.06.2019, 08:06
Цитата Сообщение от Fedor33 Посмотреть сообщение
Упс...Честно говоря я не в курсе про кодировку. Мне задали такое задание и я впервые работаю с русским языком. Как бы это правильно узнать?
Дай файл.
0
0 / 0 / 0
Регистрация: 05.06.2019
Сообщений: 15
06.06.2019, 08:20  [ТС]
Вот
Вложения
Тип файла: txt outfile.txt (16 байт, 12 просмотров)
0
Злостный нарушитель
 Аватар для Verevkin
10242 / 5670 / 1260
Регистрация: 12.03.2015
Сообщений: 26,276
06.06.2019, 08:27
Цитата Сообщение от Fedor33 Посмотреть сообщение
Вот
0
0 / 0 / 0
Регистрация: 05.06.2019
Сообщений: 15
06.06.2019, 08:39  [ТС]
Ага, понял, ну значит вот так
Миниатюры
Удалить из слов все кратные рядом стоящие одинаковые символы  
0
0 / 0 / 0
Регистрация: 05.06.2019
Сообщений: 15
06.06.2019, 11:23  [ТС]
В общем, буду премного благодарен тому, кто поможет составить программу до завтра
0
Злостный нарушитель
 Аватар для Verevkin
10242 / 5670 / 1260
Регистрация: 12.03.2015
Сообщений: 26,276
06.06.2019, 12:30
Цитата Сообщение от Fedor33 Посмотреть сообщение
буду премного благодарен тому, кто поможет
Вот тебе функция. Остальное сам пиши.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
char* prepare(char* src, char* dest)
{
  *dest = 0;
  char* ptr = dest, last = 0;
 
  while (*src)
  {
    if (*src != last) *ptr++ = *src;
    last = *src++;
  };
 
  return dest;
}
1
0 / 0 / 0
Регистрация: 05.06.2019
Сообщений: 15
06.06.2019, 13:02  [ТС]
Благодарю

Добавлено через 29 минут
Цитата Сообщение от Verevkin Посмотреть сообщение
Вот тебе функция. Остальное сам пиши.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
char* prepare(char* src, char* dest)
{
  *dest = 0;
  char* ptr = dest, last = 0;
 
  while (*src)
  {
    if (*src != last) *ptr++ = *src;
    last = *src++;
  };
 
  return dest;
}
Вложение 1045824
Но мне бы ещё код на то, как программа будет брать информацию из файла и выгружать её в другой. Потому как это главное, чего я не пойму
0
Злостный нарушитель
 Аватар для Verevkin
10242 / 5670 / 1260
Регистрация: 12.03.2015
Сообщений: 26,276
06.06.2019, 13:08
Цитата Сообщение от Fedor33 Посмотреть сообщение
Но мне бы ещё код на то, как программа будет брать информацию из файла и выгружать её в другой.
Передаю эстафету специалистам в области работы с файлами.
0
0 / 0 / 0
Регистрация: 05.06.2019
Сообщений: 15
07.06.2019, 00:36  [ТС]
В общем, собрал прогу из нескольких кусков кода, т.к. новичок в программировании, не пойму, где тут ошибка. Ошибок в компиляторе не возникает но прога работает неправильно. В файле Text.txt лежит "ППППОООГГГОООДДААААА", и по идее в Out.txt должно было вывестись "погода". Но в итоге выводится просто заглавная буква П. Уделите минутку, помогите нубу разобраться
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
#include <iostream.h>
#include <stdio.h>
#include <iomanip.h>
#include <tchar.h>
#include <fstream.h>
using namespace std;
const int size = 50;
int main ()
{   char str; //массив для строки
ifstream fin; //объявление переменных для файлов
ofstream fout;
fin.open("Text.txt"); //открытие файла чтения
if (!fin.is_open()) { //проверка на открытие файла
cout<<"File not found"<<endl;
}
else {
fin>>str;
//n=str.lenght();
    char a[size];
    int n=0, i, k;
    string tmp;
    cin.getline(a, size);
    n=strlen (a);
    for (i=0; i<n; i++)
        if (a[i]==a[i+1])
        {
            for (k=i; k<n; k++)
                a[k]=a[k+1];
            a[n-1]='\0';
            n--;
            i--;
        }
        cout<<"Resultat: \n";
        cout<<a;
        fout.open("Out.txt"); //открытие файла на запись
 
fout<<str;
fin.close(); //закрытие файлов
fout.close();
}
}
0
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
07.06.2019, 01:28
начните с
Цитата Сообщение от Fedor33 Посмотреть сообщение
char str; //массив для строки
char str это один символ
1
Злостный нарушитель
 Аватар для Verevkin
10242 / 5670 / 1260
Регистрация: 12.03.2015
Сообщений: 26,276
07.06.2019, 08:09
Передаю эстафету специалистам в области работы с файлами.
Цитата Сообщение от Fedor33 Посмотреть сообщение
собрал прогу из нескольких кусков кода, т.к. новичок в программировании, не пойму, где тут ошибка
Чем тебе моя отлаженная функция не угодила?
0
0 / 0 / 0
Регистрация: 05.06.2019
Сообщений: 15
07.06.2019, 08:32  [ТС]
Подскажите как исправить
Цитата Сообщение от Yetty Посмотреть сообщение
char str это один символ
Добавлено через 2 минуты
Цитата Сообщение от Verevkin Посмотреть сообщение
Чем тебе моя отлаженная функция не угодила?
Извини, просто написано сложно, я не понял как работает функция.
0
Злостный нарушитель
 Аватар для Verevkin
10242 / 5670 / 1260
Регистрация: 12.03.2015
Сообщений: 26,276
07.06.2019, 08:35
Цитата Сообщение от Fedor33 Посмотреть сообщение
Извини, просто написано сложно, я не понял как работает функция.
Не "не понял", а даже не пытался понять. Мало того - даже не задал ни единого вопроса. Это значит, что я потратил на тебя своё время зря.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.06.2019, 08:35
Помогаю со студенческими работами здесь

Дана строка А. Найти в ней все рядом стоящие одинаковые буквы
Дана строка А. Найти в ней все рядом стоящие одинаковые буквы и составить из них строку В, удалив из А

Вывести на экран все слова, состоящие из K букв, в которых есть по крайней мере две одинаковые буквы, стоящие рядом
Напишите пожалуйста программу В алфавите языке племени «тумба-юмба» четыре буквы: «Ы», «Ш», «Ч» и «О». Нужно вывести на экран все...

Дана строка из произвольных слов. Найти все одинаковые слова и удалить все повторения слов
Дана строка из произвольных слов. Найти все одинаковые слова и удалить все повторения слов. не получается( var i:integer; sl, s:...

Удалить из строки все символы, стоящие на чётных местах
Составить программу, которая удаляет из строки все символы, стоящие на чётных местах.Заранее спасибо.

Удалить в строке все символы, стоящие перед знаками препинания
Дана строка символов. Удалить в ней все символы, стоящие перед знаками препинания. Помогите пожалуйста, ничего не могу придумать


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

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Ниже машинный перевод статьи The Thinkpad X220 Tablet is the best budget school laptop period . Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы,. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru