国产日韩欧美一区二区三区综合,日本黄色免费在线,国产精品麻豆欧美日韩ww,色综合狠狠操

極客小將

您現在的位置是:首頁 » python編程資訊

資訊內容

Python 基礎練習實例3(找數字)

極客小將2020-11-12-
一個整數,它加上100后是一個完全平方數,再加上168又是一個完全平方數,請問該數是多少?

題目:一個整數,它加上100后是一個完全平方數,再加上168又是一個完全平方數,請問該數是多少?

程序分析:【用到了初中的數學知識,平方差公式】

這個數的取值范圍是多少?如果沒有取值范圍,用程序就只能永遠的重復執行計算下去了,因此該題首先是一個數學問題,分析出一個取值范圍。

假設該數為 x

1、則:x + 100 = n2, x + 100 + 168 = m2

2、計算等式:m2 - n2 = (m + n)(m - n) = 168

3、假設: m + n = i,m - n = j,那么i * j =168,168是偶數,可推斷i 和 j 至少一個是偶數

4、再由上一步的算式可得: m = (i + j) / 2, n = (i - j) / 2,因為m、n都是整數,所以i+j與i-j都是偶數,則i 和 j 要么都是偶數,要么都是奇數。

5、從 3 和 4 推導可知道,i 與 j 均是偶數。

6、由于 i * j = 168,i與j同正或者同負,且不等于0, j>=2,則 1 < i < 168 / 2 + 1 或 j<=-2,則 -1 > i > 168 / -2 - 1。

7、接下來將 i 的所有數字循環計算即可。

程序源代碼:實例(Python 2.0+)


#!/usr/bin/python

# -*- coding: UTF-8 -*-

for i in range(-85, 85):

   if i == 0:  

       continue

   if 168 % i == 0:

       j = 168 / i

       if i > j and (i + j) % 2 == 0 and (i - j) % 2 == 0:

           print (i)

           m = (i + j) / 2

           n = (i - j) / 2

           x = n * n - 100

           print (x)

           print ('-----------------------')

運行結果如下:

Python 基礎練習實例3

本站部分內容轉載自網絡,如有侵權請聯系管理員及時刪除。

預約試聽課

已有385人預約都是免費的,你也試試吧...

主站蜘蛛池模板: 平乐县| 晋中市| 工布江达县| 司法| 平利县| 闵行区| 金昌市| 花莲市| 阿拉善盟| 梁平县| 镇平县| 平山县| 柳林县| 蒲江县| 朔州市| 无棣县| 小金县| 堆龙德庆县| 夏津县| 米脂县| 吉木萨尔县| 宁城县| 玛纳斯县| 菏泽市| 获嘉县| 日照市| 乌拉特前旗| 睢宁县| 康乐县| 安化县| 娄烦县| 得荣县| 沿河| 象州县| 山西省| 福清市| 峨边| 肇源县| 奈曼旗| 庄河市| 黄浦区|