Program Sorting pada Python


def ss():
    n=int(raw_input('Masukkan Banyaknya Bilangan: '))
    bilangan=[]
    for i in range(n):
        print 'Bilangan Ke-',i+1,
        bil=int(raw_input(': '))
        bilangan.append(bil)
    print 'Daftar Bilangan Sebelum Diurutkan: ',bilangan  

    i=0
    while i<n-1:
        kecil=i
        j=i+1
        while j<=n-1:
            if bilangan[j]<bilangan[kecil]:
                kecil=j
            j=j+1
        if kecil!=i:
            temp=bilangan[i]
            bilangan[i]=bilangan[kecil]
            bilangan[kecil]=temp
            print 'Proses Mengurutkan ',i+1,': ', bilangan
        i=i+1
    print 'Daftar Bilangan Setelah Diurutkan: ',bilangan
 
def es():
    n=int(raw_input('Masukkan Banyaknya Bilangan: '))
    bilangan=[]
    for i in range(n):
        print 'Bilangan Ke-',i+1,
        bil=int(raw_input(': '))
        bilangan.append(bil)
    print 'Daftar Bilangan Sebelum Diurutkan:',bilangan  

   
    i=0
    while i<n:
        j=i+1
        while j<n:
            if bilangan[i]>bilangan[j]:
                temp=bilangan[i]
                bilangan[i]=bilangan[j]
                bilangan[j]=temp
                print 'Proses Mengurutkan ',i+1,': ', bilangan
            elif bilangan[j]==bilangan[i]:
                print 'bilangan yang ingi ditukar bernilai sama'
            else:
                bilangan[i]
            j=j+1
        i=i+1
    print 'Daftar Bilangan Setelah Diurutkan: ',bilangan

def ins():
    n=int(raw_input('Masukkan Banyaknya Bilangan: '))
    bilangan=[]
    for i in range(n):
        print 'Bilangan Ke-',i+1,
        bil=int(raw_input(': '))
        bilangan.append(bil)
    print 'Daftar Bilangan Sebelum Diurutkan:',bilangan
 
    i=1
    while i < n:  
        kcl=i
        j=i-1
        while j >= 0:
            if bilangan[kcl]<bilangan[j]:              
                temp=bilangan[j]
                bilangan[j]=bilangan[kcl]
                bilangan[kcl]=temp
                tukar=i+1
                print 'Proses Mengurutkan ',i+1,': ', bilangan
                kcl=j
            j=j-1                
        i=i+1
    print 'Daftar Bilangan Setelah Diurutkan: ',bilangan


def coba():
    option1 = raw_input('Mau Coba Lagi [Y/T]?').upper()
    if option1 not in ('Y','T'):
        coba()
    if(option1 == 'Y'):
        menu()
    if (option1 == 'T'):
        exit

def menu():
    print '''
    ===== MENU PROGRAM SORTING =====
   ||               1. SELECTION SORT                     ||
   ||               2. EXCHANGE SORT                     ||
   ||               3. INSERTION SORT                      ||
   ||               4. KELUAR                                      ||
   ==========SILAHKAN PILIH==========
       '''
    option2 = raw_input("Masukkan Pilihan (1/2/3/4): ")
    if(option2 == '1'):
        ss()
        coba()
    elif(option2 == '2'):
        es()
        coba()
    elif(option2 == '3'):
        ins()
        coba()
    elif(option2 == '4'):
         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