Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Можно ли замедлить выполнение функции? http://www.cyberforum.ru/cpp-beginners/thread580381.html
Передо мной стоит цель, сделать так, что бы объекты постоянно меняли свой цвет , но что бы это происходило не за доли секунды. Возможно ли это, и с помощью чего это можно реализовать?
C++ Составить программу, которая превращает неупорядоченные массивы В [16] и С [20] следующим образом Составить программу, которая превращает неупорядоченные массивы В и С следующим образом: меняет значения элементов с максимальным значением на наименьшее значение в массиве, а минимальные - наоборот на наибольшее значение из этого массива. Инициализацию, вывод элементов массива, их обработку организовать в отдельных функциях. http://www.cyberforum.ru/cpp-beginners/thread580379.html
Вычисление функции C++
Помогите, пожалуйста, с задачей Напишите программу вычисления гиперболического синуса y=shx=((e^x)-(e^-x))/2=x+(x^3)/3!+(x^)5/3!...+(x^2n-1)/(2n-1)! ... с точность e=0.000001. Подсчитайте сколько членов ряда необходимо для этого. Проверьте результат с помощью встроенных функций.
Произведение строк из текстового файла C++
Составить текстовый файл, состоящий из строк следующего вида: <количество чисел в строке><число 1><число 2>………….<число N>. Написать функцию нахождения произведения элементов таких строк. В программе последовательно читать из файла строку чисел, находить произведения. Результат вывести на экран. Содержимое файла 2 6 10 #include "stdafx.h" #include <iostream> #include <math.h>...
C++ Экспорт в картинку / Слои / Холсты http://www.cyberforum.ru/cpp-beginners/thread580349.html
Есть холст такого типа: HDC Drawing = CreateCompatibleDC(SGWndDC); HBITMAP amap = CreateCompatibleBitmap (SGWndDC, 2000, 2000); SelectObject (Drawing, amap); Как мне перевести его в изображение? Конкретно спрашиваю про библиотеки и функции. Спасибо. Добавлено через 1 час 35 минут Ап. Вопрос срочный, что, никто не сталкивался с таким?
C++ Преобразование Барроуза-Уилера Написать программу предварительной обработки данных для улучшения сжатия без потерь (преобразование Барроуза-Уилера). подробнее

Показать сообщение отдельно
talis
791 / 543 / 37
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
26.05.2012, 19:33     Разработать алгоритм и программу для удаления из введенного текста слов, которые начинаются и заканчиваются одним и тем же символом
Как вариант

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
#include <iostream>
#include <sstream>
#include <string>
#include <algorithm>
#include <iterator>
 
typedef std::istream_iterator<std::wstring, wchar_t, std::char_traits<wchar_t>> wistream_iterator;
typedef std::ostream_iterator<std::wstring, wchar_t, std::char_traits<wchar_t>> wostream_iterator;
 
// К сожалению, такой прелести в STL нет :-(
template <class InputIterator, class OutputIterator, class Predicate>
OutputIterator copy_if
(
    InputIterator first,
    InputIterator last,
    OutputIterator result,
    Predicate pred 
)
{
    while( first != last )
    {
        if( pred( *first ) )
            *result++ = *first++;
    }
 
    return result;
}
 
int main( )
{
    std::setlocale( LC_ALL, "ru_RU.UTF8" );
    
    // читаем строку
    std::wstring input;
 
    std::wcout << '>';
    std::getline( std::wcin, input );
 
    std::wistringstream input_stream( input, std::wistringstream::in );
 
    // копируем из неё слова на вывод
    std::copy_if( wistream_iterator ( input_stream ), wistream_iterator(), wostream_iterator( std::wcout, L" " ),
               []( const std::wstring &str )
               {
                  // копируем только если буква в начале слова не равна букве в конце слова
                  return towlower( 
                           *( std::find_if( str.begin(), str.end(), // игнорируем все знаки препинания с начала
                               []( const wchar_t &ch )
                                { 
                                    return iswalpha( ch ); 
                                } 
                                ) 
                            ) 
                         )
                         !=                  
                         towlower( 
                            *( std::find_if( str.rbegin(), str.rend(), // игнорируем все знаки препинания с конца
                               []( const wchar_t &ch )
                                { 
                                    return iswalpha( ch ); 
                                } 
                                ) 
                            )
                         );
               }
            );
 
    return 0;
}
 
Текущее время: 20:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru