Program Linked List pada Python


listnpm=[]
listnama=[]

def tambah():      
    np=int(raw_input("Masukkan NPM: "))
    listnpm.append(np)
    nm=raw_input("Masukkan nama: ").upper()
    listnama.append(nm)
 
         
def hapus():
    y=input("Masukkan record yang ingin dipilih : ")
    x=y-1
    if x < len (listnama):
        listnpm.pop(x)
        listnama.pop(x)
    else:
        print "Record yang dipilih salah"


def sisip():
    y= input("Masukkan record yang ingin disisip : ")
    x=y-1
    if x < len (listnama):
         np=int(raw_input("Masukkan NPM: "))
         nm=raw_input("Masukkan Nama: ").upper()
         listnpm.sisip(x,np)
         listnama.sisip(x,nm)

def sort():
    for i in range (len(listnpm)-1):
        mini =i
        j=i+1
        while j<(len(listnpm)):
            if listnpm[j]<listnpm[mini]:
                mini=j
            if mini !=i:
                temp=listnama[i]
                listnama[i]=listnama[mini]
                listnama[mini]=temp
                tmp=listnpm[i]
                listnpm[i]=listnpm[mini]
                listnpm[mini]=tmp
            j+=1
    print "Data telah diurutkan"

def cetak():
    print("  npm      nama")
    for i in range (len (listnama)):
        print "%8d"%(listnpm[i]),
        print "%7s" %(listnama[i]),
        print "%8d"%(listnpm[i+1])

def back():
    option1 = raw_input('Mau Coba Lagi [Y/T]?').upper()
    if option1 not in ('Y','T'):
        back()
    if(option1 == 'Y'):
        menu()
    else:
        exit()
     
def tambah2():
    option1 = raw_input('Tambah Data Lagi [Y/T]?').upper()
    if option1 not in ('Y','T'):
        back()
    if(option1 == 'Y'):
        tambah()
        tambah2()
    else:
        menu()

def hapus2():
    option1 = raw_input('Hapus Data Lagi [Y/T]?').upper()
    if option1 not in ('Y','T'):
        back()
    if(option1 == 'Y'):
        hapus()
        hapus2()
    else:
        menu()
def sisip2():
    option1 = raw_input('Sisipkan Data Lagi [Y/T]?').upper()
    if option1 not in ('Y','T'):
        back()
    if(option1 == 'Y'):
        sisip()
        sisip2()
    else:
        menu()

def menu():
 
    print '''
    =====MENU LINKED LIST YANG DAPAT ANDA PILIH=====
    ||              1. Tambah Data                 ||
    ||              2. Hapus Data                  ||
    ||              3. Menyisipkan Data            ||
    ||              4. Sorting Data                ||
    ||              5. Menampilkan Hasil           ||
    ||              6. Keluar                      ||
    ================== SILAHKAN PILIH ===============
    '''
   
    option2 = raw_input("Masukkan Pilihan : ")
    if(option2 == '1'):
        tambah()
        tambah2()
    elif(option2 == '2'):
        hapus()
        hapus2()
    elif(option2 == '3'):
        sisip()
        sisip2()
    elif(option2 == '4'):
        sort()
        back()
    elif(option2 == '5'):
        cetak()
        back()
    elif(option2 == '6'):
         exit()
         
    else:
        menu()

menu()


¡Compártelo!

0 komentar:

Post a Comment

Buscar

 

Gunadarma

About Me

My photo
I'm college student of Gunadarma University. Majoring Informatic Engineering.
Thiinnkk Copyright © 2011 | Tema diseñado por: compartidisimo | Con la tecnología de: Blogger