题目描述:
-
一个正整数,如果它能被7整除,或者它的十进制表示法中某个位数上的数字为7,
则称其为与7相关的数.现求所有小于等于n(n<100)的与7无关的正整数的平方和。
-
输入:
-
案例可能有多组。对于每个测试案例输入为一行,正整数n,(n<100)
-
输出:
-
对于每个测试案例输出一行,输出小于等于n的与7无关的正整数的平方和。
-
样例输入:
-
21
-
样例输出:
-
2336
-
来源:
- 2008年北京大学软件所计算机研究生机试真题
-
- 代码:
-
//与7无关的数 #include<iostream> #include<string> using namespace std; bool is7num(int x) { int y = 0; if(x%7==0) return true; else { while(x) { y = x%10; x = x/10; if(y==7) return true; } } return false; } int main() { int n; int m; while(cin>>n&&n>0&&n<100){ m=0; for(int i=1; i<=n; i++) { if(!is7num(i)) { m += i*i; } } cout<<m<<endl; } return 0; }
1. 输入格式应为while(*这里面是输入语句*) - 2. 输出后面添加换行
- 3. 第一次把题目看成了与7有关的数,要仔细审题啊!