1 ALGORITMA PEMROGRAMAN 2 B PYTHON TIPE DATA
1 ALGORITMA PEMROGRAMAN 2 B (PYTHON) TIPE DATA
NILAI DAN TIPE DATA 2 • Sebuah nilai adalah hal yang paling mendasar seperti sebuah huruf atau sebuah angka yang akan di manipulasi oleh program. • Nilai 2 (hasil ini didapat, ketika menambahkan 1 + 1), dan "Hello Python!".
NILAI DAN TIPE DATA 3 • Nilai tersebut berbeda tipe data, yakni : 2 adalah integer • Karema terdiri dari sebuah bilangan numeric bulat "Hello Python!" adalah string • Karena terdiri dari sebuah kata yang terdiri dari beberapa huruf-huruf.
NILAI DAN TIPE DATA 4 • Diindetifikasikan string karena kata-kata tersebut di dalam anda kutip dua(“) atau satu (‘). >>> print (“Saya belajar Python”) >>> print (‘Saya belajar Python’) >>> print “Saya belajar Python” >>> print ‘Saya belajar Python’ Bagaimana hasil output dari nilai di atas? SAMA atau TIDAK? BUKTIKAN
NILAI DAN TIPE DATA 5 • Perintah print juga dapat menampilkan integer : >>> print 4 >>> print (4) >>> print (‘ 4’) >>> print 2+2 Bagaimana hasil output dari nilai di atas? SAMA atau TIDAK? BUKTIKAN
NILAI DAN TIPE DATA LANJ. 6 • Interpreter dapat memberikan informasi tipe data dari nilai yang dituliskan dengan menggunakan fungsi type() Contoh : >>> type ("Hello Python!") <'type string'> >>> type (2) ? ? ? >>> type 4 ? ? ? >>> type ‘ 4’ ? ? ? >>> type 2+2 ? ? ?
NILAI DAN TIPE DATA LANJ. >>> type (‘ 4’) ? ? ? >>> type (2+2) ? ? ? • Angka desimal dengan tanda (. ) dibelakang angka dikenal dengan bilangan pecahan atau float karena angka tersebut merepresentasikan suatu bentuk dengan nama floating point. 7
NILAI DAN TIPE DATA LANJ. • Contoh : >>> type (7. 5) ? ? ? >>> type 6. 0 ? ? ? >>> type 3. 0+4. 1 ? ? ? >>> type (7. 1 + 2. 1) ? ? ? >>> type (4. 9 + 3) ? ? ? Bagaimana hasil output dari nilai di atas? SAMA atau TIDAK? BUKTIKAN 8
NILAI DAN TIPE DATA LANJ. 9 • Contoh dibawah ini adalah tipe string karena berada didalam tanda kutip (”). >>> type ("7. 5") <'type string'> >>> type (“ 5”) ? ? ? >>> a = “Belajar Python” >>> type a ? ? ? >>> type (a) ? ? ?
NILAI DAN TIPE DATA LANJ. 10 • >>> phi = 3. 14 • >>> type phi ? ? • >>> c = “Saya “ • >>> d = “Belajar “ • >>> e = “Python “ • >>> type ? ? ? [How command? ] to write this
NILAI DAN TIPE DATA LANJ. 11 • Bagaimana dengan type integer ditambah dengan type float ? Bisa ? • Explain with Example !
TIPE DATA 12 • Number Tipe data Number merepresentasikan nilai berupa angka. • Python menggolongkan tipe data umum ke dalam tipe data Number, seperti : 1. Integer (Bilangan bulat) 2. Floating-point (bilangan desimal)
TIPE DATA • Contoh : >>> 12 + 788 >>> 6 * 20 >>> 5 – 4 >>> 4 -8 >>> -6 + 6 >>> -3 – 4 >>> print (4. 45 + 4. 56) 13
TIPE DATA LANJ. 14 • Bagaimana dengan pangkat ? ? >>> 4**2 >>> 2**6**3 >>> 5. 125 * 3 15. 375 • Untuk perhitungan aritmatika yang menghasilkan nilai decimal antara 0. 0 – 0. 9 maka akan dilakukan pembulatan ke bawah >>> 9/2 ? ? ? >>> 4. 5 / 5 ? ? ? >>> 26. 78 / 14. 14 ? ? ?
TIPE DATA LANJ. 15 • Operator penugasan ( = ) digunakan. untuk memasukkan nilai kedalam variabel • Tidak ada hasil yang akan muncul sampai statemen selanjutnya. Example : >>> a = 8 >>> b = 3. 5 >>> [Bagaimana hasil kali nya ? ]
TIPE DATA LANJ. 16 • Example : >>> h = 102. 34 >>> I = 23. 99 >>> j = 1356. 12 >>> [ Bagaimana untuk melakukan operasi pertambahan h dan I, kemudian dikalikan dengan j ? ]
TIPE DATA LANJ. 17 • Nilai dapat dimasukkan ke dalam beberapa variabel secara simultan : >>> x = y = 30 >>> x ? ? >>> y ? ? >>> z = [pertambahan dari x dan y] >>> z ? ? Type ? ?
TIPE DATA LANJ. 18 • Bagaiamana dengan Type data Boolean pada Python ? ? • What is Boolean Data Type?
TIPE DATA LANJ. • Buktikan : 5 tidak lebih besar dari 7 7 lebih besar dari 6 5 sama dengan 5 • How to write that commands? 19
STRING 20 • Python juga mampu melakukan manipulasi string, yang dapat diekspresikan dengan beberapa cara. • Penulisan nilai string menggunakan : • tanda petik satu ( ‘ ) atau • tanda petik dua ( “ ) pada python
STRING 21 • Examples : >>> “Saya Belajar Python” >>> ‘Belajar Python’ >>> “Belajar Python’ Bagaimana Output dari Commands di atas?
STRING LANJ. 22 • String literal juga dapat menggabungkan beberapa baris dalam berbagai cara. • Dengan menggunakan operator ( n ) di akhir kalimat untuk menyambung kalimat selanjutnya yang berada di baris selanjutnya.
STRING LANJ. 23 • Contoh : >>> text = “ini contoh string n. . . Penggunaan multiple line n. . . pada Python” >>> print text >>> print (text) • Bagaimana output di atas SAMA atau TIDAK ? • Hasil Outputnya adalah ?
STRING LANJ. 24 • Bagaimana Commands Python untuk mendapatkan hasil output seperti di bawah ini : Saya adalah Mahasiswa Gunadarma Saya kelas [isi dengan kelas Anda] Saya lahir di [isi sesuai kelahiran Anda] [ISI NPM Anda] adalah NPM saya Saya sangat senang belajar Python is High Level Programming Language
STRING LANJ. 25 • Penulisan string untuk multiple line juga dapat dilakukan dengan menggunakan tanda petik dua atau satu sebanyak 3 kali, ( “ “ “ atau ' ' ' ).
STRING LANJ. • Example : >>> print (“”” saya adalah Python saya adalah OOP Language ini adalah contoh penggunaan triple quotes “””) Hasilnya ? ? ? 26
STRING LANJ. 27 • Bagaimana jika menggunakan Commands dan tanda petik satu untuk menampilkan output seperti di bawah ini : My name is Python I’m an Object Oriented Programming Language This is an Example in Using Triple Quotes Commands Python nya adalah ? ?
OPERASI PADA STRING 28 • Pada umumnya, string tidak dapat melakukan operasi matematika, walaupun string tersebut berupa angka. Berikut ini contoh yang salah. "Belajar Python!" + 5 nama * 5 "5" + 2 • Tetapi operator tambah (+) dapat berlaku sesama string, walaupun tidak seperti yang dilakukan pada operasi matematika. • (+) digunakan untuk penggabungan antara dua atau lebih string.
OPERASI PADA STRING • Examples : >>> hadir = “ Finalis sebanyak 1 “ >>> banyak = “ 2” >>> print ? ? ? Outputnya adalah : hadir Finalis sebanyak 12 29
OPERASI PADA STRING LANJ. >>> 'universitas' + 'gunadarma' Outputnya ? ? >>> “guna” + “darma” Outputnya ? ? ? >>> ‘Univ’ + “ersitas” Outputnya ? ? ? 30
OPERASI PADA STRING LANJ. 31 • Penggabungan antara string dengan string yang lainnya dapat digabungkan tanpa tanda pemisah, seperti spasi atau [tab]. Examples : >>>"Belajar" "python" Output ? ? ? >>>”Python itu” “Asik” Output ? ? ?
OPERASI PADA STRING LANJ. 32 • Operator perkalian (*) juga berlaku dalam operasi string. • Operator perkalian ini di analogikan dengan penggandaan string. • Contoh : >>> ? ? ? ‘Python’ >>> ? ? ? ‘Cumlaude’
OPERASI PADA STRING LANJ. 33 • Tanda koma (, ) dalam operasi string sebagai tanda pemisah (spasi) di antara string. • Examples : >>> ? ? ? [Commands] Python 1 2 3 >>> ? ? ? [Commands] Cantik 1 2 3
OPERASI PADA STRING LANJ. • String dalam pemograman bahasa dianggap sebagai array of character. 34 C • Karakter pertama pada sebuah string berindex 0, karakter ke-dua berindex 1 dan seterusnya. hal ini juga berlaku di pemograman bahasa Python.
OPERASI PADA STRING LANJ. • Examples : >>> word = “Universitas” >>> word [0] Outputnya ? ? >>> word [0: 4] Outputnya ? >>> ? ? ? [Commands] ‘versi’ 35
OPERASI PADA STRING LANJ. >>> word[: 7] Outputnya ? ? >>> ? ? ? [Commands] ‘sitas’ >>> kata = “Gunadarma” >>> ? ? ? ‘Gunad’ >>> ? ? ? [Commands] ‘darma’ >>> ? ? ? [Commands] ‘ada’ 36
OPERASI PADA STRING LANJ. 37 • Tidak seperti List, elemen anggota karakter dalam string tidak dapat digantikan, >>> word [2] = 'p' Traceback (most recent call last): File "<stdin>", line 1, in ? Type. Error: object doesn't support item assignment
OPERASI PADA STRING LANJ. 38 • Akan tetapi untuk melakukan penambahan karakter string dapat dilakukan di dalam Python, dengan menggunakan opertaor tambah ( + ). Contoh : >>> ‘per’ + word [6: ] ‘persitas’
LIST 39 • List sering disebut juga array pada bahasa pemrograman lain. • List adalah jenis data campuran yang bisa memiliki komponen penyusun yang berbeda. • Sebuah list dapat dibuat dengan menggunakan tanda kurung siku [ ]. • Anggota list didaftar dalam kurung siku tersebut dan masing-masing dipisahkan oleh tanda koma.
LIST 40 Sifat-sifat list bisa didaftar seperti ini: • Komponen penyusunnya bisa diganti. • Komponen penyusunya dapat dibaca dan dimanipulasi secara langsung. • Komponen penyusunnya bisa ditambah. • Komponen penyusunnya dapat diambil dengan menunjukkan indeksnya atau dengan notasi slice. • Komponen penyusun sebuah list dapat juga berupa list yang lain.
LIST LANJ. • Example : >>> a = [‘Universitas’, ‘Gunadarma’, ‘ 2014’, ‘TI’] >>> a Outputnya adalah ? ? >>> Command? ‘TI’ >>> Command? [‘Gunadarma’, 2014] 41
LIST LANJ. • Example : >>> Commands? [‘Universitas’, ’Gunadarma’, 2014, ‘ATA’, ‘Depok’] >>> Commands? 4 42
LIST LANJ. • Python dapat meneglompokkan beberapa tipe data yang berbeda menjadi satu kelompok yang kemudian dikenal sebagai list pemisah tanda koma”, ”. • >>> a = [“Satu”, 2, 3. 1, “Empat”] • >>> print a • Outputnya adalah ? 43
LIST LANJ. • List bisa dianalogikan sebagai array dan urutan pengaksesannya dimulai dari 0. • >>> a[0] • ? ? ? • >>> a[2] • ? ? ? • >>> a[1: -1] • ? ? ? 44
LIST LANJ. 45 • List juga dapat dipisah - pisahkan dapat digabungkan, ditambahkan dan lainnya. • >>> a = [333, 1234. 5, 1] >>> a[0: 2] [333, 1234. 5] >>> a[-3 : 3] Outputnya?
LIST LANJ. 46 • >>> commands? • 333 • >>> Commands? • 333, 1234. 5, 1, 125, ‘satu’ • Tanda titik dua ": " mempunyai argumen [<indeks>: <indeks-n>], berarti dimulai dari indeks sampai indeks ke -n (batas indeksn, tidak ditampilkan).
LIST LANJ. 47 • Penambahannya hanya dapat dilakukan antar lists. Begitupun operasi penggandaan suatu lists, sebagian anggota list ataupun salah satu anggota list. Example : >>>3*a[: 3] [333, 1234. 5, 1, 333, 1234. 5, 1]
LIST LANJ. 48 • Untuk melakukan perubahan terhadap satu anggota atau sebagian anggota list , kita hanya mengassignkan nilainya, Misalnya : >>> a[2] = a[0] + 1 >>> a [333, 1234. 5, 334, 333, -1, 66. 6] >>> a[3] = a[3] + 1 >>> a Outputnya?
LIST LANJ. 49 • Untuk menggantikan sebagian anggota list secara berurutan juga diperbolehkan. • Misalnya : >>> a[0: 2] = [ 1, ‘dua’] >>> a [1, ‘dua’, 334, 667, -1, 66. 6]
LIST LANJ. • Menghilangkan anggota. >>> a[0: 2] = [] >>> a [334, 667, -1, 66. 6] beberapa elemen 50
FUNCTION LIST • append(x) Add an item to the end of the list; equivalent to a[len(a): ] = [x] • extend(L) Extend the list by appending all the items in the given list; equivalent to a[len(a): ] = L 51
FUNCTION LIST 52 • insert(i, x) Insert an item at a given position. The first argument is the index of the element before which to insert, so a. insert(0, x) inserts at the front of the list, and a. insert(len(a), x) is equivalent to a. append(x). • remove(x) Remove the first item from the list whose value is x. It is an error if there is no such item.
FUNCTION LIST • pop([i ]) Remove the item at the given position in the list, and return it. If no index is specified, a. pop() returns the last item in the list. The item is also removed from the list. (The square brackets around the i in the method signature denote that the parameter is optional, not that you should type square brackets at that position. You will see this notation frequently in the Python Library Reference. ) 53
LIST LANJ. 54 • index(x) Return the index in the list of the first item whose value is x. It is an error if there is no such item. • count(x) Return the number of times x appears in the list. • sort() Sort the items of the list, in place. • reverse() Reverse the elements of the list, in place.
LIST LANJ. Contoh : >>> a = [66. 6, 333, 1, 1234. 5] >>> print (a. count(333), a. count(66. 6), a. count(’x’)) 210 >>> a. insert(2, -1) >>> a. append(333) >>> a [66. 6, 333, -1, 333, 1, 1234. 5, 333] >>> a. index(66. 6) 0 55
LIST LANJ. >>> a. remove(333) >>> a [66. 6, -1, 333, 1, 1234. 5, 333] >>> a. reverse() >>> a [333, 1234. 5, 1, 333, -1, 66. 6] >>> a. sort() >>> a [-1, 1, 66. 6, 333, 1234. 5] 56
57 LATIHAN • Buatlah program kalender bulan, dengan tampilan sebagai berikut : Bulan apa [1 -12]? 2 Bulan yang Anda pilih ? Februari Petunjuk : Menggunakan List sebagai daftar nama bulan.
JAWABAN Bulan = ['Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni', 'Juli', 'Agustus', 'September', 'Oktober', 'Nopember', 'Desember'] Pilih = int(input("Bulan apa [1 -12]? ")) if 1 <= Pilih <= 12: print ("Bulan yang Anda pilih ? ", Bulan[Pilih -1 ]) 58
DICTIONARY • Jika list memakai indeks angka untuk merujuk pada isi variabel, dictionary memakai key untuk merujuk pada isi variabelnya. • Untuk mendeklarasikan sebuah dictionary, Python memakai tanda { }. • Contoh >>> D = { ‘drink' : ‘juice', 'quality' : 1, 'cafe' : ‘yks'} >>> D {'cafe' : ‘yks‘, ‘drink' : ‘juice', 'quality' : 1} >>> D['cafe’] ‘yks' 59
60 >>> status = {} DICTIONARY LANJ. >>> status['nama']='python' >>> status['desc']='programming language' >>> status['age']=6 >>> status {'nama': 'python', 'age': 6, 'desc': 'programming language'}
OPERATOR DAN OPERAND • Operator adalah simbol-simbol khusus yang merepresentasikan komputasi seperti penambahan dan perkalian. Nilai yang digunakan oleh operator, kemudian disebut sebagai operand. • Berikut adalah ekspresi - ekspresi yang benar dalam Python. 20+3 hour-1 hour*60+minute/60 5**2 (5+9)*(15 -7) 61
62 OPERATOR DAN OPERAND LANJ. • Pada saat variabel ditempatkan sebagai operand, maka variabel tersebut digantikan dengan nilai dari variabel sebelum perintah tersebut dijalankan. Operasi berikut menghasilkan hasil yang tidak diinginkan. • Contoh : >>> minute = 66 >>> minute / 60 1
OPERATOR LOGIKA • Terdapat 3 operator logika, yaitu and, or, dan not. Arti ketiga operator logika tersebut sama halnya dengan arti yang sebenarnya dalam bahasa inggris, • Misalnya x > 8 and x < 20 adalah benar jika keduakondisi tersebut terpenuhi keduanya dalam arti jika x lebih besar dari 8 dan lebih kecil dari 20. • Contoh : x = 8 ; y = 20 >>> x % 2 == 0 and y / 2 == 10 >>> True >>> x < y or x >y >>> True 63
OPERATOR LOGIKA • Operator not me-negasikan sebuah ekspresi boolean, jadi not (x > y) mempunyai nilai true, jika if (x > y) mempunyai nilai false. • Operan - operan dalam operator logika harus dalam bentuk ekspresi boolean, tetapi Python tidak terlalu menegaskan hal tersebut. Semua angka yang bukan merupakan bilangan nol (0) di interpretasikan sebagai kondisi true (benar) atau mempunyai nilai 1(satu). Misalnya : >>> x = 5 >>> x and 1 1 >>> y = 0 >>> y and 1 0 64
OPERATOR MODULUS • Operator modulus bekerja pada bilangan integer (dan ekspresi integer) yang berarti bahwa menghasilkan nilai sisa hasil operan pertama dibagi dengan operan kedua. Di Python, operator modulus diwakili simbol persentase (%). • Contoh : >>> sisa = 6 % 3 >>> print (sisa) 0 >>> sisa 1 = 7 % 2 >>> print (sisa 1) 1 65
ATURAN PADA OPERASI • Jika terdapat lebih dari satu operator dalam sebuah ekspresi, maka aturan pada operasi tergantung dari aturan presedansi. Python mengikuti aturan presedansi dari presedansi matematika pada umumnya : 1. Operasi yang berada di dalam kurung memiliki nilai presedensi yang tinggi, dan operasi yang di dalam kurung tersebut di proses terlebih dahulu. Misalnya 4 * (5+4) maka hasilnya sama dengan 36, ditambahkan terlebih dahulu 5 dan 4, kemudian baru dikalikan dengan 4. 2. Kemudian nilai presedensi yang tinggi setelah dalam kurung, adalah tanda pangkat, misalnya 3**2 + 8 adalah 17 bukan 13. dan 3 *1**4 hasilnya sama dengan 3 bukan 12. 66
ATURAN PADA OPERASI LANJ. 3. Pembagian dan perkalian memiliki nilai presedansi yang sama, didahulukan terlebih dahulu dibandingkan dengan penambahan dan pengurangan, misalnya 1 + 3 * 2 hasilnya adalah 7 bukan 8. Penambahan dan pengurangan juga memiliki nilai presedensi yang sama. 4. Apabila terdapat satu atau lebih operator yang memiliki presedensi yang sama, maka yang diproses terlebih dahulu adalah bagian sebelah kiri sampai ke kanan, dalam kata lain di evaluasi dari kiri ke kanan, misalnya 4 + 5 - 2 hasilnya adalah 7, 4 *3 / 2 hasilnya adalah 6. 67
OPERATOR ARITMATIKA Operator Deskripsi Contoh Hasil * Perkalian 1*3 3 / Pembagian 6/2 3 % Modulus 7%3 1 + Penjumlahan 3+4 7 - Pengurangan 4– 3 1 68
OPERATOR PERBANDINGAN Operato Deskripsi r >= Lebih besar atau sama dengan <= Kurang dari atau sama dengan != Tidak sama dengan Contoh Hasil 1 >= 7 False 1 <= 7 True 1 != 7 True < Lebih kecil 1<7 True > Lebih besar 1>7 False == Sama dengan 1 == 1 True 69
OPERATOR PENUGASAN Operator Contoh Sama dengan *= X *= 100 X = x * 100 /= X /= 100 X = x / 100 %= X %= 100 X = x % 100 += X += 100 X = x + 100 -= X -= 100 X = x - 100 70
71 SUMBER • Bob Dowling. An Introduction to Python for absolute beginners. University Computing Service. • Guido van Russom, Fred L. Drake, Jr. , Python Tutorial Release 2. 3. 3. • Dini Triasati – AP 2 B , Gunadarma University
- Slides: 71