Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ООП / C++ / Lab2C / ex1 / Unit1

.cpp
Скачиваний:
75
Добавлен:
18.02.2017
Размер:
2.23 Кб
Скачать
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
	: TForm(Owner)
{
	isloaded = false;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
	if(OpenDialog1->Execute()) {
		Memo1 -> Lines -> LoadFromFile (OpenDialog1->FileName);
		isloaded = true;
	}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
if (!isloaded) {
	MessageDlg("База данных не открыта", mtWarning, TMsgDlgButtons() << mbOK, 0);
	return; }
//---------------------------------------------------------------------------
if ((ComboBox1 -> ItemIndex == -1) || (ComboBox2 -> ItemIndex == -1)) {
	MessageDlg("Выберите один критерий и один порядок сортировки!", mtWarning, TMsgDlgButtons() << mbOK, 0);
	return; }
//---------------------------------------------------------------------------
int k;
String s;
if (ComboBox2 -> ItemIndex == 0) {
	for (int i = 0; i < Memo1 -> Lines -> Count; i++) {
		k = 0;
		for (int j = 1; j < Memo1 -> Lines -> Count - i; j++) {
			if (Memo1 -> Lines -> Strings[j] < Memo1 -> Lines ->Strings[k]) {
				k = j; }
		}
		Memo1 -> Lines -> Add(Memo1 -> Lines -> Strings[k]);
		Memo1 -> Lines -> Delete(k);
	}
}
//---------------------------------------------------------------------------
else {
	for (int i = 0; i < Memo1 -> Lines -> Count; i++) {
		k = 0;
		for (int j = 1; j < Memo1 -> Lines -> Count - i; j++) {
			if (Memo1 -> Lines -> Strings[j] > Memo1 -> Lines ->Strings[k]) {
				k = j; }
			}
		Memo1 -> Lines -> Add(Memo1 -> Lines -> Strings[k]);
		Memo1 -> Lines -> Delete(k);
	}
}
//---------------------------------------------------------------------------
}
//---------------------------------------------------------------------------
Соседние файлы в папке ex1