• 大数除法(字符串除以整数)
  • 单独写一个判断的余数的函数
#include<iostream>
#include<string>
using namespace std;

bool div_str(string a, int b){
    int yushu=0;//余数
    int beichushu;//被除数
    for(int i=0;i<a.size();i++){
        beichushu=yushu*10+a[i]-'0';
        yushu=beichushu%b;
    }
    if(yushu==0)return true;
    else return false;
}

 int main(){
     string c;
     while(cin>>c){
         if(c[0]=='-')printf("none");
         else {
             int sum=0;
             for(int i=2;i<=9;i++){
                 if(div_str(c,i)){
                     sum++;
                     if(sum==1)printf("%d",i);
                     else printf(" %d",i);
                 }
             }
             if(sum==0)printf("none");
         }
         printf("\n");
         
     }
     return 0;
 }