検索
ホームページバックエンド開発C++指定された 2 進数を L と R の間の基数に変換した後、素数の数を計算します

指定された 2 進数を L と R の間の基数に変換した後、素数の数を計算します

タイトル「L と R の間で指定された 2 進数を変換した後の素数の数」は、L と R の間で 2 進数を基数に変換し、それから数を数えるという数学の問題を指します。 L と R の間の素数の数。変換する。数学では、素数は 1 より大きく、1 とそれ自体でのみ割り切れる整数です。

2 進数を別の基数の数値に変換するには、その数値を別の記数法で記述する必要があります。数値体系の基数は一意の数値の数であり、変換は新しい基数でその数値の同等の表現を見つけることによって行われます。変換後の素数の計算は、暗号化、コンピューター サイエンス、その他の分野で使用される難しい数論の問題です。この問題を解決するには、数論、素数、数体系についてよく知る必要があります。

素数とは何ですか?

数値は、1 とその数値自体で割り切れる場合にのみ素数と呼ばれます。たとえば、数字 5 は、数字 1 と 5 でしか割り切れないため素数ですが、6 は 2 と 3 でも割り切れるため、素数ではありません。

素数の数は、単に与えられた数値のセットに素数がいくつあるかを尋ねるものです。たとえば、数値のセット {1,2,3,4,5,6,7,8,9} を考えます。この数値のセットでは、素数の数は 4 で、素数は 2、3、5 です。 、および7。さらに、1 は素数ではありません。正の因数は 1 自体だけであるためです。

###方法###

素数問題を計算するには、次の 2 つの主な方法があります。 -

    暴力的な方法
  • ######素因数分解######

    ###アルゴリズム###
  • ステップ 1

    - 2 進数と、基数 L と R の範囲を入力します。

ステップ 2

- L と R (両端を含む) の間の各塩基を繰り返します。

ステップ 3 - 2 進数を現在の基数に変換します。

ステップ4 -変換された数値が素数かどうかを確認します。

ステップ 5 - 変換された数値が素数の場合、素数の数を 1 増やします。

ステップ 6 - L から R の範囲内のすべての塩基に対してステップ 3 ~ 5 を繰り返します。

ステップ7 -取得した素数の総数を返します。

アルゴリズムの疑似コードを以下に示します - リーリー number_is_prime() は、入力として数値を受け取り、その数値が素数かどうかを示すブール値を返すメソッドです。

方法 1: 暴力的な解決策 ブルート フォース アプローチでは、2 進数を L から R までの各塩基に変換し、各変換で素数の数を数えます。数値が大きい場合は、考えられるすべてのバリエーションをチェックする必要があり、時間がかかる可能性があります。

次のコードには 3 つの関数が含まれています。最初の関数は「isPrime」で、入力数値が素数の場合は 1 を返し、それ以外の場合は 0 を返します。 2 番目の関数「binaryToDecimal」は、2 進数を 10 進数に変換します。 3つ目の関数「countPrimes」は、入力範囲内の2進数を10進数に変換して得られる素数の個数をカウントします。最後に、main 関数は 2 進数と数値の範囲を受け取り、「countPrimes」関数を呼び出して素数の数を出力します。

Example

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

Example

このコードは、2 進数と範囲 L および R の事前定義された値を提供します。この例では、2 進数 1010 と範囲 5 ~ 20 を使用しました。必要に応じて、main 関数でこれらの値を変更できます。

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

方法 2: 素因数分解

素因数分解では、変換された数値の素因数を見つけて、それらが素数の範囲内にあるかどうかを確認します。数値が小さい場合は効率的な方法ですが、数値が大きい場合は計算コストが高くなる可能性があります。

次のコードは、指定された数値が素数であるかどうかを確認するか、指定された数値の前にある素数の数をカウントする 2 つの関数 isPrime() および countPrimes() を定義します。 main 関数は、ユーザーが入力した 2 進数と基数制限を受け入れ、2 進数を 10 進数に変換し、指定された制限内で別の基数に変換します。変換ごとに、プログラムは素因数を探し、それらが現在の基本制限内にある場合はカウンターを増分します。最後に、プログラムは見つかった素数の数を出力します。このコードは、標準入出力およびブール ライブラリをインポートします。

コード

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

コード

リーリー ###出力### リーリー ###結論は###

要約すると、まず与えられた 2 進数を L と R の間の基数に変換し、次にその範囲内の素数の数を数えることによって、素数の数を決定できます。

以上が指定された 2 進数を L と R の間の基数に変換した後、素数の数を計算しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事はtutorialspointで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
面向AI的数据治理体系如何构建?面向AI的数据治理体系如何构建?Apr 12, 2024 pm 02:31 PM

近年来,随着新技术模式的出现,各行业应用场景价值打磨与海量数据积累下的产品效果提升,人工智能应用已从消费、互联网等领域,向制造、能源、电力等传统行业辐射。各行业企业在设计、采购、生产、管理、销售等经济生产活动主要环节的人工智能技术和应用成熟度在不断提升,加速人工智能在各环节的落地覆盖,逐渐将其与主营业务相结合,以实现产业地位提高或经营效益优化,进一步扩大自身优势。人工智能技术创新应用的大规模落地,推动了大数据智能市场的蓬勃发展,同样也为底层的数据治理服务注入了市场活力。伴随着大数据、云计算以及算

c++中prime什么意思c++中prime什么意思May 07, 2024 pm 11:33 PM

prime 是 C++ 中的关键字,表示质数类型,只能被 1 和本身整除,用作布尔类型指示给定值是否为质数,为质数则为 true,否则为 false。

prime在c++中什么意思prime在c++中什么意思May 07, 2024 pm 11:24 PM

在 C++ 中,prime 指质数,即大于 1 且只能被 1 和它本身整除的自然数。质数在密码学、数学问题和算法中应用广泛。生成质数的方法包括厄拉多塞筛法、费马小定理和米勒-拉宾检验。C++ 标准库中提供 isPrime 函数判断是否是质数,nextPrime 函数返回大于给定值的最小质数,prevPrime 函数返回小于给定值的最小质数。

百度网盘怎么白嫖会员百度网盘怎么白嫖会员Feb 06, 2024 pm 04:15 PM

百度网盘怎么白嫖会员?百度网盘是一个能够为用户们提供优质数据存储服务的云盘软件,可以帮助用户快速储存和下载一切数据资料。但是很多情况下,没有会员服务的普通网盘用户的下载速率非常有限,因此很多小伙伴都想白嫖会员的权限,但却不清楚该怎么做,下面就由小编为大家带来网盘会员免费领取方法介绍。百度网盘怎么白嫖会员百度网盘一直有一个免费领取1天或7天试用会员的活动,但很多同学不知道如何免费领取。这个活动允许所有用户每个月免费领取一次,新用户首次可以免费领取7天的会员,而老用户每次可以领取1天的会员。免费领取

数据线哪两根是电源线颜色 详细讲解:数据线里面四根线详解数据线哪两根是电源线颜色 详细讲解:数据线里面四根线详解Feb 06, 2024 pm 05:10 PM

数据线里面四根线分别为:红色为电源供电正极,黑色是电源供电负极,绿色线为数据传输正极,白色线为数据传输负极线。箭头所指即为铝箔屏蔽层一些高品质的数据线采用铝箔包裹四根线,以有效阻挡外界干扰,从而实现更优质的数据传输效果。此外,高品质数据线还采用纯铜材料,不仅充电速度更快,传输速率也更高。日常手机充电只使用数据线中的两根线,红色线为正极,黑色线为负极,负责提供电流。充电过程中并不会用到绿色和白色两根数据传输线,只有进行电脑和手机相互间数据传输时,才会用到绿色和白色两根数据传输线。由于并不涉及提供供

少量数据实现高通用性,KAIST开发药物设计3D分子生成新框架少量数据实现高通用性,KAIST开发药物设计3D分子生成新框架Apr 02, 2024 pm 09:30 PM

编辑|萝卜皮深度生成模型具有加速药物设计的巨大潜力。然而,由于数据有限,现有的生成模型常常面临泛化方面的挑战,导致设计创新性较差。为了解决这些问题,韩国KAIST的研究人员提出了一种相互作用感知的3D分子生成功能框架,该框架能够在靶标结合口袋内进行相互作用引导的相互作用设计。通过利用蛋白质-配体相互作用的通用模式作为先验知识,该模型可以利用有限的实验数据实现高度的通用性。同时,利用蛋白质质量-配体质量作为相互作用用途的通用模式,该模型可以在通用性和高度特异性之间实现良好的平衡,这为药物设计提供了

绿色智能:人工智能驱动的全球环境解决方案创新绿色智能:人工智能驱动的全球环境解决方案创新May 08, 2024 pm 05:55 PM

在我们寻求克服当今世界紧迫的环境挑战的过程中,人工智能(AI)脱颖而出,成为一股变革力量。被称为“绿色智能”的人工智能驱动技术,不仅重塑了我们在全球范围内解决污染、废物管理和自然资源保护的方式,而且正处在彻底改变这种方式的过程中。通过利用人工智能的能力,我们可以分析大量数据集、预测环境风险,并以前所未有的精度和速度实施解决方案。这种技术的实践证明,在我们追求更可持续、更具弹性未来的过程中至关重要,使我们能够更有效地应对地球上最关键的问题。当我们采用人工智能来应对环境挑战时,我们不仅改善了今天的应

Java 函数有哪些适合自学者的教育资源?Java 函数有哪些适合自学者的教育资源?Apr 29, 2024 am 09:48 AM

学习Java函数的自学者可以利用以下资源:OracleJava教程和IBMJavaFunctions文档提供基础和用法。Codecademy和HackerRank等交互式环境提供即时反馈和练习。LeetCode提供高质量的算法问题,进一步测试技能。实战案例展示了Java函数在计算圆面积和检查质数中的应用。

See all articles

ホット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ヘンタイを無料で生成します。

ホットツール

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。