您好,请用Matlab/simulink编写个程序:一个数组 不用排序的方法 找出它当中第K大的数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了您好,请用Matlab/simulink编写个程序:一个数组 不用排序的方法 找出它当中第K大的数相关的知识,希望对你有一定的参考价值。

急用,谢谢

function NumK=findK(List,K)
for i=1:length(List)
if(sum(sign(List-List(i))>0)==K-1)
NumK=i;
end
end
解释一下:输入的List是输入的数组,K是你要找的第几大数。输出的NumK指的是第K大数在List中的位置,即List(NumK)就是你要的第K大的数
参考技术A egtfdfrghdfhjuki drghtr aghyu kjukiu52853 rtghyt5 hytr65rg 896 dsfer 参考技术B 我就不懂了。。。用matlab编很简单。。。用simulink编很困难。你到底要哪个

MATLAB调用simulink时出现如下错误

External input specified in the Configuration Parameters dialog box on the Data Import/Export page (or as an option to SIM command) to a model containing no root level input ports

matlab function对于解微分方程可以带来很大的便捷,但是对于怎么设置可能有些地方会有疑问,这里分享下解决方法。

1、首先在电脑中打开matlab,打开simulink,如图所示。

2、接着创建一个空的模块,如下图所示。

3、这里会有一个模块的库,里面各种需要的模块(这里默认对simulink有一定基础),选用自己需要的进行搭建。

4、对积分模块进行初始化,其格式为[1 1]可以更多维,也可以单个维度,但是多维时要正确填写格式,不然会报错。

5、再双击matlab function进行函数的编辑。

6、最后按照如下图所示式子,得出的结果是e的x次之类的图,就完成了。

参考技术A 如果:
The block diagram 'three_phase_inverter_pwm' uses bus signals. However,
the 'Mux blocks used to create bus signals' diagnostic is not configured
to 'error'. To prevent modeling errors:

(1) Open Upgrade Advisor and run the 'Check for Mux blocks used to create bus signals' check.
(2) Follow the recommendations from this check to make your model compliant.

解决步骤如下:
1,在matlab命令窗口运行:upgradeadvisor('three_phase_inverter_pwm'),(注:印号内容为model的文件名)
2,初始化一会以后会弹出一个界面,把左边的勾选框拖到下面,选中"Check for Mux blocks used to create bus signals",并且点击右边的“Run This Check”。
3,check完以后,点击最下面的“modify”按钮就行。
参考技术B 要在前边添加一个in1模块,就可以了我的就解决了!

以上是关于您好,请用Matlab/simulink编写个程序:一个数组 不用排序的方法 找出它当中第K大的数的主要内容,如果未能解决你的问题,请参考以下文章

Matlab基于μ律15折线的PCM语音编解码系统(GUI设计simulink附完整代码)

Matlab基于μ律15折线的PCM语音编解码系统(GUI设计simulink附完整代码)

Matlab基于A律13折线的PCM语音编解码系统(GUI设计simulink附完整代码)

Matlab基于A律13折线的PCM语音编解码系统(GUI设计simulink附完整代码)

Matlab基于A律13折线的PCM语音编解码系统(GUI设计simulink附完整代码)

如何利用MATLAB/SIMULINK搭建简单的仿真模型