「合ってますか?」と言われましてもあなたが書かれたのではないですか?
というところなのですが。
おそらく実務に使うというよりもプログラミングの学習中の方と想定しますが、宿題などを丸投げの質問をするのはTeratailのマナー上NGです。
今後の学習の参考として以下。
gmpは私は初めて見たライブラリですが
https://cran.r-project.org/web/packages/gmp/index.html
を見ますと任意精度演算のライブラリのようでnextprimeという関数もあるので、各種数値演算のライブラリと思います。
内容が全くわからないままそのライブラリを使うのはあまり推奨しません。一旦は合っていても想定外の結果となる場合が多いので。また、内容がわからないものをそのまま使っても応用が効かないので。
対処としては
Python 素数 アルゴリズム あたりで検索すれば実装例が多数検索ヒットするはずです
- gmpライブラリを使うのであればご自身でもう少し内容を調べましょう
英語が弱いのであればGoogle翻訳やDeepLなどの翻訳サイトを用いればある程度までの理解は比較的容易いです
まずhelp(nextprime)で関数の内容を確認しましょう
引数の次の素数を返してくれるみたいですね
であなたのコードはsで回数をカウントしていて1001回めで終了しているので丁度1001番めの素数が出力されるということで正しいです
答え合わせは
前述のとおりできればgmpを用いずに素数計算プログラムを作りそれと比較してみるのがよいです
「素数 一覧」などで検索すると簡単に一覧表がヒットします
https://mathtrain.jp/primetable
たとえばこちら。1001番めは7927で合っていますね。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。