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

В файле заменить каждый символ первого наиболее короткого слова на «*» - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ С (While) http://www.cyberforum.ru/cpp-beginners/thread256241.html
помогите решить 4 задачу:
C++ C (условный оператор) помогите решить задачи (кроме 3): http://www.cyberforum.ru/cpp-beginners/thread256234.html
Сгенерировать массив размером 20 на 20 из чисел от 0 до 15. Сосчитать количество повторений каждого символа. C++
Всем здорово!Помогите пожалуйста с программами завтра рубежка...(на turbo C,не С++),если можно пожалуйста объясните,или закомментируйте. 28. Сгенерировать массив размером 20 на 20 из чисел от 0 до 15. Сосчитать количество повторений каждого символа. 29. Создать массив размером М на М, где М нечетное число и заполнить его следующим образом: от левого верхнего угла к правому...
Перегрузка Операторов в стеки C++
надо перегрузить операторы в стеки но у меня не получаеться как это можно реализовать: Перегруженные операции: + добавление элемента; - удаление элемента; индексирование; = копирование; == отношение равенства; > отношение порядка;
C++ Строки, в которых присутствуют пробелы http://www.cyberforum.ru/cpp-beginners/thread256199.html
Помогите пожалуйста! Мне нужно сделать очень простую программу, которая практически вся строится на выводе. Нужно вводить несколько данных как числовых так и текстовых, а потом они выводятся на экран в необходимом виде. С числами проблем никаких не возникло, с одной символьной переменной тоже, т.к. в ней не нужны пробелы. Но есть еще одна переменная, в которой необходимо ввести небольшой текст,...
C++ Перевести код с С++ в С и Pascal кароч люди мну дали задание....... мну нада перевести з одного с(си) в другой с(си) и потом в паскаль.... кто может помогите: #include "stdafx.h" #include <iomanip> #include <iostream> using namespace std; int min1(int,int); int min2(int,int); int min3(int,int); void main(){ int a,b,c; подробнее

Показать сообщение отдельно
easybudda
Эксперт С++
9452 / 5465 / 926
Регистрация: 25.07.2009
Сообщений: 10,490
13.03.2011, 18:08     В файле заменить каждый символ первого наиболее короткого слова на «*»
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>
#include <fstream>
#include <string>
#include <list>
#include <algorithm>
#include <iterator>
 
struct LenCmp {
    bool operator() (const std::string& a, const std::string& b){
        return a.size() < b.size();
    }
};
 
int main(){
    std::string buf;
    
    std::cout << "File name: ";
    std::cin >> buf;
    std::ifstream ifs(buf.c_str());
    if ( ! ifs.is_open() ){
        std::cerr << "Can't open file " << buf << " for input" << std::endl;
        return 1;
    }
    std::list<std::string> list;
    std::copy(std::istream_iterator<std::string>(ifs), std::istream_iterator<std::string>(), std::back_inserter(list));
    ifs.close();
    std::list<std::string>::iterator it = std::min_element(list.begin(), list.end(), LenCmp());
    int len = (*it).size();
    (*it).replace(0, len, len, '*');
    
    std::ofstream ofs(buf.c_str());
    if ( ! ofs.is_open() ){
        std::cerr << "Can't open file " << buf << " for output" << std::endl;
        return 1;
    }
    std::copy(list.begin(), list.end(), std::ostream_iterator<std::string>(ofs, " "));
    ofs.close();
    
    std::cerr << "Done." << std::endl;
    return 0;
}
 
Текущее время: 12:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru