【问题描述】
找7:输入正整数n,编程输出1~n之间所有含有数字7或7的倍数的数(如:17、28、71等)。
找12:输入正整数n,编程输出1~n之间所有含有数字12或12的倍数的数(如:12、24、121等)。
【输入形式】
输入正整数n
【输出形式】
从小到大输出所有的符合条件的数,数字和数字之间使用空格分隔。
找7:
#include <iostream>
using namespace std;
bool contains(int i,int t) {
while(i>0) {
if(i%10==t)
return true;
i/=10;
}
return false;
}
int main() {
int n=0;
cin>>n;
int i=0;
for(i=1; i<=n; i++) {
if(i%7==0||contains(i,7))
cout<<i<<" ";
}
return 0;
}
找12:
#include <iostream>
using namespace std;
int main() {
int n,x=0,p,i;
cin>>n;
for(i=1; i<=n; i++) {
x=0;
p=i;
while (p>=10) {
if(p%100==12) {
x=1;
}
p=p/10;
}
if(i%12==0||x==1)
cout<<i<<" ";
}
return 0;
}