Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.02.2011, 21:42   #1
proag
Пользователь
 
Регистрация: 06.11.2010
Сообщений: 15
По умолчанию работа с фалами

Нужно написать программу , которая отсортирует по возрастанию элементы файла . Результат записать в другой. Вот код сортировки с простым массивом:
Код:
int array[4] = {5, 2, 1, 7};
for(int i = 0; i < 4; i++)
for(int j = 3; j > i; j--)
if(array[j] < array[j - 1]) std::swap(array[j], array[j - 1]);
for(int i = 0; i<4; i++) cout<<array[i]<<"\t";
cout<<endl;
Собственно вопрос как пользоваться в файлах указателями типа i и j, т.е как сравнивать произвольно значения в файле? Например, файл содержит 5 2 1 7 . Хочу сравнить 2 и 1 , и ,если 1<2 == true, тогда поменять местами. Вообщем, обычная пузырьковая сортировка. Как поставить курсор на эти числа?
proag вне форума Ответить с цитированием
Старый 02.02.2011, 21:51   #2
Obey-Kun
Линуксоид
Участник клуба
 
Аватар для Obey-Kun
 
Регистрация: 31.07.2009
Сообщений: 1,403
По умолчанию

Считываешь значения файла в массив, сортируешь массив, выводишь в файл.
Я схожу с ума или это глючит реальность?
Jabber ID: obey@obey.su
Obey-Kun вне форума Ответить с цитированием
Старый 02.02.2011, 21:52   #3
proag
Пользователь
 
Регистрация: 06.11.2010
Сообщений: 15
По умолчанию

Цитата:
Сообщение от Obey-Kun Посмотреть сообщение
Считываешь значения файла в массив, сортируешь массив, выводишь в файл.
В задании написано не пользоваться массивами т.е. отсортированый елемент сразу попадает в другой файл
proag вне форума Ответить с цитированием
Старый 02.02.2011, 22:02   #4
Obey-Kun
Линуксоид
Участник клуба
 
Аватар для Obey-Kun
 
Регистрация: 31.07.2009
Сообщений: 1,403
По умолчанию

Находишь в том файле минимальное. Записываешь в новый. Находишь второе минимальное. Записываешь. И т.д. Правда, тогда тоже нужен массив — чтобы запомнить номера уже использованных строк.
Но в реальности так никто не делает, т.к. с памятью работать быстрее.
Я схожу с ума или это глючит реальность?
Jabber ID: obey@obey.su

Последний раз редактировалось Obey-Kun; 02.02.2011 в 22:05.
Obey-Kun вне форума Ответить с цитированием
Старый 02.02.2011, 22:04   #5
proag
Пользователь
 
Регистрация: 06.11.2010
Сообщений: 15
По умолчанию

Цитата:
Сообщение от Obey-Kun Посмотреть сообщение
Находишь в том файле минимальное. Записываешь в новый. Находишь второе минимальное. Записываешь. И т.д.
Но в реальности так никто не делает, т.к. с памятью работать быстрее.
Спасибо за совет. Я просто учу С++ самостоятельно и мне пока нужно разобрать сам процесс работы с файлами.

Как поставить указатель в конец файла для ifstream?

Последний раз редактировалось Stilet; 03.02.2011 в 18:16.
proag вне форума Ответить с цитированием
Старый 02.02.2011, 22:34   #6
NiCola999
Не
Участник клуба
 
Регистрация: 29.10.2009
Сообщений: 1,456
По умолчанию

open(name, ios::app);
NiCola999 вне форума Ответить с цитированием
Старый 03.02.2011, 17:59   #7
proag
Пользователь
 
Регистрация: 06.11.2010
Сообщений: 15
По умолчанию

Пмогите, пожайлуста, с таким кодом:
Файл имеет такой вид:
1
2
3
Выводит при seekg(0) 1, при seekg(1) 2, при seekg(2) 2, при seekg(3) 2, при seekg(4) 3. Вопрос почему так, а не при 1 выводит 1 , при 2 - 2, при 3 -3?

Код:
#include <iostream>
#include <fstream>
using namespace std;
void main()
{
	int number;
ifstream f("E:\\hhh.txt");
		if(!f) 
		{
			cout<<"File not open\n";
						exit(1);
		}
f.seekg(2);
f>>number;
cout<<number<<endl;
		f.close();
}
proag вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
паскаль работас фалами обясните почему ошибка и как исправить f= file of ysp; на of мигает и просит душки zavarka_dok Помощь студентам 1 22.11.2010 22:31
работа с фалами ini apocalypce Помощь студентам 8 14.08.2009 21:04
си динамические массивы, работа с фалами. tanek Помощь студентам 0 19.04.2009 23:28
работа с ini фалами Llirik1984 Win Api 2 28.03.2009 16:15
работа с фалами на pascal world12_tk Помощь студентам 7 16.03.2009 21:13