(算法练习)——与7无关的数

要求:
http://codeup.cn/problem.php?cid=100000588&pid=11
说明:
这一题主要注意使用c++判断是否输入结束,使用while(cin>>n)就可以了(判断cin输入是否为真)
代码:

#include <stdio.h>
#include <iostream>
#include <math.h>
#include <string>
using namespace std;

int judge(int i,int p){
	if(i %7 == 0){
		p = 0;
	}
	else if(i %10 == 7){
		p = 0;
	}
	else if(i /10 == 7){
		p = 0;
	}
	else{
		p = 1;
	}
	return p;	
}

int sum1(int a){
	int sum = 0;
	int p =1;
	for(int i = 1;i <=a;i++){
		if(judge(i,p) == 0){
			;
		}
		else{
			sum = sum + i*i;
		}	
	}
	return sum;
}

int main(){
	string n;
	while(cin>>n){
		
		int b = n.length();
		if(b == 1){
			int num = n[0]-'0';
			printf("%d\n",sum1(num));
		}
		else{
			int num = (n[0]-'0')*10 + n[1]-'0';
			printf("%d\n",sum1(num));
		}	
	}
}
发布了117 篇原创文章 · 获赞 3 · 访问量 2612

猜你喜欢

转载自blog.csdn.net/weixin_42377217/article/details/104087703