Modul Praktikul Alpro - Ham
Modul Praktikul Alpro - Ham
Pemrograman
Hamzah U. Mustakim
Daftar Isi
MODUL 1 .............................................................................................................................................. 1
MODUL 2 .............................................................................................................................................. 7
MODUL 3 ............................................................................................................................................ 13
MODUL 4 ............................................................................................................................................ 17
MODUL 5 ............................................................................................................................................ 22
MODUL 6 ............................................................................................................................................ 25
1
MODUL 1
PENDAHULUAN
Banyak bahasa pemrograman yang tersedia saat ini seprti Java, C/C++,
Pascal, R, Perl, PHP, Microsoft .NET, C#, Rubby dan Python. Namun pada
kenyataanya banyak mahasiswa yang telah belajar bahasa pemrograman selama
satu semester penuh belum mengenal macam bahasa pemrograman. Sebuah
program komputer dapat diartikan sebagai kumpulan instruksi-instruksi yang dibuat
secara terstruktur dan logis untuk menyelesaikan suatu permasalahan. Seorang
pembuat program atau seorang programmer harus memiliki kemampuan untuk
membuat program komputer berdasarkan ketentuan yang dimiliki oleh bahasa
pemrograman yang digunakan. Sebuah bahasa pemrograman dapat memiliki
kelebihan dan kekurangan, misal sebuah bahasa bekerja lebih baik untuk database
dan bahasa yang lain lebih baik digunakan untuk membuat antarmuka pengguna
(user interface). Pada awalnya Bahasa pemrograman Python dibuat untuk membuat
programer dapat lebih efiseien dan produktif dalam bekerja. Beberapa alasan kenapa
bahasa pemrograman Python digunakan pada modul ini adalah karena berbagai hal:
Bahasa Python tersedia untuk berbagai sistem operasi; Windows, Mac OS, dan
berbagai variasi dari UNIX (Linux, *BSD, dan seterusnya).
Untuk sistem operasi berbasis Linux dan Mac OS, Python sudah terpasang
sebagai bawaan dari sistem operasinya. Jika ingin menggunakan versi terbaru maka
Proses instalasi selesai dan sukses bila kita dapat membuka IDLE pada
bagian start menu Windows, seperti tertera pada Gambar 3.
1.2 IDLE
Kita juga bisa mengubah tampilan IDLE dan menggunakan beberapa shortcut
(Gambar 5) untuk mengelola kode yang ditulis dalam shell. Setelah kode program
selesai, tekan tombol F5 untuk menjalankan kode tersebut.
Struktur program Python secara umum terbagi menjadi tiga bagian yaitu
header, definisi fungsi, dan program utama. Contoh program Python secara lengkap
adalah sebagai berikut
9 # Program Utama
10 print "Program Utama"
Baris yang dimulai tanda tagar merupakan kalimat komentar yang tidak akan
diproses oleh python intrepeter. Dalam sebuah header dapat berisi modul-modul
yang digunakan pada suatu program. Modul ini adalah pustaka tambahan yang telah
disediakan dan dapat digunakan untuk mempermudah kita dalam membuat program.
Pada contoh diatas terlihat bahwa programer menggunakan semua modul yang
memiliki namespace numpy dan modul math yang telah disediakan oleh python.
editor Anda tersebut. Setelah itu simpan berkas tersebut dengan nama “hello.py”.
Biasanya berkas program Python ditandai dengan akhiran (extension) “.py”. Setelah
berkas tersebut tersedia, maka kita dapat menjalankan Python dengan memberikan
perintah Run Module (F5).
Mari kita bahas bagaimana program tersebut berkerja. Pada baris pertama
program meminta user untuk memasukkan sebuah bilangan temperatur suhu. Fungsi
dari input adalah memminta user untuk mengetikkan bilangan dan menyimpan apa
yang telah diketikkan user. Pada bagian yang berada diantara tanda petik adalah yang
ditampilkan oleh komputer kepada user dan bagian ini disebut sebagai string.
Selanjutnya eval digunakan jika kita mendapatkan data input berupa bilangan numerik.
Fungsi print pada baris kedua program adalah untuk memberikan instruksi pada
komputer untuk menampilkan kalimat yang berada di dalam tanda petik dan fungsi
kedua adalah melakukan proses kalkulasi serta menuliskan hasilnya pada layar.
Mari kita lanjutkan menulis program kedua seperti tertera dibawah ini. Program
ini berfungsi untuk mencari nilai rata-rata dari dua bilangan input.
Yang harus diperhatikan pada saat menulis kode program adalah penulisan
huruf kecil dan huruf besar karena memiliki arti yang berbeda. Sebagai contoh print,
Print, dan PRINT adalah sesuatu yang berbeda satu sama lain. Untuk sekarang kita
cukup menuliskan program dengan huruf kecil.
MODUL 2
VARIABEL
Pada modul sebelumnya kita telah belajar bagaimana menulis program awal
menggunakan IDLE Python seperti dibawah ini:
Dapat kita lihat bahwa terdapat sebuah variabel yang ditulis dengan mana temp. Salah
satu tujuan utama dari sebuah variabel adalah untuk mengingat dan menyimpan
sebuah nilai dari satu bagian program sehingga nilai tersebut dapat digunakan untuk
bagian program yang lain. Pada contoh program diatas variabel temp menyimpan nilai
input dari user sehingga dapat digunakan untuk proses kalkulasi pada kode program
baris kedua.
Pada contoh program dibawah ini, kita akan melakukan proses kalkulasi yang
menggunakan hasil kalkulasi tersebut pada proses beberapa baris program. Jika kita
menyimpan hasil kalkulasi pada sebuah variabel maka kita hanya perlu melakukan
proses kalkulasi sekali saja sehingga membantu kita untuk membuat program yang
mudah dibaca.
Kita belum membahas fungsi kode if sebelumnya, tapi kode tersebut berfungsi
seperti yang sedang teman-teman pikirkan sekarang.
Contoh kedua berikut ini adalah sebuah baris program dengan penggunaan
beberapa variable. Coba pelajari berapa nilai x dan y setelah baris program tersebut
kita eksekusi.
x=3
y=4
z=x+y
z=z+1
x=y
y=5
Beberapa hal yang harus diperhatikan pada saat kita menuliskan variabel adalah
aturan-aturan penulisan dasar variabel:
• Penulisan besar kecilnya huruf akan diartikan berbeda, misal temp dan
Temp adalah dua variabel yang berbeda.
Pada bahasa pemrograman Python terdapat beberapa tipe data yang dapat
digunakan untuk menyimpan data numerik. Data numerik yang dapat digunakan
adalah bilangan bulat, bilangan riil, dan bilangan kompleks. Semua objek dari tipe data
numerik ini tidak dapat dirubah nilainya atau bersifat immutable.
• Bilangan Bulat
Terdapat dua tipe data bilangan bulat pada python 3, yaitu integer(int)
dan boolean(bool). Python 3 tidak memiliki nilai maksimum untuk tipe
Sebaliknya jika anda ingin mengonversi nilai dari tipe string ke int, guna-
kan fungsi int( ).
>>> a = ’ 111080199 ’
>>> type ( a )
<class ’ str ’>
>>> b= i n t ( a )
>>> b 111080199
>>> type ( b )
<class ’ int ’>
>>>
Tipe data boolean (bool) digunakan untuk memberi nilai pada sebuah
penyataan logika berdasarkan proses pembandingan atau kombinasi
perbandingan. Objek dari tipe boolean hanya bisa diisi dengan nilai True
atau False.
>>> i n t ( True )
1
>>> i n t ( F a l s e )
0
>>> a=True
>>> type ( a )
< c l a s s ’ bool ’ >
>>> i n t ( a )
1
>>>
• Bilangan Real
>>> a = 232133.67
>>> a
232133.67
>>> type ( a )
<class ’float’>
>>> a*2
464267.34
>>>
>>> a = 7 e -4
>>> print (a)
0.0007
>>>
jika kita ingin mengubah tipe data float menjadi tipe data string dapat
menggunakan fungsi str() dan jika ingin mengubah tipe data string
mengjadi tipe data float dapat menggunakan fungsi float(). Sebagai
contoh berikut ini:
>>> a = 232133.67
>>> type ( a )
<class ’float’>
>>> b= s t r ( a )
>>> print (b)
’ 232133.67 ’
>>> type ( b )
<class ’str’>
>>> c= f l o a t ( b )
>>>print (c)
232133.67
>>> type ( c )
<class ’float’>
>>>
• Bilangan Kompleks
>>> a=-7+19 j
>>> print(a)
(-7+19 j )
>>> type ( a )
< c l a s s ’ complex ’ >
>>> a . r e a l 7.0
>>> a . imag 1 9 . 0
>>>
Tipe data string atau teks adalah jenis data yang bentuknya dapat berupa
karakter-karakter unicode yang ditampilkan dengan tipe str. Data string dapat dibuat
dengan tiga cara:
• Menggunakan tanda petik tunggal atau ganda yng ditulis tiga kali, namun
cara ini jarang digunakan karena biasanya hanya digunakan pada saat
kita ingin membuat data string yang memiliki jumlah karakter lebih dari
satu baris.
>>> a 1 = ’PyQt ’
>>> print (a 1)
’ PyQt ’
>>> a 2 =" Python "
>>> print(a 2)
’ Python ’
>>> a 3 = ’ ’ ’ Pemrograman GUI dengan Python dan PyQt ’’’
>>> a 3 ’\nPemrograman GUI\ndengan Python dan PyQt\n ’
>>> a 4 = " " " Pemrograman GUI dengan Python dan PyQt " " "
>>> a 4
’\nPemrograman GUI\ndengan Python dan PyQt\n ’
>>> b = ’ python ’
>>> print(b)
’ python ’
>>> b=b . c a p i t a l i z e ( )
>>> b
’ Python ’
>>> b=b . upper ( )
>>> b ’PYTHON’
>>> b=b . lower ( )
>>> print(b)
’ python ’
>>> b . i s u p p e r ( ) F a l s e
>>> b . i s l o w e r ( ) True
>>> s = ’ ’ . j o i n ( [ ’ saya ’ , ’ makan ’ , ’ ayam ’ ] )
>>> s
’ saya makan ayam ’
>>> nim = ’ 111080199 ’
>>> nim . i s n u m e r i c ( ) True >>>
nim = ’111080199 ’
>>> nim . i s n u m e r i c ( ) F a l s e
MODUL 3
PENGULANGAN
Pengulangan atau biasa disebut loops adalah sebuah sebuah proses pekerjaan
yang dapat dilakukan berkali-kali oleh sebuah komputer dalam waktu yang sangat
singkat. Pada modul ini kita akan mempelajari bagaimana menggunakan bahasa
pemrograman python untuk membuat program pengulangan dengan beberapa cara
yang akan dijelaskan dibawah ini.
Kita akan mulai dengan sebuah contoh program di bawah ini. Program ini akan
menampilkan kata “Hello” sepuluh kali.
for i in range(10):
print('Hello')
Penulisan syntax sangat penting untuk diperhatikan. Kata For harus ditulis huruf kecil
dan harus diahiri dengan titik dua. Statement juga harus ada dimana isi dari statement
tersebut yang akan diproses oleh program. Pada contoh dibawah ini kita akan
menggunakan sebuah angka dan menampilkan hasil kuadrat dari angka tersebut.
Program melakukan proses pengulangan tiga kali kemudian menampilkan hasil
pengulangan tersebut.
for i in range(3):
num = eval(input('Enter a number: '))
print ('The square of your number is', num*num)
print('The loop is now done.')
Enter a number: 3
The square of your number is 9
Enter a number: 5
The square of your number is 25
Enter a number: 23
The square of your number is 529
The loop is now done.
Dari contoh di atas, dapat kita lihat bahwa proses pengulangan dimulai dari
statement For kemudian memproses baris kedua dan ketiga hingga berulang dari awal
lagi sampai berjumlah tiga kali pengulangan. Berikut ini adalah contoh program
pengulangan sederhana yang dapat dicoba.
print('A')
print('B')
for i in range(5):
print('C')
print('D')
print('E')
print('A')
print('B')
for i in range(5):
print('C')
for i in range(5):
print('D')
print('E')
Terdapat satu bagian dari fungsi pengulangan yang perlu kita pelajari yaitu
variabel pengulangan. Sebagai contoh dibawah ini, variabel pengulangan adalah
variabel i. Hasil keluaran dari program ini akan menjadi urutan bilangan 0,1...,99, yang
masing-masing angkat ditampilkan pada baris tersendiri.
for i in range(100):
print(i)
1 -- Hello
2 -- Hello
3 -- Hello
Kita bisa saja mengganti variabel i dengan nama yang lain seperti j dan k
sebagai variabel pengulangan. Sebagai contoh dibawah ini perbedaan nama variabel
yang digunakan pada kedua program akan menghasilkan kesamaan bentuk luaran.
Nilai yang kita pakai pada fungsi range menentukan jumlah pengulangan yang
dilakukan oleh program. Fungi tersebut bekerja dengan cara memproduksi daftar
angka mulai dari angka nol (0) sampai nilai input minus satu (n-1). Sebagai contoh
jika kita menulis range(5) maka akan terbentuk lima buah nilai yaitu: 0, 1, 2, 3, dan 4.
range(10) 0,1,2,3,4,5,6,7,8,9
range(1,10) 1,2,3,4,5,6,7,8,9
range(3,7) 3,4,5,6
range(2,15,3) 2,5,8,11,14
range(9,2,-1) 9,8,7,6,5,4,3
Sebagai contoh di bawah ini program menghitung mundur dari angka lima
kemudian menampilkan pesan pada layar monitor.
for i in range(5,0,-1):
print(i, end=' ' )
print('Blast off!!')
5 4 3 2 1 Blast off!!!
Perintah end=' ' berfungsi untuk menjaga semua angka tertulis pada baris yang
sama. Cobalah baris program dibawah ini.
for i in range(4):
print('*'*6)
MODUL 4
Pada modul ini kita akan fokus belajar tentang bilangan dan angka serta
beberapa operasi matematika sederhana yang dapat digunakan pada bahasa
pemrograman Python.
Untuk bilangan desimal dengan basis 10, pada digit terahir bilangan biasanya
dapat menyulitkan komputer yang berbasis bilangan biner. Sebagai contoh bila kita
menghitung 7/3 maka hasilnya 2.333... dengan pengulangan. Namun jika kita
memakai Python untuk menghitung 7/3 makan akan didapatkan hasil
2.3333333333333335. Ini disebut sebagai roundoff error.
Operasi Keterangan
+ Penambahan
- Pengurangan
* Perkalian
/ Pembagian
** Eksponen / pangkat
// Akar pangkat
% Modulus
Pada saat kita bermain game sering kali kita dapat melihat sebuah skema
random atau acak agar game menjadi lebih menarik. Pada pemrograman Python
terdapat modul yang memungkinkan kita untuk menggunakan bilangan acak pada
program yang dibuat.
Modul adalah bagian inti dari Python yang mengandung fungsi-fungsi seperti
print, input dan pengolangan (loops). Semua terdapat dalam sebuah modul dan jika
kita ingin menggunakan sesuatu dari modul maka kita harus melakukan import. Yaitu
sebuah perintah jika kita ingin menggunakan fungsi dari modul tersebut.
Pada bagian ini hanya ada satu fungsi untuk memanggil bilangan acak pada
pemrograman python. Fungsi tersebut adalah sebagai berikut:
bilangan yang dihasilkan oleh randint akan selalu berbeda pada saat program
dijalankan.
Pi is roughly 3.14159265359
sin(0) = 0.0
selain fungsi matematika biasa terdapat juga fungsi matematika yang sudah
terpasang atau built-in tanpa harus memanggil modul math terlebih dahulu seperti
fungsi abs (absolute value) dan round. Berikut contoh dari fungsi tersebut:
print(abs(-4.3))
print(round(3.336, 2))
print(round(345.2, -1))
4.3
3.37
350.0
fungsi round memiliki dua argument, pertama adalah untuk bilangan bulat yang
perlu dibulatkan dan kedua adalah untuk pembulatan bilangan di belakang koma.
Untuk mengetahui semua fungsi matematika yang terkandung pada modul
math kita bias menggunakan fitur bantuan atau help pada Python. Caranya adalah
dengan mebuka Python shell dan ketik perintah berikut ini:
tertera daftar semua fungsi dan variable pada modul math. Kita dapat
menghiraukan semua fungsi yang dimulai dengan karakter underscore. Untuk
mendapatkan bantuan spesifik terhadap salah satu fungsi, missalkan fungsi floor, kita
bias mengetik help(math.floor). Dengan mengetik help(math) akan memberikan
bantuan informasi pada modul math.
>>> 23**2
529
>>> s = 0
>>> for n in range(1,10001):
s = s + 1/n**2
>>> s
1.6448340718480652
>>> from math import *
>>> factorial(10)
3628800
MODUL 5
KONDISIONAL
Sering kali pada sebuah program kita ingin membuat sebuah keputusan dengan
sebuah kondisi tertentu yang bernilai benar atau salah (true or false). Dalam kondisi
ini kita dapat menggunakan statement if pada pemrograman Python.
5.1 Contoh
Mari kita coba dengan menulis sebuah program dengan kasus seperti ini:
Sebuah computer mengambil suatu bilangan acak yang akan ditebak nilai bilangan
tersebut oleh seorang user. Computer akan memberitahu jika tebakan user tersebut
tepat sesuai dengan bilangan acak yang dikeluarkan oleh computer.
num = randint(1,10)
guess = eval(input('Enter your guess: '))
if guess==num:
print('You got it!')
Cara penulisan statement if sama seperti statement for. Pada program di atas
akan dieksekusi jika kondisi yang diminta bernilai benar (true). Dan jika kondisi bernilai
salah (false) maka program tidak akan menampilkan apa-apa. Kita bias saja
menambahkan sebuah statement tambahan untuk kondisi yang bernilai false seperti
berikut ini:
if guess==num:
print('You got it!')
else:
print('Sorry. The number is ', num)
Ekspresi Keterangan
If x>3 Jika x lebih dari 3
If x>=3 Jika x lebih dari sama dengan 3
If x==3 Jika x sama dengan 3
If x!=3 Jika x tidak sama dengan 3
Selain operator diatas terdapat juga beberapa operator yang diggunakan untuk
membuat kondisi yang lebih kompleks yaitu: and, or, dan not. Perhatikan contoh
program berikut ini:
if score>1000 or time>20:
print('Game over.')
Urutan pemrosesan operator adalah and akan diproses dahulu baru lanjut pada
operator or. Jadi ketika kita menggunakan kedua operator tersebut dalam sebuah
kondisi maka harus dibuat pengelompokan terhadap variable yang memiliki operator
or seperti pada contoh berikut ini:
Program di atas terlihat baikk dan dapat bekerja sesuai dengan yang kita
inginkan. Namun ada cara yang lebih baik sehingga terlihat bagus dan elegans seperti
pada contoh di bawa ini:
MODUL 6
STRINGS
String adalah sebuah tipe data pada pemrograman Python yang digunakan
untuk menulis teks. Pada pemrograman Python terdapat beberapa fitur yang dapat
digunakan untuk mengonal tipe data string.
s = 'Hello'
t = "Hello"
m = """This is a long string that is
spread across two lines."""
Ada juga jenis data string kosong, yaitu karakter kosong diantara tanda petik
‘ ‘ yang ekuivalen dengan angka 0.
Untuk mendapatkan informasi tentang jumlah karakter yang ada di dalam
string kita dapat menggunakan fungsi len. Sebagai contoh, len('Hello') adalah 5.
Sebagai contoh kita ingin membuat garis dengan memanfaatkan tanda strip
atau dash maka cukup dengan mengetik print('-'*75).
Operator (+) sangat berguna untuk menghitung dan merangkai karakter string
pada program yang kita buat. Sebagai contoh sebuah program yang meminta user
untuk mengetik sebuah karakter huruf dan kemudian computer akan menuliskan huruf
yang diketik user jika sesuai dengan karakter yang kita minta.
s=''
for i in range(10):
t = input('Enter a letter: ')
if t=='a' or t=='e' or t=='i' or t=='o' or t=='u':
s=s+t
print(s)
6.3 Operator in
Operator in digunakan untuk mendeteksi sebuah karakter yang terkandung
pada sebuah data string. Perhatikan contoh program berikut ini:
if 'a' in string:
print('Your string contains the letter a.')
if t in 'aeiou':
Karakter pertama adalah s[0] bukan s[1], karena perhitungan komputer selalu
dimulai dari 0 (nol). Jika kita mencoba s[7] namun s hanya terdiri dari enam karakter
maka yang terjadi adalah IndexError.
Potongan string atau slice digunakan untuk mengambil sebagian karakter dari
data string yang telah diinputkan. Sebagai contoh kita memiliki data string
s=’abcdefghij’
Indeks :0123456789
Karakter :abcdefgh i j
for i in range(len(s)):
print (s[i])
Pada statement range kita memiliki len(s) yang menghitung jumlah karakter
pada s. Jika data string s memiliki 7 karakter, maka dapat kita jelaskan bahwa
statement range memiliki nilai 7 atau range(7). Oleh karna itu proses pengulangan
akan dulakukan dari 0 s/d 6. Ini berarti s[i] akan dijalankan berdasarkan jumlah
karakter dari s. Cara ini berguna saat kita ingin mendeteksi lokasi sebuah karakter
pada data string. Namun jika kita tidak memerlukan untuk mendeteksi lokasi karakter
bisa digunakan cara singkat dibwah ini:
for c in s:
print(c)
Baris program ini dapat diartikan sebagai “untuk setiap karakter c pada s, print
karakter tersebut.”
Metode Keterangan
lower() Mengubah karakter pada sebuah string menjadi huruf kecil.
upper() Mengubah karakter pada sebuah string menjadi huruf
besar.
replace(x,y) Mengganti karakter x menjadi y pada sebuah string.
count(x) Menghitung jumlah karakter dalam string.
index(x) Menunjukan indeks pertama dari sebuah karakter.
isalpha() Menunnjukan True / False jika setiap karakter pada sebuah
string adalah karakter huruf.
Catatan penting tentang penggunaan lower, upper dan replace adalah kode ini
tidak mengubah data string asli. Jika kita ingin mengubah data string yang sudah ada
sebelumnya, maka kita harus melakukan deklarasi data string dengan input lower,
upper atau replace. Contoh:
s = s.upper()
Maka karakter pada string s akan menjadi huruf besar seluruhnya. Perhatikan
tabel berikut ini:
Statemen Keterangan
print(s.count(' ')) Menampilkan jumlah spasi pada string.
s = s.upper() Mengubah karakter pada string s menjadi
huruf besar.
s = s.replace('Hai','Halo') Mengganti karakter ‘Hai’ menjadi ‘Halo’.
print(s.index('a')) Menampilkan indeks lokasi pertama karakter
‘a’.
6.7 Backslash
Backslash atau “\” digunakan untuk membuat variasi data string. Diantaranya
tertera beikut ini:
• \n
Disebut sebagai newline character. Digunakan untuk membuat baris
baru pada data string. Contoh:
print('Hi\n\nthere!')
Hi
There!
• \’
Untuk menyisipkan karakter tanda petik pada string.
• \”
Fungsinya sama seperti \’
• \\
Untuk merujuk pada direktori komputer.
filename = 'c:\\programs\\file.py'
• \t
Untuk membuat katakter tab.
MODUL 7
DAFTAR
Kita ingin membuat 30 tes untuk mahasiswa dalam sebuah kelas. Dan
menggunakan hasil tes sebagai input untuk variabel nilai.