python學習之代碼練習二(鴿子和兔子)

python學習之代碼練習二(鴿子和兔子)

題目

題目鏈接:鴿子和兔子
在這裏插入圖片描述

實現代碼

#!usr/bin/python
# coding=utf-8

result = []
num = 0
while num == 0:
    # 判斷是否輸入了0 0結束標誌
    input_value = raw_input()
    end = '0 0'
    if input_value == end:
        break
    else:
        values = input_value.split()
        ## 判斷輸入是否合法
        if len(values) != 2:
            exit()
        else:
            ## 通過拋出轉換異常判斷輸入是否有非數字
            try:
                heads = int(values[0])
                feet = int(values[1])
                ## 判斷輸入是否合法
                if (heads <= 0) | (feet <= 0):
                    result.append("Error")
                    continue
                ## 計算
                if (heads*4 - feet)%2 > 0:
                    result.append("Error")
                    continue
                if (feet - 2*heads)%2 > 0:
                    result.append("Error")
                    continue
                pigeon = (heads*4 - feet)/2
                rabbit = (feet - 2*heads)/2
                #print pigeon
                #print rabbit
                ## 判斷計算出的值的正確性,動物的個數不可能爲負數
                if (pigeon < 0) | (rabbit < 0):
                    result.append("Error")
                    continue
                res = "%s %s" % (pigeon, rabbit)
                result.append(res)
            except ValueError:
                exit()
## 輸出
for index in range(len(result)):
    if index == len(result) - 1:
        print "%s" % (result[index]),
    else:
        print "%s" % (result[index])

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章