实验1 matlab系统环境完成下列操作。 (1) 求[100,999]之间能被21 整除的数的个数。 提示: 先利用冒号表达式, 再利用 find 和 length 函数。 (2) 建立一个字符串向量, 删除其中的大写字母。 提示: 利用 find函数和空矩阵。运算基础
时间: 2024-12-29 17:28:06 浏览: 6
在MATLAB中完成这两个实验步骤,你可以按照以下代码进行:
**实验1 (1)**
```matlab
% 定义数组范围
start = 100;
end_num = 999;
% 创建包含指定范围内所有整数的向量
numbers = start:end;
% 使用 find 函数找出可以被 21 整除的数的索引
divisible_by_21_idx = find(numbers mod 21 == 0);
% 计算并输出符合条件的数字的数量
num_divisible = length(divisible_by_21_idx);
disp(['能被21整除的数有 ' num2str(num_divisible) ' 个']);
```
**实验1 (2)**
```matlab
% 创建一个字符串向量,例如
str_vec = ['Hello', 'WORLD', 'Matlab', 'Example'];
% 查找大写字母的索引
uppercase_idx = find(isstrprop(str_vec, 'upper'));
% 使用空矩阵创建一个新的向量用于存储删除大写字母后的结果
new_str_vec = zeros(size(str_vec));
% 遍历原向量,并只保留小写字母
for i = 1:length(str_vec)
if ~ismember(i, uppercase_idx)
new_str_vec(i) = str_vec(i);
end
end
% 输出删除大写字母后的字符串向量
disp(new_str_vec);
```
阅读全文