Algoritma Python
Algoritma Python
DISUSUN OLEH:
DOSEN PEMBINA:
1
KATA PENGANTAR
uji syukur atas kehadirat Allah SWT yang telah memberikan rahmat dan
hidayahNya sehingga kami dapat menyelesaikan tugas makalah yang
berjudul “Bahasa Pemrograman Python” ini tepat pada waktunya. Adapun
tujuan dari penulisan dari makalah ini adalah untuk memenuhi tugas dari
Bapak Halim Maulana, ST., M. Kom pada Algoritma dan Bahasa
Pemrograman. Selain itu, makalah ini juga bertujuan untuk menambah
wawasan tentang Bahasa Pemrograman Python bagi para pembaca dan
juga bagi penulis. Kami juga mengucapkan terimakasih kepada Bapak
Halim Maulana, ST., M. Kom, selaku dosen Algoritma dan Bahasa
Pemrograman yang telah memberikan tugas ini sehingga dapat
menambah pengetahuan dan wawasan sesuai dengan bidang studi yang
kami tekuni. Kami menyadari, makalah yang kami tulis ini masih jauh dari
kata sempurna. Oleh karena itu, kritik dan saran yang membangun akan
kami nantikan demi kesempurnaan makalah ini. Akhir kata, kami
sampaikan terima kasih kepada semua pihak yang telah berperan dalam
penyusunan makalah ini dari awal sampai akhir. Semoga Allah SWT
senantiasa meridhai segala urusan kami. Amin.
2
DAFTAR ISI
Pernyataan If ..................................................................................................................... 7
Pernyataan For................................................................................................................. 13
3
BAB 1 PENDAHULUAN
A. Latar Belakang
Saat ini, informatika memiliki perkembangan yang sangat pesat.
Informatika sendiri yaitu disiplin ilmu teknik yang menangani masalah
transformasi atau pengolahan fakta simbolik dengan menggunakan
komputer melalui proses-proses logika. Dalam informatika, hal yang
paling berhubungan adalah bahasa pemograman atau bahasa komputer .
Bahasa pemograman juga dibagi dalam empat kelompok namun dari
sumber lain ada yang hanya menyebutkan tiga kelompok bahasa
pemograman. Empat jenis bahasa pemograman, yaitu Object Oriented
Language, high level, middle level, low level. Sebenarnya, keempat
pengelompokkan bahasa tersebut sama saja intinya. Seperti bahasa
manusia yang memiliki bermacam-macam bahasa namun sebenarnya
bermakna sama, yang membedakan adalah simbol atau istilah yang
dipakai. Adapun bahasa berorentasi object salah satunya yaitu Python,
Phyton adalah bahasa pemrograman dinamis yang mendukung
pemrograman berorientasi obyek. Python dapat digunakan untuk
berbagai keperluan pengembangan perangkat lunak dan dapat berjalan
di berbagai platform sistem operasi. Seperti halnya bahasa pemrograman
dinamis, python seringkali digunakan sebagai bahasa skrip dengan
interpreter yang teintergrasi dalam sistem operasi. Saat ini kode python
dapat dijalankan pada sistem berbasis Linux/Unix, Windows, Mac OS X,
Java Virtual Machine, OS/2, Amiga, Palm, dan Symbian (untuk produk-
produk Nokia) Python didistribusikan dengan beberapa lisensi yang
berbeda dari beberapa versi. Lihat sejarahnya di Python Copyright.
Namun pada prinsipnya Python dapat diperoleh dan dipergunakan secara
bebas, bahkan untuk kepentingan komersial. Lisensi Python tidak
bertentangan baik menurut definisi Open Source maupun General Public
License (GPL).
4
B. Rumusan Masalah
5
BAB 2
PEMBAHASAN
A. Sejarah Pemrograman Bahasa Python
Python dikembangkan oleh Guido van Rossum pada tahun 1990 di CWI,
Amsterdam sebagai kelanjutan dari bahasa pemrograman ABC. Versi terakhir yang
dikeluarkan CWI adalah 1.2. Tahun 1995, Guido pindah ke CNRI sambil terus
melanjutkan pengembangan Python. Versi terakhir yang dikeluarkan adalah 1.6.
Tahun 2000, Guido dan para pengembang inti Python pindah ke BeOpen.com yang
merupakan sebuah perusahaan komersial dan membentuk BeOpen PythonLabs. Python
2.0 dikeluarkan oleh BeOpen. Setelah mengeluarkan Python 2.0, Guido dan beberapa
anggota tim PythonLabs pindah ke DigitalCreations.
Saat ini pengembangan Python terus dilakukan oleh sekumpulan pemrogram
yang dikoordinir Guido dan Python Software Foundation. Python Software Foundation
adalah sebuah organisasi non-profit yang dibentuk sebagai pemegang hak cipta
intelektual Python sejak versi 2.1 dan dengan demikian mencegah Python dimiliki oleh
perusahaan komersial. Saat ini distribusi Python sudah mencapai versi 2.6.1 dan versi
3.0. Nama Python dipilih oleh Guido sebagai nama bahasa ciptaannya karena
kecintaan Guido pada acara televisi Monty Python's Flying Circus. Oleh karena itu
seringkali ungkapan-ungkapan khas dari acara tersebut seringkali muncul dalam
korespondensi antar pengguna Python.
Python adalah bahasa pemrograman interpretatif multiguna. Tidak seperti
bahasa lain yang susah untuk dibaca dan dipahami, python lebih menekankan pada
keterbacaan kode agar lebih mudah untuk memahami sintaks. Hal ini membuat Python
sangat mudah dipelajari baik untuk pemula maupun untuk sudah menguasai
pemoraman lain. Dengan kode yang simpel dan mudah diimplementasikan, seorang
programmer dapat lebih mengutamakan pengembangan aplikasi yang dibuat, bukan
malah sibuk mencari syntax error.
6
Instalasi Python
Python dapat diinstal dengan mudah. Langkah pertama yang harus dilakukan adalah
mendownload python-3.5.0-amd64 atau versi lain yang sesuai dengan kebutuhan dari
situsnya di python.org.
Ukuran Python terbaru untuk semua versi sekitar 29 MB. Setelah download selesai, cukup
double click untuk menjalankan program instalasinya.
Gambar di atas memperlihatkan jendela pertama dari program instalasi Python. Tidak ada
yang sangat perlu dikonfigurasi kecuali satu hal, yaitu mamastikan “Add Python 3.5 to
PATH” dalam kondisi terpilih (dicentang). Ini maksudnya adalah menambahkan program
Python ke dalam PATH dari sistem Windows sehingga dimana pun berada program Python
dapat dipanggil untuk mengeksekusi modul-modul yang ditulis mengukuti kaidah bahasa
pemrograman Python.
Anda dapat mengarahkan kursor dan klik mouse pada “Install Now” agar instalasi segera
dilakukan. Mudahkan bukan? Namun jika adan ingin melakukan beberapa kustomisasi (tidak
dianjurkan bagi pemula di Windows) maka boleh memilih “Customize installation”. Ini
diperlukan misalnya untuk menginstal Python ke dalam direktori selain
C:\Users\Nama_User\AppData\Local\Programs\ Python\Python35. Anda akan memperoleh
jendela seperti dibawah dan cukup klik Next untuk berpindah ke jendela berikutnya, yaitu
jendela Advanced Options.
7
Pada jendela ini, misalnya kita mengubah tujuan instalasi Python ke direktori C:\Python350.
Klik Install dan dalam beberapa saat instalasi selesai.
8
Memulai Program Python
Instalasi Python, selain memberikan kita file-file untuk menjalankan (eksekusi, compile)
modul- modul Python, juga menyediakan sebuah program yang sangat penting, yaitu IDLE.
IDLE ini dapat digunakan untuk menjalankan perintah Python baris demi baris, selain dapat
digunakan untuk menuliskan kemudian mengeksekusi kode program Python yang lengkap
dan mungkin terdiri lebih dari 100 baris instruksi.
Silakan jalankan program IDLE sehingga anda sampai di modus Interaktif dari Python.
Instruksi yang dikenal oleh Python dapat diberi di sebelah kanan promt >>>. Perhatikan
tampilan di bawah ini:
Berikut ini adalah beberapa baris instruksi contoh yang dijalankan di dalam IDLE:
9
Membuat dan Mengeksekusi Program Python
Klik File | New File atau tekan Ctrl N. Kemudian tuliskan program Python yang diinginkan,
misalnya program sederhana berikut untuk menghitung keliling dan luas lingkaran.
Simpan: Klik File | Save atau Ctrl S. Beri nama misalnya ling.py dan disimpan di Desktop.
Bagaimana mengeksekusi program atau modul Python tersebut? Klik Menu Run | Run
Module atau tekan F5.
Apakah modul Python hanya dapat dieksekusi melalui Editor IDLE? TIDAK. Kita dapat
menggunakan command line (shell) Windows (begitu pula di Linux, Macintosh dan SO lain).
Coba buka Command Prompt Windows, dan pindahkan ke Dekstop. Kemudian jalankan
perintah python ling.py. Berikut ini adalah capturenya:
10
Perintah python selain dapat digunakan untuk mengeksekusi program Python juga dapat
dijadikan sebagai shell interaktif sebagaimana di IDLE. Baris-baris di bawah ini
memperlihatkan proses menukar data dua variabel di Python (dan hanya berhasil di Python):
Untuk keluar dari modus Python Interaktif tersebut, gunakan perintah exit().
Apakah penulisan program Python hanya dapat dilakukan di IDLE? TIDAK juga. Kita
dapat menggunakan Eclipse, Netbeans, Geany dan Sublime Text yang fenomenal itu.
Berikut ini adalah contoh penulisan kode program Python di Geany:
Bagaimana eksekusinya? Cukup klik Build | Execute atau tekan F5. Hasilnya adalah eksekusi
perintah Python dari Command Line Windows:
11
Pernyataan If
Conditional statement adalah suatu pernyataan, bukan suatu ekspresi; pernyataan tidak
mengembalikan suatu nilai. Ekspresi if (atau predikat) dievaluasi terlebih dahulu, sebelum
bagian lain dari pernyataan, untuk menentukan apakah mengevaluasi suatu lengan. Jika
ekspresi if terevaluasi bernilai True maka pernyataan yang mengikuti: dievaluasi. Jika tidak,
lengan else yang dievaluasi, jika ada. Banyak predikat dapat disambung bersama dengan elif.
Semua predikat itu diavaluasi secara sequential. Pernyataan kondisional sering digunakan
bersama dengan pernyataan return di dalam fungsi. Sebagai contoh, dalam beberapa data
sensus terlihat decode gender berikut:
def
decode_gender(code
): if (code == 0):
return 'all'
elif (code ==
1): return
'male' elif
(code == 2):
return 'female'
else:
return 'unknown'
if (scene == 'architect
skit'): print("spam, spam,
spam")
else
print("nobody expects the Spanish inquisition")
Pernyataan if sering tidak tepat digunakan oleh pemula untuk menyusun ekspresi
12
boolean sederhana.
if x > 3:
return
True else:
return False
Fungsi berikut didefinisikan di dalam file lab01.py (lihat file lab01.py di akhir tutorial ini).
Jika sulit memahaminya, coba gunakan python3 -i lab01.py.
Kita telah melihat pemanfaatan operator boolean di atas, di bagian ini kita akan melihat
koneksi antara beberapa operator tersebut dan kondisional.
Python mendukung 3 operator boolean: and, or dan not. Coba jalankan instruksi-instruksi
berikut menggunakan IDLE (modus interaktif):
>>> a = 4
>>> a < 2 and a > 0
>>> a < 2 or a > 0
>>> not (a > 0)
and dievaluasi True hanya jika kedua operand terevaluasi True. Jika setidaknya satu operand
bernilai False, maka and terevaluasi sebagai False.
or dievaluasi menjadi True jika setidaknya satu operand terevaluasi sebagai True. Jika semua
operand bernilai False, maka or terevaluasi False.
Bagaimana pendapat anda terhadap evaluasi ekspresi berikut? Coba buktikan dengan Python.
Adalah sulit membaca eskpresi yang kompleks, seperti di atas, dan memahami bagaimana
suatu program akan berperilaku. Penggunaan tanda kurung dapat membuat kode lebih mudah
dipahami. Python menginterpretasi ekspresi di atas dengan cara berikut:
>>> 0 or True
>>> not '' or not 0 and False
>>> 13 and False
14
Pernyataan For
Python menawarkan suatu pernyataan for yang sangat mirip dengan for di dalam komprehensi
list, tetapi mengontrol urutan evaluasi sesuatu yang disebut iterasi. Pada dasarnya, ini
digunakan untuk melakukan iterasi sepanjang suatu list selama komputasi sesuatu. Berikut
ini adalah contohnya:
def sum(s):
"""
Mengembalikan jumlah dari elemen dalam
deretan s """
psum = 0 # status awal: jumlah elemen dalam deretan null
for x in s: # untuk setiap elemen dalam deretan atau sequence
psum = psum + x # akumulasikan ia ke dalam partial sum
return psum # partial sum final adalah jumlah total
Tentu saja, pernyataan akumulasi sudah sangat umum mempunyai shorthand berikut
psum += x
Di satu sisi, for di dalam komprehensi list memperkenalkan pola rancangan map
(pemetaan), pernyataan for memperkenalkan pola rancangan esensi kedua untuk analisa
data, reduce (pengurangan). Anda akan menemukan bahwa map-reduce adalaj struktur
komputasional yang penting sekali dalam ilmu pengetahuan mengenai data (data
science).
def
sum_of_squares(n
): """
Mengembalikan jumlah dari akar dari 1 sampai n
>>>
sum_of_squares(3)
14
"""
"*** KODE ANDA DI SINI ***"
Jawaban 3:
psum = 0
for x in
range(1,n+1):
psum += x*x
return psum
15
Perulangan While
Python juga mempunyai suatu konstruksi iterasi dasar lain yang berkaitan erat dengan
kondisional, perulangan (loop) while. Tidak ada asumsi iterasi terhadap sequence. Iterasi
dilakukan sampai suatu predikat terpenuhi, bukan sebanyak jumlah elemen dalam deretan.
Pada dasarnya, beberapa status akan dibangun sebelum perulangan while. Predikat akan
menghitung suatu ekspresi boolean yang menyertakan status tersebut. Dan badan dari
perulangan akan menaikkan status tersebut, dengan demikian pengiterasian sampau predikat
terpenuhi.
Pertanyaan 4: Perulangan
>>> n = 3
>>> while n >= 0:
... n -= 1
... print(n)
>>> n = 4
>>> while n > 0:
... n += 1
Hint: Pastikan kondisi perulangan while suatu waktu akan bernilai false, jika tidak maka
perulangan tidak akan pernah berhenti. Menekan Ctrl C akan menghentikan perulangan tanpa
batas secara paksa oleh interpreter.
... print(n)
>>> def go(n):
... if n % 2 != 0:
... print(n / 2)
... return
... while n > 0:
... print(n)
... n = n // 2
>>> go(4)
>>> go(5)
Coba dipikirkan: apakah mungkin membuat suatu program untuk mendeteksi adanya loop
(perulangan) tanpa batas di dalam suatu program? Atau dapatkah anda membuat suatu
program yang akan menghentikan program lain?
16
Contoh Program dalam Bahasa Python :
Baris ketiga membuat variable “a” dan diberi nilai 0 untuk awal urutan fibonaci.
Baris keempat membuat variable “b” dan diberi nilai 1 untuk nilai kedua urutan fibonaci.
Baris keenam bertujuan untuk menampilkan nilai “a” yang merupakan awal urutan dari fibonaci.
Baris ketujuh bertujuan untuk menampilkan nilai “b” yang merupakan nilai kedua dari urutan
fibonaci.
Baris kesembilan merupakan pengulangan, huruf “i” merupakan variable local yang akan
ditambah jumlahnya, range(jarak) adalah jarak yang akan dicapai oleh huruf “i” sehingga jika
huruf “i” mencapai nilai tertinggi dari jarak maka program akan berhenti.
Baris keduabelas merupakan perubahan nilai b menjadi nilai c, jadi nilai awal b adalah 1, dan
17
diubah menjadi nilai c yang a + b diawal, jadi c = 0 + 1 = 1, jadi nilai b sekarang adalah 1.
Baris kelimabelas adalah pemanggilan fungsi, angka “10” yang berada di dalam fibonaci(10)
adalah jarak untuk urutan fibonaci yang akan ditampilkan di consol.
Seperti itulah contoh dari program fibonaci yang dibuat, jangan lupa, rumus fibonaci adalah (Fn
+ 1 = Fn – 1 + Fn)
18
BAB 3
PENUTUP
A. Kesimpulan
Python adalah bahasa pemrograman interpretatif multiguna dengan
filosofi perancangan yang berfokus pada tingkat keterbacaan kode. Python
diklaim sebagai bahasa yang menggabungkan kapabilitas, kemampuan,
dengan sintaksis kode yang sangat jelas, dan dilengkapi dengan
fungsionalitas pustaka standar yang besar serta komprehensif.
Python mendukung multi paradigma pemrograman, utamanya; namun
tidak dibatasi; pada pemrograman berorientasi objek, pemrograman
imperatif, dan pemrograman fungsional. Salah satu fitur yang tersedia pada
python adalah sebagai bahasa pemrograman dinamis yang dilengkapi
dengan manajemen memori otomatis. Seperti halnya pada bahasa
pemrograman dinamis lainnya, python umumnya digunakan sebagai
bahasa skrip meski pada praktiknya penggunaan bahasa ini lebih luas
mencakup konteks pemanfaatan yang umumnya tidak dilakukan dengan
menggunakan bahasa skrip. Python dapat digunakan untuk berbagai
keperluan pengembangan perangkat lunak dan dapat berjalan di berbagai
platform sistem operasi.
B. Saran
20