一个算法问题
我想判断一下:6个正整数中至少有2个不为零,包括2个,,算法是什么啊 ,,望高人指点。。谢谢
谢谢,,不是,,是至多有4个,,呵呵 ,比如:1 1 0 0 0 0 ,这是最多的情况,,0不能多于4个,,是这个意思。。
[此贴子已经被作者于2007-10-31 8:34:11编辑过]
不是,,可能是我说的不清楚,,我是想判断6个非负的整数,,不是一个数中的各个位,这6个整数是不相关的,,你说的是判断一个数中有几个是0.
情况是这样的:我获得了6个独立的非负整数,,他们中至少有2个不是0,,我才能使用这6个数,,否则对我来说这6个数就是无效的 ,所以我要判断一下。
比如6个数:1 1 0 0 0 0 就可以满足我的使用要求,因为他们中至少有2个不是0,,而1 0 0 0 0 0 和 0 0 0 0 0 0就不能满足我的使用要求,,不知道这样说您清楚了没有。
//刚做的为您解答
#include<stdio.h>
void main()
{
int a,b,c,d,e,f,x,i;
for(x=0;x<=999999;x++)
{ a=x/100000;
b=x%100000/10000;
c=x%10000/1000;
d=x%1000/100;
e=x%100/10;
f=x/10;
i=0;
if(a==0) i++;
if(b==0) i++;
if(c==0) i++;
if(d==0) i++;
if(e==0) i++;
if(f==0) i++;
if(i<=4)
printf("\t%d",x);
}
}