jose.cpp

来自「一、教学目的: 能理解C++中运算符重载的需要性」· C++ 代码 · 共 44 行

CPP
44
字号
#include<iostream.h>
#include"ring.cpp"
#include"jose.h"
void Jose::Initial()
{
	int num,begin,m;
	cout<<"please input the number of boys,"
		<<"beginning position, interval per count:\n";
	cin>>num>>begin>>m;
	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;
	}
	numOfBoys=num;
	beginPos=begin;
	interval=m;
}
void Jose::GetWinner()
{
	Ring x(numOfBoys);//小孩围成圈
	x.Count(beginPos);//转到开始位置
	for(int i=1;i<numOfBoys;i++)//处理除了获胜者之外的所有小孩
	{
		x.Count(interval);//数小孩
		x.PutBoy();//输出小孩编号
		x.ClearBoy();//当前小孩脱离环链
	}
	cout<<"\n the winner is ";
	x.PutBoy();//获胜者
}


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?