文档库 最新最全的文档下载
当前位置:文档库 › 约瑟夫环 简单函数

约瑟夫环 简单函数

#include
#include
#include
#define Total 42 //这里是总人数
#define Base 3 //这里定义循环个数,
int main(){
int source[Total]={0};
int i=0;
int alive;
int pos=-1,count=1; //pos是数组中的位置,count定义是约瑟夫环中的位置。
while(count<=Total){ //定义双重循环,大循环是全部的人数,小循环是循环个数;
do{
pos=(pos+1)%Total;
if(source[pos]==0) //如果人还没被排除到环外,算入计数中,否则只是pos向下加。
i++;
if(i==Base)
{
i=0;
break;
}
}while(1);
source[pos]=count;
count++;
}
cout<<"环中对应关系为:"<for(i=0;i{
cout<if((i+1)%6==0)cout<}
cout<cout<<"请输入活着的人数:"<cin>>alive;
alive=Total-alive; //活着的人必须处于环外,并且在环中的位置大于其他所有人的序号;
for(i=0;i{
if(source[i]>alive)
{
cout<<"所处的位置为:"<}
}
cout<return 0;
}

相关文档
相关文档 最新文档