编写matlab程序:包含分支,循环和自定义函数
时间: 2024-02-20 11:00:09 浏览: 91
好的,这是一个简单的 MATLAB 程序,它包含了分支语句、循环语句和自定义函数:
```matlab
% 自定义函数,用来计算阶乘
function f = factorial(n)
if n == 0
f = 1;
else
f = n * factorial(n-1);
end
end
% 主程序
n = input('请输入一个正整数:');
if n <= 0
disp('输入的不是正整数!');
else
% 计算 n 的阶乘
result = 1;
for i = 1:n
result = result * i;
end
disp(['n 的阶乘是:', num2str(result)]);
% 计算 1! + 2! + ... + n!
sum = 0;
for i = 1:n
sum = sum + factorial(i);
end
disp(['1! + 2! + ... + n! = ', num2str(sum)]);
end
```
这个程序首先定义了一个自定义函数 `factorial`,用来计算阶乘。然后程序通过 `input` 函数获取用户输入的一个正整数 `n`,并进行判断。如果 `n` 不是正整数,程序就输出一个错误信息;否则程序分别计算 `n` 的阶乘和 `1! + 2! + ... + n!` 的和,并输出结果。程序中使用了 `if` 语句和 `for` 循环语句,以及自定义函数的调用。
阅读全文