📄 unit4.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit4.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm4 *Form4;
//---------------------------------------------------------------------------
__fastcall TForm4::TForm4(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
//出现频率最高的可能 ,只涉及组值
void __fastcall TForm4::Button7Click(TObject *Sender)
{
int i,j,k;
int ti,tj,tk; /* road number */
int li,lk,lj; /* number big/little */
int m=0,tmpNum;
AnsiString t;
Memo2->Clear();
for(i=0;i<10;i++)
{
ti= i%3;
if(i<3) li=0;
else if(i<7) li =1;
else li=2;
if( CheckListBox3->Checked[i]==false) continue; //删除数字
for(j=0;j<10;j++)
{
tj=j%3;
if(j<3) lj=0;
else if(j<7) lj=1;
else lj=2;
if( CheckListBox3->Checked[j]==false) continue;
for(k=0;k<10;k++)
{
tk=k%3;
if(k<3) lk=0;
else if(k<7) lk=1;
else lk=2;
if( CheckListBox3->Checked[k]==false) continue;
// -------------------------------------------------------------------//
if(!CheckListBox4->Checked[0])
if( (i==j || j==k )&&i!=k) continue;
if(! CheckListBox4->Checked[1])
if( i!=j && j!=k ) continue;
if(!CheckListBox4->Checked[2])
if( i==j && j==k ) continue;
//包数
if(ComboBox1->Text =="all");
else
{
tmpNum = StrToInt(ComboBox1->Text);
if(i!=tmpNum && j!=tmpNum && k!=tmpNum) continue;
}
if(ComboBox2->Text =="all");
else
{
tmpNum = StrToInt(ComboBox2->Text);
if(i!=tmpNum && j!=tmpNum && k!=tmpNum) continue;
}
//------------------------------------------------------//
if(CheckListBox1->Checked[9]==false) //删除012路
if(ti!=tj && tj!=tk && ti!=tk) continue;
if(CheckListBox2->Checked[9]==false) //删除012路
if(li!=lj && lj !=lk && li !=lk) continue;
if(i<=j && j<=k);
else continue;
//排序
//a. t*
if(ti==0)
{
if(tj>tk){
tmpNum=tk;
tk=tj;
tj=tmpNum;
}
}
else if(ti==1)
{
if(tj==0 && tk==0){
ti=0;tk=1;
}
else{
ti=tj;tj=1;
if(ti>tk){
tmpNum=tk;
tk=ti;
ti=tmpNum;
}
}
}
else
{
ti=tk;tk=2;
if(ti>tj){
tmpNum=ti;
ti=tj;
tj=tmpNum;
}
}
//b. l*
if(li==0)
{
if(lj>lk){
tmpNum=lk;
lk=lj;
lj=tmpNum;
}
}
else if(li==1)
{
if(lj==0 && lk==0){
li=0;lk=1;
}
else{
li=lj;lj=1;
if(li>lk){
tmpNum=lk;
lk=li;
li=tmpNum;
}
}
}
else
{
li=lk;lk=2;
if(li>lj){
tmpNum=li;
li=lj;
lj=tmpNum;
}
}
//过滤路数以及数字大小
if( RadioButton1->Checked);
else
{
if (CheckListBox1->Checked[0] == false)
if(ti==0 &&tj==0 &&tk==0) continue;
if (CheckListBox1->Checked[1] == false)
if(ti==0 &&tj==0 &&tk==1) continue;
if (CheckListBox1->Checked[2] == false)
if(ti==0 &&tj==0 &&tk==2) continue;
if (CheckListBox1->Checked[3] == false)
if(ti==0 &&tj==1 &&tk==1) continue;
if (CheckListBox1->Checked[4] == false)
if(ti==0 &&tj==2 &&tk==2) continue;
if (CheckListBox1->Checked[5] == false)
if(ti==1 &&tj==1 &&tk==1) continue;
if (CheckListBox1->Checked[6] == false)
if(ti==1 &&tj==1 &&tk==2) continue;
if (CheckListBox1->Checked[7] == false)
if(ti==1 &&tj==2 &&tk==2) continue;
if (CheckListBox1->Checked[8] == false)
if(ti==2 &&tj==2 &&tk==2) continue;
}
if( RadioButton2->Checked);
else
{
if (CheckListBox2->Checked[0] == false)
if(li==0 &&lj==0 &&lk==0) continue;
if (CheckListBox2->Checked[1] == false)
if(li==0 &&lj==0 &&lk==1) continue;
if (CheckListBox2->Checked[2] == false)
if(li==0 &&lj==0 &&lk==2) continue;
if (CheckListBox2->Checked[3] == false)
if(li==0 &&lj==1 &&lk==1) continue;
if (CheckListBox2->Checked[4] == false)
if(li==0 &&lj==2 &&lk==2) continue;
if (CheckListBox2->Checked[5] == false)
if(li==1 &&lj==1 &&lk==1) continue;
if (CheckListBox2->Checked[6] == false)
if(li==1 &&lj==1 &&lk==2) continue;
if (CheckListBox2->Checked[7] == false)
if(li==1 &&lj==2 &&lk==2) continue;
if (CheckListBox2->Checked[8] == false)
if(li==2 &&lj==2 &&lk==2) continue;
}
t+=IntToStr(i);
t+=IntToStr(j);
t+=IntToStr(k);
t+=" ";
m++;
if (m%20 ==0)
{
Memo2->Lines->Add(t);
t="";
}
}
}
}
Label1->Caption = IntToStr(m);
if(m%20 !=0)
Memo2->Lines->Add(t);
}
//---------------------------------------------------------------------------
void __fastcall TForm4::FormShow(TObject *Sender)
{
int i=0;
if(RadioButton1->Checked)
for(i=0;i< CheckListBox1->Count;i++)
CheckListBox1->Checked[i] = true;
else if(RadioButton2->Checked)
for(i=0;i< CheckListBox1->Count;i++)
CheckListBox1->Checked[i] = false;
if(RadioButton3->Checked)
for(i=0;i< CheckListBox2->Count;i++)
CheckListBox2->Checked[i] = true;
else if(RadioButton4->Checked)
for(i=0;i< CheckListBox2->Count;i++)
CheckListBox2->Checked[i] = false;
if(RadioButton7->Checked)
for(i=0;i< CheckListBox3->Count;i++)
CheckListBox3->Checked[i] = true;
else if(RadioButton8->Checked)
for(i=0;i< CheckListBox3->Count;i++)
CheckListBox3->Checked[i] = false;
}
//---------------------------------------------------------------------------
void __fastcall TForm4::RadioButton1Click(TObject *Sender)
{
int i=0;
for(i=0;i< CheckListBox1->Count;i++)
CheckListBox1->Checked[i] = true;
}
//---------------------------------------------------------------------------
void __fastcall TForm4::RadioButton3Click(TObject *Sender)
{
int i=0;
for(i=0;i< CheckListBox2->Count;i++)
CheckListBox2->Checked[i] = true;
}
//---------------------------------------------------------------------------
void __fastcall TForm4::RadioButton4Click(TObject *Sender)
{
int i=0;
for(i=0;i< CheckListBox2->Count;i++)
CheckListBox2->Checked[i] = false;
}
//---------------------------------------------------------------------------
void __fastcall TForm4::RadioButton2Click(TObject *Sender)
{
int i=0;
for(i=0;i< CheckListBox1->Count;i++)
CheckListBox1->Checked[i] = false;
}
//---------------------------------------------------------------------------
void __fastcall TForm4::FormCreate(TObject *Sender)
{
CheckListBox4->Checked[0]= true;
CheckListBox4->Checked[1]= true;
CheckListBox4->Checked[2]= false;
}
//---------------------------------------------------------------------------
void __fastcall TForm4::RadioButton7Click(TObject *Sender)
{
int i=0;
for(i=0;i< CheckListBox3->Count;i++)
CheckListBox3->Checked[i] = true;
}
//---------------------------------------------------------------------------
void __fastcall TForm4::RadioButton8Click(TObject *Sender)
{
int i=0;
for(i=0;i< CheckListBox3->Count;i++)
CheckListBox3->Checked[i] = false;
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -