|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
23.05.2010, 23:36 | #1 |
Регистрация: 03.12.2008
Сообщений: 8
|
Нужно подправить код
Првиет всем форумчанам, прощу вашей помощи, если это возможно а именно:
нужно переделать со 2 варианта на 1ый. Вариант 1 Список книг, хранящихся в библиотеке. О каждой книге хранятся следующие сведения: инвентарный номер, шифр УДК, название книги, Ф.И.О. автора, место издания, год издания. Вывести сведения о книгах, имеющих заданный шифр УДК и выпущенных не раньше указанного года. Вариант 2 Список книг, хранящихся в библиотеке. О каждой книге хранятся следующие сведения: инвентарный номер, шифр УДК, название книги, Ф.И.О. автора, место издания, год издания. Вывести сведения о книгах заданного автора, выпущенных не раньше заданного года. Во вложенном файле вся программа. Прога на С++ builder 6 Листинг программы: //------------------------------------------------- #include <vcl.h> #include <stdio.h> #pragma hdrstop #include "Unit1.h" //------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; typedef struct { int inv; int udk; char name[40]; char fio[40]; char mesto[2]; int izd; } TLibrary; TLibrary Lib[100]; int n=0; FILE *Fs; //------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { strcpy(Lib[n].name,Name->Text.c_str()); strcpy(Lib[n].fio,Fio->Text.c_str()); strcpy(Lib[n].mesto,Mesto->Text.c_str()); Lib[n].inv=StrToInt(Inv->Text); Lib[n].udk=StrToInt(Udk->Text); Lib[n].izd=StrToInt(Izd->Text); Memo1->Lines->Add(IntToStr(Lib[n].inv)+" "+IntToStr(Lib[n].udk)+" " +AnsiString(Lib[n].name)+" "+AnsiString(Lib[n].fio)+" " +AnsiString(Lib[n].mesto)+" "+IntToStr(Lib[n].izd)+" "); fwrite(&Lib[n],sizeof(TLibrary),1,Fs); n++; } //------------------------------------------------- void __fastcall TForm1::Button2Click(TObject *Sender) { OpenDialog1->Title="New File"; if (OpenDialog1->Execute()) { char *FileNameS=OpenDialog1->FileName.c_str(); if ((Fs=fopen(FileNameS,"wb"))==NULL) { ShowMessage("Ôàéë íå ñîçäàí"); return; } Button1->Enabled=true; } } //------------------------------------------------- void __fastcall TForm1::Button3Click(TObject *Sender) { OpenDialog1->Title="Open File"; if (OpenDialog1->Execute()) { char *FileNameS=OpenDialog1->FileName.c_str(); if ((Fs=fopen(FileNameS,"rb"))==NULL) { ShowMessage("Ôàéë íå îòêðûò"); return; } Button1->Enabled=true; Memo1->Clear(); n=0; do { fread(&Lib[n],sizeof(TLibrary),1,Fs); if (feof(Fs)) break; Memo1->Lines->Add(IntToStr(Lib[n].inv)+" "+IntToStr(Lib[n].udk)+" " +AnsiString(Lib[n].name)+" "+AnsiString(Lib[n].fio)+" " +AnsiString(Lib[n].mesto)+" "+IntToStr(Lib[n].izd)+" "); n++; } while(True); Button1->Enabled=true; } } //------------------------------------------------- void __fastcall TForm1::Button4Click(TObject *Sender) { SaveDialog1->Title="Save File"; if (SaveDialog1->Execute()) { AnsiString FileNameR=SaveDialog1->FileName; Memo1->Lines->SaveToFile(FileNameR); } } //------------------------------------------------- void __fastcall TForm1::Button5Click(TObject *Sender) { fclose(Fs); Form1->Close(); } //------------------------------------------------- void __fastcall TForm1::Button6Click(TObject *Sender) { char pfio[40]; int pizd; TLibrary tmp; Memo1->Clear(); Memo1->Lines->Add("Ðåçóëüòàò"); strcpy(pfio,Pfio->Text.c_str()); pizd=StrToInt(Pizd->Text); for (int i=0;i<n;i++) if (IntToStr(Lib[i].izd)>=pizd && AnsiString(Lib[i].fio)==AnsiString(pfio)) Memo1->Lines->Add(IntToStr(Lib[i].inv)+" "+IntToStr(Lib[i].udk)+" " +AnsiString(Lib[i].name)+" "+AnsiString(Lib[i].fio)+" " +AnsiString(Lib[i].mesto)+" "+IntToStr(Lib[i].izd)+" "); } //------------------------------------------------- |
28.05.2010, 12:11 | #2 |
Регистрация: 03.12.2008
Сообщений: 8
|
тему закройте пожалуйста
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Подправить код | werser | Помощь студентам | 4 | 14.03.2010 23:26 |
Подправить рабочий код. | michaelk | Общие вопросы C/C++ | 0 | 06.12.2009 11:33 |
нужно всего лишь подправить! | Татяна | Паскаль, Turbo Pascal, PascalABC.NET | 6 | 20.05.2009 21:17 |
подправить код ELF | astserg01 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 0 | 09.04.2009 06:49 |