Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
колянч
4 / 4 / 0
Регистрация: 09.05.2010
Сообщений: 15
1

Дан файл целых чисел. Создать новый файл, содержащий те же элементы, что и исходный файл, но в обратном порядке

09.05.2010, 22:55. Просмотров 2386. Ответов 3
Метки нет (Все метки)

Пожалуйста, помогите решить задачу в C++!!!
Дан файл целых чисел. Создать новый файл, содержащий те же элементы, что и исходный файл, но в обратном порядке
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.05.2010, 22:55
Ответы с готовыми решениями:

Дан файл целых чисел. Создать новый файл целых чисел, содержащий длины всех серий исходного файла
Дан файл целых чисел. Создать новый файл целых чисел, содержащий длины всех...

Дан файл целых чисел. Создать новый файл целых чисел, содержащий длины всех серий исходного файла.
Задачу нужно решить в Borland C++ 3.11 Дан файл целых чисел. Создать новый файл...

Файл: Создать новый файл, содержащий числа исходного файла в обратном порядке.
пожалуйста, помогите задача: дан файл целых чисел, создать новый файл...

Создать новый файл, содержащий элементы исходного файла в обратном порядке
Дан файл целых чисел. Создать новый файл, содержащий те же элемен-ты, что и...

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

3
ISergey
Maniac
Эксперт С++
1409 / 920 / 148
Регистрация: 02.01.2009
Сообщений: 2,749
Записей в блоге: 1
09.05.2010, 23:18 2
Так пойдет?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <algorithm>
#include <iterator>
#include <iostream>
#include <fstream>
#include <vector>
 
int main(){
 
    std::ifstream ifile("ifile.txt");
    std::ofstream ofile("ofile.txt");
    std::vector<int> vec; 
 
    std::copy(std::istream_iterator<int>(ifile), std::istream_iterator<int>(), std::back_inserter(vec));
    std::copy(vec.rbegin(), vec.rend(), std::ostream_iterator<int>(ofile, " "));
 
    ifile.close();
    ofile.close();
 
    return 0;
}
1
easybudda
Модератор
Эксперт CЭксперт С++
10146 / 6053 / 1521
Регистрация: 25.07.2009
Сообщений: 11,476
09.05.2010, 23:22 3
для разнообразия
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
#include <iostream>
#include <fstream>
#include <stack>
#include <algorithm>
#include <iterator>
 
/*  Дан файл целых чисел. Создать новый файл, содержащий те же элементы, что и исходный файл, 
    но в обратном порядке */
 
int main(){
    std::ifstream ifs("num.txt");
    if ( ! ifs.is_open() ){
        std::cerr << "Can't open input file!" << std::endl;
        return 1;
    }
    
    std::stack<int> st;
    int num;
    while ( ifs >> num )
        st.push(num);
    
    if ( ifs.bad() ){
        std::cerr << "Can't read from input file!" << std::endl;
        return 1;
    }
    ifs.close();
    
    std::ofstream ofs("reverse_num.txt");
    if ( ! ofs.is_open() ){
        std::cerr << "Can't open output file!" << std::endl;
        return 1;
    }
    while ( ! st.empty() ){
        ofs << st.top() << std::endl;
        if ( ofs.bad() ){
            std::cerr << "Can't write to output file!" << std::endl;
            return 1;
        }
        st.pop();
    }
    ofs.close();
    std::cout << "Done." << std::endl;
    
    return 0;
}
1
колянч
4 / 4 / 0
Регистрация: 09.05.2010
Сообщений: 15
10.05.2010, 11:01  [ТС] 4
Огромное Вам спасибо, мне следовало заранее уточнить, что писать нужно в Turbo C++ ...и, кажись, в обратном порядке числа нужно писать, используя цикл!

Добавлено через 2 минуты
Вот я пытался сам сделать:
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
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
#include<stdio.h>
void main()
{
 clrscr();
 FILE *f,*f2;
 f=fopen("out2.txt","rt");
 f2=fopen("output.txt","w+t");
 if(f==NULL) cout<<"Oshibka!!";
// if(f2==NULL) cout<<"Oshibka!!";
 int t,x,i,n;
 cout<<"chisla iz faila:"<<endl;
 while(!feof(f))
 {
 t=fscanf(f,"%d",&x);
 fprintf(f2,"%d\n",x);
 cout<<x<<" ";
 }
 cout<<endl;
 cout<<"chisla iz sozdanogo faila:"<<endl;
 i=fscanf(f2,"%d",&x);
 cout<<x<<endl;
 fcloseall();
 getch();
 }
помогите сделать правильно!!!

Добавлено через 11 минут
Пожалуйста!

Добавлено через 2 минуты
после 22-й строки по-моему должен быть цикл.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.05.2010, 11:01

Дан символьный файл f. Записать в файл g элементы файла f в обратном порядке
Помогите написать программу

Дан файл, компонентами которого являются символы. Переписать все символы в новый файл в обратном порядке.
Работа с текстовыми файлами. Дан файл, компонентами которого являются...

Дан текстовый файл, в котором записана последовательность целых чисел. Записать в новый файл только четные из них
Дан текстовый файл, в котором записана последовательность целых чисел. Записать...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru