プロが教える店舗&オフィスのセキュリティ対策術

x^2-10y^2=1 を満たす正の整数x,yの組を3つ求めよ。

トライしてみたこと。
(1)一組をもとめようと x,yを代入してしてみたが、見つからず。
(2)x は奇数、yは偶数。
(3)(x-1)(x+1)=10y^2と因数分解して、x-1=10,x+1=y^2などと
考えられるものをつくる。
(4)x^2>9y^2
(5)(x-√10y)(x+√10)=1
どれも解答からほど遠い気がする。よろしくお願いします。

A 回答 (8件)

スマートなやり方ではありませんが、代入していくなら、


x=19,y=6
が、まずありますよね。
    • good
    • 0
この回答へのお礼

ただ代入していくのみですか、絞り込みは奇数と偶数ぐらいですか。
ありがとうございます。

お礼日時:2010/08/24 15:40

最初の解は、x=19,y=6です。

多分これは試行錯誤でなきゃでてきません。
私は、x^2=10y^2+1として、yをいろいろ変えて、右辺が平方数となるものを求めました。

さて、一つ求まれば全て求まります。他の解については、下記サイトを御参照のこと。

http://ja.wikipedia.org/wiki/%E3%83%9A%E3%83%AB% …

この回答への補足

紹介のサイトにあたってみました。結論として
残念ながら、よくわかりませんでした。
この問題の場合で、2組目をどう求めると良いのか
しめしてもらえるとありがたいです。

補足日時:2010/08/24 15:59
    • good
    • 0
この回答へのお礼

サイトありがとうございます。
早速あたってみます。

お礼日時:2010/08/24 15:48

エクセルにて計算したところ、



(x,y)=(19,6),(721,228),(27379,8658)

となりました。
「x^2-10y^2=1 を満たす正の整数」の回答画像3
    • good
    • 0
この回答へのお礼

ありがとうございます。
c言語でのプログラムが回答にのってあるので
エクセルではどんな数式をつくるのか。そっちのほうを
かんがえてしまいました。

お礼日時:2010/08/24 15:51

#1です。



x=19,y=6なら代入して求まるかもしれませんが、他の解が
x=721,y=228
x=27379,y=8658
なので、残りは代入せずに、スマートにやるほうが良いですね。

1つ目を出すのに苦労するかもしれませんが、頑張ってください。
余談ですが、

#include<stdio.h>
main()
{
int x,y,z;

for(x=1; x<30000; x++){
for(y=1; y<10000; y++){
z=x*x-10*y*y-1;
if(z==0) printf("x=%d,y=%d\n",x,y);
}
}
}

のようにCで3つとも出せますし、検算用にも使えます。
    • good
    • 0
この回答へのお礼

3組もとめよということは、1組がわかれば
あとはこれを利用するのかということは
予想できるので、他の組はこれをもとに
考えたいと思います。ありがとうございます。
プログラムは、z=0になる場合が3回で終わるように
すればいいですか。こういうときにパソコンは役に
たちますね。
ありがとうございます。

お礼日時:2010/08/24 15:46

x^2-10y^2=1



x=10n+1 と置くと
2n(5n+1)=y^2

解が1つ見つかれば、
10*y^2+1=x^2
が成立しているので、
n=2*y^2
とおくと、
2n(5n+1)=2*2*y^2(5*2*y^2+1)=(2xy)^2
よって、
(20y^2+1, 2xy)
もまた解になります。

あとは順次計算していけばいくらでも求められます。


ただ、この方法では(27379,8658)は求められませんが・・・
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
「n=2*y^2とおくと、」とありますが
これはどこからこうおけるとわかるのでしょうか。
教えていただけないでしょうか。

お礼日時:2010/08/24 16:42

x^2 = 10 y^2 + 1


x^2 の1の位が1なので、
x の1の位は 1 または 9。
よって
x = 9, 11, 19, ・・・
だけ調べれば十分です。
最初の組は筆算でもすぐ見つかります。
    • good
    • 0
この回答へのお礼

xの絞り方、ありがとうございます。
参考になります。

お礼日時:2010/08/24 16:16

>「n=2*y^2とおくと、」とありますが


>これはどこからこうおけるとわかるのでしょうか。

2n(5n+1)=y^2
なので、
2nと5n+1がそれぞれ平方数になっていればOK。

2nが平方数であるためには、n=2k^2
で、5n+1=10k^2+1だから、
10y^2+1=x^2 の条件から、k=yであれば5n+1が平方数になることが分かります。



注意
変数名の区別をあまり意識しないで書いています。
2n(5n+1)=y^2 のyと
10y^2+1=x^2 のyは別物ですので。
    • good
    • 0
この回答へのお礼

どう考えたのかの道筋がわかり、参考になります。
ありがとうございます。

お礼日時:2010/08/25 08:28

ANo.2さんの補足に関してです。



1つの解 (19,6) から他の解を求める方法です。
サイトによれば、

(19+6√10)^2=721+228√10
(196√10)^3=27379+8658√10

から、他の解 (721,228), (27379,8658)
が求まるようです。
    • good
    • 0
この回答へのお礼

わかりました。
(x-√10y)(x+√10y)=1 の両辺を2乗、3乗に
していけば良いと言うことですね。
そうすると、(x^2+10y^2,2xy)が解。
ありがとうございます。

お礼日時:2010/08/25 08:59

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!