證明正三角形的三個頂點 整數 不能畫在格點上面

2022-08-16 02:33:17 字數 803 閱讀 5257

設等邊三角形三個頂點座標 (0,0) (a,b) (c,d)

三邊相等得 l  =  a^2 + b^2  =  c^2 + d^2  =  (a-b)^2 + (c-d)^2

=  a^2 + b^2 + c^2 + d^2 - 2ac - 2bd

化解可得  l=2ac+2bd

設 (a,b,c,d)的最大公約數為b

a'=a/b   b'=b/b   c'=c/b

(1)那麼(a',b',c',d')最大公約數為 1 (a',b',c',d'中必有奇數)

(2)有l'  =  a'^2 + b'^2  =  c'^2 + d'^2  =  (a'-b')^2 + (c'-d')^2

=  a'^2 + b'^2 + c'^2 + d'^2 - 2a'c' - 2b'd' = 2(ac+bd)

則l'必為偶數

因為a'和b' ,c'和d'同奇偶,所以a',b',或c',d'為奇數;

(乙個奇數2x+1的平方,(2x+1)^2=4*x^2 + 4*x +1 被4除餘1)

所以 a'^2,b'^2或c'^2,d'^2 被4除餘1;

因為 l'  =  a'^2 + b'^2  =  c'^2 + d'^2

所以 l'被4除餘2;

設 a' ,b'為奇數

1. c',d'也為奇數

那麼l'=(a'-b')^2 + (c'-d')^2 被4除餘0,矛盾排除;

2.c',d'為偶數

那麼l'=c'^2 + d'^2被4除餘0,矛盾排除;

綜上所述正三角形的三個頂點不能畫在格點上面(所有座標為整數)

for 迴圈列印直角三角形 正三角形 稜形

熟練掌握 for 迴圈的使用 1 需求 列印直角三角形 如下 左直角 for int i 0 i 5 i system.out.println 右直角 for int i 0 i 5 i for int j 0 j i j system.out.println 執行效果 process finish...

列印由 組成的正三角形

在mooc上覆習c的迴圈巢狀的時候,遇到一道題目,要列印這樣乙個圖形 這並不是一道很難的題目,如果不限定範圍。我會選擇用雙重的迴圈和if語句來寫,主要程式如下 for i 0 i 4 i printf n 上面其實相當於半個菱形公式,但在課程網上,對 限制嚴格,用了三個控制的變數i,j,k,總共用了...

1174 正三角形的外接圓面積

正三角形的外接圓面積 time limit 1000ms memory limit 65536k total submit 184 accepted 124 description 給你正三角形的邊長,pi 3.1415926 求正三角形的外接圓面積。input 只有一組測試資料 第一行輸入乙個整數...