函数递归**和AI对数学的影响 函数递归1概念函数在其内部调用自身的过程称为递归递归必须依赖于函数实现。这个概念可能有些抽象下面通过一个具体例子来理解#includestdio.hvoidPrint(intn){if(n9){Print(n/10);// 递归调用自身}printf(%d,n%10);}intmain(){intn0;scanf(%d,n);Print(n);// 调用递归函数return0;}代码说明这是一个递归打印整数的示例当输入的数字大于9时函数会递归调用自身处理高位数字每次递归调用处理数字的一位从最高位到最低位依次打印输入1234第一步进入第一个Print得到123第二部123/10得到12第三步12/10得到1结束递归打印1之后返回上一层12%102 打印2后面一样打印34最后1 2 3 4注意:输入n的值没有变化只是递归产生不同的执行层Print往下顺结束后printf往上顺我也不知道咋讲的明白了2 递归的解释大事化小有点像数学的放缩把问题化为一个最小的可解决问题到这一步就可以停。注意如果递归错误它会一直循环下去最终出现栈溢出。3例题阶乘以VS为例#define _CRT_SECURE_NO_WARNINGS#includestdio.hint Fact(int n){ if (n0) \阶乘无负数return 1;elsereturn n*Fact(n-1);}int main(){ int no;scanf(“%d”,n);int retFact(n);printf“%d”,ret;return 0;}打印每一位数 开头的那一段 斐波那契数列 原理前面两个的数的和等于第三个数 F(N0)0 F(N1)1 F(N)F(N-1)FN-2#includestdio.hint Fib(int n){if (n0)return 0;else if (n1)return 1;elsererturn Fib(n-1)Fibn-2;}int main(){ int n2;scanf(“%d”,n);int n ret;ret Fib(n);printf(“%d”,ret);return 0;}递归程序的影响1.关于程序性能分析的影响以斐波那契数列为例自己带个40进去算要从n40往回算,会带来大量的计算量。这样就会导致程序性能变差。2.对栈溢出的影响占用大量堆栈空间导致栈溢出联系内存那块知识3个层那个为了提高效率可考虑用循环代替递归阶乘#includestdio.hint Fact(int n){ int io;int ret1;for(i1 ,in ,i){ retret*i;}return ret;}注意int n是整型的意思5也是整型所以不可以写Fact(n)ret和return不一样ret是反回值像一个储存大脑用来记阶乘但return是指令是把大脑里的数据送出去。我们输入的是n数据简单用递归困难用循环递归相当于翻译数学公式插入AI对数学界的辅助作用1.最基础的是验伪。假如全球人类数学水平下降100倍无法证明斐波那契数列但发现了规律这时可以把数据喂给菜豆包让它暴力试错这时就会发现对于上亿个数来说这个规律是正确的那么在一定程度上可以认为这个假说是成立的不过也有例外2数学推理辅助通过把数学证明转化为计算机语言通过符号语言逻辑推理验证3 从AI运行本质出发它无法解决像费马大定理这种那么庞大的问题。
💡
读完这篇文章,你可以带走什么

本文来自编程新知一线开发与建站实战沉淀:讲清原理、给出可复现步骤、标注避坑要点。看完后可以直接在你的项目或网站中落地验证。

编
编程新知内容团队
一线开发 · 建站实施 · 持续更新
由资深前端工程师、后端架构师与建站实施人员共同维护,坚持"真实案例 + 完整步骤 + 避坑指南"的内容准则。如果你在落地中遇到问题,欢迎联系我们交流。

想把这套方案用到自己的项目上?

编程新知提供技术答疑与网站建设一站式服务,欢迎联系我们获取针对性建议。

联系工程师
📚

系统学习该技术

进入对应栏目,从基础到进阶完整学习,配套案例与避坑指南。

前往栏目 →
🏗️

需要落地实施

企业建站、SEO 优化、服务器部署等需求,交给工程师一步到位。

了解服务 →
💬

还有疑问

技术难题或方案咨询,联系编程新知获取一对一的专业建议。

联系我们 →