Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > Задача с базами данных


Автор: mrBaT 3.12.2005, 19:51
//---------------------------------------------------------
задача smile

Начальные данные о людях и имеющихся у них машинах хранятся в 2 структурных текстовых файла. В первом файле данные о владельцах: номер паспорта (11 часел), фамилия и имя, город, улица, номер дома, номер квартиры. Во втором файле написаны данные о имеющихся машинах: этого сталбца информация такая: номер паспарта владельца, автомашины марка, гос номера (3 большие буквы и 3 числа). Сделать программу, которая представляет владельцев, имеющих не меньше чем 2 машины, список. Его выбранные машины и фамилию.
//------------------------------------------------------------------------------
Требования
1. сделать прогу, используя структуру данных, по задаче
2 анализ задания:
2.1 Данные ввести в вводные окна или из текстового файла
2.2 Результаты показывать на выбор в компоненте. должна быть возможность сохранить результаты в файл с названием out.txt
2.3 динамические массивы использовать храня данные в памяти
2,4 Каждой функциональной отдельной части программы сделать метод. некоторые из них могут быть реакция на случаи нажав на button
3. использовать пояснение в cpp и h файлах
//------------------------------------


так вот, как решить ясно удалённо, но как оформить на сях
ещё та проблема..

допустим файл выглядит так:
"12345678901;Иванов;Иван;Питер;Невский;45;234
0987654321;Петров;Петр;Москва;Арбат;67;43"


таким образом - пока мы его будем считывать - будем читать что-то в первую переменную, пока не встретим ";" потом во вторую и т.д.

Chelovek[1].kod= 12345678901;
Chelovek[1].familia='Иванов';
Chelovek[1].imia=Иван;
Chelovek[1].gorod=Питер;
Chelovek[1].ulica=Невский;
Chelovek[1].dom=45;
Chelovek[1].kvartira=234
Chelovek[2].kod=0987654321;
Chelovek[2].familia=Петров;
Chelovek[2].imia=Петр;
Chelovek[2].gorod=Москва;
Chelovek[2].ulica=Арбат;
Chelovek[2].dom=67;
Chelovek[2].kvartira=43


struct TChelovek
{
int kod;
char familia[30];
char imia[20];
char gorod[25];
char ulica[50];
int dom;
int kvartira=43
}

это пока моя бета теория ))) как дальше

smile smile smile

Автор: TeeT 4.12.2005, 11:55
Ты когда нибудь слышал о функциях fread, fwrite? зачем тебе надо так записывать в файл? записывай структуру сразу!
write(void *ptr, size_t size, size_t n, FILE *stream)
в конечном итоге и файл получится меньше, и работать проще - не надо искать ";", можно просто указать количество байт, которые надо прочитать.

Ну а еси хочешь воспользуйся классом TIniFile

ну а примеры на TIniFile в ХЭЛПЕ есть (Builder-овском)

Автор: mrBaT 4.12.2005, 17:08
это конечно хорошо но про потоки я знаю теоритически smile
smile поэтому собственно я с ними и не хотел связываться... разбираться буду долго а получится или нет - smile знает...

Автор: sexton 5.12.2005, 09:45
тут потоки ваааще ни при чем... Типированные файлы + хелп по функциям из поста тов. ТееТа

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)