| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 903 人关注过本帖
标题:数字翻牌算法---求助+讨论
取消只看楼主 加入收藏
dill131
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2006-9-8
收藏
 问题点数:0 回复次数:1 
数字翻牌算法---求助+讨论

编号为1-52张牌,正面向上,从第2张开始,以2为基数,是2的倍数的牌翻一次,直到最后一张牌;然后,从第3张开始,以3为基数,是3的倍数的牌翻一次,直到最后一张牌;然后…从第4张开始,以4为基数,是4的倍数的牌翻一次,直到最后一张牌;...再依次5的倍数的牌翻一次,6的,7的,直到以52为基数的翻过,输出此时正面向上的牌。输入数据:纸牌编号; 如上规则所述,输出最后正面向上的纸牌编号。

用线性表的存储来实现一个C++算法,谁有比较简单的算法,互相交流一下

以下是个例子,好象不对
#include<iostream>

using namespace std;

int main(int agc,char* agm[])
{
bool card[6];
int card_index = 0;
for(;card_index < 6;card_index++)
card[card_index] = true;
for(card_index = 2;card_index < 6;card_index++)
{
for(int times = 2;card_index*times < 6;times++)
{
card[card_index*times]= (card[card_index*times]==true)? false:true;
}
}
for(card_index = 1;card_index < 6;card_index++)
if(card[card_index] == true)
cout<<card_index<<endl;
return 1;
}

搜索更多相关主题的帖子: 翻牌 算法 数字 
2006-09-08 08:32
dill131
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2006-9-8
收藏
得分:0 

用数组做出来一个,不太难,难的是怎么用线性表做,还没想出来线性表的算法
实际上就是算约数的个数,或者取模也可以

2006-09-11 12:34
快速回复:数字翻牌算法---求助+讨论
数据加载中...
 
   



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

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