请问如何用matlab找到大于10^15的最小正整数n,这个n要同时满足2n+1和3n+1是平方数?(举个例子,3960就满足这个性质,2x3960+1=89^2,3x3960+1=109^2)如图,我目前想到的是大致确定n的范围(乱定的),导致速度缓慢,无法求解。
请问如何用matlab找到大于10^15的最小正整数n,这个n要同时满足2n+1和3n+1是平方数?
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- czy1219 2022-05-18 22:34关注
历时 1.810428 秒,计算完毕!
代码如下:
clear all clc format long tic % 确定平方数的范围 a = round(sqrt(2*(1e+15)+1)); b = round(sqrt(3*(1e+16)+1)); len = b-a; nums1 = zeros(len,1); nums2 = zeros(len,1); % 穷举由平方数经过变换后产生在10^15-10^16之间的数 j = 1; for i = a:b nums1(j)=(i^2-1)/2; nums2(j)=(i^2-1)/3; j = j+1; end % 找出两个数组中第一个相同的数,就是满足条件的最小整数 i = 1; j=1; while(i<=len&&j<=len) if(nums1(i)==nums2(j)) disp(['满足条件的最小整数为:' num2str(nums1(i))]); break; end if(nums1(i)<nums2(j)) i = i +1; else j = j + 1; end end toc
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
- ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
- ¥15 手机接入宽带网线,如何释放宽带全部速度
- ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
- ¥15 ETLCloud 处理json多层级问题
- ¥15 matlab中使用gurobi时报错
- ¥15 这个主板怎么能扩出一两个sata口
- ¥15 不是,这到底错哪儿了😭
- ¥15 2020长安杯与连接网探
- ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么