用MATALB怎么做一个加减乘除的应用程序啊,主要是代码段的编写,小白一个,求带
2条回答 默认 最新
CSDN专家-黄老师 2021-10-09 12:07关注function ret = myeval(str) %输入计算的字符串,返回运算符类型与运算符位置 ASCII_list= abs(str); len_str = length(ASCII_list); flag = 0; position = 0; for i = 1:len_str if ASCII_list(i) == 43 flag = 1; position = i; elseif ASCII_list(i) == 45 flag = 2; position = i; elseif ASCII_list(i) == 42 flag = 3; position = i; elseif ASCII_list(i) == 47 flag = 4; position = i; end end pos1 = 1; number1 = [0, 0]; %检索第一个数字 for j = 1:(position-1) if ASCII_list(j) ~= 32 number1(pos1) = (ASCII_list(j) - 48); pos1 = pos1 + 1; end end pos2 = 1; number2 = [0, 0]; %检索第二个数字 for k = (position+1):len_str if ASCII_list(k) ~= 32 number2(pos2) = (ASCII_list(k) - 48); pos2 = pos2 + 1; end end %计算被加数字 number_1 = 10*number1(1)+number1(2); number_2 = 10*number2(1)+number2(2); %运算 if flag == 1 ret = number_1 + number_2; elseif flag == 2 ret = number_1 - number_2; elseif flag == 3 ret = number_1 * number_2; elseif flag == 4 ret = number_1 / number_2; end end如果对你有帮助,可以点击我这个回答右上方的【采纳】按钮,给我个采纳吗,谢谢
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报