Anda di halaman 1dari 31

Praktikum Pemrograman Komputer

2
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
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
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 paket
python yaitu IDLE. IDLE (Integrated Development Editor) merupakan suatu
editor kode program, bantuan interaktif, dan debugging yang digunakan untuk
melakukan development program dengan menggunakan bahasa python. Seper-
ti yang dapat dilihat pada gambar 1.1, bahwa IDLE dapat dibagi menjadi dua

 
bagian besar yaitu Interactive Shell dan Teks Editor. Untuk menjalankan
editor IDLE masuk ke menu All programs Python 2.6 IDLE (Python
GUI)

1.1.1 Interactive Shell

Interactive shell merupakan fasilitas yang dipunyai oleh bahasa pemrograman


yang berjenis intepreter, yaitu bahasa pemrograman yang menterjemahkan
satu per satu baris dari kode program untuk dijalankan pada sistem. Pa-
da IDLE, interactive shell digunakan untuk melakukan komputasi secara per
baris atau bisa juga digunakan untuk mencari kesalahan yang timbul pada
saat program dijalankan. Cobalah untuk mengetikkan beberapa perintah pa-
da interactive shell seperti contoh berikut

>>> print Hello World


Hello World
>>> print 5+3
8

5
Gambar 1.1: Screen shot dari IDLE

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

1.1.2 Teks Editor

Teks editor pada IDLE digunakan untuk menulis kode program dan melakukan
eksekusi kode program tersebut pada interactive shell. Teks editor yang digu-
nakan sudah mendukung auto completion dengan menekan tombol ctrl+spasi
sehingga IDLE akan menyarankan semua keyword python yang mungkin akan
digunakan pada kode program. Anda akan banyak bekerja dengan menggu-
nakan teks editor ini. Pada saat awal eksekusi program IDLE jendela teks


editor 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, denisi fungsi, dan program utama. Contoh program python secara lengkap
adalah sebagai berikut

6
# 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 dan
tidak akan diproses oleh python intepreter. Header berfungsi untuk menen-
tukan module mana yang akan digunakan dalam program. Module merupakan
pustaka tambahan yang disediakan oleh python atau oleh orang lain dan dapat
digunakan dalam program untuk mempermudah pembuatan program. Seba-
gai contoh diatas, kode program tersebut menggunakan semua module yang
ada pada namespace numpy dan menggunakan module math yang disediakan
oleh python.

Denisi dari fungsi-fungsi digunakan untuk menyederhanakan program dan


main program merupakan awal kode program yang akan dieksekusi oleh python
intepreter. Pemisah yang digunakan oleh python untuk membedakan antara
blok perintah satu dengan blok perintah lainnya adalah dengan tabulasi. Pada
program 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 program


secara sederhana dengan menggunakan bahasa python dan editor IDLE.

1. Buat jendela teks editor baru dengan menggunakan menu File  New
Window 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
2. Simpan le kode program tersebut dengan menggunakan menu File 
Save atau dengan menekan tombol ctrl+S. Sesuaikan nama le dengan
nama 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 menggunakan
menu 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 mencari
suatu kesalahan dengan menggunakan editor IDLE.

1. Buat jendela teks editor baru dengan menggunakan menu File  New
Window 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 dengan
nama 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 pesan
kesalahan sebagaimana gambar berikut

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

8
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 berikut


print Hello, World!
print 2 + 2,
Print Test 123
a = 2 * 4
print aa

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

9
10
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 atau
objek pada layar serta bagaimana menangani masukan dari user untuk diolah
dalam program yang kita buat. Perintah yang akan dibahas adalah perintah
print, input, dan raw_input.

2.1 Menampilkan Data Dengan Perintah print

Perintah print merupakan perintah dasar dari python yang dapat menampilkan
seluruh data yang disupport secara native oleh python. Ada beberapa cara
memanggil perintah print yaitu:

ˆ Memanggil perintah print dengan menggunakan koma sebagai pemisah


antar objek yang akan ditampilkan. Koma juga sebagai pemisah antara
dua objek yang akan ditampilkan dengan menggunakan karakter spasi.
Contoh pemanggilannya adalah sebagai berikut
print 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 printf


yang terdapat pada bahasa C dan sebagai parameter, %s digunakan
untuk menampilkan string, %d untuk bilangan bulat, %f  untuk bilan-
gan pecahan, dan %c untuk karakter. Contoh pemanggilannya adalah
sebagai berikut
print 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
ˆ Setiap menggunakan perintah print maka python akan secara otomatis
menambahkan perintah untuk pindah baris pada akhir instruksi. Jika
perintah 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 melakukan
input data yaitu perintah input dan perintah raw_input.

2.2.1 Perintah input

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

12
penggunaan perintah input dan kesalahannya jika data yang diinputkan bukan
data 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 berupa
string. Perintah raw_input dapat digunakan untuk input data string dan nu-
merik dengan cara tertentu. Contoh penggunaan perintah raw_print adalah
sebagai 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
2.3 Tugas

1. Buatlah tabel dengan format text (bukan grak) sebagai berikut. Isilah
xxx, 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 ppp
diisi dengan nama Anda.
--------------------------------------------------------------------
| |
| Sudah Terima Dari : xxx_________________________________________ |
| |
| Sebanyak : Rp. yyy_____________________________________ |
| |
| Untuk Keperluan : zzz_________________________________________ |
| ____________________________________________ |
| |
| Surabaya, 12 Sept 2010 |
| |
| |
| _________ppp_________ |
| |
--------------------------------------------------------------------

14
Modul 3

Variabel, List, Operator, dan


Lambda

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 dasar
dan tipe data khusus. Tabel dibawah menampilkan beberapa tipe data dasar
dan domainnya, yang dikenal dalam Python.

Nama Tipe Data Ukuran (byte) Jangkauan

integer 4 -2147483648 - 2147483649


long integer tak hingga tak hingga
oat 8 2.2e-308 - 1.7e+308
string - -

Variabel merupakan penampung data yang isinya dapat diubah. Data yang
dapat disimpan adalah data sesuai dengan tipenya.
Nama variabel terdiri dari huruf, angka dan garis bawah, dapat didahului oleh
huruf 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
Pemberian (assignment) nilai ke Variable
Tipe 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 tersebut
akan 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 tipe
data ataupun terdiri dari beberapa tipe data. Tuple sedikit banyak merupakan
suatu list, hanya saja pada tuple isi dari tuple tersebut bersifat read-only.

16
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 dengan
menggunakan 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 pendeklarasian


suatu matriks. Semua aturan pada list multidimensi sama dengan aturan yang
ada pada list satu dimensi. Dimensi yang digunakan antara data pertama dan
data berikutnya tidak harus sama dan dapat berubah sesuai dengan data yang
digunakan. Berikut merupakan contoh perintah untuk mendeklarasikan suatu
list 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 list
satu 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
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 penggunaan
antara 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 perintah
yang sama dan dapat digunakan dengan cara yang sama. Fungsi lambda di-
adaptasi oleh python dari functional programming dan keuntungan dari fungsi
lambda adalah tidak perlu mendeklarasikan variabel apapun.

18
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 Aritmatika
Merupakan operator untuk operasi aritmatika seperti:

Tabel 3.1: Operator Aritmatika


Operator 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 Relasi
Merupakan operator untuk membandingkan dua buah nilai. Keluaran atau
hasil pembandngan adalah kondisi benar atau kondisi salah.

Tabel 3.2: Operator Relasi


Operator Operasi Operator Operasi

< lebih kecil >= lebih besar atau sama dengan

<= lebih kecil atau sama dengan == sama dengan

> lebih besar != tidak sama dengan

Operator Logika
Merupakan operator untuk menghubungkan satu atau lebih kondisi. Kondisi
bisa merupakan hasil pembandingan yang menggunakan operator relasi.

19
Tabel 3.3: Operator Logika
Operator Operasi

and Logika AND


or Logika OR

not Logika NOT

Tabel 3.4: Kebenaran operasi AND dan OR


Operator AND Operator OR
Kondisi 1 kondisi 2 Hasil Kondisi 1 kondisi 2 Hasil

Salah Salah Salah Salah Salah Salah

Salah Benar Salah Salah Benar Benar

Benar Salah Salah Benar Salah Benar

Benar Benar 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
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
4.2 Pernyataan if ... else

Pada model pernyataan ini, aksi1 akan dikerjakan jika syarat bernilai benar
sedangkan 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 kebutuhan


penggunaannya pada program.

Gambar 4.3: Pernyataan if..else dalam owchart

22
Bentuk umum:

if syarat1 :
aksi1
else :
if syarat2 :
aksi2
else :
aksi3

4.3 Pernyataan for

Pada pengulangan dengan for diperlukan ungkapan untuk deklarasi variabel


dan 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 dengan
while ini hampir sama dengan pengulangan dengan for jika inisialisai dile-
takkan sebelum blok pengulangan.

Bentuk umum:

while syarat :
pernyataan

23
# 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..elif
untuk menggantikan pernyataan switch case.

Gambar 4.4: Pernyataan switch case pada owchart

Bentuk umum :

if syarat1 :
aksi1
elif syarat2 :
aksi2
elif syarat3 :
aksi3

24
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
26
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 yang
menggunakannya.
Berdasarkan keluaran dan masukannya fungsi dapat dibagi menjadi 4. Yang
dimaksud keluaran adalah fungsi yang mengembalikan suatu nilai tertentu dan
yang dimaksud dengan masukan adalah parameter yang merupakan inputan
pada fungsi.
1. Fungsi tanpa masukan dan keluaran
Contoh: print()
2. Fungsi tanpa keluaran dan dengan masukan
Contoh: print(Ini text)
3. Fungsi dengan keluaran dan tanpa masukan
Contoh: time()
4. Fungsi dengan keluaran dan masukan
Contoh: input(N=)

5.2 Fungsi tanpa parameter

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

Bentuk umum :

def nama_fungsi ():


pernyataan

27
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 tugas
tertentu. Perlu digaris bawahi bahwa semua parameter memiliki jenis pengi-
riman by reference sehingga jika dilakukan manipulasi parameter pada fungsi
maka nilai dari parameter tersebut juga akan berubah sesuai dengan data yang
diisikan.

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
5.4 Fungsi dengan keluaran

Fungsi dengan keluaran merupakan suatu fungsi yang mengembalikan suatu


nilai 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
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 variabel
string !

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

4. Buatlah program dengan fungsi yang mengembalikan jumlah huruf vocal


dari suatu kalimat !

30
Modul 6

Operasi File

31

Anda mungkin juga menyukai