Modul Prokom Python new

31

description

this is free from indonesia

Transcript of Modul Prokom Python new

Page 1: Modul Prokom Python new

Praktikum Pemrograman Komputer

Page 2: Modul Prokom Python new

2

Page 3: Modul Prokom Python new

Daftar Isi

1 Pengenalan IDE Python 5

1.1 Lingkungan Pengembangan Terpadu (IDE) . . . . . . . . . . . . 5

1.1.1 Interactive Shell . . . . . . . . . . . . . . . . . . . . . . . 5

1.1.2 Teks Editor . . . . . . . . . . . . . . . . . . . . . . . . . 6

1.2 Struktur Program Python . . . . . . . . . . . . . . . . . . . . . 6

1.3 Latihan 1.1: Program Sederhana . . . . . . . . . . . . . . . . . 7

1.4 Latihan 1.2: Deteksi Kesalahan Sintak . . . . . . . . . . . . . . 8

1.5 Tugas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2 Input / Output (I/O) 11

2.1 Menampilkan Data Dengan Perintah print . . . . . . . . . . . . 11

2.2 Input Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.2.1 Perintah input . . . . . . . . . . . . . . . . . . . . . . . 12

2.2.2 Perintah raw_input . . . . . . . . . . . . . . . . . . . . 13

2.3 Tugas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

3 Variabel, List, Operator, dan Lambda 15

3.1 Variabel dan Tipe Data . . . . . . . . . . . . . . . . . . . . . . 15

3.2 List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

3.2.1 List Satu Dimensi . . . . . . . . . . . . . . . . . . . . . . 17

3.2.2 List Multidimensi . . . . . . . . . . . . . . . . . . . . . . 17

3.3 Fungsi Lambda . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

3.4 Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

3.5 Tugas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

3

Page 4: Modul Prokom Python new

4 Kontrol Program 21

4.1 Pernyataan if . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

4.2 Pernyataan if ... else . . . . . . . . . . . . . . . . . . . . . . . . 22

4.3 Pernyataan for . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

4.4 Pernyataan while . . . . . . . . . . . . . . . . . . . . . . . . . . 23

4.5 Pernyataan switch case . . . . . . . . . . . . . . . . . . . . . . . 24

4.6 Tugas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

5 Fungsi dan Parameter 27

5.1 Pengertian fungsi . . . . . . . . . . . . . . . . . . . . . . . . . . 27

5.2 Fungsi tanpa parameter . . . . . . . . . . . . . . . . . . . . . . 27

5.3 Fungsi dengan parameter . . . . . . . . . . . . . . . . . . . . . . 28

5.4 Fungsi dengan keluaran . . . . . . . . . . . . . . . . . . . . . . . 29

5.5 Fungsi rekursif . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

5.6 Tugas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

6 Operasi File 31

4

Page 5: Modul Prokom Python new

Modul 1

Pengenalan IDE Python

Pada modul ini, akan diperkenalkan IDLE yang merupakan editor untuk mem-buat program dalam bahasa python dan cara penggunaannya.

1.1 Lingkungan Pengembangan Terpadu (IDE)

Pada pemrograman python, ada banyak IDE yang dapat digunakan tetapi pa-da praktikum kali ini akan digunakan IDE yang sudah disediakan oleh paketpython yaitu IDLE. IDLE (Integrated Development Editor) merupakan suatueditor kode program, bantuan interaktif, dan debugging yang digunakan untukmelakukan development program dengan menggunakan bahasa python. Seper-ti yang dapat dilihat pada gambar 1.1, bahwa IDLE dapat dibagi menjadi duabagian besar yaitu �Interactive Shell� dan �Teks Editor�. Untuk menjalankaneditor IDLE masuk ke menu �All programs � Python 2.6 � IDLE (PythonGUI)�

1.1.1 Interactive Shell

Interactive shell merupakan fasilitas yang dipunyai oleh bahasa pemrogramanyang berjenis intepreter, yaitu bahasa pemrograman yang menterjemahkansatu per satu baris dari kode program untuk dijalankan pada sistem. Pa-da IDLE, interactive shell digunakan untuk melakukan komputasi secara perbaris atau bisa juga digunakan untuk mencari kesalahan yang timbul padasaat program dijalankan. Cobalah untuk mengetikkan beberapa perintah pa-da interactive shell seperti contoh berikut

>�>�> print �Hello World�

Hello World

>�>�> print 5+3

8

5

Page 6: Modul Prokom Python new

Gambar 1.1: Screen shot dari IDLE

Seluruh kata yang dicetak tebal, miring, dan berwarna biru merupakan katayang diketikkan pada interactive shell dan kata yang berwarna hitama selainsimbol (>�>�>) adalah hasil keluaran dari perintah yang diberikan.

1.1.2 Teks Editor

Teks editor pada IDLE digunakan untuk menulis kode program dan melakukaneksekusi kode program tersebut pada interactive shell. Teks editor yang digu-nakan sudah mendukung auto completion dengan menekan tombol ctrl+spasisehingga IDLE akan menyarankan semua keyword python yang mungkin akandigunakan pada kode program. Anda akan banyak bekerja dengan menggu-nakan teks editor ini. Pada saat awal eksekusi program IDLE jendela tekseditor tidak akan muncul dan untuk dapat memunculkan jendela tersebut da-pat digunakan menu �File � New Window�.

1.2 Struktur Program Python

Struktur program python secara umum terbagi menjadi tiga bagian yaitu head-er, de�nisi fungsi, dan program utama. Contoh program python secara lengkapadalah sebagai berikut

6

Page 7: Modul Prokom Python new

# header

from numpy import *

import math

# fungsi-fungsi

def PCA(x, y):

print �Fungsi 1�

# main program

print �Main Program�

Sekedar info, baris yang diawali dengan tanda kres merupakan komentar dantidak akan diproses oleh python intepreter. Header berfungsi untuk menen-tukan module mana yang akan digunakan dalam program. Module merupakanpustaka tambahan yang disediakan oleh python atau oleh orang lain dan dapatdigunakan dalam program untuk mempermudah pembuatan program. Seba-gai contoh diatas, kode program tersebut menggunakan semua module yangada pada namespace numpy dan menggunakan module math yang disediakanoleh python.

De�nisi dari fungsi-fungsi digunakan untuk menyederhanakan program danmain program merupakan awal kode program yang akan dieksekusi oleh pythonintepreter. Pemisah yang digunakan oleh python untuk membedakan antarablok perintah satu dengan blok perintah lainnya adalah dengan tabulasi. Padaprogram diatas contoh pemisah blok dapat dilihat pada fungsi PCA.

1.3 Latihan 1.1: Program Sederhana

Pada latihan 1 ini, Anda akan diperkenalkan bagaimana membuat programsecara sederhana dengan menggunakan bahasa python dan editor IDLE.

1. Buat jendela teks editor baru dengan menggunakan menu �File � NewWindow� lalu tulislah kode program berikut# Program 1

print "PRAKTIKUM PEMROGRAMAN KOMPUTER"

print "Ini adalah program yang ditulis dengan Bahasa Python"

print "Berikut contoh program penambahan"

a = 2

b = 3

hasil = a + b

print "hasil = a + b"

print "hasil = %d + %d" % (a,b)

print "hasil = %d" % (hasil)

7

Page 8: Modul Prokom Python new

2. Simpan �le kode program tersebut dengan menggunakan menu �File �Save� atau dengan menekan tombol ctrl+S. Sesuaikan nama �le dengannama latihan ini. Perlu diingat, jangan lupa menyertakan tambahan

ekstensi �le .py pada akhir nama dari �le karena IDLE tidak secara

otomatis menambahkan ekstensi �le tersebut.

3. Untuk menjalankan kode program dapat dilakukan dengan menggunakanmenu �Run � Run Module� atau dengan menekan tombol F5.

4. Perhatikan keluaran yang dihasilkan oleh kode program tersebut.

1.4 Latihan 1.2: Deteksi Kesalahan Sintak

Kesalahan sintak merupakan sesuatu yang wajar dalam pembuatan suatu pro-gram, oleh karena itu pada latihan 2 ini akan disimulasikan bagaimana mencarisuatu kesalahan dengan menggunakan editor IDLE.

1. Buat jendela teks editor baru dengan menggunakan menu �File � NewWindow� lalu tulislah kode program berikut# Program 1

print "PRAKTIKUM PEMROGRAMAN KOMPUTER"

print "Ini adalah program yang ditulis dengan Bahasa Python"

print "Berikut contoh program penambahan"

a := 2

b = 3

hasil = a + b

print "hasil = a + b"

print "hasil = %d + %d" % (a,b)

Print "hasil = %d" % (hasil)

2. Simpan �le kode program tersebut dengan menggunakan menu �File �Save� atau dengan menekan tombol ctrl+S. Sesuaikan nama �le dengannama latihan ini. Perlu diingat, jangan lupa menyertakan tambahan

ekstensi �le .py pada akhir nama dari �le karena IDLE tidak secara

otomatis menambahkan ekstensi �le tersebut.

3. Jalankan program tersebut dengan tombol F5, maka akan muncul pesankesalahan sebagaimana gambar berikut

4. Tekan tombol �OK� maka IDLE akan membawa kursor Anda ke barispada kode program yang mempunyai sintak yang salah seperti yang di-tunjukan pada gambar berikut.

8

Page 9: Modul Prokom Python new

5. Perbaiki kesalahan tersebut, lalu jalankan kembali kode programnya. Ke-salahan yang sama muncul lagi tetapi pada baris yang berbeda, yaitu pa-da baris terakhir dimana perintah print salah dituliskan menjadi Print.Perlu diingat, bahwa kode program yang dituliskan dengan bahasa

python bersifat case sensitif sehingga perintah print dan Print adalah

dua perintah yang berbeda.

1.5 Tugas

1. Perbaiki kesalahan yang terdapat dalam kode program berikutprint �Hello, World!�

print 2 + 2,

Print �Test 123�

a = 2 * 4

print aa

2. Buatlah program yang menampilkan nama dan NRP Anda dalam duabaris keluaran.

9

Page 10: Modul Prokom Python new

10

Page 11: Modul Prokom Python new

Modul 2

Input / Output (I/O)

Pada modul praktikum yang kedua ini, dibahas permasalahan yang berhubun-gan dengan input / output yaitu bagaimana menampilkan suatu nilai atauobjek pada layar serta bagaimana menangani masukan dari user untuk diolahdalam program yang kita buat. Perintah yang akan dibahas adalah perintahprint, input, dan raw_input.

2.1 Menampilkan Data Dengan Perintah print

Perintah print merupakan perintah dasar dari python yang dapat menampilkanseluruh data yang disupport secara native oleh python. Ada beberapa caramemanggil perintah print yaitu:

� Memanggil perintah print dengan menggunakan koma sebagai pemisahantar objek yang akan ditampilkan. Koma juga sebagai pemisah antaradua objek yang akan ditampilkan dengan menggunakan karakter spasi.Contoh pemanggilannya adalah sebagai berikutprint �2 + 2 is�, 2 + 2

print "3 * 4 is", 3 * 4

print "100 - 1 is", 100 - 1

print "(33 + 2) / 5 + 11.5 is", (33 + 2) / 5 + 11.5

� Memanggil perintah print dengan menggunakan format fungsi printfyang terdapat pada bahasa C dan sebagai parameter, �%s� digunakanuntuk menampilkan string, �%d� untuk bilangan bulat, �%f� untuk bilan-gan pecahan, dan �%c� untuk karakter. Contoh pemanggilannya adalahsebagai berikutprint �2 + 2 is %d� % (2 + 2)

print "3 * 4 is %d" % (3 * 4)

print "100 - 1 is %d" % (100 - 1)

print "(33 + 2) / 5 + 11.5 is %f" % ((33 + 2) / 5 + 11.5)

11

Page 12: Modul Prokom Python new

� Setiap menggunakan perintah print maka python akan secara otomatismenambahkan perintah untuk pindah baris pada akhir instruksi. Jikaperintah pindah baris tidak diinginkan maka perintah print harus dita-mbahkan koma pada akhir baris.

� Dapat ditambah dengan karakter khusus (escape sequence) yang didahu-lui dengan tanda �\�, yaitu pindah baris �\n� dan tab �\t�.

Latihan 2.1: Menampilkan Data

# File : print_.py

var_int = 10

var_float = 1.2345

var_str = �Hello, World!�

print �Python Style�

print �Integer = �, var_int

print �Floating-point = �, var_float

print �String = �, var_str

print

print �C style�

print �Integer = %d� % (var_int)

print �Floating-point = %f� % (var_float)

print �String = %s� % (var_str)

print

print �Control khusus�

print �Pindah baris dua kali\n�

print �Nggak pindah baris�,

print �\tmasih satu baris�

2.2 Input Data

Input data yang dilakukan oleh user merupakan hal yang penting dalam pem-rograman python. Ada dua perintah yang dapat digunakan untuk melakukaninput data yaitu perintah input dan perintah raw_input.

2.2.1 Perintah input

Perintah input digunakan untuk melakukan input data jenis numerik. Denganmenggunakan perintah input. harus dipastikan bahwa user akan menginputkandata yang berupa numerik karena jika data yang diinputkan tidak berupa datanumerik maka perintah input akan mengeluarkan pesan kesalahan. Contoh

12

Page 13: Modul Prokom Python new

penggunaan perintah input dan kesalahannya jika data yang diinputkan bukandata numerik adalah sebagai berikut.

>>> a = input (" Masukkan suatu bilangan = ")

Masukkan suatu bilangan = 20

>>> a = input (" Masukkan suatu bilangan = ")

Masukkan suatu bilangan = Saya Juga

Traceback (most recent call last):

File "<pyshell #0>", line 1, in <module >

a = input(" Masukkan suatu bilangan = ")

File "<string >", line 1

saya juga

^

SyntaxError: unexpected EOF while parsing

2.2.2 Perintah raw_input

Perintah raw_input dapat digunakan dengan cara yang sama dengan peng-gunaan perintah print, tetapi hasil data yang diinputkan akan selalu berupastring. Perintah raw_input dapat digunakan untuk input data string dan nu-merik dengan cara tertentu. Contoh penggunaan perintah raw_print adalahsebagai berikut.

>>> a = raw_input (" Masukkan suatu kata = ")

Masukkan suatu kata = Saya Juga

>>> b = float(raw_input (" Masukkan suatu bilangan = "))

Masukkan suatu bilangan = 10.56

>>> c = int(raw_input (" Masukkan suatu bilangan = "))

Masukkan suatu bilangan = 106

>>> a, b, c

('Saya Juga ', 10.56 , 106)

Latihan 2.2: Menginputkan dan Menampilkan Data

kuliah = "Praktikum Prokom"

nama = raw_input (" Masukkan nama Anda = ")

nrp = input(" Masukkan NRP Anda = ")

print

print "Selamat Datang di mata kuliah",kuliah

13

Page 14: Modul Prokom Python new

2.3 Tugas

1. Buatlah tabel dengan format text (bukan gra�k) sebagai berikut. Isilahxxx, yyy, dan zzz dengan sembarang data.Data 1

Nama : xxx

NRP : yyy

Alamat : zzz

Data 2

...

Data 3

...

----------------------------------------------------------

| Nama | NRP | Alamat |

----------------------------------------------------------

| xxx | yyy | zzz |

----------------------------------------------------------

| ... | ... | ... |

----------------------------------------------------------

| ... | ... | ... |

----------------------------------------------------------

2. Buatlah kuitansi pembayaran dengan format display sebagai berikut. Isi-lah xxx, yyy, dan zzz dengan data yang dimasukkan oleh user serta pppdiisi dengan nama Anda.--------------------------------------------------------------------

| |

| Sudah Terima Dari : xxx_________________________________________ |

| |

| Sebanyak : Rp. yyy_____________________________________ |

| |

| Untuk Keperluan : zzz_________________________________________ |

| ____________________________________________ |

| |

| Surabaya, 12 Sept 2010 |

| |

| |

| _________ppp_________ |

| |

--------------------------------------------------------------------

14

Page 15: Modul Prokom Python new

Modul 3

Variabel, List, Operator, danLambda

3.1 Variabel dan Tipe Data

Tipe data menyatakan pola penyajian data dalam komputer: karakter, bilan-gan, string, record. Tipe data dibedakan menjadi dua yaitu tipe data dasardan tipe data khusus. Tabel dibawah menampilkan beberapa tipe data dasardan domainnya, yang dikenal dalam Python.

Nama Tipe Data Ukuran (byte) Jangkauan

integer 4 -2147483648 - 2147483649long integer tak hingga tak hingga

�oat 8 2.2e-308 - 1.7e+308string - -

Variabel merupakan penampung data yang isinya dapat diubah. Data yangdapat disimpan adalah data sesuai dengan tipenya.Nama variabel terdiri dari huruf, angka dan garis bawah, dapat didahului olehhuruf dan garis bawah, dengan ketentuan:

1. Tidak dapat didahului oleh angka.

2. Tidak dapat menggunakan operator hitung dan karakter-karakter khusus:+ - / * % : ; . , # @ $ &

3. Nama variabel tidak dapat disela dengan spasi.

4. Tidak dapat menggunakan reseved words.

5. Huruf besar dan huruf kecil berbeda.

15

Page 16: Modul Prokom Python new

Pemberian (assignment) nilai ke VariableTipe data dari variabel ditentukan oleh isi yang diberikan oleh programmer.Jika programmer memberikan nilai yang masuk dalam range integer maka vari-abel tersebut akan bertipe integer, jika �oating-point maka variabel tersebutakan bertipe �oat, dan seterusnya. Berikut merupakan contoh dari penggu-naan variabel

>>> a = 10.5

>>> type(a)

<type 'float '>

>>> a = 10

>>> type(a)

<type 'int '>

>>> a = 2**1024

>>> type(a)

<type 'long '>

>>> a = "Ini String"

>>> type(a)

<type 'str '>

Latihan 3.1

# Program 3.1

import math

r = input("Jari -jari lingkaran = ")

print "Luas lingkaran =", math.pi*r*r

Latihan 3.2

# Program 3.1

import math

r = input("Jari -jari lingkaran = ")

luas = math.pi*r*r

print "Luas lingkaran =", luas

3.2 List

List pada dasarnya adalah sebuah array yang bisa terdiri dari satu jenis tipedata ataupun terdiri dari beberapa tipe data. Tuple sedikit banyak merupakansuatu list, hanya saja pada tuple isi dari tuple tersebut bersifat read-only.

16

Page 17: Modul Prokom Python new

3.2.1 List Satu Dimensi

List adalah deretan variabel yang mempunyai tipe data tertentu dan mempun-yai nilai yang sama. Pada bahasa Python, list dapat dideklarasikan denganmenggunakan perintah sebagai berikut.

list_a = [10, 10, 20, 30, 40]

list_b = ["Ini string", 1, 2, 3]

list_c = [" String 1", 1.0, 2.0, 1E-20, 10.3456]

Akses ke dalam list dapat menggunakan beberapa cara, yaitu dengan meng-gunakan index langsung, index backward, dan slice. Berikut contoh masing-masing cara tersebut.

a = list_a [0] # a = 10

a = list_a [0:3] # a = [10, 10, 20]

a = list_a [::-1] # a = [40, 30, 20, 10, 10]

a = list_a [-1] # a = 40

a = list_a [ -3::] # a = [20, 30, 40]

3.2.2 List Multidimensi

List multidimensi mempunyai dimensi yang lebih dari 1, seperti pendeklarasiansuatu matriks. Semua aturan pada list multidimensi sama dengan aturan yangada pada list satu dimensi. Dimensi yang digunakan antara data pertama dandata berikutnya tidak harus sama dan dapat berubah sesuai dengan data yangdigunakan. Berikut merupakan contoh perintah untuk mendeklarasikan suatulist multidimensi.

list_a = [ [0,1,0], [1,1,1], [3,3,3] ]

list_b = [ "String 1", "String 2", [3,4,5] ]

list_c = [ [0.0, 1.0, 0.0], [1,1,1], [3.56, 1.234, 23.45] ]

Akses ke dalam list mempunyai aturan ysng sama dengan akses data pada listsatu dimensi. Berikut merupakan contoh akses data untuk list multidimensi.

a = list_a [0][1] # a = 1

a = list_a [:: -1][0] # a = [3,3,3]

a = list_a [-1] # a = [3,3,3]

a = list_a [ -2::] # a = [[1,1,1],[3,3,3]]

17

Page 18: Modul Prokom Python new

Latihan 3.3

# Program 3.3

N = 5

tab = [0] * N

for i in range(N):

tab[i] = i

for i in range(N):

print "i =", i, "tab[i] =", tab[i]

Latihan 3.4

# Program 3.4

b = [ [0,0,0] ] * 5

for i in range (3):

for j in range (5):

b[j][i] = i*j

print b[j][i], " ",

print

3.3 Fungsi Lambda

Fungsi lambda adalah suatu fungsi yang mepresentasikan suatu fungsi anony-mouse untuk perumusan tertentu. Berikut contoh perbedaan dan penggunaanantara fungsi biasa dengan fungsi lambda.

>>> def f (x): return x**2

...

>>> print f(8)

64

>>>

>>> g = lambda x: x**2

>>>

>>> print g(8)

64

Setiap yang dapat dilihat pada kode diatas, f() dan g() melakukan perintahyang sama dan dapat digunakan dengan cara yang sama. Fungsi lambda di-adaptasi oleh python dari functional programming dan keuntungan dari fungsilambda adalah tidak perlu mendeklarasikan variabel apapun.

18

Page 19: Modul Prokom Python new

3.4 Operator

Operator merupakan simbol atau kata yang digunakan untuk operasi dan ma-nipulasi dalam program yang melibatkan satu (unary operator) atau dua nilai(binary operator).

Operator AritmatikaMerupakan operator untuk operasi aritmatika seperti:

Tabel 3.1: Operator AritmatikaOperator Operasi Operator Operasi

* Perkalian - Perhitungan/ Pembagian + Penambahan% Sisa Pembagian ** Pangkat

Latihan 3.5

# Program 3.5

i = 100

j = i * 2

k = j / 4

l = k % 3

f = lambda x: x**2 +

print "Nilai i: %d \nNilai j: %d" % (i,j)

print "Nilai k: %d \nNilai l: %d" % (k,l)

Operator RelasiMerupakan operator untuk membandingkan dua buah nilai. Keluaran atauhasil pembandngan adalah kondisi benar atau kondisi salah.

Tabel 3.2: Operator RelasiOperator Operasi Operator Operasi

< lebih kecil >= lebih besar atau sama dengan

<= lebih kecil atau sama dengan == sama dengan

> lebih besar != tidak sama dengan

Operator LogikaMerupakan operator untuk menghubungkan satu atau lebih kondisi. Kondisibisa merupakan hasil pembandingan yang menggunakan operator relasi.

19

Page 20: Modul Prokom Python new

Tabel 3.3: Operator LogikaOperator Operasi

and Logika ANDor Logika OR

not Logika NOT

Tabel 3.4: Kebenaran operasi AND dan OROperator AND Operator OR

Kondisi 1 kondisi 2 Hasil

Salah Salah Salah

Salah Benar Salah

Benar Salah Salah

Benar Benar Benar

Kondisi 1 kondisi 2 Hasil

Salah Salah Salah

Salah Benar Benar

Benar Salah Benar

Benar Benar Benar

Latihan 3.6

# Program 3.6

k = 2 * 3

l = (k == 6)

m = 5 or 10

print "K =", k, "L =", l, "M =", m

3.5 Tugas

1. Buatlah program untuk menghitung luas dan keliling dari bangun perse-gi, segi tiga, jajar genjang !

2. Buatlah program untuk menghitung volume dari tabung, balok dan pris-ma segi tiga!

3. Buatlah program untuk operasi 2 matrik (tambah, kurang, kali, deter-minan dan transpose) dengan ukuran matrik 3x3!

20

Page 21: Modul Prokom Python new

Modul 4

Kontrol Program

4.1 Pernyataan if

Pada model pernyataan if, sebuah aksi akan dikerjakan jika syarat yang dia-jukan bernilai benar

Gambar 4.1: Pernyataan if dalam bentuk �owchart

Bentuk umum:

if syarat:

aksi1

Aksi dapat terdiri dari satu baris pernyataan atau berupa sekumpulan (block)baris pernyataan.

Latihan 4.1

# Program 4.1

print "Contoh if satu kasus"

a = input("Ketikkan suatu nilai integer : ")

if a >= 0:

print "Nilai a positif"

21

Page 22: Modul Prokom Python new

4.2 Pernyataan if ... else

Pada model pernyataan ini, aksi1 akan dikerjakan jika syarat bernilai benarsedangkan jika salah maka aksi2 yang akan dikerjakan.

Gambar 4.2: Pernyataan if..else dalam �owchart

Bentuk umum:

if syarat:

aksi1

else:

aksi2

Latihan 4.2

# Program 4.2

print "Contoh if dua kasus"

a = input("Ketikkan suatu nilai integer : ")

if a >= 0:

print "Nilai a positif", a

else:

print "Nilai a negatif", a

Pernyataan if..else dapat dibuat secara bertingkat sesuai dengan kebutuhanpenggunaannya pada program.

Gambar 4.3: Pernyataan if..else dalam �owchart

22

Page 23: Modul Prokom Python new

Bentuk umum:

if syarat1:

aksi1

else:

if syarat2:

aksi2

else:

aksi3

4.3 Pernyataan for

Pada pengulangan dengan for diperlukan ungkapan untuk deklarasi variabeldan angka maksimum yang bisa dicapai oleh variabel.

Bentuk umum:

for variabel in range(max):

pernyataan

Latihan 4.3

# Program 4.3

print "Baca N, print 1 s/d N"

N = input("N=")

for i in range(N):

print i

print "Akhir program"

4.4 Pernyataan while

Pada pengulangan jenis ini, pengecekan dilakukan diawal dan akan terus di-lakukan sampai syarat yang diminta memiliki nilai false. Pengulangan denganwhile ini hampir sama dengan pengulangan dengan for jika inisialisai dile-takkan sebelum blok pengulangan.

Bentuk umum:

while syarat:

pernyataan

23

Page 24: Modul Prokom Python new

# transformasi dari jenis perulangan for

inisialisasi

while syarat:

pernyataan

penambahan

Latihan 4.4

# Program 4.4

N = input("Nilai N=")

print "print i dengan WHILE :"

i = 1

while i <= N:

print i

i = i + 1

4.5 Pernyataan switch case

Pada bahasa pemrograman python, tidak terdapat keyword khusus yang digu-nakan untuk pernyataan switch case tetapi dapat digunakan pernyataan if..elifuntuk menggantikan pernyataan switch case.

Gambar 4.4: Pernyataan switch case pada �owchart

Bentuk umum :

if syarat1:

aksi1

elif syarat2:

aksi2

elif syarat3:

aksi3

24

Page 25: Modul Prokom Python new

Latihan 4.5

# Program 4.5

cc = raw_input("Ketikkan sebuah huruf , akhiri dengan enter \n")

if cc == "o":

print "Yang anda ketikkan adalah o"

elif cc == "a":

print "Yang anda ketikkan adalah a"

elif cc == "u":

print "Yang anda ketikkan adalah u"

elif cc == "e":

print "Yang anda ketikkan adalah e"

elif cc == "i":

print "Yang anda ketikkan adalah i"

else:

print "Yang anda ketik adalah huruf mati"

4.6 Tugas

1. Buatlah program yang mencetak bilangan biner dari input bilangan dec-imal integer!

2. Buatlah program dengan menggunakan pernyataan perulangan yang me-nampilkan hasil sebagai berikut :*

**

***

****

*****

... (sebanyak N, dimana N adalah input)

****

***

**

*

3. Buatlah program dengan menggunakan pernyataan perulangan yang me-nampilkan hasil sebagai berikut :

*

*

*

*

*

*

*

*

*

25

Page 26: Modul Prokom Python new

26

Page 27: Modul Prokom Python new

Modul 5

Fungsi dan Parameter

5.1 Pengertian fungsi

Fungsi adalah suatu bagian dari program yang dimaksudkan untuk menger-jakan suatu tugas tertentu dan letaknya dipisahkan dari bagian program yangmenggunakannya.Berdasarkan keluaran dan masukannya fungsi dapat dibagi menjadi 4. Yangdimaksud keluaran adalah fungsi yang mengembalikan suatu nilai tertentu danyang dimaksud dengan masukan adalah parameter yang merupakan inputanpada fungsi.1. Fungsi tanpa masukan dan keluaranContoh: print()

2. Fungsi tanpa keluaran dan dengan masukanContoh: print(�Ini text�)

3. Fungsi dengan keluaran dan tanpa masukanContoh: time()

4. Fungsi dengan keluaran dan masukanContoh: input(�N=�)

5.2 Fungsi tanpa parameter

Fungsi ini merupakan fungsi yang tidak memiliki parameter inputan namunfungsi ini tetap melaksanakan tugas tertentu.

Bentuk umum :

def nama_fungsi ():

pernyataan

27

Page 28: Modul Prokom Python new

Latihan 5.1

# Program 5.1

def input_data ():

"Fungsi pertama"

nama = raw_input("Nama : ")

nrp = raw_input("NRP : ")

def cetak_string ():

print "Ini adalah fungsi yang mencetak string"

print "Silahkan masukkan data"

input_data ()

cetak_string ()

5.3 Fungsi dengan parameter

Fungsi ini merupakan fungsi yang memiliki sejumlah parameter dengan tugastertentu. Perlu digaris bawahi bahwa semua parameter memiliki jenis pengi-riman by reference sehingga jika dilakukan manipulasi parameter pada fungsimaka nilai dari parameter tersebut juga akan berubah sesuai dengan data yangdiisikan.

Bentuk umum :

def nama_fungsi(argumen1 , argumen2 , ...):

pernyataan

Latihan 5.2

# Program 5.2

def cetak_string(par1 , par2):

print "Nama mahasiswa adalah", par1

print "NRP mahasiswa adalah", par2

def hitung(a, b):

print "Hasil penjumlahan", a, "+", b, "adalah" ,(a+b)

# main program

nama = raw_input("Nama = ")

nrp = raw_input("NRP = ")

cetak_string(nama , nrp)

bil1 = 10

bil2 = 12

hitung(bil1 , bil2)

28

Page 29: Modul Prokom Python new

5.4 Fungsi dengan keluaran

Fungsi dengan keluaran merupakan suatu fungsi yang mengembalikan suatunilai tertentu kepada pemanggil fungsi.

Bentuk umum :

def nama_fungsi(argumen1 , argumen2 , ...):

pernyataan

return [value1 , value2 , ...]

Latihan 5.3

# Program 5.3

def tambah(a, b):

jum = a + b

return jum

def kurang(c, d):

return c - d

bil1 = input("Masukkan nilai A : ")

bil2 = input("Masukkan nilai B : ")

hasil = tambah(bil1 , bil2)

print "Hasil penjumlahan :", hasil

print "Hasil pengurangan :", kurang(bil1 , bil2)

Latihan 5.4

# Program 5.4

def tambah_kurang(a, b):

return [a + b, a - b]

bil1 = input("Masukkan nilai A : ")

bil2 = input("Masukkan nilai B : ")

[plus , minus] = tambah_kurang(bil1 , bil2)

print "Hasil penjumlahan :", plus

print "Hasil pengurangan :", minus

5.5 Fungsi rekursif

Fungsi rekursif adalah fungsi yang memanggil dirinya sendiri secara berulang-ulang. Karena prosesnya dilakukan secara berulang-ulang maka harus ada

29

Page 30: Modul Prokom Python new

kondisi yang mengakhiri prosesnya.

Latihan 5.5

# Program 5.5

def faktorial(nn):

if nn <= 1:

return 1

else:

f = nn*faktorial(nn -1)

return f

N = input("Masukkan integer = ")

print "Faktorial dari", N, "adalah", faktorial(N)

5.6 Tugas

1. Buatlah program dengan fungsi yang menjumlahkan dua integer !

2. Buatlah program dengan fungsi yang menukar isi dua buah variabelstring !

3. Buatlah program dengan fungsi yang mengembalikan nilai KPK dari duabilangan (Gunakan sebagai parameter) !

4. Buatlah program dengan fungsi yang mengembalikan jumlah huruf vocaldari suatu kalimat !

30

Page 31: Modul Prokom Python new

Modul 6

Operasi File

31