24小时热门版块排行榜    

Znn3bq.jpeg
查看: 644  |  回复: 8
当前主题已经存档。

duan2008

铁杆木虫 (著名写手)

[交流] 一段MATLAB程序求助。

请高手帮帮忙写一下一个简单的MATLAB程序,要求是那样的:
假设A为一行矩阵,即A=[A1 A2 A3 A4 A5 ...AN];其中AN是任意的自然数,且元素个数不确定,如可能A=[1 4 2 7 3]或其他的行矩阵,输入那样的矩阵A后,运行M文件,得到要求的矩阵B。求N*N阶矩阵B,
B=[A1/A1 A1/A2 A1/A3  A1/A4 A1/A5.....A1/AN
      A2/A1 A2/A2 A2/A3 A2/A4 A2/A5.....A2/AN
     ................................................................
     AN/A1 AN/A2 AN/A3 AN/A4 AN/A5.....AN/AN]
即对角线上为1,上三角与下三角的值是倒数关系,
如运行M文件,输入A=[1 4 7 2 4],得到B=[1 1/4 1/7 1/2 1/4
                                                                    4 1 4/7 4/2 4/4
                                                                    7 7/4 1 7/2 7/4
                                                                    2 2/4 2/7 1 2/4
                                                                    4 4/4 4/7 4/2 1].

请高手帮忙,谢谢!!!!

[ Last edited by duan2008 on 2009-11-9 at 09:31 ]
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

marineman

至尊木虫 (知名作家)

爱八卦爱生活

★ ★ ★ ★
duan2008(金币+2,VIP+0): 11-9 18:53
duan2008(金币+2,VIP+0):谢谢你啊O(∩_∩)O~ 11-9 22:21
for i=1:1:N
B(i,=A(1,i)./A;
end
2楼2009-11-09 09:18:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

marineman

至尊木虫 (知名作家)

爱八卦爱生活

★ ★ ★
duan2008(金币+3,VIP+0): 11-9 18:53
A=[1 2 3 4 5];

B=[1        0.5        0.3333        0.25        0.2
2        1        0.6667        0.5        0.4
3        1.5        1        0.75        0.6
4        2        1.3333        1        0.8
5        2.5        1.6667        1.25        1
]
3楼2009-11-09 09:19:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

duan2008

铁杆木虫 (著名写手)

引用回帖:
Originally posted by marineman at 2009-11-9 09:18:
for i=1:1:N
B(i,=A(1,i)./A;
end

A=[A1 A2 ...AN],其中AN是任意的自然数,且元素个数不确定,如可能A=[1 4 2 7 3]或其他的行矩阵,输入那样的矩阵A后,运行M文件,得到要求的矩阵B。高手,谢谢!!!
4楼2009-11-09 09:24:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zqfalcon

木虫 (著名写手)

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
duan2008(金币+10,VIP+0):谢谢高手O(∩_∩)O~ 11-9 18:53
我给你个正解吧:


AN=size(A,2); %求取向量A的维数
for i=1:1:AN
    for j=1:1:AN
        B(i,j)=A(i)/A(j);
    end
end
5楼2009-11-09 10:02:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

duan2008

铁杆木虫 (著名写手)

引用回帖:
Originally posted by zqfalcon at 2009-11-9 10:02:
我给你个正解吧:


AN=size(A,2); %求取向量A的维数
for i=1:1:AN
    for j=1:1:AN
        B(i,j)=A(i)/A(j);
    end
end

谢谢你,我把你的编辑进去,程序如下:
disp('     请输入矩阵A(n阶)');
A=input('A=');   %输入各层的判断矩阵
AN=size(A,2); %求取向量A的维数
for i=1:1:AN
    for j=1:1:AN
        B(i,j)=A(i)/A(j);
    end
end
disp('B=');disp(B');
运行该程序:输入矩阵任意矩阵后A=[10 7 4 1],
得到如下结果:
B=
    1.0000    0.7000    0.4000    0.1000
    1.4286    1.0000    0.5714    0.1429
    2.5000    1.7500    1.0000    0.2500
   10.0000    7.0000    4.0000    1.0000

结果好像正好反了,按我的要求是要得到
B=
    1.0000  1.4286  2.5000 10.0000
     0.7000 1.0000  1.7500 7.0000
     0.4000 0.5714   1.0000 4.0000
     0.1000  0.1429   0.2500 1.0000

所以还要修改一下,谢谢。
是不是求矩阵的转置,C=B'?
6楼2009-11-09 18:50:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

marineman

至尊木虫 (知名作家)

爱八卦爱生活

引用回帖:
Originally posted by duan2008 at 2009-11-9 18:50:
谢谢你,我把你的编辑进去,程序如下:
disp('     请输入矩阵A(n阶)');
A=input('A=');   %输入各层的判断矩阵
AN=size(A,2); %求取向量A的维数
for i=1:1:AN
    for j=1:1:AN
        B(i,j)=A(i)/A ...

稍稍修改一下就可以。
clear;clc
A=[10 7 4 1];
AN=size(A,2); %求取向量A的维数
for i=1:1:AN
        B(i,: )=A(1,i)./A;
end
disp(B)
7楼2009-11-09 20:05:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

marineman

至尊木虫 (知名作家)

爱八卦爱生活

结果

    1.0000    1.4286    2.5000   10.0000
    0.7000    1.0000    1.7500    7.0000
    0.4000    0.5714    1.0000    4.0000
    0.1000    0.1429    0.2500    1.0000
8楼2009-11-09 20:06:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zqfalcon

木虫 (著名写手)

★ ★ ★
duan2008(金币+3,VIP+0):在此谢谢热心的高手O(∩_∩)O~ 11-9 22:21
引用回帖:
Originally posted by duan2008 at 2009-11-9 18:50:


谢谢你,我把你的编辑进去,程序如下:
disp('     请输入矩阵A(n阶)');
A=input('A=');   %输入各层的判断矩阵
AN=size(A,2); %求取向量A的维数
for i=1:1:AN
    for j=1:1:AN
        B(i,j)=A(i)/A ...

晕死了,你最后那句话写错了,是disp(B),而不是disp(B'),我给你回复的程序是正确的。
PS: marineman同志使用了向量化操作进行求解,效率更高,赞一个,不过我的代码更直观易懂点

[ Last edited by zqfalcon on 2009-11-9 at 20:54 ]
9楼2009-11-09 20:49:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 duan2008 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 化学工程与技术324调剂 +23 孙常华 2026-04-09 25/1250 2026-04-11 00:07 by 骑牛渡寒江
[考研] 314求调剂 +18 xhhdjdjsjks 2026-04-09 19/950 2026-04-10 18:53 by HPUCZ
[考研] 求调剂 +7 璃茉一定上岸 2026-04-10 7/350 2026-04-10 15:25 by jiajinhpu
[考研] 269求调剂 +10 啊啊我我 2026-04-07 10/500 2026-04-10 10:38 by 高维春
[考研] 调剂 +19 不逢春 2026-04-05 20/1000 2026-04-10 10:15 by may_新宇
[考研] 22408 352分求调剂0854类 +3 努力的夏末 2026-04-09 3/150 2026-04-10 10:12 by 314126402
[考研] 调剂 +19 2261744733 2026-04-08 19/950 2026-04-09 19:11 by vgtyfty
[考研] 085600材料与化工301分求调剂院校 +33 刺痛jk 2026-04-06 34/1700 2026-04-09 18:31 by hy861222
[考研] 085600材料与化工,求调剂 +11 won_qii 2026-04-07 11/550 2026-04-09 17:03 by luoyongfeng
[考研] 一志愿西南大学生物学学硕344 求生物学相关调剂/生物与医药 +7 超人不会飞@ 2026-04-08 7/350 2026-04-09 09:35 by gong120082
[考研] 求调剂 +8 吃口冰激凌 2026-04-07 8/400 2026-04-09 08:03 by 5268321
[考研] 材料调剂 +14 一样YWY 2026-04-06 14/700 2026-04-08 23:00 by 猪会飞
[考研] 求调剂 +28 111623 2026-04-04 33/1650 2026-04-08 09:24 by 泽润东方
[考研] 专硕085403,291分,有两篇专利,一国一奖 +3 哈吉咪哈吉咪 2026-04-07 3/150 2026-04-07 18:21 by 蓝云思雨
[考研] 22408 318分求调剂 +4 勤奋的小笼包 2026-04-06 6/300 2026-04-07 15:05 by 纸鹤555
[考研] 346分的生物与医药08600求调剂 +6 常雨阳上岸 2026-04-05 7/350 2026-04-06 12:36 by lys0704
[考研] 考研调剂生寻找导师 +3 顾瞻考研啊 2026-04-05 3/150 2026-04-05 18:18 by 啵啵啵0119
[考研] 328分调剂 +6 门men 2026-04-04 6/300 2026-04-05 13:40 by imissbao
[考研] 考研调剂 +5 四川王涛 2026-04-04 5/250 2026-04-04 22:18 by 啵啵啵0119
[考研] 359求调剂 +7 hhhhaaaa$ 2026-04-04 7/350 2026-04-04 18:49 by imissbao
信息提示
请填处理意见