Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >php递归函数详解_用php递归函数实现阶乘计算

php递归函数详解_用php递归函数实现阶乘计算

作者头像
全栈程序员站长
发布于 2022-09-22 09:36:58
发布于 2022-09-22 09:36:58
2.8K0
举报

大家好,又见面了,我是你们的朋友全栈君。

本节内容:

PHP递归算法。

PHP递归算法代码:

代码示例:

//定义PI一分的角度的值 define(“PII”,M_PI/180);

//新建图像资源,并定义其背景为白色,前景色为黑色

$im=imagecreate(670,500);

white=imagecolorallocate(im,0xFF,0xFF,0xFF);

g=imagecolorallocate(im,0x00,0x00,0x00);

//从下面实例化的代码可以得知,初始值x,y,L,a别分为300,500,100,270

functiondrawLeaf(g,x,y,L,

{ globalim; B=50; C=9; s1=2; s2=3; s3=1.2;

if(L>

//计算叶子的定位上面

x2=x+L*cos(a*PII);

y2=y+L*sin(a*PII);

x2R=x2+L/s2*cos((a+B)*PII);

y2R=y2+L/s2*sin((a+B)*PII);

x2L=x2+L/s2*cos((a-B)*PII);

y2L=y2+L/s2*sin((a-B)*PII);

//计算叶子的定位下面

x1=x+L/s2*cos(

y1=y+L/s2*sin(

x1L=x1+L/s2*cos((a-B)*PII);

y1L=y1+L/s2*sin((a-B)*PII);

x1R=x1+L/s2*cos((a+B)*PII);

y1R=y1+L/s2*sin((a+B)*PII);

//别分画叶子的主干以及叶面

ImageLine(im,(int)x,(int)y,(int)x2,(int)y2,g);

ImageLine(im,(int)x2,(int)y2,(int)x2R,(int)y2R,g);

ImageLine(im,(int)x2,(int)y2,(int)x2L,(int)y2L,g);

ImageLine(im,(int)x1,(int)y1,(int)x1L,(int)y1L,g);

ImageLine(im,(int)x1,(int)y1,(int)x1R,(int)y1R,g);

//再次递归调用本身

drawLeaf(g,x2,y2,L/s3,a+

drawLeaf(g,x2R,y2R,L/s2,a+

drawLeaf(g,x2L,y2L,L/s2,a-

drawLeaf(g,x1L,y1L,L/s2,a-

drawLeaf(g,x1R,y1R,L/s2,a+

}

}

//实例化

drawLeaf($g,300,500,100,270);

header(“Content-type:image/png”);

imagepng($im);

?>

递归调用常常与静态变量使用。

静态变量的含义可以参考PHP手册。

例子,加深对PHP递归算法以及静态变量的理解。

代码示例:

header(“Content-type:text/plain”); functionstatic_function()

{

static$i=0;

if($i++<10)

{

echo$i.”\n”;

static_function();

}

}

static_function();

以上PHP递归算法代码会如数输出1到10的数字。

在static_function函数第二次运行时,变量i由于是静态变量,所以仍被保留不被释放,进而可以得到自增的值。

以上介绍了php递归算法的实现代码与用法,希望对大家有所帮助。

php递归函数小例子

php递归算法 php递归函数无限级分类

PHP递归算法与应用实例

php递归算法应用实例

php递归实现无限分类 php格式化数组

php递归方法实现无限分类示例

php递归遍历目录的二个函数

php用递归方法实现无限级分类的代码

php递归创建和删除文件夹的代码

php递归删除目录的例子

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/169563.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
php递归函数详解_php递归优化费波那切
white=imagecolorallocate(im,0xFF,0xFF,0xFF);
全栈程序员站长
2022/09/22
1.5K0
PHP递归算法_后序遍历的非递归算法
我们在建设一个网站的时候,程序员们首选的当属PHP语言。我们对PHP还是比较熟悉的,接下来我们将会为大家介绍一下PHP递归算法。PHP,一个嵌套的缩写名称,是英文超级文本预处理语言(PHP:Hypertext Preprocessor)的缩写。
全栈程序员站长
2022/09/22
2.5K0
【R的极客理想系列文章】R语言中的数学计算
R是作为统计语言,生来就对数学有良好的支持,一个函数就能实现一种数学计算,所以用R语言做数学计算题特别方便。如果计算器中能嵌入R的计算函数,那么绝对是一种高科技产品。
统计学家
2019/04/10
1.4K0
【R的极客理想系列文章】R语言中的数学计算
PHP递归算法_php递归函数详解
递归算法的实现方法是有多种的,如通过“静态变量”、“全局变量”、“引用传参”的方式:
全栈程序员站长
2022/09/22
3K0
三角函数公式和图像大全[通俗易懂]
a2-b2=(a+b)(a-b) a3+b3=(a+b)(a2-ab+b2) a3-b3=(a-b)(a2+ab+b2)
全栈程序员站长
2022/11/04
15.6K0
三角函数公式和图像大全[通俗易懂]
php递归算法经典实例_php递归函数详解
在前面的文章中,我们给大家介绍了三种递归算法的实现方法,即“静态变量”、“全局变量”、“引用传参”。需要的朋友可以了解《PHP递归算法(一)》《PHP递归算法(二)》《PHP递归算法(三)》
全栈程序员站长
2022/09/22
7190
php递归算法经典实例_php递归函数详解
原始递归函数及模拟运行的优化
  看到网上一个题目,证明x开y次方是原始递归函数(primitive recursive function)。这个问题并不难,只要把x开y次方实现出来即可。于是,正好把《递归论》相关内容补一补。
窗户
2022/10/06
1.6K0
原始递归函数及模拟运行的优化
PHP监测Memcache服务端的运行状况
define('ADMIN_USERNAME','admin'); // Admin Username define('ADMIN_PASSWORD','123456');  // Admin Password
星哥玩云
2022/07/03
3860
NACA翼型发生器对于导入icem建模有非常大的帮助。
NacaAirfoil.m function [y,x] = NacaAirfoil(varargin) switch nargin case 0 AF= '0012'; % designation M = AF(1); % The maximum value of the mean line as chord/100. P = AF(2); % Is the chordwise position of the maximum cham
裴来凡
2022/05/28
3020
NACA翼型发生器对于导入icem建模有非常大的帮助。
python matplotlib study
Matplotlib是一个图形库,是以Numpy库为基础的一个库。我们主要看到的是Artist层。其结构如下图。
小末快跑
2019/07/03
5900
图像旋转:getRotationMatrix2D详解--无损失旋转图片
使用opencv对图像进行旋转的代码随手一搜即得,但是有些旋转后图像会不完整,有些只给出代码并未解释其实现原理。本文会详细介绍如何使用opencv实现图像旋转得到完整图像,以及其中的实现原理。
languageX
2021/03/06
24.7K3
图像旋转:getRotationMatrix2D详解--无损失旋转图片
快速傅里叶变换C++递归算法实现
快速傅里叶变换C++递归算法实现 网上有些算法资料经测试运行结果是错误的,虽然代码的使用的是非递归形式。为了方便验证快速傅里叶变换的准确性,我提供了自己设计的递归算法。 基于时域抽取的“基2”快速傅里叶变换算法代码:     Fouier.h文件: #pragma once #include"Complex.h" class Fouier {     Complex * data; void fft(int start,int step,int len);     Complex W(int k,i
Florian
2018/02/05
2.1K0
matlab plot函数详解_MATLAB的plot
NO.3 绘制横轴为X,竖轴为Y的多组二维线图,Y值与X值一一对应,所有线条都使用相同的坐标区。
全栈程序员站长
2022/11/03
1.9K0
matlab plot函数详解_MATLAB的plot
ACM刷题之路(十六)Acm程序设计竞赛自制模板
   本模板是我在备战省赛的时光中,把复习过的和新学的算法中比较常用的代码、思路,整合成了模板,供以后的ACM竞赛直接使用,因为时间匆忙、水平有限,若有不足之处,欢迎大佬提出。本版本为V1.0版,会不定期更新。
Designer 小郑
2023/07/31
4300
ACM刷题之路(十六)Acm程序设计竞赛自制模板
现代密码系列:RSA密码详解
1977年,三位数学家Rivest、Shamir 和 Adleman 设计了一种算法,可以实现非对称加密。这种算法用他们三个人的名字命名,叫做RSA算法
红客突击队
2022/09/28
3.6K0
现代密码系列:RSA密码详解
【实验楼-Python 科学计算】SciPy - 科学计算库(上)
。 注意到高阶常微分方程常常写成引入新的变量作为中间导数的形式。 一旦我们定义了函数 f 与数组 y_0 我们可以使用 odeint 函数:
统计学家
2019/04/10
1.4K0
【实验楼-Python 科学计算】SciPy - 科学计算库(上)
河南工程学院2022级新生周赛(三)题解
A. 6男 ---- 原题链接 题目大意: 给定一个字符串 S,求最长的连续的 6 的字串的长度。 S 可能含有空格。 ---- 思想: 签到题。 读入时注意空格。 ---- 代码: #include <iostream> #include <cstring> #include <cstdio> #include <algorithm> #include <cmath> #include <sstream> #include <vector> #include <queue> #include <stac
浪漫主义狗
2022/10/09
3010
Data Structure_Visualization
选择排序很简单,遍历所有元素,查看一下他们的之后最小的元素和当前元素交换即可。模板函数使用上面的swing模板。为了更清楚显示出排序的过程,可以用不同颜色代表排好序和未排好序的。
西红柿炒鸡蛋
2019/01/23
7410
LightOJ 1118--Incredible Molecules(两圆相交)
1118 - Incredible Molecules PDF (English) Statistics Forum Time Limit: 0.5 second(s) Memory Limit: 32 MB In the biological lab, you were examining some of the molecules. You got some interesting behavior about some of the molecules. There are some circular molecules, when two of them collide, they overlap with each other, and it’s hard to find that which one is over the other one.
Enterprise_
2019/02/20
4450
PHP 自定义图片的生成与保存实例讲解
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011415782/article/details/82898916
泥豆芽儿 MT
2018/10/09
1.4K0
PHP 自定义图片的生成与保存实例讲解
推荐阅读
相关推荐
php递归函数详解_php递归优化费波那切
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档