C++编程练习-与7无关的数


Description
一个正整数,如果它能被7整除,或者它的十进制表示法中某个位数上的数字为7,则称其为与7相关的数.现求所有小于等于n(n<100)的与7无关的正整数的平方和.
Input
输入为一行,正整数n,(n<100)
Output
输出小于等于n的与7无关的正整数的平方和
Sample Input
21
Sample Output
2336

参考代码

  1. #include <iostream>   
  2. #include <cmath>   
  3. using namespace std;  
  4. //judge whether the number contains 7   
  5. bool find7(int n){  
  6.     while(n){  
  7.         if(n % 10 == 7){  
  8.             return true;  
  9.         }  
  10.         n /= 10;  
  11.     }  
  12.     return false;  
  13. }  
  14. int main(){  
  15.     int i,n,sum;  
  16.     //input section   
  17.     std::cin>>n;  
  18.     //calculate   
  19.     sum = 0;  
  20.     for(i = 1;i <= n;i ++){  
  21.         if(i % 7 != 0 && !find7(i)){  
  22.             sum += (int)pow(1.0 * i,2);  
  23.         }  
  24.     }  
  25.     //output section   
  26.     std::cout<<sum<<std::endl;  
  27.     return 0;  
  28. }  

相关内容