回 帖 发 新 帖 刷新版面

主题:[讨论]matlab

再请各位大侠帮忙
编一matlab程序,写出以一直角边最长为20的勾股弦数
答案为:3 4 5, 5 12 13,6 8 10,7 24 25,8 15 17, 9 12 15,9 40 41, 10 24 26, 11 60 61, 12 16 20 ,12 35 37,13 84 85, 14 48 50, 15 20 25 ,15 36 39, 15 112 113, 16 30 34, 16 63 65, 17 144 145, 18 24 30, 18 80 82, 19 180 181 ,20 21 29, 20 48 52 ,20 99 101.

回复列表 (共1个回复)

沙发

clear
k=1;
for p=1:10 
    for q=2:2:20
        a(k,1)=p*p+p*q;
        a(k,2)=q*q/2+p*q;
        a(k,3)=p*p+q*q/2+p*q;
        if  mymin( mymin( a(k,1) , a(k,2) ) , a(k,3) )>20
            a
            break
        end
       k=k+1;
    end
end
a

function y=mymin(a,b)
if a>b
   y=b;
else
   y=a;
end

a =

     3     4     5
     5    12    13
     7    24    25
     9    40    41
    11    60    61
    13    84    85
    15   112   113
    17   144   145
    19   180   181
     8     6    10
    12    16    20
    16    30    34
    20    48    52
    15     8    17
    21    20    29
    24    10    26
    35    12    37
    48    14    50
    63    16    65
    80    18    82
    99    20   101
少了几个派生类:3 4 5----->9 12 15  15 20 25   18 24 30
9 40 41-------->18 80 82

我来回复

您尚未登录,请登录后再回复。点此登录或注册