📄 related_func.h
字号:
//输出本曲配对
template<class T>
void CurrentMatch(Partner<T> M,Partner<T> F)
{
Partner<T> M1=M,F1=F;
int min=(M1.DancerNum<F1.DancerNum)?M1.DancerNum:F1.DancerNum;
cout<<"\n\t\t 本曲配对一览"<<endl<<endl;
cout<<"\t\t\t男\t\t女"<<endl;
for(int i=1;i<=min;i++){
cout<<"\t\t>>\t"<<M1.Match()<<"\t\t"<<F1.Match()<<endl;
M1.Wait();
F1.Wait();
}
}
//输出下曲配对
template<class T>
void NextMatch(Partner<T> M,Partner<T> F)
{
Partner<T> M1=M,F1=F;
int min=(M1.DancerNum<F1.DancerNum)?M1.DancerNum:F1.DancerNum;
M1.MakeNew(min);
F1.MakeNew(min);
cout<<"\n\n\t\t 下一曲配对预览"<<endl<<endl;
cout<<"\t\t\t男\t\t女"<<endl;
for(int i=1;i<=min;i++){
cout<<"\t\t>>\t"<<M1.Match()<<"\t\t"<<F1.Match()<<endl;
M1.Wait();
F1.Wait();
}
}
//计算配对情况
template<class T>
void SearchMatch(Partner<T> M,Partner<T> F)
{
Partner<T> M1=M,F1=F;
int X,Y,K=0;
int count;
do{
cout<<"\n\n\t\t输入要查询配对的男女生编号(X、Y):";
cin>>X>>Y;
}while(X>M1.DancerNum||Y>F1.DancerNum);
int min=(M1.DancerNum<F1.DancerNum)?M1.DancerNum:F1.DancerNum;
cout<<"\n\n\t\t\t设定配对曲数:";
cin>>count;
int max=count*M1.DancerNum*F1.DancerNum;
cout<<"\n\t\t编号"<<X<<"(男)和编号"<<Y<<"(女)在下列曲数配对:";
for(int i=1;i<=count&&K<max;){
K++;
for(int j=1;j<=min;j++){
if(*(M1.GetElement()+M1.GetFront())==X&&
*(F1.GetElement()+F1.GetFront())==Y){
cout<<K<<" ";i++;
}
M1.Match();M1.Wait();
F1.Match();F1.Wait();
}
}
if(K>=max){
cout<<"无!";
cout<<"\n\t\t (他们在整场舞会中都不会配对跳舞!)"<<endl;
}
}
int Menu()
{
int choice;
system("cls");
cout<<"\n\n\n\n\t\t\t舞伴配对系统"<<endl<<endl<<endl;
cout<<"\t\t\t 1 配对设定"<<endl<<endl;
cout<<"\t\t\t 2 重新设定"<<endl<<endl;
cout<<"\t\t\t 3 配对动态"<<endl<<endl;
cout<<"\t\t\t 4 配对查询"<<endl<<endl;
cout<<"\t\t\t 5 退出"<<endl<<endl<<endl;
cout<<"\t\t\t请选择:";
cin>>choice;
return(choice);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -