【問題描述】
找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;
}