幸运数字问题

#include "stdafx.h"
#include <iostream>
using namespace std;

int finddata(int m,int ibegin,int iend)
{
 int it,icount,itemp;
 bool flag;
 icount=0;
    for(ibegin;ibegin<=iend;ibegin++)
    {
       itemp=ibegin;
    flag=true;
    while(itemp!=0)
    {
     it=itemp%10;
     itemp=itemp/10;
     if ((it!=4)&(it!=7))
     {
      flag=false;
      break;
     }

    }
    if(flag==true)
    {
     icount++;
     if(m==icount)
     {
      return ibegin;
     }
    }
    else
    {
     if(ibegin==iend)
     {
      return finddata(m-icount,ibegin,iend*10);
     }
    }
   
    }
}
int _tmain(int argc, _TCHAR* argv[])
{
 int n;
 int ib,id;
 ib=1;
 id=10;
 cin>>n;
 cout<<"幸运数目是:"<<finddata(n,ib,id);
    getchar();
 getchar();
 return 0;
}

原文地址:https://www.cnblogs.com/batman425/p/3193347.html