adnss

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  23 随笔 :: 0 文章 :: 0 评论 :: 2857 阅读
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

描述
一个正整数,如果它能被7整除,或者它的十进制表示法中某一位上的数字为7,则称其为与7相关的数.现求所有小于等于n(n < 100)的与7无关的正整数的平方和.
输入
输入为一行,正整数n(n < 100)
输出
输出一行,包含一个整数,即小于等于n的所有与7无关的正整数的平方和。
样例输入
21
样例输出
2336
题意
找出N以内所有与7无关的数(不能被7整除且各个数位都不是7),并算出他们的平方和。
解题思路
先用for找出小于等于n的数,再用“%10”的方法来判段哪些数是与7无关的数,然后用b代替for中的i,然后用while算出n以内与7无关的i的平方和,最后输出sum。
代码实现

include<bits/stdc++.h>

using namespace std;
int main(){
    int n,sum,sum1=0,a=0;
    cin>>n;
    for(int i=1;i<=n;i++){//i表示n以内的整数
        if(i%7!=0){ 
            sum=i;//用sum代替i是因为在后面需要拆解i,所以需要用sum代替i
            while(sum!=0){
            if(sum%10==7){//表示判断了sum各个数位上是否有7 
                a=1;//标记哪一个是与7有关的数 
            }  
            sum=sum/10;//表示分解sum各位上的数
            }
            if(a==0){
                sum1=sum1+i*i;
            }
            a=0;//表示返回起点
                  }	
    }
cout<<sum1;
return 0;

}

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