วันอาทิตย์ที่ 1 พฤศจิกายน พ.ศ. 2558

lab 7 display data sort by age

class student():
    def __init__(self,name,weight,high,age,ID):
        self.name = name
        self.weight = weight
        self.high = high
        self.age = age
        self.ID = ID
       
    def show_data(self):
        print("Name",self.name)
        print("Weight",self.weight)
        print("High",self.high)
        print("Age",self.age)
        print("ID",self.ID)

    def get_age(self):
        return self.age
    def get_name(self):
        return self.name
    def get_weight(self):
        return self.weight
    def get_high(self):
        return self.high
    def get_ID(self):
        return self.ID
    def set_age(self,value):
        self.age = value
     
    def set_name(self,value):
        self.name = value
     
    def set_weight(self,value):
        self.weight = value
     
    def set_high(self,value):
        self.high = value
       
    def set_ID(self,value):
        self.ID = value
   
def sort_insertion(data):
    index = 1
    while(index<len(data)):
        value_age = data[index].get_age()
        value_name = data[index].get_name()
        value_weight = data[index].get_weight()
        value_high = data[index].get_high()
        value_ID = data[index].get_ID()
        pos = index
        while((pos>0)and (data[pos - 1].get_age()>value_age)):
            data[pos].set_age(data[pos - 1].get_age())
            data[pos].set_name(data[pos - 1].get_name())
            data[pos].set_weight(data[pos - 1].get_weight())
            data[pos].set_high(data[pos - 1].get_high())
            data[pos].set_ID(data[pos - 1].get_ID())
            pos = pos - 1
        if(pos !=index):
            data[pos].set_age(value_age)
            data[pos].set_name(value_name)
            data[pos].set_weight(value_weight)
            data[pos].set_high(value_high)
            data[pos].set_ID(value_ID)
        index = index +1
    return data  
def setup():
    index= 0
    data = [student("Keane",50,185,18,1),
            student("Giggs",55,175,19,2),
            student("Nani",40,160,20,3),
            student("Park",45,169,18,4),
            student("Rooney",80,150,20,5)]
    sort_insertion(data)
    while(index<len(data)):
        data[index].show_data()
        index = index + 1
 
setup()

ไม่มีความคิดเห็น:

แสดงความคิดเห็น