取7运算,取一个数范围内所有与7相关的数字(7的倍数或者含有7),为什么我编写的程序一直不显示结果
#include "iostream"
#include "vector"
#include "algorithm"
using namespace std;
int Static(int n)
{
int m = 0;
vector<int> x;
int i = 1;
while (i <= n)
{
x.clear();
if (i % 7 == 0)
m++;
while (i != 0)
{
x.push_back(i % 10);
i /= 10;
}
auto y=find(x.begin(), x.end(), 7);
if (y != x.end() && i % 7 != 0)
m++;
i++;
}
return m;
}
int main()
{
int m;
cin >> m;
int x = Static(m);
cout << x << endl;
}