题目描述
一个正整数,如果它能被2整除,或者它的十进制表示中某个位数上的数字为2,则称其为与2相关的数。求所有小于等于N的与2无关的正整数的和。
例如:N = 8,<= 8与2无关的数包括:1 3 5 7,和为:16。
输入
一行,一个n, 2<=n<=1000。
输出
一行,输出一个整数,表示答案。
样例输入复制
8
样例输出复制
16
代码如下:
#include
int pd(int b){
int d[100];
int c=0;
int i=0;
while(b){
d[c++]=b%10;
b=b/10;
}
for( i=0;i<c;i++)
if(d[i]==2)
{
return 0;
break;
}
if(i>=c)
return 1;
}
int main(){
int n;
int a[100];
int t=0;
scanf("%d",&n);
int s=0;
if(n>=2&&n<=1000){
int i;
for(i=1;i<=n;i++)
if(i%2!=0&&pd(i)>0)
s=s+i;
}
printf("%d",s);
return 0;
}
0.0分
0 人评分