m0_63664562 2022-04-13 11:48 采纳率: 88.2%
浏览 39
已结题

matlab程序设计问题

  1. 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。例如nums = [1,3,5,6], target = 5,应当返回3;nums = [1,3,5,6], target = 2,应当返回2。

nums=input('');
b=input('');
a=find(nums==b)
这段代码如何修补才能有目标不存在时的返回值(能够用find函数判断是否存在目标值吗?)

  • 写回答

2条回答 默认 最新

  • joel_1993 2022-04-13 12:10
    关注

    这么做就行啦

    nums = [1,3,5,6];
    target = 2;
    p = find(nums==target);
    if(isempty(p))
    p = sum(nums<target) + 1;
    end
    p
    

    结果:

    p =
    
         2
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 4月20日
  • 已采纳回答 4月13日
  • 创建了问题 4月13日