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

ООП / Labs / ооп 2 лаба / 1 / Unit1

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

#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
	: TForm(Owner)
{
   //	 n=Memo1->Lines->Count;
}
int n=0;
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{

	Memo1 -> Lines -> LoadFromFile ("I:\\u111052\\mp.txt");
	//n=Memo1->Lines->Count;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
	Close();
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button3Click(TObject *Sender)
{
n=Memo1->Lines->Count;
if ((ComboBox1->ItemIndex!=1)&&(ComboBox1->ItemIndex!=0)&&(ComboBox2->ItemIndex!=1)&&(ComboBox2->ItemIndex!=0))
{
	ShowMessage("Проблема");
}

else
	  {
if (ComboBox1->ItemIndex==0)
{
if (ComboBox2->ItemIndex==0)
{
	int posT=Memo1->Lines->Strings[0].Pos("-");

	for (int j=0; j < (n-1); j++)
	{
	for (int i=0; i < (n-1); i++) {


	  String tmp1,tmp2;
	  if (StrToInt(Memo1->Lines->Strings[i].SubString(posT+1,1))==StrToInt(Memo1->Lines->Strings[i+1].SubString(posT+1,1)))
	  {
		if (StrToInt(Memo1->Lines->Strings[i].SubString(posT+2,1))>StrToInt(Memo1->Lines->Strings[i+1].SubString(posT+2,1)))
		   {
				tmp1=Memo1->Lines->Strings[i];
				Memo1->Lines->Strings[i]=Memo1->Lines->Strings[i+1];
				Memo1->Lines->Strings[i+1]=tmp1;

		  }

	  }
		  if (StrToInt(Memo1->Lines->Strings[i].SubString(posT+1,1))>StrToInt(Memo1->Lines->Strings[i+1].SubString(posT+1,1)))
		   {
				tmp1=Memo1->Lines->Strings[i];
				Memo1->Lines->Strings[i]=Memo1->Lines->Strings[i+1];
				Memo1->Lines->Strings[i+1]=tmp1;

		  }
	}

	}
}
else {
 int posT=Memo1->Lines->Strings[0].Pos("-");  //poziciya "-"

	for (int j=0; j < (n-1); j++)
	{
	for (int i=0; i < (n-1); i++) {


	  String tmp1,tmp2;
	  if (StrToInt(Memo1->Lines->Strings[i].SubString(posT+1,1))==StrToInt(Memo1->Lines->Strings[i+1].SubString(posT+1,1)))
	  {
		if (StrToInt(Memo1->Lines->Strings[i].SubString(posT+2,1))<StrToInt(Memo1->Lines->Strings[i+1].SubString(posT+2,1)))
		   {
				tmp1=Memo1->Lines->Strings[i];
				Memo1->Lines->Strings[i]=Memo1->Lines->Strings[i+1];
				Memo1->Lines->Strings[i+1]=tmp1;

		  }

	  }
		  if (StrToInt(Memo1->Lines->Strings[i].SubString(posT+1,1))<StrToInt(Memo1->Lines->Strings[i+1].SubString(posT+1,1))) {
				tmp1=Memo1->Lines->Strings[i];
				Memo1->Lines->Strings[i]=Memo1->Lines->Strings[i+1];
				Memo1->Lines->Strings[i+1]=tmp1;

		  }
	}

	}
}
}
else
{
		if (ComboBox2->ItemIndex==0) {
				int posT=Memo1->Lines->Strings[0].Pos("-");  //poziciya "-"

	for (int j=0; j < (n-1); j++)
	{
	for (int i=0; i < (n-1); i++) {


	  String tmp1,tmp2;
	  if (StrToInt(Memo1->Lines->Strings[i].SubString(posT+1,1))==StrToInt(Memo1->Lines->Strings[i+1].SubString(posT+1,1)))
	  {
		if (StrToInt(Memo1->Lines->Strings[i].SubString(posT+2,1))>StrToInt(Memo1->Lines->Strings[i+1].SubString(posT+2,1)))
		   {
				tmp1=Memo1->Lines->Strings[i];
				Memo1->Lines->Strings[i]=Memo1->Lines->Strings[i+1];
				Memo1->Lines->Strings[i+1]=tmp1;

		  }
	  if ((StrToInt(Memo1->Lines->Strings[i].SubString(posT+2,1))==StrToInt(Memo1->Lines->Strings[i+1].SubString(posT+2,1)))&&(Memo1->Lines->Strings[i].SubString(posT+4,100))>(Memo1->Lines->Strings[i+1].SubString(posT+4,100)))
	  {
			tmp1=Memo1->Lines->Strings[i];
				Memo1->Lines->Strings[i]=Memo1->Lines->Strings[i+1];
				Memo1->Lines->Strings[i+1]=tmp1;
	  }

	  }
		  if (StrToInt(Memo1->Lines->Strings[i].SubString(posT+1,1))>StrToInt(Memo1->Lines->Strings[i+1].SubString(posT+1,1)))
		   {
				tmp1=Memo1->Lines->Strings[i];
				Memo1->Lines->Strings[i]=Memo1->Lines->Strings[i+1];
				Memo1->Lines->Strings[i+1]=tmp1;

		  }
	}

	}
}
else
{      int posT=Memo1->Lines->Strings[0].Pos("-");  //poziciya "-"
		for (int j=0; j < (n-1); j++)
	{
	for (int i=0; i < (n-1); i++) {


	  String tmp1,tmp2;
	  if (StrToInt(Memo1->Lines->Strings[i].SubString(posT+1,1))==StrToInt(Memo1->Lines->Strings[i+1].SubString(posT+1,1)))
	  {
		if (StrToInt(Memo1->Lines->Strings[i].SubString(posT+2,1))<StrToInt(Memo1->Lines->Strings[i+1].SubString(posT+2,1)))
		   {
				tmp1=Memo1->Lines->Strings[i];
				Memo1->Lines->Strings[i]=Memo1->Lines->Strings[i+1];
				Memo1->Lines->Strings[i+1]=tmp1;

		  }
	  if ((StrToInt(Memo1->Lines->Strings[i].SubString(posT+2,1))==StrToInt(Memo1->Lines->Strings[i+1].SubString(posT+2,1)))&&(Memo1->Lines->Strings[i].SubString(posT+4,100))<(Memo1->Lines->Strings[i+1].SubString(posT+4,100)))
	  {
			tmp1=Memo1->Lines->Strings[i];
				Memo1->Lines->Strings[i]=Memo1->Lines->Strings[i+1];
				Memo1->Lines->Strings[i+1]=tmp1;
	  }

	  }
		  if (StrToInt(Memo1->Lines->Strings[i].SubString(posT+1,1))<StrToInt(Memo1->Lines->Strings[i+1].SubString(posT+1,1)))
		   {
				tmp1=Memo1->Lines->Strings[i];
				Memo1->Lines->Strings[i]=Memo1->Lines->Strings[i+1];
				Memo1->Lines->Strings[i+1]=tmp1;

		  }
	}


}
}}}}



Соседние файлы в папке 1
  • #
    18.02.2017131 б9mp.txt
  • #
    18.02.20177.44 Кб9Project1.cbproj
  • #
    18.02.2017685 б9Project1.cbproj.local
  • #
    18.02.2017870 б9Project1.cpp
  • #
    18.02.20175.28 Кб10Project1.res
  • #
    18.02.20175.43 Кб9Unit1.cpp
  • #
    18.02.20172.35 Кб9Unit1.dfm
  • #
    18.02.20171.08 Кб9Unit1.h