c语言运行几进制,【C语言】求已知等式在几进制条件下成立
发布日期:2021-06-24 11:27:29
浏览次数:3
分类:技术文章
本文共 558 字,大约阅读时间需要 1 分钟。
little fairy的第五篇博客。
通过实例来说明问题。
例1、求使15*4=112成立的进制条件。
假设进制为n,则(1*n^1+5)*4 = 1*n^2+1*n^1+2;这是一个一元二次方程,我们可以得到,进制条件为 6 进制。
可是,如果我们所要求的式子比这个更为复杂,那么,我们得出的将会是一个一元N次的方程,无法解出答案时,我们应该怎么办。
例2、求使567*456=150216成立的进制条件。
假设进制为n,则(5*n^2+6*n+7)*(4*n^2+5*n+6)=1*n^5+5*n^4+2*n^2+1*n+6;化解得:20n^4+49n^3+88n^2+71n+42 = n^5+5n^4+2n^2+n+6;无法计算。
那么,我们两边同时对n取余(看数字的个位数字)得:42%n=6(表达式一);
然后,对两边同时除以n再对n取余(看数字的十位数字)得:(71+42/n)%n = 1(表达式二);
联立表达式一、二,得出答案 n=18。
综上所述,我们可以得出解决此类式子的一般方法。
1、假设进制为n,得到等式在十进制下的相等关系。
2、两边同时对n取余(看数字的个位数字),得:表达式一。
3、两边同时除以n再对n取余(看数字的十位数字),得:表达式二。
4、联立表达式一、二,得出答案。
转载地址:https://blog.csdn.net/weixin_32497403/article/details/117215229 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
关注你微信了!
[***.104.42.241]2024年04月26日 07时40分02秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
洛谷 P2580 于是他错误的点名开始了【字典树/Map】
2019-04-28
HDU 3336 Count the string【KMP的next数组性质】
2019-04-28
洛谷 P1196 [NOI2002]银河英雄传说【带权并查集】
2019-04-28
HDU 4825 Xor Sum【01字典树/贪心】(两数最大/最小异或和)
2019-04-28
洛谷 P4551 最长异或路径【01字典树/贪心】
2019-04-28
LeetCode 921. 使括号有效的最少添加(栈)
2019-04-28
LeetCode 1018. 可被 5 整除的二进制前缀
2019-04-28
LeetCode 961. 重复 N 次的元素
2019-04-28
LeetCode 925. 长按键入(双指针)
2019-04-28
LeetCode 1309. 解码字母到整数映射
2019-04-28
动态规划应用--最长递增子序列 LeetCode 300
2019-04-28
LeetCode 53. 最大子序和(动态规划)
2019-04-28
图Graph--拓扑排序(Topological Sorting)
2019-04-28
图Graph--最短路径算法(Shortest Path Algorithm)
2019-04-28
LeetCode 674. 最长连续递增序列
2019-04-28
LeetCode 70. 爬楼梯(动态规划)
2019-04-28
数据结构--位图 BitMap
2019-04-28
朴素贝叶斯算法--过滤垃圾短信
2019-04-28
向量空间 Vector Space -- 推荐系统
2019-04-28