1/C# 中的 BigInteger

2023-12-12

我要实现

BigInteger.ModPow(1/BigInteger, 2,5);

but 1/BigInteger总是回来0,这导致结果是0也。我试着寻找一些BigDecimalc# 的类,但我什么也没找到。即使没有,有什么方法可以计算这个吗?BigDecimal?


1/a对于 |a|>1 来说是 0,因为BigIntegers使用整数除法,其中忽略除法的小数部分。我不确定您对此期望什么结果。

我假设你想要模乘逆 of a modulo m,而不是小数。这个逆存在当且仅当a and m是互质的,即gcd(a, m) = 1.

链接的维基百科页面列出了计算模乘逆的两种标准算法:

  • 扩展欧几里得算法,适用于任意模数
    它速度很快,但运行时依赖于输入。

    我手头没有 C# 代码,但从维基百科移植伪代码应该很简单。

  • Using Euler's theorem:
    $i^{-1} = i^{φ(n)-1}$
    This requires knowledge of φ(m) i.e. you need to know the prime factors of m. It's a popular choice when m is a prime and thus φ(m) = m-1 when it simply becomes $a^{-1} = a^{p-2}$. If you need constant runtime and you know φ(m), this is the way to go.

    在 C# 中这变成了BigInteger.ModPow(a, phiOfM-1, m)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

1/C# 中的 BigInteger 的相关文章

  • boost::multi_index_container 复合键中的 equal_range 与比较运算符

    我正在尝试从多索引容器查询结果 其中值类型是三个元素的结构 第一个值已给出 但第二个和第三个值必须大于或小于查询参数 经过搜索后 我发现必须实现自定义密钥提取器 并且这里的一些链接建议相同 但我无法实现它 boost multi index
  • fgets() 和 Ctrl+D,三次才能结束?

    I don t understand why I need press Ctrl D for three times to send the EOF In addition if I press Enter then it only too
  • Cygwin 下使用 CMake 编译库

    我一直在尝试使用 CMake 来编译 TinyXML 作为一种迷你项目 尝试学习 CMake 作为补充 我试图将其编译成动态库并自行安装 以便它可以工作 到目前为止 我已经设法编译和安装它 但它编译成 dll 和 dll a 让它工作的唯一
  • 跨多个控件共享事件处理程序

    在我用 C 编写的 Windows 窗体应用程序中 我有一堆按钮 当用户的鼠标悬停在按钮上时 我希望按钮的边框发生变化 目前我有以下多个实例 每个按钮一个副本 private void btnStopServer MouseEnter ob
  • 使用 C# 在 WinRT 中获取可用磁盘空间

    DllImport kernel32 dll SetLastError true static extern bool GetDiskFreeSpaceEx string lpDirectoryName out ulong lpFreeBy
  • 基于范围的 for 循环中的未命名循环变量?

    有没有什么方法可以不在基于范围的 for 循环中 使用 循环变量 同时也避免编译器发出有关未使用它的警告 对于上下文 我正在尝试执行以下操作 我启用了 将警告视为错误 并且我不想进行像通过在某处毫无意义地提及变量来强制 使用 变量这样的黑客
  • 按字典顺序对整数数组进行排序 C++

    我想按字典顺序对一个大整数数组 例如 100 万个元素 进行排序 Example input 100 21 22 99 1 927 sorted 1 100 21 22 927 99 我用最简单的方法做到了 将所有数字转换为字符串 非常昂贵
  • 在 ASP.Net Core 2.0 中导出到 Excel

    我曾经使用下面的代码在 ASP NET MVC 中将数据导出到 Excel Response AppendHeader content disposition attachment filename ExportedHtml xls Res
  • 使用向量的 merge_sort 在少于 9 个输入的情况下效果很好

    不知何故 我使用向量实现了合并排序 问题是 它可以在少于 9 个输入的情况下正常工作 但在有 9 个或更多输入的情况下 它会执行一些我不明白的操作 如下所示 Input 5 4 3 2 1 6 5 4 3 2 1 9 8 7 6 5 4 3
  • 使用安全函数在 C 中将字符串添加到字符串

    我想将文件名复制到字符串并附加 cpt 但我无法使用安全函数 strcat s 来做到这一点 错误 字符串不是空终止的 我确实设置了 0 如何使用安全函数修复此问题 size strlen locatie size nieuw char m
  • 如何在 Team Foundation 上强制发表有意义的签入评论?

    我有一个开发团队有一个坏习惯 他们写道poor签入评论 当我们必须在团队基础上查看文件的历史记录时 这使得它成为一场噩梦 我已经启用了变更集评论政策 这样他们甚至可以在签到时留下评论 否则他们不会 我们就团队的工作质量进行了一些讨论 他们很
  • 使用 LINQ 查找列表中特定类型的第一个元素

    使用 LINQ 和 C 在元素列表中查找特定类型的第一个项目的最短表示法是什么 var first yourCollection OfType
  • 更改窗口的内容 (WPF)

    我创建了一个简单的 WPF 应用程序 它有两个 Windows 用户在第一个窗口中填写一些信息 然后单击 确定 这会将他们带到第二个窗口 这工作正常 但我试图将两个窗口合并到一个窗口中 这样只是内容发生了变化 我设法找到了这个更改窗口内容时
  • C 中的位移位

    如果与有符号整数对应的位模式右移 则 1 vacant bit will be filled by the sign bit 2 vacant bit will be filled by 0 3 The outcome is impleme
  • 将应用程序从 Microsoft Access 迁移到 VB 或 C#.NET

    我目前正试图说服管理层需要将我们的应用程序之一移植到 NET 该应用程序已经发展成为 Access 中的一个庞然大物 SQL 后端 拥有 700 个链接表 650 个表单 子表单 130 个模块和 850 个查询 我几乎知道这样做的所有主要
  • 将日期参数传递给对 MVC 操作的 ajax 调用的安全方法

    我有一个 MVC 操作 它的参数之一是DateTime如果我通过 17 07 2012 它会抛出一个异常 指出参数为空但不能有空值 但如果我通过01 07 2012它被解析为Jan 07 2012 我将日期传递给 ajax 调用DD MM
  • 在Linux中使用C/C++获取机器序列号和CPU ID

    在Linux系统中如何获取机器序列号和CPU ID 示例代码受到高度赞赏 Here http lxr linux no linux v2 6 39 arch x86 include asm processor h L173Linux 内核似
  • 如何在 C# 中播放在线资源中的 .mp3 文件?

    我的问题与此非常相似question https stackoverflow com questions 7556672 mp3 play from stream on c sharp 我有音乐网址 网址如http site com aud
  • 更改显示的 DPI 缩放大小使 Qt 应用程序的字体大小渲染得更大

    我使用 Qt 创建了一些 GUI 应用程序 我的 GUI 应用程序包含按钮和单选按钮等控件 当我运行应用程序时 按钮内的按钮和字体看起来正常 当我将显示器的 DPI 缩放大小从 100 更改为 150 或 200 时 无论分辨率如何 控件的
  • 不同类型的指针可以互相分配吗?

    考虑到 T1 p1 T2 p2 我们可以将 p1 分配给 p2 或反之亦然吗 如果是这样 是否可以不使用强制转换来完成 或者我们必须使用强制转换 首先 让我们考虑不进行强制转换的分配 C 2018 6 5 16 1 1 列出了简单赋值的约束

随机推荐

  • R 中的插补

    我是 R 编程语言的新手 我只是想知道有什么方法可以估算空值只有一列在我们的数据集中 因为我见过的所有插补命令和库都会插补整个数据集的空值 这是一个使用的示例Hmisc包装和impute library Hmisc DF lt data f
  • 将 JSON 对象转换为打印精美的 JSON 的 Angular 2 管道

    尝试编写一个 Angular 2 管道 该管道将获取 JSON 对象字符串并返回漂亮的打印 格式以显示给用户 例如 需要这样 id 1 号码 K3483483344 州 CA 活跃 真实 并返回在 HTML 中显示时看起来像这样的内容 所以
  • 如何使用 PHP 让浏览器缓存图像?

    我对如何缓存图像完全陌生 我使用 PHP 输出图库中的所有图像 并希望已显示的图像由浏览器缓存 因此 PHP 脚本不必再次输出相同的图像 我想要的只是图像显示得更快 当调用图像时我喜欢这样 img src showImage php id
  • 根据列中的值与列表中的值匹配来选择 SQL 数据库中的行

    我有一个包含大约 140 万行的表 我想编写一个 sql select 语句 返回列表中第一列 唯一的 id 中存在的所有行 该列表可以包含 1 到 50k 个 ID 并且在每次运行脚本时生成 并且每次都可能不同 根据此列表中的 id 编号
  • Netbeans 8.2 CSS 网格警告和错误

    我收到有关以下规则的警告和错误 data display grid grid column gap 20px grid row gap 10px grid template columns label 150px field 1fr 警告位
  • 如何启用离子多点触控事件

    我正在开发一个简单的离子应用程序 该应用程序的一部分要求您同时按下两个按钮 我这样构建了这个逻辑 a class icon ion qr scanner lg txt a a class icon ion qr scanner lg txt
  • 如何使用 oracle 管理自动备份?

    我正在关注来自的教程甲骨文文档 我发现管理备份 恢复过程的首选方法是使用 RMAN 我已经开始练习它 我的意思是 通过 sql plus cli 但我真的不知道如何使该过程自动化 然后我看到在 sql Developer dba 面板中 有
  • 在对象上找不到参数 [com.android.support:appcompat-v7:25.4.0] 的方法实现()...android

    我必须编译一个在线购买的项目 将其导入 android studio 时 它抱怨 gradle 版本 所以我将 distributionUrl 更新为这个distributionUrl https services gradle org d
  • 如何在两个div之间画一条线?

    我目前正在尝试在一个 div 的右下角到另一个 div 的右上角之间绘制一条对角线 如果可能的话 我想不用 jQuery 来完成它 这可能吗 http jsfiddle net cnmsc1tm 由于 CSS 限制 这不适用于 IE8 或更
  • 删除 jQuery Mobile 滑块控件中的文本框

    我正在使用这个 JQM 链接 我在分区中使用了滑块 在旧版本中我使用了属性 class ui hidden accessible 因为没有在滑块旁边显示文本框 但在此
  • 调试 Arm neon 代码中的数据/neon 性能危害

    最初 当我尝试时出现了问题优化算法根据 Profiler 的数据 Neon Arm 和其中的一小部分占据了 80 我尝试测试看看可以采取哪些措施来改进它 为此我创建了指向优化函数的不同版本的函数指针数组 然后在循环中运行它们以在探查器中查看
  • 如何使用个人 Microsoft 帐户通过 Azure AD 多租户应用程序访问 AzureRM?

    我的目标很简单 使用 Azure AD 多租户应用程序能够调用其他租户上的 Azure 资源管理器 API 但是 当您使用个人 Microsoft 帐户登录时 我不知道如何执行此操作 I created an Azure AD multi
  • 如何在 Django 中设置 PostgreSQL 数据库

    我是 Python 和 Django 新手 我正在使用 PostgreSQL 数据库引擎后端配置 Django 项目 但每个数据库操作都会出现错误 例如当我跑步时manage py syncdb 我越来越 C xampp htdocs dj
  • 为什么使用 register_shutdown_function() 时我的“关闭回调”无效?

    警告 register shutdown function 无效的关闭回调 trait ErrorTrait public function shutDownFunction error error get last fatal error
  • 将数组与条件合并

    我想合并具有特定条件的两个数组并更新它们包含的对象 首先是我的数组中的结构 struct Item var id Int var name String var value Int 两个数组的第二个元素 let fisrt Item id
  • 在 Web 服务器(flask、apache 和 wsgi)上写入文件时出现权限问题

    我正在尝试部署我的第一个网络应用程序 但我对此一无所知 这很有趣 但当我尝试解决问题时 我觉得我不知道自己在做什么 我在 digital ocean 上创建了一个在 ubuntu 18 04 上运行的服务器 在过去的 2 天里我一直在与它斗
  • 如何将 24 位整数转换为 3 字节数组?

    嘿 我完全超出了我的能力范围 我的大脑开始受伤 我需要转换一个整数 以便它适合 3 字节数组 这是一个 24 位 int 吗 然后再次返回以通过套接字从字节流发送 接收该数字 I have NSMutableData data NSMuta
  • 过滤器中的 Countif 1 和 -1

    我正在尝试计算过滤数据中的 1 和 1 1 的计数是正确的 但对于 1 它也包含 1 并且显示的计数不正确 如果你看一下所附的图片 1 的计数应该是 1 而不是显示 3 这意味着它也在计数 1 欲了解更多信息 请参阅图片 公式 SUMPRO
  • 反转 LinkedList 中的对象的问题

    我正在为一个作业编写代码 该作业需要一个在给定要反转的列表部分的情况下反转 LinkedList 中的元素的方法 例如 如果用户输入 3 该方法将反转数组中的前 3 个元素 我已经为其编写了代码 但它没有反转代码 而是简单地将第二个元素替换
  • 1/C# 中的 BigInteger

    我要实现 BigInteger ModPow 1 BigInteger 2 5 but 1 BigInteger总是回来0 这导致结果是0也 我试着寻找一些BigDecimalc 的类 但我什么也没找到 即使没有 有什么方法可以计算这个吗