请问大佬们,这个代码哪里错了?
#include<iostream> bool isprime(int x){ if(x<2)return 0; for(int i=0;i*i<x;i++){ if(!x%i)return 0; } return 1; } int main(){ int x,i; std::cin>>x; for(i=x;;i--){ if(isprime(i)&&!x%i)break; } std::cout<<i; }/*#include<iostream> bool isprime(int x){ if(x<2)return 0; for(int i=0;i*i<x;i++){ if(!x%i)return 0; } return 1; } int main(){ int x,i; std::cin>>x; for(i=x;;i--){ if(isprime(i)&&!x%i)break; } std::cout<<i; }*/