jose.cpp
来自「一、教学目的: 能理解C++中运算符重载的需要性」· C++ 代码 · 共 57 行
CPP
57 行
#include<iostream.h>
#include"ring.cpp"
#include"jose.h"
void Jose::Initial()
{
int num,begin,m, w;
cout<<"please input the number of boys,"
<<"beginning position, interval per count:\n"
<<"number of winners:\n";
cin>>num>>begin>>m>>w;
if(num<2)
{
cout<<"bad number of boys \n";
return;
}
if(begin<0)
{
cout<<"bad beginning position \n";
return;
}
if(m<1||m>num)
{
cout<<"bad interval number.\n";
return;
}
if(w<1||w>num)
{
cout<<"bad number of winners.\n";
return;
}
numOfBoys=num;
beginPos=begin;
interval=m;
wins=w;
}
void Jose::GetWinner()
{
Ring x(numOfBoys);//小孩围成圈
x.Count(beginPos);//转到开始位置
for(int i=1;i<numOfBoys-wins+1;i++)//处理除了获胜者之外的所有小孩
{
x.Count(interval);//数小孩
x.PutBoy();//输出小孩编号
x.ClearBoy();//当前小孩脱离环链
}
cout<<"\n the winner is ";
// x.PutBoy();//获胜者
x.Display();
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?