24小时热门版块排行榜    

CyRhmU.jpeg
查看: 2245  |  回复: 4
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

jrflower

木虫 (正式写手)

[求助] 如何用matlab求一个式子的整数解

遇到一个题目,直角三角形的一条直角边是13,另外两条边不知道,求斜边长,要求给出整数,也就是169+x.^2=y.^2的问题,x, y均为整数,本人对matlab不熟,算了一下发现1-1000内都没有合适的数,求助怎么用matlab编程序得到x,y的整数解,谢谢!
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

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

lurencyj

木虫 (著名写手)

【答案】应助回帖

★ ★ ★ ★ ★
jrflower: 金币+5, ★★★很有帮助 2012-03-16 23:47:51
过程:
CODE:
169+x^2=y^2
(y-x)(y+x) = 169 = 13*13 = 1*169
因为x,y(>x)为正整数,169分解因子只有上面两种,所以,
x+y = 169
y-x = 1
解得: x = 84, y = 85

很女子很弓虽大
4楼2012-03-16 23:30:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 5 个回答

lurencyj

木虫 (著名写手)

【答案】应助回帖

感谢参与,应助指数 +1
不用matlab了,这个问题169+x^2=y^2 只有一组整数解: x = 84, y = 85。可以直接解。
很女子很弓虽大
2楼2012-03-16 23:27:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dbb627

荣誉版主 (著名写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
jrflower: 金币+15, ★★★★★最佳答案 2012-03-16 23:47:39
>> a=1:1000;
>> x=sqrt(13^2+a.^2);
>> Nx=find(x==fix(x))

Nx =

    84

>> sqrt(13^2+84^2)

ans =

    85
The more you learn, the more you know, the more you know, and the more you forget. The more you forget, the less you know. So why bother to learn.
3楼2012-03-16 23:28:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jrflower

木虫 (正式写手)

引用回帖:
3楼: Originally posted by dbb627 at 2012-03-16 16:28:42:
>> a=1:1000;
>> x=sqrt(13^2+a.^2);
>> Nx=find(x==fix(x))

Nx =

    84

>> sqrt(13^2+84^2)

ans =

    85

谢谢,就是想找这种程序,以后也可以模仿用。另外我太粗心了,用matlab算了一片的数看的时候看漏了,没看到85,呵呵
5楼2012-03-16 23:51:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见