StringGrid1->Cells[3][0]="Математика";

StringGrid2->Cells[3][0]="Математика";

StringGrid1->Cells[4][0]="Физика";

StringGrid2->Cells[4][0]="Физика";

StringGrid1->Cells[5][0]="Язык";

StringGrid2->Cells[5][0]="Язык";

StringGrid1->Cells[6][0]="Аттестат";

StringGrid2->Cells[6][0]="Аттестат";

StringGrid1->Cells[7][0]="Средн. экз.";

StringGrid2->Cells[7][0]="Средн. экз.";

StringGrid1->Cells[8][0]="Общ. средн.";

StringGrid2->Cells[8][0]="Общ. средн.";

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N5Click(TObject *Sender)

{ //Запись таблицы в файл:

int i, n;

AnsiString str;

try { //Блок защиты операторов.

//Пересчет средних баллов перед сохранением:

N8Click(Sender);

//Открытие файла для записи:

if (SaveDialog1->Execute()){

File_Zap = SaveDialog1->FileName;

f=fopen(File_Zap. c_str(),"wb");

n=StringGrid1->RowCount-1;

//Запись строк таблицы в файл:

for(i=1;i<=n;i++) {

sprav. namber=StrToInt(StringGrid1->Cells[0][i]);

str=StringGrid1->Cells[1][i];

strcpy(sprav. FIO, str. c_str());

str=StringGrid1->Cells[2][i];

strcpy(sprav. adres, str. c_str());

sprav. matem=StrToInt(StringGrid1->Cells[3][i]);

sprav. fizika=StrToInt(StringGrid1->Cells[4][i]);

sprav. lang=StrToInt(StringGrid1->Cells[5][i]);

sprav. sb_attestat=StrToFloat(StringGrid1->Cells[6][i]);

НЕ нашли? Не то? Что вы ищете?

sprav. sb_examen=StrToFloat(StringGrid1->Cells[7][i]);

sprav. sredball=StrToFloat(StringGrid1->Cells[8][i]);

fwrite(&sprav, size,1,f);

}

//Закрытие файла:

fclose(f);

ShowMessage("Данные с таблицы успешно записаны в файл!");

}

}

catch ( ... ){

//Обработка ошибки некорректности данных:

fclose(f);

ShowMessage("Некорректные данные!");

}

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N14Click(TObject *Sender)

{

int i, j;

//Удаление текущей строки.

if(StringGrid1->RowCount>2) {

for(i=StringGrid1->Row;i<StringGrid1->RowCount-1;i++) {

StringGrid1->Cells[0][i]=IntToStr(i);

for(j=1;j<=StringGrid1->ColCount-1;j++) {

StringGrid1->Cells[j][i]=StringGrid1->Cells[j][i+1];

}

}

StringGrid1->RowCount--;

}

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N13Click(TObject *Sender)

{

//Добавление строки в конец таблицы

StringGrid1->RowCount++;

StringGrid1->Cells[0][StringGrid1->RowCount-1]=IntToStr(StringGrid1->RowCount-1);

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N4Click(TObject *Sender)

{

//Открытие файла и чтение его в таблицу:

if (OpenDialog1->Execute()){

File_Zap = OpenDialog1->FileName;

f=fopen(File_Zap. c_str(),"rb");

//Чтение n (количество записей):

int D_f = fileno(f); // Находим дескриптор файла

int len = filelength(D_f); // Находим размер файла

int i, n;

n = len/size; //Количество записей в файле

StringGrid1->RowCount=n+1;

//Чтение n записей из файла в таблицу:

for(i=1;i<=n;i++) {

fread(&sprav, size,1,f);

StringGrid1->Cells[0][i]=IntToStr(sprav. namber);

StringGrid1->Cells[1][i]=sprav. FIO;

StringGrid1->Cells[2][i]=sprav. adres;

StringGrid1->Cells[3][i]=IntToStr(sprav. matem);

StringGrid1->Cells[4][i]=IntToStr(sprav. fizika);

StringGrid1->Cells[5][i]=IntToStr(sprav. lang);

StringGrid1->Cells[6][i]=FloatToStrF(sprav. sb_attestat, ffFixed,8,2);

StringGrid1->Cells[7][i]=FloatToStrF(sprav. sb_examen, ffFixed,8,2);

StringGrid1->Cells[8][i]=FloatToStrF(sprav. sredball, ffFixed,8,2);

}

//Закрытие файла:

fclose(f);

ShowMessage("Данные успешно прочитаны из файла!");

}

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N6Click(TObject *Sender)

{

int j;

//Создать (очистка таблиц):

StringGrid1->RowCount=2;

for(j=1;j<=StringGrid1->ColCount-1;j++)

StringGrid1->Cells[j][1]="";

StringGrid2->RowCount=2;

for(j=1;j<=StringGrid1->ColCount-1;j++)

StringGrid2->Cells[j][1]="";

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N16Click(TObject *Sender)

{

AnsiString gorod, adr;

int i, j,row2,k;

//Поиск (Выборка данных по запросу "Город = Edit1"

gorod=Edit1->Text;

Edit2->Text="";

k=0;

StringGrid2->RowCount=2;

for(j=0;j<=StringGrid2->ColCount-1;j++) StringGrid2->Cells[j][1]="";

row2=1;

for(i=1;i<StringGrid1->RowCount;i++) {

adr=StringGrid1->Cells[2][i];

if(adr. Pos(gorod)>0) {

StringGrid2->RowCount=row2+1;

k++;

for(j=0;j<=StringGrid2->ColCount-1;j++)

StringGrid2->Cells[j][row2]=StringGrid1->Cells[j][i];

row2++;

}

}

Label4->Caption=IntToStr(k);

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N8Click(TObject *Sender)

{

//Вычислить для каждой записи средний балл по экзаменам и общий средний балл:

int i;

for(i=1;i<StringGrid1->RowCount;i++) {

//Чтение оценок:

sprav. matem=StrToInt(StringGrid1->Cells[3][i]);

sprav. fizika=StrToInt(StringGrid1->Cells[4][i]);

sprav. lang=StrToInt(StringGrid1->Cells[5][i]);

sprav. sb_attestat=StrToFloat(StringGrid1->Cells[6][i]);

//Вычисление среднего балла за экзамены:

sprav. sb_examen=(sprav. matem+sprav. fizika+sprav. lang)/3;

//Вычисление общего среднего балла (за экзамены и аттестат):

sprav. sredball=(sprav. sb_attestat+sprav. sb_examen)/2;

//Вывод в таблицу средних баллов:

StringGrid1->Cells[7][i]=FloatToStrF(sprav. sb_examen, ffFixed,8,2);

StringGrid1->Cells[8][i]=FloatToStrF(sprav. sredball, ffFixed,8,2);

}

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N11Click(TObject *Sender)

{

float sb;

int i, j,row2,n;

AnsiString sfio, sfio_next, st;

bool p;

//Поиск (Выборка данных по запросу "Средний балл по экзаменам >= Edit2"

sb=StrToFloat(Edit2->Text);

Edit1->Text="";

n=0;

StringGrid2->RowCount=2;

for(j=0;j<=StringGrid2->ColCount-1;j++) StringGrid2->Cells[j][1]="";

row2=1;

for(i=1;i<StringGrid1->RowCount;i++) {

sprav. sb_examen=StrToFloat(StringGrid1->Cells[7][i]);

if(sprav. sb_examen>=sb) {

StringGrid2->RowCount=row2+1;

n++;

for(j=0;j<=StringGrid2->ColCount-1;j++)

StringGrid2->Cells[j][row2]=StringGrid1->Cells[j][i];

row2++;

}

}

Label4->Caption=IntToStr(n);

//Сортировка данных в таблице выборки в алфавитном порядке ФИО:

n=StringGrid2->RowCount-1;

do {

p=false;

for(i=1;i<n;i++) {

sfio=StringGrid2->Cells[1][i];

sfio_next=StringGrid2->Cells[1][i+1];

if(sfio>sfio_next) {

//Обмен строк

for(j=0;j<=StringGrid2->ColCount-1;j++) {

st=StringGrid2->Cells[j][i];

StringGrid2->Cells[j][i]=StringGrid2->Cells[j][i+1];

StringGrid2->Cells[j][i+1]=st;

}

p=true;

}

}

}

while(p);

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N2Click(TObject *Sender)

{

//Сортировка данных в порядке убывания общего среднего балла:

float sb, sb_next;

int i, j,n;

bool p;

AnsiString st;

n=StringGrid1->RowCount-1;

do {

p=false;

for(i=1;i<n;i++) {

sb=StrToFloat(StringGrid1->Cells[8][i]);

sb_next=StrToFloat(StringGrid1->Cells[8][i+1]);

if(sb<sb_next) {

//Обмен строк

for(j=0;j<=StringGrid1->ColCount-1;j++) {

st=StringGrid1->Cells[j][i];

StringGrid1->Cells[j][i]=StringGrid1->Cells[j][i+1];

StringGrid1->Cells[j][i+1]=st;

}

p=true;

}

}

}

while(p);

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N12Click(TObject *Sender)

{

Form2->ShowModal();

}

//---------------------------------------------------------------------------

Модуль формы «О программе и авторе» Unit2.cpp

//---------------------------------------------------------------------------

#include <vcl. h>

#pragma hdrstop

#include "Unit2.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm2 *Form2;

//---------------------------------------------------------------------------

__fastcall TForm2::TForm2(TComponent* Owner)

: TForm(Owner)

{

}

//---------------------------------------------------------------------------

Заголовочный файл Unit1.h

//---------------------------------------------------------------------------

#ifndef Unit1H

#define Unit1H

//---------------------------------------------------------------------------

#include <Classes. hpp>

#include <Controls. hpp>

#include <StdCtrls. hpp>

#include <Forms. hpp>

#include <Menus. hpp>

#include <Grids. hpp>

#include <Dialogs. hpp>

//---------------------------------------------------------------------------

class TForm1 : public TForm

{

__published: // IDE-managed Components

TMainMenu *MainMenu1;

TMenuItem *N1;

TMenuItem *N3;

TMenuItem *N4;

TMenuItem *N5;

TMenuItem *N6;

TMenuItem *N9;

TMenuItem *N10;

TMenuItem *N13;

TMenuItem *N14;

TMenuItem *N16;

TStringGrid *StringGrid1;

TLabel *Label1;

TStringGrid *StringGrid2;

TLabel *Label3;

TEdit *Edit1;

TLabel *Label6;

TEdit *Edit2;

TMenuItem *N7;

TMenuItem *N2;

TOpenDialog *OpenDialog1;

TSaveDialog *SaveDialog1;

TMenuItem *N8;

TMenuItem *N11;

TLabel *Label2;

TLabel *Label4;

TMenuItem *N12;

void __fastcall N10Click(TObject *Sender);

void __fastcall FormCreate(TObject *Sender);

void __fastcall N5Click(TObject *Sender);

void __fastcall N14Click(TObject *Sender);

void __fastcall N13Click(TObject *Sender);

void __fastcall N4Click(TObject *Sender);

void __fastcall N6Click(TObject *Sender);

void __fastcall N16Click(TObject *Sender);

void __fastcall N8Click(TObject *Sender);

void __fastcall N11Click(TObject *Sender);

void __fastcall N2Click(TObject *Sender);

void __fastcall N12Click(TObject *Sender);

private: // User declarations

public: // User declarations

__fastcall TForm1(TComponent* Owner);

};

//---------------------------------------------------------------------------

extern PACKAGE TForm1 *Form1;

//---------------------------------------------------------------------------

#endif

Заголовочный файл Unit2.h

#ifndef Unit2H

#define Unit2H

#include <Classes. hpp>

#include <Controls. hpp>

#include <StdCtrls. hpp>

#include <Forms. hpp>

#include <ExtCtrls. hpp>

#include <Graphics. hpp>

class TForm2 : public TForm

{

__published: // IDE-managed Components

TImage *Image1;

TMemo *Memo1;

private: // User declarations

public: // User declarations

__fastcall TForm2(TComponent* Owner);

};

extern PACKAGE TForm2 *Form2;

#endif

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4