| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 881 人关注过本帖
标题:[求助]约瑟夫不知哪有问题
只看楼主 加入收藏
foolish
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-3-29
收藏
 问题点数:0 回复次数:5 
[求助]约瑟夫不知哪有问题

#include <iostream.h>
#include<math.h>
void main()

{ int i=0,j=0,k=0,m=0,n=4;
int a[150];
cout <<"一圈总人数m:";

cin>>m;
cout<<" 数到n:";
cin>>n;
for(i=0;i<m;i++)
a[i]=i+1;

while(k<m)
{
if(a[i]!=0)
j++;
{
if (j==n)
{
cout<<a[i];
k++;
a[i]=0;
j=0;
}
}
i++;
if (i=10)
i=0;
}
}

搜索更多相关主题的帖子: 约瑟夫 int include math 
2006-04-05 20:10
爱的天空有雨
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2006-4-6
收藏
得分:0 
把你的这几句
i++;
if (i=10)
i=0;
改成这个试试
i=(i+1)%m;

2006-04-06 09:36
duxing
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2006-4-6
收藏
得分:0 
2006-04-07 13:34
duxing
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2006-4-6
收藏
得分:0 
#include <iostream.h>
#include<math.h>
void main()
{
int i=0,j=0,k=0,m=0,n=4;
static int a[150];
cout <<"一圈总人数m:";
cin>>m;
cout<<" 数到n:";
cin>>n;
for(i=0;i<m;i++)
a[i]=i+1;
i=0;
while(k<m-1)
{
if(a[i]!=0)
{
j++; //i记录数组到的位置 j记录数的人数是否够n个 k记录除掉的人
if (j==n)
{
k++;
a[i]=0;

j=0;
}
if(i==m-1)
i=0;
else
i++;
}
else
{
if(i<m)
i++;
else
i=0;
}
}
for(i=0;i<m;i++)
if(a[i]!=0)
cout<<a[i];
}
2006-04-07 13:35
duxing
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2006-4-6
收藏
得分:0 
楼上的试试这个程序
2006-04-07 13:35
foolish
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-3-29
收藏
得分:0 

呵呵 我要求出列的顺序啊 不是求最后出来的那个序号!

2006-04-10 12:33
快速回复:[求助]约瑟夫不知哪有问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016889 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved