怎么使用matlab在矩阵中找到大于1的数并输出

其实原问题是这样的,希望大家给点意见
R=0:10:10000
E=3907*R*10^-6
D1=E-35
D2=40-E
figure(1)
plot(R,D1,'.b',R,D2,'.g');
if D1.*D2>5&2>D1-D2>-2

else
R=zeros
D2=zeros
D1=zeros
figure(2)
plot(R,D1,'.b',R,D2,'.g');

其实我就想知道,如果D1.*D2>5&2>D1-D2>-2的时候,求出这时候的R,并且画三者的图,可是我画出来两个图一样,不知道应该怎么弄

A是原矩阵

[m,n]=size(A);

B=ones(m,n);C=find(B==(A>B));

A(C)就是所有大于1的数,C是在A里面的位置

例如:

在matlab中,可以通过sum函数和条件表达式来统计矩阵中大于或小于某数的元素的zhi个数。

具体实现方法可以参考如下程序段:

A=

[1, 2, 3, 4, 5;

2, 3, 4, 5, 6;

3, 4, 5, 6, 7];

a = sum(A>4); % 统计矩阵A中值大于4的元素的个数

% A>4表示判断矩阵A中每个元素的值是否大于4的,若大于4,则返回1,;否则返回0。

% 所以A>4执行后返回的就是一个只有0和1的向量,此时对该向量进行求和,也就是统计1的个数,即矩阵A中大于4的元素的个数。

扩展资料:

Matlab是一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。

新版本的MATLAB语言是基于最为流行的C++语言基础上的,因此语法特征与C++语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式。使之更利于非计算机专业的科技人员使用。而且这种语言可移植性好、可拓展性极强,这也是MATLAB能够深入到科学研究及工程计算各个领域的重要原因。

参考资料来源:百度百科-MATLAB

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-07-08

使用find函数找到a>0的下标,然后把元素提取出来,如下图:

第2个回答  推荐于2018-02-27
A是原矩阵
[m,n]=size(A);
B=ones(m,n);C=find(B==(A>B));
A(C)就是所有大于1的数,C是在A里面的位置本回答被提问者和网友采纳
第3个回答  2010-09-02
A是目标矩阵
a=find(A>1);
B=A(a);%B即为所求矩阵
第4个回答  2018-01-31
A为原始矩阵,k行。
I为大于1的元素位置,I=find(A(k,:))>1
A(k,I)=1
大于1的位置赋值1
相似回答