2016年9月15日 星期四

程式集訓 A016 : 三數排序

  

#coding=utf8

import math
#程式集訓 A016:三數排序
'''
           (A016) 三數排序 : 輸入三個正整數a、b、c,將a、b、c從小排到大。
'''
#==========================
def is_number(s):
    try:
        float(s)
        return True
    except ValueError:
        pass

    try:
        import unicodedata
        unicodedata.numeric(s)
        return True
    except (TypeError, ValueError):
        pass

    return False
#==========================
    
print("      輸入三個正整數a、b、c  ")
print("==================")
#==========================
n=1
while n!=0:
  a=input("輸入 A=")
  if (is_number(a) != True) :
     print ('這是不合法的輸入.  請再輸入一次...')
     n=1
  else:
     A=float(a)
     n=0
#==========================
n=1
while n!=0:
  a=input("輸入 B=")
  if (is_number(a) != True) :
     n=1
     print ('這是不合法的輸入.  請再輸入一次...')
  else:
     B=float(a)
     n=0
#==========================
n=1
while n!=0:
  a=input("輸入 C=")
  if (is_number(a) != True) :
     n=1
     print ('這是不合法的輸入.  請再輸入一次...')
  else:
     C=float(a)
     n=0

#==========================
# python 判斷後 只執行一次 故需判斷3次
if  (A>B):
     A,B=B,A
elif (A>C):
     A,C=C,A
elif (B>C):
    B,C=C,B
#==========================
if  (A>B):
     A,B=B,A
elif (A>C):
     A,C=C,A
elif (B>C):
    B,C=C,B
#==========================
if  (A>B):
     A,B=B,A
elif (A>C):
     A,C=C,A
elif (B>C):
    B,C=C,B
#==========================

print (A,"<<",B,"<<",C)


    輸入三個正整數a、b、c  
==================
輸入 A=12
輸入 B=4
輸入 C=45
4.0 << 12.0 << 45.0
>>> 

沒有留言:

張貼留言

2024_09 作業3 以Node-Red 為主

 2024_09 作業3  (以Node-Red 為主  Arduino 可能需要配合修改 ) Arduino 可能需要修改的部分 1)mqtt broker  2) 主題Topic (發行 接收) 3) WIFI ssid , password const char br...