Убираем повторения слов на C++
Новая небольшая задачка по C++. Необходимо разработать программу, которая читает файл, убирает повторяющиеся слова и снова его записывает.
Решение
Будет консольное приложение. Подключаем что потребуется
#include "stdafx.h" #include <iostream> #include <fstream> #include <string> #include <algorithm> #include <vector> using namespace System;Читаем файл в строку
std::string str; std::ifstream fin("D:\\temp\\F1.txt"); if (!fin) { std::cout << "Error!" << std::endl; td::cin.get(); return 0; } getline(fin, str);Cортируем
char s[2000]; strcpy(s, str.c_str()); for (int i = 0; i < strlen(s) - 1; i++) for (int j = strlen(s) - 1; j >i; j--) if (s[j] < s[j - 1]) std::swap(s[j], s[j - 1]); str = std::string(s);Убираем повторяющиеся
int i = 0; while (str[i + 1] != '\0') // пока не конец строки { if (str[i] == str[i + 1]) // если текущий похож на следующий for (int x = 0; (x<256 && str[x] != '\0'); x++) str[i + x + 1] = str[i + x + 2]; // удаляем следующий else i++; // если не похож переходим на него }Записываем файл
std::ofstream out; out.open("D:\\temp\\F2.txt"); if (out.is_open()) { out << str << std::endl; } system("pause"); return 0;
Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.
Читайте также:
Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.