有能编写函数输出指定范围内的质数的C++代码么?

有能编写函数输出指定范围内的质数的C++代码么?
C++

#include <iostream>
using namespace std;
int IsPrime(int n){
    for(int i = 2; i <= n / 2; ++i){
      if(n % i == 0)
      {    
          return 0;
      }
  }
  return 1;
}
int main(){
  int n,n2;
  cout << "输入两个范围内正整数: ";
  cin >>n>>n2;
  for(int i=n;i<n2;i++){
      if (IsPrime(i)==1)
      cout <<i<<" ";
  }
  return 0;
}

img

#include <iostream>
using namespace std;

int isprime(int n)
{
    for(int i=2;i*i<=n;i++)
        if(n%i==0)
          return 0;
    return 1;
}
int main()
{
    int m,n;
    cin>>m>>n;
    for(int i=m;i<=n;i++)
        if(isprime(i))
            cout<<i<<" ";
    return 0;
}