用MATLAB怎么在数列中找到需要的值并返回在数列中的位置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用MATLAB怎么在数列中找到需要的值并返回在数列中的位置相关的知识,希望对你有一定的参考价值。

用MATLAB怎么在数列中找到需要的值并返回在数列中的位置

参考技术A matlab find函数用于返回所需要元素的所在位置 (位置的判定:在矩阵中,第一列开始,自上而下,依次为1,2,3...,然后再从第二列,第三列依次往后数)

find(A)返回矩阵A中非零元素所在位置
>> A = [1 0 4 -3 0 0 0 8 6];
>> X = find(A)

X =

1 3 4 8 9
find(A>5)返回矩阵A中大于5的元素所在位置
>> find(A>5)

ans =

8 9

[i,j,v]=find(A) 返回矩阵A中非零元素所在的行i,列j,和元素的值v(按所在位置先后顺序输出)
>> A=[3 2 0; -5 0 7; 0 0 1];
>> [i,j,v]=find(A)

i =

1
2
1
2
3

j =

1
1
2
3
3

v =

3
-5
2
7
1

find(A>m,4)返回矩阵A中前四个数值大于m的元素所在位置

也是自己理解,如有不正之处,还望指正!希望我可以帮上点小忙!本回答被提问者采纳
参考技术B 用for语句再用if判断就可以了,最后放回 i

c语言中,。编写程序求斐波那契数列的第n项和前n项之和。大家看好是【第】n项的值和前n项的合= =。

编写程序求斐波那契数列的第n项和前n项之和。斐波那契数列是形如
0, 1, 1, 2, 3, 5, 8, 13, ...
其通项为:
F[0]=0
F[1]=1
F[n]=F[n-1]+F[n-2]

程序运行结果如下:
Please input the number of terms:
6
f(6)=8
sum(6)=20
求大大们指点。如何求出第N项的值。 要求输出和 题目要求一样。不要写出来是 前N项所有的值。。
我新手 这个能用循环做出来 我想用数组怎么办? 我刚学数组。递归美学。。指针更没学呢 - -求大大们给个完整的方法额。

main()
int i,n,s=1,f[]=0,1,1;
printf("Please input the number of terms:");
scanf("%d",&n);
if(n==0)s=0;f[2]=0;
for (i=2;i<=n;i++)
f[2]=f[1]+f[0];f[0]=f[1];f[1]=f[2];
s+=f[1];

printf("f(%i)=%i\n",n,f[2]);
printf("Sum(%i)=%i\n",n,s);
scanf("%d");
参考技术A 如果你用循环做的话当i=n时停止循环并输出就可以了,如果你用递归做那就从n向前递归就没问题了。 参考技术B fun(*a,n)

以上是关于用MATLAB怎么在数列中找到需要的值并返回在数列中的位置的主要内容,如果未能解决你的问题,请参考以下文章

求数列1,1,2,3,5……前20项的和,用C语言编写

什么是递归?怎么用它来实现斐波那契数列?

递归求斐波那契数列

c语言中,。编写程序求斐波那契数列的第n项和前n项之和。大家看好是【第】n项的值和前n项的合= =。

索引数列中某一个位置的值,以及索引数列中某一个特定值的位置

如何用matlab输出数列2,4,6,8,10