目次
最初に、次のコード例で使用するメソッドの構文の概要を説明します -
Example
説明
countCoprimes 関数は、L (範囲の開始値)、R (範囲の終了値)、および P (P の値) の 3 つのパラメーターを受け入れます。
countCoprimes 関数内で、変数 count を 0 に初期化し、互いに素数の数を保存します。
for ループは、L から R まで各数値 num を繰り返します。
P の素因数を格納するための順序なし因数セットを作成します。一時変数 tempP を P に初期化します。
2 から tempP の平方根まで繰り返します。 tempP が i で割り切れる場合、因数のセットに i を追加し、tempP が i で割り切れなくなるまで tempP を i で割ります。
上記のループの後、tempP が 1 より大きい場合、それは素数であり、因数に追加する必要があることを意味します。
ホームページ バックエンド開発 C++ C++ で、次を中国語に翻訳します。 L と R の間で、P と互いに素な数値の数を数えます。

C++ で、次を中国語に翻訳します。 L と R の間で、P と互いに素な数値の数を数えます。

Aug 26, 2023 pm 09:33 PM
r 計算する l 相互に素数 量。

C++ で、次を中国語に翻訳します。 L と R の間で、P と互いに素な数値の数を数えます。

コンピューター プログラミングの世界では、指定された範囲内で特定の数値と互いに素な数値の数を見つけることは一般的なタスクとなることがあります。相対素数とも呼ばれる相対素数は、1 以外に共通約数を持たない数です。この記事では、C 言語を使用して、与えられた整数 L と R の間で特定の数 P と互いに素な数の数を求める方法を検討します。

###文法###

最初に、次のコード例で使用するメソッドの構文の概要を説明します -

リーリー ###アルゴリズム###

互いに素な数の数を計算するために使用するアルゴリズムは次のとおりです -

変数 count を 0 に初期化します。これは、素数の数を格納するために使用されます。

  • L から R まで各数値 num を繰り返します。

  • 各数値について、P と互いに素であるかどうかを確認します。

  • num と P が互いに素な場合、カウントを 1 増やします。

  • count の最終値を返します。

  • 方法 1: 素朴な方法

  • 最初に説明する方法は単純な方法です。ユークリッドのアルゴリズムを使用して P との互いに素性を検証するには、この方法では指定された範囲内の各数値を繰り返しチェックする必要があります。

Example

の中国語訳は次のとおりです:

Example

リーリー ###出力### リーリー

説明

の中国語訳は次のとおりです:

説明

countCoprimes 関数は、L (範囲の開始値)、R (範囲の終了値)、および P (P の値) の 3 つのパラメーターを受け入れます。

countCoprimes 関数内で、変数 count を 0 に初期化し、互いに素数の数を保存します。

for ループは、L から R まで各数値 num を繰り返します。

ループ内で、変数 a と b をそれぞれ num と P に初期化します。

while ループでユークリッド アルゴリズムを使用し、モジュラー演算を繰り返し交換して実行することで、a と b の最大公約数 (GCD) を見つけます。

GCD (a に格納) が 1 に等しい場合、これは num と P が互いに素であることを意味します。この場合、count 変数をインクリメントします。

すべての数値を慎重に繰り返し、完了したらカウント値を返すことでカウント値を最終的に決定します。

メイン関数は、L、R、P 変数に適切な値を慎重に割り当てます。

次に、指定された値を使用して countCoprimes 関数を呼び出し、結果を result 変数に保存します。

最後に、L と R の間で P と相対的に素な数値の数を表示します。

方法 2: 素因数分解

この戦略には、P の素因数分解を利用して、L と R の間にある互いに素な整数の数を正確に計算することが含まれます。

Example

の中国語訳は次のとおりです:

Example

リーリー ###出力### リーリー

説明

の中国語訳は次のとおりです:

説明

countCoprimes 関数は、L (範囲の開始値)、R (範囲の終了値)、および P (P の値) の 3 つのパラメーターを受け入れます。

P の素因数を格納するための順序なし因数セットを作成します。一時変数 tempP を P に初期化します。

2 から tempP の平方根まで繰り返します。 tempP が i で割り切れる場合、因数のセットに i を追加し、tempP が i で割り切れなくなるまで tempP を i で割ります。

上記のループの後、tempP が 1 より大きい場合、それは素数であり、因数に追加する必要があることを意味します。

変数 count を 0 に初期化し、互いに素な数の数を保存します。

L から R まで各数値 num を反復処理し、設定された因数のいずれかの因数で割り切れるかどうかを確認します。可能であれば、非共素というラベルを付けます。

すべての数値の反復が完了すると、結果のカウントが最終値として返されます。 main関数としては、L、R、Pを指定された値で初期化します。

次に、指定された値を使用して countCoprimes 関数を呼び出し、結果を result 変数に保存します。

最後に、L と R の間で P と相対的に素な数値の数を表示します。

###結論は###

指定された範囲 L-R 内の共素数を計算し、特定の値 P を満たすことは、プログラマーにとって良い課題です。しかし、コード レベルでは、最善のアプローチは何でしょうか?この記事の一部として、このような問題を解決する際に実際の効率を提供する 2 つの C の使用例を詳しく説明します。まず、ターゲット区間内のすべての値を反復処理し、ユークリッド アルゴリズムを使用して数値が互いに素数として一致するかどうかを確認し、さらに最適化戦略を使用するオイラー関数法を使用します。どの方法を使用するかに関係なく、それを最大限に活用できるかどうかは、選択する数値や指定する間隔などの状況要因に大きく依存しますが、可能な 2 つの方法の間で賢明に選択することで、全体的な速度が大幅に向上します。プログラムの速度。技術的なスキルと創造的な問題解決能力に技術的な知識を加えたいと考えているプログラマーにとって、これらの方法で C を使用した素数の数え方をマスターすることは、まさに必要なことかもしれません。

以上がC++ で、次を中国語に翻訳します。 L と R の間で、P と互いに素な数値の数を数えます。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

CUDA の汎用行列乗算: 入門から習熟まで! CUDA の汎用行列乗算: 入門から習熟まで! Mar 25, 2024 pm 12:30 PM

General Matrix Multiplication (GEMM) は、多くのアプリケーションやアルゴリズムの重要な部分であり、コンピューター ハードウェアのパフォーマンスを評価するための重要な指標の 1 つでもあります。 GEMM の実装に関する徹底的な調査と最適化は、ハイ パフォーマンス コンピューティングとソフトウェア システムとハードウェア システムの関係をより深く理解するのに役立ちます。コンピューター サイエンスでは、GEMM を効果的に最適化すると、計算速度が向上し、リソースが節約されます。これは、コンピューター システムの全体的なパフォーマンスを向上させるために非常に重要です。 GEMM の動作原理と最適化方法を深く理解することは、最新のコンピューティング ハードウェアの可能性をより有効に活用し、さまざまな複雑なコンピューティング タスクに対してより効率的なソリューションを提供するのに役立ちます。 GEMMのパフォーマンスを最適化することで

Word文書で足し算、引き算、掛け算、割り算を計算する方法 Word文書で足し算、引き算、掛け算、割り算を計算する方法 Mar 19, 2024 pm 08:13 PM

WORD は強力なワード プロセッサです。Word を使用してさまざまなテキストを編集できます。Excel の表では、足し算、引き算、乗算の計算方法をマスターしました。そのため、Word の表で数値の足し算を計算する必要がある場合は、乗数を引くにはどうすればよいですか? 計算には電卓しか使用できませんか?答えはもちろん「いいえ」です。WORD でも実行できます。今日は、Word文書の表で加算、減算、乗算、除算などの基本的な演算を数式を使って計算する方法を説明しますので、一緒に学びましょう。そこで、今日は、WORD 文書で加算、減算、乗算、除算を計算する方法を詳しく説明します。ステップ 1: WORD を開き、ツールバーの [挿入] の下にある [表] をクリックし、ドロップダウン メニューに表を挿入します。

Python の count() 関数を使用してリスト内の要素の数を数える方法 Python の count() 関数を使用してリスト内の要素の数を数える方法 Nov 18, 2023 pm 02:53 PM

Python の count() 関数を使用してリスト内の要素の数を計算する方法には、特定のコード サンプルが必要です。Python は強力で習得しやすいプログラミング言語として、さまざまなデータ構造を処理するための組み込み関数を多数提供しています。その 1 つは count() 関数で、リスト内の要素の数をカウントするために使用できます。この記事では、count()関数の使い方と具体的なコード例を詳しく説明します。 count() 関数は Python の組み込み関数であり、特定の値を計算するために使用されます。

Java で部分文字列の出現数を再帰的にカウントする Java で部分文字列の出現数を再帰的にカウントする Sep 17, 2023 pm 07:49 PM

2 つの文字列 str_1 と str_2 を指定します。目的は、再帰的プロシージャを使用して、文字列 str1 内の部分文字列 str2 の出現数をカウントすることです。再帰関数は、その定義内で自分自身を呼び出す関数です。 str1 が「Iknowthatyouknowthatiknow」、str2 が「know」の場合、出現回数は -3 になります。例を通して理解しましょう。たとえば、入力 str1="TPisTPareTPamTP"、str2="TP"; 出力 Countofoccurrencesofasubstringrecursi

行列式を使用して三角形の面積を計算するJavaプログラム 行列式を使用して三角形の面積を計算するJavaプログラム Aug 31, 2023 am 10:17 AM

はじめに 行列式を使用して三角形の面積を計算する Java プログラムは、3 つの頂点の座標を指定して三角形の面積を計算できる簡潔で効率的なプログラムです。このプログラムは、Java で基本的な算術および代数計算を使用する方法と、Scanner クラスを使用してユーザー入力を読み取る方法を示しているため、ジオメトリを学習または操作する人にとって役立ちます。プログラムはユーザーに三角形の 3 点の座標を入力するように要求し、その座標が読み取られて、座標行列の行列式を計算するために使用されます。行列式の絶対値を使用して面積が常に正であることを確認し、式を使用して三角形の面積を計算し、ユーザーに表示します。このプログラムは簡単に変更して、さまざまな形式での入力を受け入れたり、追加の計算を実行したりできるため、幾何学的計算のための多用途ツールになります。決定要因のランク

C# で Math.Pow 関数を使用して指定した数値のべき乗を計算する方法 C# で Math.Pow 関数を使用して指定した数値のべき乗を計算する方法 Nov 18, 2023 am 11:32 AM

C# には、多くの数学関数が含まれる Math クラス ライブラリがあります。これらには、累乗を計算する関数 Math.Pow が含まれており、指定された数値の累乗を計算するのに役立ちます。 Math.Pow 関数の使用法は非常に簡単で、基数と指数を指定するだけです。構文は次のとおりです: Math.Pow(base,exponent); ここで、base は基数を表し、exponent は指数を表します。この関数は double 型の結果、つまりべき乗の計算結果を返します。しましょう

合計スコアとパーセンテージを計算する Java プログラムの例 合計スコアとパーセンテージを計算する Java プログラムの例 Sep 11, 2023 pm 06:01 PM

Java プログラムを使用して合計スコアとパーセンテージを計算する方法を示します。合計スコアは利用可能なすべてのスコアの合計を指しますが、パーセンテージという用語は、計算されたスコアを合計スコアで割って、結果の数値 100 を掛けたものを指します。 percentage_of_marks=(obtained_marks/total_marks)×100 例 1 これは、合計スコアとパーセンテージを計算する方法を示す Java プログラムです。 //Totalmarks と Percentagecalculated をデモンストレーションする Java プログラムimportjava.io.*;publicclassTotalMarks_

PHP 日付処理のヒント: PHP を使用して日付間の月の差を計算するにはどうすればよいですか? PHP 日付処理のヒント: PHP を使用して日付間の月の差を計算するにはどうすればよいですか? Mar 20, 2024 am 11:24 AM

PHP 日付処理のヒント: PHP を使用して日付間の月の差を計算するにはどうすればよいですか?日付処理は、Web 開発、特に時間に関連する必要があるビジネス ロジックにおいて非常に一般的な要件です。 PHP では、いくつかの方法で日付間の月の差を計算できます。この記事では、PHP を使用して 2 つの日付間の月の差を計算する方法を紹介し、具体的なコード例を示します。方法 1: DateTime クラスを使用する PHP の DateTime クラスは、日付の計算など、豊富な日付処理メソッドを提供します。

See all articles