找回密码
 注册
关于网站域名变更的通知
查看: 522|回复: 1
打印 上一主题 下一主题

请问Matlab用function如何输出多个数组

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-7-31 14:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x

用function写了一个函数,希望能够输出两个不同的数组,如[a,b]=fun(x),其中a,b为两个不同的数组,但是貌似b会将a的结果覆盖,得到的ans只有一个数组。程序如下:


, M$ {! t9 g0 D  D. E' A9 g0 t

function [thta,y]=Sa(N)

if N>=10000;


* l- |% Y6 Z. z9 e. W; m

error('input must smaller than 10000')

& M9 h$ `  s- X' v

end

tht=0:pi/9999:pi;

d=floor(10000/N);

y=[];

thta=[];

for i=0:N-1;

a=1+i*d;

thta=[thta,tht(a)];

y=[y,(sin((N/2)*pi*(cos(tht)-cos(thta(i+1)))))/(N*sin((pi/2)*(cos(tht)-cos(thta(i+1)))))];

end

end


1 H0 D7 i# g' J


) Q( z" k; h7 r


4 K8 L; s$ R; `0 v( f


9 }; J# Q8 J- G' K* c! `0 W# u
5 {6 x; j5 d0 N( ?) y% ^) C

该用户从未签到

2#
发表于 2019-7-31 15:45 | 只看该作者
哈哈哈,估计受C的影响太深了吧。
( j5 ~$ p9 P  E  ^5 Y: gy=[y,xxx]这个里面你用了cos(tht)产生的是tht对应整个数组的cos值,并且你用了矩阵除,至少用‘./’这个符号做代数除吧,不然没法计算,把这一步给改掉,换个正确的表达式。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-19 10:43 , Processed in 0.062500 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表