问题标题: 酷町堂:1038 与7相关的数,急!!!

0
0
已解决
叶沄昊
叶沄昊
高级守护
高级守护

WA20

错误代码:

#include <bits/stdc++.h>
using namespace std;

int n;
long long sum=0;
int main(){
	cin>>n;
	for(int i=1;i<=n;i++){
        int a=i%10;
        int b=i/10%10;
        int c=a/100;
		if(a==7 || b==7 || c==7 || i%7==0){
			sum+=i;
		} 
	}
	cout<<sum;
	return 0;
} 

快!!!

叶沄昊在2022-09-25 18:49:51追加了内容

更新一下:

WA70

#include<iostream>
using namespace std;

int n,s=0;
int main(){
    cin>>n;
    for(int i=1;i<=n;i++){
        if(i%10==7||i/10%10==7||i/100%10==7||i%7==0){
        	s+=i;
		}
    }
    cout<<s;
    return 0;
}

 


0
已采纳
崔子周
崔子周
高级天翼
高级天翼

同学你好,这道题是考验我们的if判断能力,你的if判断有问题,可以修改一下,以下我我的核心AC代码(伪代码)

循环(i=1~n){

    如果(i%7==0||i/10%10==7||i%10==7||i/100%10==7||i/1000%10==7||i/10000==7){

        求和+=i;

    }

}

望采纳,谢谢

0
0
0
丁梓豪
丁梓豪
新手天翼
新手天翼

看清楚了,这题输入的数小于等于10000,你的判断少了

0
丁梓豪
丁梓豪
新手天翼
新手天翼

判断应该为if(n%10==7||n/10%10==7||n/100%10==7||n/1000%10==7||n/10000==7||n%7==0)

0
朱睿辰
朱睿辰
资深守护
资深守护

他是我们火箭班的同学

0
我要回答