創(chuàng)意機器??賽——撿硬幣。?賽規(guī)則如下:
(1)在?賽場地上放置了n 個硬幣,每個硬幣的位置均不相同,各位置坐標(x,y)保存在?本?件中(如圖所示,放置了5個硬幣,?本中坐標按x,y 升序排列);
(2)機器?在兩個硬幣位置間?直線,從起點(0,0)出發(fā),按硬幣x 坐標從?到?去撿,若 x 坐標相同,則按 y 坐標從?到?撿;取?其中的n-1個硬幣,總??距離最短的機器?將獲得?賽的冠軍。
例:如圖a 所示,p2直接到p4則代表p3處硬幣未取。
完成該項?分以下?個步驟:
(1)讀取坐標數(shù)據(jù)。
從?本?件中讀取硬幣的坐標(x、y),分別存儲在列表x 和y 中。請在橫線處填?合適的代碼。
(2)編寫函數(shù),計算兩點間的距離。請在橫線處填?合適的代碼。
(3)設計算法與程序實現(xiàn)。
機器?取?n-1個硬幣經(jīng)過的最短距離公式可以描述為:
其中:為機器?取?n-1個硬幣?的最短距離;
為機器?取?n 個硬幣經(jīng)過的距離之和;
為機器?未取第i 個硬幣少?的路程;
Max 為求中的最?值。
根據(jù)上述算法編寫的Python 程序如下,請在橫線處填?合適的代碼。
(4)調試和異常處理。
當最后一個硬幣未取為最短距離時,上述程序運?結果不正確。加框處代碼有誤,請修改。
【考點】事件處理過程.
【答案】見試題解答內容
【解答】
【點評】
聲明:本試題解析著作權屬菁優(yōu)網(wǎng)所有,未經(jīng)書面同意,不得復制發(fā)布。
發(fā)布:2024/6/27 10:35:59組卷:1引用:1難度:0.3
相似題
-
1.有下列Python程序段:
執(zhí)行該程序段后,result的值為是( )發(fā)布:2024/11/6 10:0:2組卷:0引用:2難度:0.5 -
2.漢諾塔問題如圖所示,現(xiàn)要求將塔座A上的所有圓盤移到塔座B上,并仍按同樣順序疊放。移動圓盤時,需遵守漢諾塔問題的移動規(guī)則。由此,可設計出解漢諾塔問題的遞歸算法為( ?。?/h2>
發(fā)布:2024/11/14 8:0:1組卷:1引用:2難度:0.2 -
3.某同學使用Python編寫了一個解密程序嘗試找出某文件密碼。調試時,程序順利運行且沒有報錯,但最終無法得到正確的密碼。造成這個結果的原因可能是( )
發(fā)布:2024/11/7 22:30:1組卷:1引用:1難度:0.5
把好題分享給你的好友吧~~