Anda di halaman 1dari 31

Praktikum Pemrograman Komputer

Daftar Isi

Pengenalan IDE Python


1.1 Lingkungan Pengembangan Terpadu (IDE) . . . . . . . . . . . . 1.1.1 1.1.2 1.2 1.3 1.4 1.5 Interactive Shell . . . . . . . . . . . . . . . . . . . . . . . Teks Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5
5 5 6 6 7 8 9

Struktur Program Python

Latihan 1.1: Program Sederhana

Latihan 1.2: Deteksi Kesalahan Sintak Tugas

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Input / Output (I/O)


2.1 2.2 Menampilkan Data Dengan Perintah Input Data 2.2.1 2.2.2 2.3 Tugas

11

print .

. . . . . . . . . . .

11 12 12 13 14

. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Perintah Perintah

input

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

raw_input

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Variabel, List, Operator, dan Lambda


3.1 3.2 Variabel dan Tipe Data . . . . . . . . . . . . . . . . . . . . . .

15
15 16 17 17 18 19 20

List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.1 3.2.2 List Satu Dimensi . . . . . . . . . . . . . . . . . . . . . . List Multidimensi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.3 3.4 3.5

Fungsi Lambda

Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tugas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Kontrol Program
4.1 4.2 4.3 4.4 4.5 4.6 Pernyataan if . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

21
21 22 23 23 24 25

Pernyataan if ... else Pernyataan for

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Pernyataan while

Pernyataan switch case . . . . . . . . . . . . . . . . . . . . . . . Tugas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Fungsi dan Parameter


5.1 5.2 5.3 5.4 5.5 5.6 Pengertian fungsi . . . . . . . . . . . . . . . . . . . . . . . . . . Fungsi tanpa parameter . . . . . . . . . . . . . . . . . . . . . .

27
27 27 28 29 29 30

Fungsi dengan parameter . . . . . . . . . . . . . . . . . . . . . . Fungsi dengan keluaran . . . . . . . . . . . . . . . . . . . . . . . Fungsi rekursif Tugas . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Operasi File

31

Modul 1 Pengenalan IDE Python


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

1.1

Lingkungan Pengembangan Terpadu (IDE)

Pada pemrograman python, ada banyak IDE yang dapat digunakan tetapi pada 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. Seperti 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 GUI) Python 2.6 IDLE (Python

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. Pada 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 pada interactive shell seperti contoh berikut

>>> print Hello World Hello World >>> print 5+3 8

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 digunakan 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 menggunakan teks editor ini. Pada saat awal eksekusi program IDLE jendela teks editor tidak akan muncul dan untuk dapat memunculkan jendela tersebut dapat digunakan menu File New Window.

1.2

Struktur Program Python

Struktur program python secara umum terbagi menjadi tiga bagian yaitu header, denisi fungsi, dan program utama. Contoh program python secara lengkap adalah sebagai berikut

# 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 menentukan 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. Sebagai 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 Window lalu tulislah kode program berikut

New

# 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 nama latihan ini.

Save atau dengan menekan tombol ctrl+S. Sesuaikan nama le dengan

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 program, 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 Window lalu tulislah kode program berikut

New

# 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 nama latihan ini.

Save atau dengan menekan tombol ctrl+S. Sesuaikan nama le dengan

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 ditunjukan pada gambar berikut.

5. Perbaiki kesalahan tersebut, lalu jalankan kembali kode programnya. Kesalahan yang sama muncul lagi tetapi pada baris yang berbeda, yaitu pada 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
print print Print a = 2 print Hello, World! 2 + 2, Test 123 * 4 aa

1. Perbaiki kesalahan yang terdapat dalam kode program berikut

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

10

Modul 2 Input / Output (I/O)


Pada modul praktikum yang kedua ini, dibahas permasalahan yang berhubungan 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. memanggil perintah print yaitu: Ada beberapa cara

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 print print print

2 + "3 * "100 "(33

2 4 +

is, 2 is", 3 1 is", 2) / 5

+ 2 * 4 100 - 1 + 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 bilangan pecahan, dan %c untuk karakter. Contoh pemanggilannya adalah sebagai berikut

print print print print

2 + "3 * "100 "(33

2 4 +

is %d % is %d" % 1 is %d" 2) / 5 +

(2 + 2) (3 * 4) % (100 - 1) 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. mbahkan koma pada akhir baris. Dapat ditambah dengan karakter khusus (escape sequence) yang didahului dengan tanda \, yaitu pindah baris \n dan tab \t. Jika perintah pindah baris tidak diinginkan maka perintah print harus dita-

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 pemrograman 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 Masukkan suatu bilangan >>> a = input (" Masukkan Masukkan suatu bilangan

suatu bilangan = ") = 20 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 penggunaan perintah print, tetapi hasil data yang diinputkan akan selalu berupa string. Perintah raw_input dapat digunakan untuk input data string dan numerik 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
xxx, yyy, dan zzz dengan sembarang data.

1. Buatlah tabel dengan format text (bukan grak) sebagai berikut. Isilah

Data 1 Nama NRP Alamat

: xxx : yyy : zzz

Data 2 ... Data 3 ... ---------------------------------------------------------| Nama | NRP | Alamat | ---------------------------------------------------------| xxx | yyy | zzz | ---------------------------------------------------------| ... | ... | ... | ---------------------------------------------------------| ... | ... | ... | ---------------------------------------------------------2. Buatlah kuitansi pembayaran dengan format display sebagai berikut. Isilah 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, bilangan, 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 integer long integer oat string

Ukuran (byte) 4 tak hingga 8 -

Jangkauan -2147483648 - 2147483649 tak hingga 2.2e-308 - 1.7e+308 -

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 variabel tersebut akan bertipe integer, jika oating-point maka variabel tersebut akan bertipe oat, dan seterusnya. Berikut merupakan contoh dari penggunaan 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 mempunyai 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 menggunakan index langsung, index backward, dan slice. Berikut contoh masingmasing cara tersebut.

a a a a a

= = = = =

list_a [0] list_a [0:3] list_a [:: -1] list_a [ -1] list_a [ -3::]

# # # # #

a a a a a

= = = = =

10 [10 , 10 , 20] [40 , 30 , 20 , 10 , 10] 40 [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 a a a

= = = =

list_a [0][1] list_a [:: -1][0] list_a [ -1] list_a [ -2::]

# # # #

a a a a

= = = =

1 [3 ,3 ,3] [3 ,3 ,3] [[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 anonymouse untuk perumusan tertentu. Berikut contoh perbedaan dan penggunaan antara fungsi biasa dengan fungsi lambda.

>>> ... >>> 64 >>> >>> >>> >>> 64

def f ( x ): return x **2 print f (8) g = lambda x : x **2 print g (8)

Setiap yang dapat dilihat pada kode diatas, f() dan g() melakukan perintah yang sama dan dapat digunakan dengan cara yang sama. Fungsi lambda diadaptasi 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 manipulasi 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 Perkalian Pembagian Sisa Pembagian Operator + ** Operasi Perhitungan Penambahan 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. hasil pembandngan adalah kondisi benar atau kondisi salah. Keluaran atau

Tabel 3.2: Operator Relasi Operator


< <= >

Operasi
lebih kecil lebih kecil atau sama dengan lebih besar

Operator
>= == !=

Operasi
lebih besar atau sama dengan sama dengan 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 and or not Operasi Logika AND
Logika OR Logika NOT

Tabel 3.4: Kebenaran operasi AND dan OR Operator AND


Kondisi 1 Salah Salah Benar Benar kondisi 2 Salah Benar Salah Benar Hasil Salah Salah Salah Benar

Operator OR
Kondisi 1 Salah Salah Benar Benar kondisi 2 Salah Benar Salah Benar Hasil Salah 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
gi, segi tiga, jajar genjang !

1. Buatlah program untuk menghitung luas dan keliling dari bangun perse-

2. Buatlah program untuk menghitung volume dari tabung, balok dan prisma segi tiga! 3. Buatlah program untuk operasi 2 matrik (tambah, kurang, kali, determinan 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 diajukan 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 dilakukan sampai syarat yang diminta memiliki nilai false. Pengulangan dengan while ini hampir sama dengan pengulangan dengan for jika inisialisai diletakkan 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 digunakan 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
imal integer!

1. Buatlah program yang mencetak bilangan biner dari input bilangan dec2. Buatlah program dengan menggunakan pernyataan perulangan yang menampilkan hasil sebagai berikut :

* ** *** **** ***** ... **** *** ** *

(sebanyak N, dimana N adalah input)

3. Buatlah program dengan menggunakan pernyataan perulangan yang menampilkan hasil sebagai berikut :

* *

25

26

Modul 5 Fungsi dan Parameter

5.1

Pengertian fungsi

Fungsi adalah suatu bagian dari program yang dimaksudkan untuk mengerjakan 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: Contoh: Contoh: Contoh:

print()

2. Fungsi tanpa keluaran dan dengan masukan

print(Ini text) time()

3. Fungsi dengan keluaran dan tanpa masukan 4. Fungsi dengan keluaran dan masukan

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 pengiriman 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 bil2 = input ( " Masukkan nilai hasil = tambah ( bil1 , bil2 ) print " Hasil penjumlahan : " , print " Hasil pengurangan : " , A : ") B : ") hasil 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 berulangulang. 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