声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1169|回复: 4

[编程技巧] 请教怎么错误怎么改啊?

[复制链接]
发表于 2006-11-24 09:32 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
提示出错是??? Attempt to reference field of non-structure array.

Error in ==> krzn at 29
                    array(i.j)=(array(i-1,j)+2*array(i,j+1)+array(i+1,j))/4;
程序如下
format short
error=0.0001;
number=1;
t=5;
clc
for i=1:1:16   
    for j=1:1:12                 
        if i==1              
            array(i,j)=30;         
        elseif i==6&j<8
            array(i,j)=0;
        elseif j==12
            array(i,j)=30;
        elseif i>6&j==7
            array(i,j)=0;
        else
            array(i,j)=20;         
        end
    end
end
while t>error   
    t=error;
    for i=1:1:16
        for j=1:1:12            
            c=array(i,j);
            if (i>1&i<6&j<12)|(i>6&j>7&j<12)   
                if j==1     
                    array(i.j)=(array(i-1,j)+2*array(i,j+1)+array(i+1,j))/4;
                elseif i==16
                    array(i,j)=(array(i,j-1)+2*array(i-1,j)+array(i,j+1))/4;
                else
                    array(i,j)=(array(i-1,j)+array(i,j+1)+array(i+1,j)+array(i,j-1))/4;
                end
            end
            if t<abs(array(i,j)-c)   
                t=abs(array(i,j)-c);
            end
        end
    end
    number=number+1;
end
number
array
回复
分享到:

使用道具 举报

发表于 2006-11-24 10:01 | 显示全部楼层
array(i.j)中符号错误,不是“.”而是”,“。matlab中数组的下标不能为零,而且建议不要用i这个符号,它在matlab中表示sqrt(-1).
发表于 2006-11-24 10:02 | 显示全部楼层
检查你的代码吧!!
array(i.j)=(array(i-1,j)+2*array(i,j+1)+array(i+1,j))/4;
其中  array(i.j)
应该为array(i,j),
不应该啊!
发表于 2006-11-24 10:09 | 显示全部楼层
而且你的第二循环是有问题的,呵呵。第一个循环可以用如下语句代替
array           = 20*ones(16,12);
array(1,:)      = 30;
array(6,1:7)    = 0;
array(:,12)     = 30;
array(7:end,7)  = 30;
 楼主| 发表于 2006-11-24 10:12 | 显示全部楼层
谢谢啊
是输入法的问题吧
刚才好像用着紫光
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-28 16:55 , Processed in 0.076964 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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