100個不同型別的python語言趣味編程題
在求解的程序中培養編程興趣,拓展編程思維,提高編程能力,
第一部分:趣味演算法入門;第一題
'''
1.百錢買百雞:中國古代數學家張丘建在他的《算經》中提出了一個著名的 “ 百錢百雞問題 “: 一只公雞值五錢,一只母雞值三錢,三只小雞值一錢,現在要用百錢買百雞,請問公雞、母雞、小雞各多少只?
'''
#答案示例如下;
import time #匯入time模塊,以用來計算程式運行的時間,可忽視
time.perf_counter() #與time模塊中計算時間有關,可忽視
#主體代碼塊如下:
for cock in range(0,20):
for hen in range(0,33-cock):
chicken=100-cock-hen
if chicken%3==0:
if 5 * cock + 3 * hen + chicken / 3 == 100:
print('公雞{}只,母雞{}只,小雞{}只'.format(cock,hen,chicken))
print(time.perf_counter()) #列印出程式運行的時間,可忽視
#解本問題有多種方法,我只寫了一種方法,讀者可以自己嘗試各種方法,再用time模塊計算每種方法的運行時間,
補充:演算法是解決特定問題的方法,是程式設計的基礎,是程式設計的靈魂,作為一個演算法, 應具備5個特性,即有窮性、確定性、可行性、輸入和輸出,計算機演算法可分為兩大類, 分別是數值計算演算法和非數值計算演算法,數值計算的目的是求解數值,例如求方程的根;非數值計算演算法主要用于處理事務領域的問題,如排序、查找等,
問題分析:用百錢如果只買公雞,最多可以買20只,但題目要求買一百只,由此可知,所買公雞的數量肯定在0-20之間,同理,母雞的數量在0~33之間在,此把公雞、母雞和小雞的數量分別設為cock、hen、chicken, 則cock+hen+chicken=100,因此百錢買百雞問題就轉化成解不定方程組cock + hen + chicken == 100和5 x cock + 3 x hen +chicken/3=100的問題了,
如果你喜歡我的文章,請滑到下方點個推薦再走. ,以給我動力哦;轉載請注名出處,然后..請多來做客鴨,
注:100個不同型別的python語言趣味編程題是參考100個不同型別的c語言趣味編程題而寫,陸續會更新,歡迎大家分享出你們的方案,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/178321.html
標籤:Python
