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

Удалить из файла все однобуквенные слова и лишние пробелы. Результат записать в файл g - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Отсортировать и вывести по возрастанию решения для квадратных уравнений http://www.cyberforum.ru/cpp-beginners/thread1066047.html
#include "stdafx.h" #include "math.h" #include <iostream> using namespace std; class N { public: virtual void input ()=0; virtual void output ()=0; virtual float res ()=0;
C++ дописать программу #include <cstdlib> #include <iostream> #include <Math.h> using namespace std; int main(int argc, char *argv) { setlocale( LC_ALL,"Russian" ); //=========================================================================// http://www.cyberforum.ru/cpp-beginners/thread1066046.html
Логически правильное наследование исключений C++
Как логически правильно наследовать исключения? Пока не сталкивался с необходимостью наследовать исключения, но все же бывает в первый раз, и нужно быть готовым. Я покажу на примере стека что можно было бы отнаследовать, а уж более опытные меня поправят. Самому мне то, что и как я наследую не шибко нравится, ибо как-то глупо и не гибко выходит, но ничего лучше не видел или не правильно понял то,...
C++ Какова оптимальная и эффективная методика изучения языка?
Здравствуйте , тема скорей всего поднималась 100500 раз но спрошу по новой, хочу узнать ваше мнение по поводу методики изучения яп. 1)Прочитать книгу и после начать подробный разбор книги. 2)Сразу начинать полный разбор книги 3)Взять какой то проект делать его и походу будет с++ осваиватся. 4)Ваш совет варианта.
C++ Ввести координаты вершин параллелепипедов и упорядочить их по длине диагонали http://www.cyberforum.ru/cpp-beginners/thread1066020.html
на вход подается некоторое количество параллелепипедов (координаты вершин ). Отсортировать и вывести их по возрастанию диагоналей. При вводе проверять, что вводятся параллелепипеды.
C++ Параллельный запуск процессов с помощью fork(). Проверить код Правильно ли я накидал параллельный запуск (в данном случае 10 ) процессов с помощью fork() ? if(pipe(filedes) == -1) { perror("pipe failed"); exit(EXIT_FAILURE); } for(int i = 0; i < 10; i++) { pid = fork(); подробнее

Показать сообщение отдельно
Nadia Trofimova
0 / 0 / 0
Регистрация: 14.10.2013
Сообщений: 25
08.01.2014, 20:41     Удалить из файла все однобуквенные слова и лишние пробелы. Результат записать в файл g
Здравствуйте! Возникла такая проблема, никак не могу докопаться до решения...
Задание звучит так: " Дан текстовый файл f. Слова в файле разделены одним или группой пробелов. Удалить из файла все однобуквенные слова и лишние пробелы. Результат записать в файл g."
Но дело даже не в нём. Насколько я поняла, мне нужно вводить слова в ряд, так как моё задание связано с пробелами между ними, а я могу их вводить только каждое в новой строчке.
Так вот, как организовать правильный ввод? Прошу помочь(
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#include <iostream>
#include <fstream>  
#include <string.h>     
 
using namespace std;
const int  str_size_max = 100;
 
void createfile(char fname[str_size_max], ofstream &fout);
void readfile(char fname[str_size_max],ifstream &fin);
void analysisfilef(char fname[str_size_max],char gname[str_size_max],ifstream &fin,ofstream &gout);
 
void main()     
{
    char filenamef[str_size_max],filenameg[str_size_max];
    char c;
    do{
    cout<<"Enter name for new file f: ";
    cin>>filenamef;
 
    ofstream fout;  //создание класса файла для записи
    createfile(filenamef,fout); //вызов функции создания файла fout
 
    char st[str_size_max];
 
    ifstream fin;       //создание класса файла для чтения
    readfile(filenamef,fin);    //вызов функции чтения файла fin
 
    cout<<"Enter name for new file g: ";
    cin>>filenameg;
 
    ofstream gout;  //создание класса файла для записи
    analysisfilef(filenamef,filenameg,fin,gout);    //анализ файла f
 
    ifstream gin;       //создание класса файла для чтения
    readfile(filenameg,gin);    //вызов функции чтения файла gin
    cout<<"Do you want to continue? Press 'y' "<< endl;
    cin>>c;
    system("cls");
    }while(c=='y');
}
 
void createfile(char fname[str_size_max], ofstream &fout)   
{
    fout.open(fname);   //открытие файла fout
    char st[str_size_max];  //строка для ввода в файл
    cout<<"Enter words:" << endl;
    cin.get();
    cin.getline (st, str_size_max);
    while (st[0] != '*')
    {
        fout << st;
        fout << "\n";
        cin.getline (st, str_size_max);
 
    }
    fout.close();       //закрыть файл
}
 
void readfile(char fname[str_size_max],ifstream &fin)   //функция чтения файла
{
    fin.open(fname);    //открытие файла
    cout<<"contents of "<<fname<<":\n";
    char st[str_size_max];  //строка для чтения из файла
    while (fin.getline(st,str_size_max))    //прочитать из файла строку st, пока не конец файла
    {  
        cout<<st;   //вывод строки 
        cout<<"\n"; //перевод строки
    };
    fin.close();    //акрыть файл
}
 
//функция для анализа файла f
void analysisfilef(char fname[str_size_max],char gname[str_size_max],ifstream &fin,ofstream &gout)
{
    fin.open(fname);    //открыть файл f для чтения
    gout.open(gname); //открыть файл g для записи
 
    char st[str_size_max];
    while ( fin.getline(st, str_size_max) ) 
    { 
 
        if (strlen(st) > 1)
        {
            gout<<st;       //запись в файл gout строки st
            gout<<"\n"; //запись в файл gout конца строки
        }
    }
    gout.close();       //закрытие файла gout
    fin.close();        //закрытие файла fin
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 20:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru