c - 将 C 代码转换为 MATLAB 代码?关于帕斯卡三角函数和递归函数
问题描述
有人可以帮助将下面的 C 代码转换为 matlab。我从来没有学过 C,只是 MATLAB 的初学者。下面是代码 - 注意:它不属于我,我是从c 中的 Pascal 三角形中提取的,带有递归函数
#include <stdio.h>
long paskal(int, int);
int main() {
int n = 0;
int m = 0;
int k = 0;
int s = 0;
printf ("Enter number of rows:\n");
scanf("%d", &n);
for(k = 0; n >= k; k++) {
for(s = 0; s < n-k; s++) //Add spaces before each row
printf(" ");
for(m = 0; k >= m; m++) {
long f = paskal(k, m);
printf("%ld ", f);
}
printf("\n");
}
return 0;
}
long paskal(int n, int i) {
if(n == i || i == 0)
return 1;
else
return paskal(n-1, i) + paskal(n-1, i-1);
}
这是我的尝试,我已经尝试过,但我也是 MATLAB 的初学者,所以我陷入了困境。总体思路是使用递归函数获得帕斯卡三角形的工作代码。
function [ A ] = getpascal( n )
m = 0;
k = 0;
s = 0;
for k == 0 && n >= k
for s= = 0 && s < n-k
disp( "s")
for m == 0; k >= m
f = getpascal(k,m);
end
end
return 0;
end
getpascal(n , i)
if n == 1 || i == 0
A = 1;
else
return getpascal(n-1, i) + getpascal(n-1, i-1);
end
解决方案
MATLAB 中的 for 循环是不同的。您可以将 for 循环替换为:
for k=0:n
for s=0:n-k-1
for m=0:k
end
end
end
推荐阅读
- python - 如何在来自同一图像的并行容器中运行不同的 python 脚本
- mongodb - 如何通过 Kafka 连接器将数据从 Kafka 流式传输到 MongoDB
- amazon-web-services - aws 获取嵌入式仪表板网址
- asp.net-mvc - 无法添加两个数字并使用 Asp.net MVC 获取总计
- c - esp32中内部ADC的精度问题
- windows - 如何将远程 shell 脚本通过管道传输到相当于 bash 的 Windows
- python - 使用 Python 捕获屏幕(特定窗口)
- r - 使用ggplot从热图中的透明度中排除单元格
- c# - 来自引用的 .NET Framework 项目的值类型序列化期间 .NET Core 项目中的 TypeLoadException
- mysql - 如何将数据从数据库插入数组并检查