IMPLEMENTASI ALGORITMA CAESAR, CIPHER DISK, DAN SCYTALE PADA APLIKASI ENKRIPSI DAN DEKRIPSI PESAN SINGKAT, LumaSMS


Abstrak

Short Message Service (SMS) merupakan salah satu cara berkomunikasi yang banyak digunakan oleh pengguna telepon seluler. Namun banyaknya pengguna telepon seluler yang menggunakan layanan SMS, tidak diimbangi dengan faktor keamanan yang ada pada layanan tersebut. Banyak pengguna telepon seluler yang belum menyadari bahwa SMS tidak menjamin integritas dan keamanan pesan yang disampaikan. Ada beberapa risiko yang dapat mengancam keamanan pesan pada layanan SMS, diantaranya: SMS spoofing, SMS snooping, dan SMS interception. Untuk mengurangi risiko tersebut, maka dibutuhkan sebuah sistem keamanan pada layanan SMS yang mampu menjaga integritas dan keamanan isi pesan. Dimana tujuannya ialah untuk menutupi celah pada tingkat keamanan SMS. Salah satu penanggulangannya ialah dengan menerapkan algoritma kriptografi, yaitu kombinasi atas algoritma Cipher Disk, Caesar, dan Scytale pada pesan yang akan dikirim. Tujuan dari penulisan ini adalah membangun aplikasi LumaSMS, dengan menggunakan kombinasi ketiga algoritma kriptografi tersebut. Dengan adanya aplikasi ini diharapkan mampu mengurangi masalah keamanan dan integritas SMS.
Kata Kunci: caesar, cipher disk, kriptografi, scytale, SMS.

Untuk melihat/ mendownload full paper, silahkan click link berikut: Click here

Belajar Datamining dengan RapidMiner

Produk-produk perangkat lunak gratis (freeware) dan bersifat open source yang demikian banyak jumlahnya, telah memudahkan kita dalam melakukan proses pengolahan dan analisis data. Dalam melakukan analis terhadap data mining, RapidMiner merupakan salah satu solusi yang dapat kita gunakan. Keberadaan RapidMiner yang berupa freeware dan dapat dijalankan pada berbagai sistem operasi tidak hanya menguntungkan penyedia aplikasi karena tidak perlu mengeluarkan biaya untuk lisensi perangkat lunak, tetapi juga memudahkan pengembang maupun calon pengembang dalam mempelajari dan mencoba sendiri fitur-fitur yang ada.

Buku ini diharapkan dapat membantu pembaca mempelajari RapidMiner, melalui rangkaian tutorial bertahap mulai dari proses instalasi hingga pemrograman. Pada buku ini juga dibahas beberapa teori penunjang mengenai data mining seperti, decision tree, neural network dan market basket analysis untuk membuka wawasan pembaca mengenai data mining sebelum melakukan analisis data mining.

Berikut ini link untuk mendownload buku Belajar Datamining dengan RapidMiner.

Critical Design Review untuk Sistem VMS


Istilah Critical Design Review (CDR) melekat pada proses sistem engineering dimana satu rancangan dinilai telah matang untuk diproduksi, dirakit, diintegrasikan dan diuji secara massal. Disebutkan pula bahwa salah satu tujuan dari CDR adalah “to verify that the final design fulfills the specifications established at PDR” (memastikan bahwa desain akhir telah memenuhi spesifikasi yang disebutkan di dalam Preliminary Design Review atau PDR).

Proyek ini diimplementasikan dalam bentuk Voucher Management System (VMS) berbasis SMS (mobile voucher). Sistem ini merupakan sistem yang menggunakan SMS sebagai pengganti dari voucher yang biasa didistribusikan menggunakan kertas, di mana jenis voucher terbagi dua yaitu voucher potongan harga dan voucher discount belanja dengan beberapa syarat dan ketentuan untuk memperolehnya.

Berikut ini merupakan Link dari Critical Design Review untuk sistem VMS

Kasus Sistem Penunjang Keputusan

Contoh kasus sistem penunjang keputusan untuk menentukan tema skripsi, silahkan klik link berikut Contoh SPK

Authentication and Account Management

Otentikasi merupakan suatu proses untuk memastikan keaslian sesuatu hal. lalu bagaimana cara melakukan otentikasi dan memanagement akun agar aman? untuk lebih mengetahui apa itu otentikasi, silhkan klik link berikut ini: Click here

Prototipe Aplikasi Ensiklopedia Indonesia Berbasis iOS

Abstract
Indonesia has a unique and interesting diversity culture as the nation's assets. Most of Indonesia people don’t know their own culture. This is because there are so many Indonesia cultures and lack of introducing them to public. The introduction of culture through reading the book is less effective. In this modern era, people more comfortable hold a smartphone, rather than to carry a book. Therefore, an easy and interesting application to introduce Indonesia culture to public is necessary. The purpose of this paper is to develop a prototype for Indonesia encyclopedia apps based iOS that can be used easily. iOS is quite popular, and fairly easy to use. The information will consist of description, demographic data, and list of culture from each Indonesia’s province. The user can select province by touching Indonesia map. The author uses object-oriented modeling, Unified Modeling Language (UML) in designing Indonesia encyclopedia applications based on iOS. Users can learn the cultures exist in Indonesia everytime and everywhere.
Keywords–culture; encyclopedia; Indonesia; iOS.

Untuk melihat/ mendownload full paper, silahkan click link berikut: Click here

Simpson 1/3rd Rule

Aturan Simpson 1/3 merupakan perluasan dari metode trapezoidal, simpson 1/3 menggunakan polinomial orde dua (persamaan parabola) untuk mendekati fungsi. Untuk memahami aturan simpson 1/3rd, silahkan klik link berikut ini: Click here...

Terjemahan e-book Accounting Information System 9th Edition

Berikut ini merupakan link yang berisi terjemahan e-book Accounting Information System 9th Edition: Click here...

Perancangan Sistem Pengecekan Keaslian Ijazah berbasis Web dengan Menggunakan UML



Abstrak

Ijazah merupakan suatu dokumen dalam satuan pendidikan yang dikeluarkan oleh lembaga pendidikan yang diakreditasi oleh pemerintah. ijazah diberikan kepada pelajar dan mahasiswa yang telah dinyatakan “LULUS” oleh lembaga pendidikan yang bersangkutan. Umumnya Ijazah digunakan oleh seseorang sebagai syarat untuk melanjutkan pendidikan ke jenjang yang lebih tinggi atau untuk mendapatkan pekerjaan. Namun, dewasa ini banyak masyarakat Indonesia yang menggunakan ijazah palsu untuk mendapatkan pekerjaan. Hal ini tentu merugikan pihak perusahaan karena mereka tertipu dengan menerima karyawan yang tidak kompeten. Untuk mengatasi hal ini, dibutuhkan sistem pengecekan keaslian ijazah yang terstruktur, terintegrasi dan terkomputerisasi. Dengan rancangan aplikasi pengecekan keaslian ijazah, perusahaan bisa terhindar dari penipuan yang dilakukan oleh pelamar pekerjaan dengan melakukan pengecekan keaslian dari ijazah yang diterima. Penulis menggunakan pemodelan berorientasi objek dengan menggunakan pemodelan Unified Model Language (UML) dalam merancang sistem pengecekan keaslian ijazah berbasis web. Tujuan dari penulisan ini adalah untuk memecahkan masalah dengan rancangan sistem terkomputerisasi. Hasil dari penulisan ini menunjukkan rancangan sistem pengecekan keaslian ijazah berbasis web dan rancangan tampilan aplikasi pengecekan keaslian ijazah. Diagram yang digunakan dalam sistem informasi ini yaitu: Use Case Diagram, Class Diagram dan Activity Diagram.

Kata kunci : asli, ijazah, UML

Untuk mendownload paper ini, silahkan klik link berikut:
Click here...


Makalah Perbandingan Web Toko Sepatu Online

Pada kesempatan kali ini, saya akan berbagi tugas saya mengenai perbandingan web toko online. Tidak perlu berpanjang lebar lagi, untuk makalah lengkapnya bisa di lihat pada link di bawah ini..

Let's check it out....
Makalah Perbandingan Web Toko Sepatu Online

Perancangan Sistem Keanggotaan Klub Kesehatan


Studi Kasus

Sistem keanggotaan klub kesehatan: ketika anggota bergabung dengan klub kesehatan, mereka membayar biaya pada suatu waktu. Kebanyakan keanggotaan adalah untuk satu tahun, tapi ada juga keanggotaan untuk jangka waktu pendek dua bulan. Sepanjang tahun, klub kesehatan ini menawarkan berbagai macam diskon untuk harga keanggotaan reguler (misal dua keanggotaan dengan satu harga pada Hari Valentine). Umumnya anggota membayar jumlah yang berbeda pada jangka waktu keanggotaan yang sama. Klub ini ingin mengirimkan surat pengingat kepada anggota untuk menanyakan mereka memperbaharui keanggotaan mereka sebulan sebelum keanggotaan mereka habis. Beberapa anggota marah ketika ditanya untuk memperbaharui kontrak keanggotaan yang lebih mahal dari aslinya, sehingga klub ini ingin melacak pembayaran harga supaya manajer dapat menolak harga reguler dengan harga khusus ketika anggota ditanya untuk memperbaharui.
Sistem harus melacak harga baru supaya pembaharuan dapat diproses secara akurat. Salah satu masalah di industri klub kesehatan adalah tingginya angka pergantian anggota. Saat beberapa anggota masih aktif untuk beberapa tahun, sekitar setengah dari anggota tidak memperbaharui keanggotaan mereka. Ini adalah masalah utama karena klub kesehatan menghabiskan banyak iklan untuk menarik setiap anggota baru. Pihak manajer ingin sistem tersebut melacak setiap waktu anggota yang datang ke klub. Sistem akan mengidentifikasi pengguna yang serius dan menghasilkan sebuah laporan supaya manajer dapat mengajukan pembaharuan keanggotaan mereka lebih awal, atau mungkin menawarkan penurunan intensitas pembaharuan lebih awal. Demikian juga, sistem harus mengidentifikasi anggota mana saja yang tidak mengunjungi klub lebih dari sebulan supaya pihak manajer dapat menghubungi mereka dan mencoba untuk menarik minat lagi untuk kembali ke klub.

Untuk melihat rancangan sistem tersebut, silahkan klik link berikut:

Pengaruh Teknologi Informasi pada Lingkungan Sosial


Perkembangan teknologi informasi semakin berkembang dengan cepat dewasa ini. Lalu bagaimanakah pengaruh dari perkembangan teknologi ini terhadap lingkungan sosial?? Untuk lebih mengetahuinya, silahkan klik link berikut ini:
Pengaruh Teknologi Informasi pada Lingkungan Sosial

Perancangan Sistem Informasi Video Conference untuk Mendukung Rapat



Abstract

Meeting is a communication between 2 people or more in order to reach an agreement in a cooperation. Basicly, meeting is held in one location or in a specific room as a gathering place for the participants. Meeting activity like this oftenly considered less of effectiveness and not efficient, especially for a company that have many subsidiaries, because when a meeting will be held in a certain location the participants must spend a special charge for transportation, consumption, and other needs to support it. To overcome this problem, video conference can be the solution. With video conferencing application design that is user friendly, the meeting can run as usual in employees’ own room without having to gather at a specific location or room like a face to face directly. The author uses object-oriented modeling using modeling Unified Model Language (UML) in the design of information systems to support video conference meeting. The purpose of this paper is to solve the problem with the design of a computerized system. The results of this study is to demonstrate the design of video conferencing applications to support meetings and the design of application’s interface, where the application interface is distinguished by the role of the participants in the meeting. Diagrams that used in this information systems are: Use case diagrams and Activity Diagram.


Keywords: Meeting, UML, Video conference

Untuk mendownload paper ini, silahkan klik link berikut: Click here...

I - Robot (Interaksi Manusia dan Komputer)


Nowadays the technology is developing rapidly. The development of this technology gave us some new invention with high technology and be able to assist people to do their activities. The advance technology is like two blades which have positive side and negative side. Human as a creator and developer of this technology should be able to use it wisely and responsibly, don't let the advance technology instead of misleading people. To understand how we should respond to the development of this technology, we can see it in the movie I-Robot which civilization and use of technology is very advanced.


I-Robot is a science movie that directed by Alex Proyas. this movie tells the story of human life in the era of advanced technology, which at that time robot are completely integrated in society. Each robot is equipped with all the advanced technology so that they can assist humans in carrying out daily activities. These robots are called NS5. Each robot created tied at 3 laws that protect humans and must be obeyed by the robot so that it restricts their movements. But as time went on, a detective named Del Spooner (Will Smith) aware that there are violations of the law committed by robots. The longer the robots are increasingly disobedient to his master. The longer the robots are increasingly disobedient to his master. Finally Spooner knows the cause of the problem that is the technology itself. To fix this, Spooner that assisted by Dr. Susan Calvin (Bridget Moynahan) destroy VIKI (Virtual Interactive Kinetic Intelligence), which is the brain of the system.

Based on the story of the movie I-Robot, we can know the impact of the technology on human civilization, where robot are created like a human and has program function like a human senses. The interaction between humans and computers also had no line between humans and inanimate objects. even the robots have feelings like humans. However, as the developer of the technology itself, people must be responsible for take advantage of advanced technologies that have this. As a user, people should also be able restrict himself to avoid being spoiled by the technology. Therefore, it is necessary to instill ethics and morals to prevent things that can harm the man himself in the future.

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()


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()


Program Konversi Infix Menjadi Postfix Pada Python

def push(stackArr,element):
stackArr.append(element)

def pop(stackArr):
return stackArr.pop()

def Operand(s):
if(not(Operator(s)) and (s != "(") and (s != ")")):
return 1
return 0

def Operator(s):
if(s == "+" or s == "-" or s == "*" or s == "/" or s == "%" or s == "^"):
return 1
return 0

def top(stackArr):
return(stackArr[len(stackArr)-1])

def isEmpty(stackArr):
if(len(stackArr) == 0):
return 1
return 0

def precedence(s):
if(s == "^"):
return 5
elif((s == "*") or (s == "/") or (s == "%")):
return 4
elif((s == "+") or (s == "-")):
return 3
elif(s == "("):
return 2
else:
return 1

def infix(infixStr,postfixStr = [],retType = 0):
postfixStr = []
stackArr = []
postfixPtr = 0
tempStr = infixStr
infixStr = []
infixStr = strToTokens(tempStr)
for i in infixStr:
if(Operand(i)):
postfixStr.append(i)
postfixPtr = postfixPtr+1
if(Operator(i)):
if(i != "^"):
while((not(isEmpty(stackArr))) and (precedence(i) <= precedence(top(stackArr)))):
postfixStr.append(top(stackArr))
pop(stackArr)
postfixPtr = postfixPtr+1
else:
while((not(isEmpty(stackArr))) and (precedence(i) < precedence(top(stackArr)))):
postfixStr.append(top(stackArr))
pop(stackArr)
postfixPtr = postfixPtr+1
push(stackArr,i)
if(i == "("):
push(stackArr,i)
if(i == ")"):
while(top(stackArr) != "("):
postfixStr.append(pop(stackArr))
postfixPtr = postfixPtr+1
pop(stackArr)

while(not(isEmpty(stackArr))):
if(top(stackArr) == "("):
pop(stackArr)
else:
postfixStr.append(pop(stackArr))

returnVal = ''
for i in postfixStr:
returnVal += i

if(retType == 0):
return(returnVal)
else:
return(postfixStr)

def postfix(postfixStr):
stackArr = []
tempStr = postfixStr
postfixStr = []
postfixStr = tempStr
for i in postfixStr:
if(Operand(i)):
push(stackArr,i)
else:
temp = top(stackArr)
pop(stackArr)
pop(stackArr)
push(stackArr,pushVal)
return(top(stackArr))

def strToTokens(str):
strArr = []
strArr = str
tempStr = ''
tokens = []
tokens_index = 0
count = 0
for i in strArr:
count = count+1
if(Operand(i)):
tempStr += i
if(Operator(i) or i == ")" or i == "("):
if(tempStr != ""):
tokens.append(tempStr)
tokens_index = tokens_index+1
tempStr = ''
tokens.append(i)
tokens_index = tokens_index+1
if(count == len(strArr)):
if(tempStr != ''):
tokens.append(tempStr)
return(tokens)


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

print '\n Menu yang dapat anda pilih'
print '\n(1) Ubah Infix Menjadi Postfix'
print '(2) Keluar'
option2 = raw_input("Masukkan Pilihan (1/2): ")
if option2 in ('1','2'):
if(option2 == '1'):
ifx = raw_input('\nMasukkan Notasi Infix : ')
print 'Notasi Postfix : ', infix(ifx)
if(option2 == '2'):
exit
if(option2 != '2'):
back()
else:
menu()

menu()

Object Oriented Programming Python

Evolusi pemrograman telah beralih dari pengeksekusian instruksi langkah-demi-langkah menuju kepada pendekatan blok program yang lebih terorganisir, di mana blok kode tersebut dapat dibungkus menjadi subrutin dan fungsi yang telah ditetapkan. Pemrograman terstruktur atau prosedural memungkinkan kita mengatur program ke dalam blok logis, dapat diulang-ulang atau digunakan kembali. Pemrograman berorientasi objek mengambil langkah evolusi ini dengan meningkatkan program terstruktur untuk memungkinkan hubungan data dan logika digambarkan oleh satu abstraksi yang digunakan untuk menciptakan objek-objek tersebut. Object Oriented Programming (OOP) adalah sebuah pendekatan pemrograman di mana objek didefinisikan dengan metode (fungsi,action, atau events) dan sifat (nilai serta karakteristik), sehingga mudah dibaca, lebih banyak kode dapat digunakan kembali. Python merupakan salah satu bahasa pemrograman berorientasi objek. Objek adalah sesuatu yang menampung nilai/datadan dapat kita kenakan operasi tertentu.
• Class (Kelas) adalah struktur data yang bisa kita gunakan untuk mendefinisikan objek yang menyimpan data bersama-sama nilai-nilai dan perilaku (behavior). Kelas adalah suatu entitas yang merupakan bentuk program dari suatu abstraksi untuk permasalahan dunia nyata, dan instans dari class merupkan realisasi dari beberapa objek.
Bentuk Umum :
class (nama_kelas) :
(statement)
(statement)

• Inheritance (pewarisan) merupakan konsep dalam pemrograman berbasis objek yang memungkinkan untuk membuat suatu kelas dengan didasarkan pada kelas yang sudah ada sehingga mewarisi semua method dan atributnya. Dengan cara seperti ini, semua method dan atribut yang terdapat pada kelas induk diturunkan ke kelas turunannya. Namun kelas turunannya dapat menambah method baru atau atribut baru tersendiri.
Bentuk Umum :
class (nama_kelas_turunan):
(nama_kelas_induk):
(atribut-atribut)
(method-method)

• Method constructor merupakan sebuah method yang akan otomatis dipanggil ketika objek di instantiasi. Constructor umumnya digunakan untuk melakukan inisialisasi terhadap suatu variabel atau method.
Bentuk Umum :
class (nama_kelas):
def __init__(self, argumen-argumen):
(statement)
(statement)

Contoh Program:

class Pegawai:
def __init__(self, nama, gaji = 0):
self.nama = nama
self.gaji = gaji
def tunjangan(self, persen):
self.gaji = self.gaji + (self.gaji * persen)
def kerja(self):
print(self.nama, "Pekerjaannya")
def __repr__(self):
return "" % (self.nama, self.gaji)

class Koki(Pegawai):
def __init__(self,nama):
Pegawai.__init__(self,nama,100000)
def kerja(self):
print(self.nama, "Membuat Makanan")

class Pelayan(Pegawai):
def __init__(self,nama):
Pegawai.__init__(self,nama, 50000)
def kerja(self):
print(self.nama, "Melayani Costumer")

class PizzaRobot(Koki):
def __init__(self, nama):
Koki.__init__(self, nama)
def kerja(self):
print(self.nama, "Membuat Pizza")

if __name__ == "__main__":

agus = PizzaRobot("Agus")
print(agus)
agus.kerja()
agus.tunjangan(0.20)
print(agus)
print

for kelas in Pegawai, Koki, Pelayan, PizzaRobot:
objek = kelas(kelas.__name__)
objek.kerja()

Contoh Program Fungsi pada Python

#Mencetak Menu
def menu():
print "Menu Pilihan"
print
print "1. Persegi Panjang"
print "2. Lingkaran"
print "3. Segitiga"
print "4. Keluar"

def persegi():
print "Menghitung Luas Persegi Panjang"
p = input("Masukkan Panjang : ")
l = input("Masukkan Lebar : ")
luas = p*l
print "Luas Persegi Panjang adalah ",luas
print
print "Mau coba lagi [Y/N]? "
back = raw_input().upper()
if back == "Y":
menu()
else:
exit()

def lingkaran():
print "Menghitung Luas Lingkaran"
r = input("Masukkan Jari-Jari : ")
luas = 3.14*(r**2)
print "Luas Lingkaran adalah ",luas
print
print "Mau coba lagi [Y/N]? "
back = raw_input().upper()
if back == "Y":
menu()
else:
exit()

def segitiga():
print "Menghitung Luas Segitiga"
a = input("Masukkan Alas : ")
t = input("Masukkan Tinggi : ")
luas = (a*t)/2
print "Luas Segitiga adalah ",luas
print
print "Mau coba lagi [Y/N]? "
back = raw_input().upper()
if back == "Y":
menu()
else:
exit()


#Program Menghitung Luas
print "Selamat Datang di Program Untuk Menghitung Luas"
print "-----------------------------------------------"
print
menu()

while l:
#input
pilih = input("Masukkan pilihan : ")

if pilih == 1:
persegi()
elif pilih == 2:
lingkaran()
elif pilih == 3:
segitiga()
elif pilih == 4:
print "\n"*100
break
else:
print "Maaf pilihan yang anda masukkan tidak terdaftar"
print "Coba lagi [Y/N] ? "
coba = raw_input().upper()
if coba == "Y":
menu()
else:
print "\n"*100
break

Output Program:

Percabangan dan Perulangan pada Python

Percabangan
Percabangan adalah suatu keadaan dimana pernyataan dapat di eksekusi apabila suatu kondisi memenuhi syarat untuk mengerjakan pernyataan tersebut. Pada Python untuk melakukan suatu pengecekan kondisi, terdapat tiga macam statemen. Antara lain :
• Perintah If
Statemen if digunakan untuk melakukan penyeleksian dimana jika kondisi bernilai benar maka progam akan mengeksekusi statemen dibawahnya.
Bentuk Umum :
if (kondisi) :
Statement

• Perintah If-Else
Statemen if – else digunakan untuk melakukan penyeleksian kondisi dimana jika kondisi bernilai benar maka program akan mengeksekusi statemen 1. Namun, jika nilai kondisi bernilai salah maka statemen 2 yang akan dieksekusi.
Bentuk Umum :
if ( kondisi ) :
statement 1
else :
statement 2

• Perintah If-Elif-Else
Statemen if - elif– else digunakan untuk melakukan penyeleksian kondisi dimana kondisi yang diberikan lebih dari 1 kondisi atau memiliki beberapa kondisi. Jika kondisi pertama bernilai benar maka lakukan seleksi kondisi ke-dua dan seterusnya.
Bentuk Umum :
if ( kondisi 1 ) :
statement 1
elif ( kondisi 2 ) :
statement 2
else:
statement 3

• Perintah If Bersarang
Kondisi bersarang adalah suatu kondisi di dalam kondisi tertentu, Jika terdapat 2 cabang kondisi maka di dalam salah satu cabang kondisi tersebut dapat pula di isi suatu kondisi tertentu.

Perulangan
Perulangan atau Loop adalah suatu bentuk kegiatan mengulang pengeksekusian suatu statement hingga berkali-kali sampai batas yang di inginkan. Perulangan pada Python antara lain:
• For
Perintah for dalam python mempunyai ciri khas tersendiri dibandingkan dengan bahasa pemrograman lain. Dalam python, statemen for bekerja mengulang berbagai macam tipe data sekuensial, misal seperti List.
Bentuk Umum :
for (variabel) in (objek) :
statement
else:
statement

Contoh Program:
x = input ('Masukkan Inputan : ')
for i in range(0, x):
print
for j in range(i,x):
print'*',

• While
Perintah While digunakan untuk mengulang eksekusi statemen dalam blok while selama nilai kondisinya benar. Dan ia akan keluar atau tidak melakukan eksekusi blok statemen jika nilai kondisinya salah.
Bentuk Umum :
while (kondisi) :
Statement

Contoh Program:
a="Gunadarma"
b=8
while a:
while b:
print a[b:9]
b=b-1
print a, ' '
a=a[1:]

Perintah Break
Perintah break digunakan untuk menghentikan jalannya proses iterasi pada statemen for atau while. Statemen yang berada di bawah break tidak akan di eksekusi dan program akan keluar dari proses looping.

Perintah Continue
Statemen continue menyebabkan alur program kembali ke perintah looping. Jadi jika dalam sebuah perulangan terdapat statemen continue, maka program akan kembali ke perintah looping untuk iterasi selanjutnya.

Perintah Pass
Statemen pass mengakibatkan program tidak melakukan tindakan apa-apa. Perintah pass biasanya digunakan untuk mengabaikan suatu blok statemen perulangan, pengkondisian, class, dan fungsi yang belum didefinisikan badan programnya agar tidak terjadi error ketika proses compilasi.

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