//--------------------------------------------------------------------------- #include #pragma hdrstop #include "Barys_Ind_4.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void TForm1::Skaityti() { FILE* FR; FR = fopen(ABONENTAI, "r"); if (FR == NULL) { ShowMessage("Failas " + String(ABONENTAI) + " nerastas."); Close(); } abon_sk = 0; char linija[200]; while (!feof(FR)) { fgets(linija, 200, FR); abon_sk++; } fclose(FR); FR = fopen(ABONENTAI, "r"); abonentai = new abonentas [abon_sk]; for (int i = 0; i < abon_sk; i++) { //adresui, neturi bûti tarpo tarp gatvës ir gatvës numerio, kitaip neveiks teisingai programa fscanf(FR, "%s", &abonentai[i].pavarde); fgets(abonentai[i].adresas, 20, FR); fscanf(FR, "%s\n", &abonentai[i].numeris); } fclose(FR); FR = fopen(POKALBIAI, "r"); if (FR == NULL) { ShowMessage("Failas " + String(POKALBIAI) + " nerastas."); Close(); } char numeris[13]; int pokalbiai; while (!feof(FR)) { fscanf(FR, "%s %d\n", &numeris, &pokalbiai); for (int i = 0; i < abon_sk; i++) if (strcmp(numeris, abonentai[i].numeris) == 0) { abonentai[i].pokalbiai += pokalbiai; break; } } fclose(FR); } void TForm1::Rodyti() { AnsiString E; for (int i = 0; i < abon_sk; i++) { E.printf("%d. %s - %s - %s - %d min", i+1, abonentai[i].pavarde, abonentai[i].adresas, abonentai[i].numeris, abonentai[i].pokalbiai); ListBox1->Items->Add(E); } } void TForm1::Saugoti() { FILE* FR; FR = fopen(CRez, "w"); fprintf(FR, "Abonentas:\n"); fprintf(FR, "%s %s tel.: %s\n\n", abonentai[abon_index].pavarde, abonentai[abon_index].adresas, abonentai[abon_index].numeris); fprintf(FR, "Prakalbëta: %dmin\t\tMokëti: %s\n\n", abonentai[abon_index].pokalbiai, Label2->Caption.c_str()); fprintf(FR, "Geros dienos!"); fclose(FR); } void __fastcall TForm1::FormActivate(TObject *Sender) { Skaityti(); Rodyti(); } //--------------------------------------------------------------------------- void __fastcall TForm1::ListBox1Click(TObject *Sender) { if (Edit1->Text == "") ShowMessage("Áveskite minutës kainà."); else { abon_index = ListBox1->ItemIndex; kaina = StrToFloat(Edit1->Text); Label2->Caption = FloatToStrF((abonentai[abon_index].pokalbiai * kaina) / 100, ffFixed, 6, 2) + "Lt"; Button1->Enabled = true; } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { //issaugome duomenis Saugoti(); Button1->Enabled = false; } //--------------------------------------------------------------------------- void __fastcall TForm1::Button2Click(TObject *Sender) { Close(); } //---------------------------------------------------------------------------