24小时热门版块排行榜    

Znn3bq.jpeg
查看: 645  |  回复: 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 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 调剂 +19 小张ZA 2026-04-10 20/1000 2026-04-10 22:08 by 猪会飞
[考研] 一志愿华东师范生物学326分,求调剂 +8 刘墨墨 2026-04-09 8/400 2026-04-10 12:00 by pengliang8036
[考研] 化工调剂求导师收留!一志愿失利,踏实肯干,有植物提取科研经历 +17 yzyzx 2026-04-09 17/850 2026-04-10 10:29 by wp06
[考研] 复试调剂,一志愿郑州大学材料与化工289分 +31 硕星赴 2026-04-08 31/1550 2026-04-09 16:54 by Delta2012
[考研] 一志愿武理车辆 281 求调剂 +5 上岸研究生. 2026-04-07 5/250 2026-04-09 15:56 by only周
[考研] 二次调剂求老师收留 +3 笑笑袁 2026-04-08 3/150 2026-04-08 23:50 by 醉在风里
[考研] 化学308分求调剂 +21 你好明天你好 2026-04-07 23/1150 2026-04-08 22:32 by 凯凯要变帅
[考研] 一志愿郑州大学085600求调剂 +21 吃的不少 2026-04-05 24/1200 2026-04-08 16:47 by sunhuadong
[考研] 材料科学与工程320求调剂,080500 +12 黄瓜味薯片 2026-04-06 12/600 2026-04-08 16:26 by luoyongfeng
[考研] 22408 266求调剂 +11 masss11222 2026-04-07 14/700 2026-04-08 11:06 by yulian1987
[考研] 265求调剂 +19 小木虫085600 2026-04-06 21/1050 2026-04-08 10:38 by 逆水乘风
[考研] 307求调剂 +14 超级伊昂大王 2026-04-06 14/700 2026-04-08 07:03 by 无际的草原
[考研] 22408 一志愿双一流人工智能300分 四六级,数据分析国奖 +4 zzfeng123 2026-04-06 6/300 2026-04-07 21:02 by zzfeng123
[考研] 297分083200求助 +9 aekx 2026-04-05 9/450 2026-04-06 20:57 by flysky1234
[考研] 第一志愿东南大学物理313,有科研竞赛获奖经历,希望物理复试调剂 +3 马内橙 2026-04-05 3/150 2026-04-06 10:32 by 蓝云思雨
[考研] 331求调剂 +8 于征yz 2026-04-05 8/400 2026-04-06 00:54 by fmesaito
[考研] 材料调剂 +14 壹贰贰亿 2026-04-04 14/700 2026-04-05 23:31 by 来看流星雨10
[考研] 一志愿北京交通大学材料工程总分358求调剂 +4 cs0106 2026-04-04 4/200 2026-04-05 18:46 by imissbao
[考研] 工科277分求调剂材料 +8 上了上了上哦 2026-04-05 9/450 2026-04-05 13:05 by wwytracy
[考研] 309求调剂 +4 快乐的小白鸽 2026-04-04 5/250 2026-04-04 15:55 by cql1109
信息提示
请填处理意见