与7无关的数-题解

描述

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

输入

输入为一行,正整数n(n < 100)

输出

输出一行,包含一个整数,即小于等于n的所有与7无关的正整数的平方和。

样例输入

 21

样例输出

 2336

 题意

 找出n以内所有与7无关数( 不能被7整除,并且各个数位没有7)的平方和;

 解题思路

 用for找出所有小于等于n的数,先用if判断这个数是否能被7整除,再用一个变量b代替i,再用while来算出b各个位上的数是否等于7,最后求出i的平方和并输出。

 代码实现

 

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n,a=0,s=0,b;
    cin>>n;
    for(int i=1;i<=n;i++){// i代表了n以内的数
       if(i%7!=0){
          b=i;//用b代替了i是因为在后面需要拆解i,所以应用b代替了i
          while(b!=0){

              if(b%10==7){//表示判断了b各个数位上是否有7
                  a=1;//标记哪一个数是与7有关的
              }
              b=b/10;// 表示分解b各位上的数
          }
          if(a==0){
              s=s+i*i;
          }
          a=0;//表示返回起点
        }
     }
     cout<<s<<endl;
          return 0;
}

 

 

posted @   Lily0419  阅读(1366)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示