编写[Y1,Y2]=myfun2(X1,X2)函数文件分别利用for语句和while语句计算[X1,X2]范围内所有奇数的和与所有被三整除的数的积。(要求 X1,X2为正整数,且X1-X2>100),在脚本文件中执行[Y1, Y2]=myfun2(5,200)语句。
时间: 2024-10-14 22:10:43 浏览: 78
编写`myfun2.m`函数文件,可以使用for循环和while循环分别计算指定范围内的奇数之和(Y1)和被3整除数的积(Y2)。假设X1=5,X2=200,这里是一个示例:
```matlab
function [Y1, Y2] = myfun2(X1, X2)
% 确保输入满足条件
if ~isnumeric([X1, X2]) || X1 <= 0 || X2 <= 0 || X1 - X2 <= 100
error('Invalid input. X1 and X2 must be positive integers with a difference greater than 100.');
end
% 初始化变量
sum_odd = 0;
product_divisible_by_3 = 1; % 因为乘法的初始值必须是非零数
% For循环计算奇数之和
for i = X1:2:X2 % 步长为2遍历奇数
if mod(i, 2) == 1 % 判断是否为奇数
sum_odd = sum_odd + i;
end
end
% While循环计算被3整除的数的积
i = X1; % 初始化索引
while i <= X2
if rem(i, 3) == 0 % 判断是否能被3整除
product_divisible_by_3 = product_divisible_by_3 * i;
end
i = i + 1;
end
% 返回结果
Y1 = sum_odd;
Y2 = product_divisible_by_3;
% 执行语句
[Y1_test, Y2_test] = myfun2(5, 200); % 运行测试
```
阅读全文
相关推荐


















