Anda di halaman 1dari 60

MODUL MATA KULIAH PRAKTIKUM

PENGANTAR TEKNIK TELEKOMUNIKASI 3

Modul 3: Iterasi dan Rekursi

Dosen Pengampu:

Rahmat Widadi, S.Pd., M.Eng.

PROGRAM STUDI S1 TEKNIK TELEKOMUNIKASI


FAKULTAS TEKNIK TELEKOMUNIKASI DAN ELEKTRO
INSTITUT TEKNOLOGI TELKOM PURWOKERTO
2021
ITERASI DAN REKURSI

I. TUJUAN
1. Memahami teori tentang iterasi dan rekursi pada bahasa pemrograman python.
2. Mengetahui penggunaan iterasi dan rekursi pada bahasa pemrograman python.
3. Membuat iterasi dan rekursi sederhana menggunakan bahasa pemrograman python.
4. Menggunakan iterasi dan/atau rekursi untuk menyelesaikan suatu masalah.

II. DASAR TEORI


2.1. Iterasi
Iterasi atau perulangan terjadi saat sebuah prosedur yang sama pada program
komputer diulangi berkali-kali. Pada bahasa pemrograman python terdapat dua perintah
loop dasar yaitu while loop dan for loop. Dengan menggunakan while loop, sekumpulan
prosedur/pernyataan akan dieksekusi selama kondisinya benar. Gambar 1 adalah diagram
alir dari while loop dasar. Apabila test expression bernilai benar maka body of while akan
dijalankan, sedangkan jika bernilai salah maka keluar dari while loop. Gambar 2
merupakan contoh peggunaan while loop disertai hasilnya. While loop membutuhkan
variabel yang relevan untuk siap, dalam contoh ini kita perlu mendefinisikan variabel
indeks, i, yang kita atur sama dengan 1.

Gambar 1. Diagram Alir While Loop


Gambar 2. Contoh While Loop
Pada while loop terdapat pernyataan break yang berfungsi menghentikan loop bahkan
jika kondisi while benar. Penerapan pernyataan break dapat dilihat pada Gambar 3.
Perulangan akan beerhenti ketika i adalah 3.

Gambar 3. Contoh While Loop dengan Break

Sedangkan pernyataan continue berfungsi menghentikan iterasi saat ini dan melanjutkan
iterasi yang berikutnya. Gambar 4 mencontohkan penggunaan pernyataan continue yang
akan melanjutkan ke iterasi berikutnya jika i adalah 3.

Gambar 4. Contoh While Loop dengan Continue


Selanjutnya adalah penggunaan pernyataan else pada while loop. Dengan perintah ini kita
dapat menjalankan satu blok kode satu kali ketika kondisinya tidak lagi benar. Gambar 5
adalah penggunaan pernyataan else pada while loop yang akan mencetak pesan setelah
kondisinya salah:

Gambar 5. Contoh While Loop dengan Else

Gambar 6. Diagram Alir For Loop

Jenis iterasi yang kedua adalah for loop. Iterasi (perulangan) for digunakan untuk
mengulangi deret (list, tupel, dictionary, atau string). Dengan for loop kita dapat
mengeksekusi satu set pernyataan item dalam list, tuple, string dll. For loop dasar
ditunjukan pada diagram alir Gambar 6. For loop ditentukan oleh sebuah item, apabila
belum mencapai batas item maka jalankan program pada body of for. Apabila batas item
sudah terpenuhi maka keluar dari for loop. Gambar 7 merupakan contoh for loop untuk
mencetak setiap nama buah dalam list:

Gambar 7. Contoh For Loop untuk Mencetak Nama Buah pada List

For loop dapat pula tidak memerlukan variabel indeks yang diatur sebelumnya.
Bahkan string adalah objek yang dapat diubah dikarenakan string berisi deret karakter.
Contoh for loop untuk mencetak huruf-huruf dalam kata "apel" ditunjukan pada Gambar
8.

Gambar 8. Contoh For Loop untuk Mencetak Huruf-Huruf pada String

Dengan pernyataan break kita dapat menghentikan loop sebelum melewati batas item.
Gambar 9 merupakan contoh penggunaan break untuk keluar dari loop ketika x adalah
"pisang":

Gambar 9. Penggunaan Break pada For Loop

Pernyatan selanjutnya pada for loop adalah continue. Pernyataan ini digunakan untuk
menghentikan iterasi loop saat ini, dan melanjutkan dengan yang berikutnya. Contoh
penggunaan continue ditunjukan pada Gambar 10 menjadikan string pisang tidak
tercetak.

Gambar 10. Penggunaan Continue pada For Loop

Pada for loop terdapat pula fungsi range () yang digunakan untuk mengulang baris
program beberapa kali. Fungsi range() mengembalikan urutan angka, mulai dari 0 secara
default, dan bertambah 1 (secara default), dan berakhir pada angka yang ditentukan.
Contoh penggunakan fungsi range() ditampilkan pada Gambar 11.

Gambar 11. Penggunaan Fungsi Range () pada For Loop

Perhatikan bahwa range(5) bukanlah nilai 0 hingga 5, tetapi nilai 0 hingga 4. Fungsi
range() default ke 0 sebagai nilai awal, namun dimungkinkan untuk menentukan nilai
awal dengan menambahkan parameter: range(2, 5), yang berarti nilai dari 2 hingga 5
(tetapi tidak termasuk 5). Contoh penggunakan parameter ini dapat dilihat pada Gambar
12.

Gambar 11. Pengaturan Fungsi Range () pada For Loop


Fungsi range() secara dasar akan mengalami kenaikan sebesar 1, namun dimungkinkan
untuk menentukan nilai kenaikan dengan menambahkan parameter ketiga: range(2, 30,
3). Gambar 12 merupakan contoh fungsi range () dengan peningkatan sebesar 3.

Gambar 12. Fungsi Range () dengan Peningkatan Sebesar 3 Pada For Loop

Pada for loop juga terdapat perintah Else yang digunakan untuk menentukan blok kode
yang akan dieksekusi ketika loop selesai. Contoh penggunaan perintah else ditunjukan
pada Gambar 13. Perogram akan mencetak semua angka dari 0 hingga 5 kemudian cetak
pesan saat loop telah berakhir.

Gambar 13. Penggunaan Else pada For Loop

Selanjutnya adalah Nested loop. Istilah nested digunakan karena terdapat loop yang
“bersarang” pada loop atau adanya loop di dalam loop. "Inner Loop" akan dieksekusi satu
kali untuk setiap iterasi dari "outer loop". Contoh nested loop digunakan cetak setiap
buah untuk setiap sifatnya seperti Gambar 14.
Gambar 14. Nested Loop pada For Loop

2.2. Rekursi
Rekursi adalah teknik pemecahan masalah dengan cara sebuah masalah dipecah
menjadi versi identik yang paling kecil dirinya sendiri sehingga memiliki solusi yang
jelas. Gambar 15 merupakan ilustrasi dari rekursi. Versi identik yang paling kecil pada
rekursi dinamakan Base case. Base case adalah kasus khusus yang penyelesaiannya
diketahui.

Gambar 15. Ilustrasi Rekursi

Berikut adalah contoh sederhana dari rekursi yaitu penjumlahan list angka [2, 3, 6, 7, 9].
Pada bidang matematika, penjumlahan adalah fungsi yang didefinisikan untuk dua
parameter, sepasang angka. Sehingga list tersebut dapat diselesaikan dengan ekspresi
tanda kurung penuh:

((((2 + 3) + 6) + 7) + 9)

Tanda kurung tersebut dapat pula diubah menjadi,

(2 + (3 + (6 + (7 + 9))))
Perhatikan bahwa himpunan kurung terdalam, (7 + 9) dapat diselesaikan secara langsung.
Urutan penyederhanaan berikut dapat digunakan untuk menghitung jumlah keseluruhan:

Total = (2 + (3 + (6 + 16)))
Total = (2 + (3 + 22))
Total = (2 + 25)
Total = 27

Proses perhitungan tersebut selanjutnya diubah menjadi baris program seperti Gambar 16.
Terdapat dua hal utama pada program tersebut untuk memahami rekursi. Pertama,
program pada baris 2 digunakan untuk untuk melihat apakah list panjangnya satu elemen.
Pemeriksaan ini sangat penting dan merupakan baris program yang digunakan untuk
keluar dari fungsi tersebut. Kedua, pada baris 5 fungsi memanggil dirinya sendiri. Hal
inilah yang menjadikan fungsi tersebut merupakan algoritma list_sum rekursif. Fungsi
rekursif adalah fungsi yang memanggil dirinya sendiri.

Gambar 16. Perhitungan List Angka Menggunakan Rekursi

Gambar 17 menunjukkan rangkaian pemanggilan rekursi yang diperlukan untuk


menjumlahkan list [2, 3, 6, 7, 9]. Rangkaian pemanggilan fungsi ini merupakan rangkaian
penyederhanaan. Setiap kali pemanggilan rekursi, masalah yang lebih kecil dipecahkan,
sampai mencapai titik di mana masalahnya tidak bisa lebih kecil lagi. Ketika mencapai
titik dengan masalah yang sesederhana mungkin, dimulai pengumpulan solusi dari setiap
masalah kecil sampai masalah awal terpecahkan.
Sum(2, 3, 6, 7, 9) 2+

Sum(3, 6, 7, 9) 3+

Sum(6, 7, 9) 6+

Sum(7, 9) 7+

Sum(9) 9

Gambar 17. Rangkaian Pemanggilan Rekursif pada Contoh Program

III. PERCOBAAN
Pada percobaan ini anda akan diberikan beberapa program yang harus anda ketik kembali.
Anda diharuskan memodifikasi program berdasarkan perintah pada soal.

Langkah-langkah percobaan

a. Setiap soal latihan terdiri dari listing program dan output dari program tersebut.
b. Ketik kembali listing program yang terdapat dalam modul ke dalam google collabs.
c. Klik save and run untuk menjalankan program tersebut
d. Jika menemui error pada program anda, perbaiki listing program hingga dihasilkan
output yang sesuai dengan yang diinginkan soal.
e. Jawab pertanyaan berdasarkan program yang sudah anda buat.
Percobaan_1

Gambar 18. Program Python untuk Percobaan_1

Gambar 19. Hasil Running Percobaan_1


Jawab pertanyaan berikut:
1. Sebutkan baris program yang anda perbaiki agar program dapat berjalan dengan benar.
2. Cetak 10 bilangan deret fibonacci.
3. Gunakan rekursi untuk dapat mencetak deret fibonacci seperti pada percobaan 1.

Percobaan_2

Gambar 20. Program Python untuk Percobaan_2

Gambar 21. Hasil Running Percobaan_2


Jawab pertanyaan berikut:
1. Sebutkan baris program yang anda perbaiki agar program dapat berjalan dengan benar.
2. Cetak nilai nilai dari 7! Dan 9!.
3. Gunakan while loop atau for loop untuk dapat mencetak nilai faktorial seperti pada
percobaan 2.

Percobaan_3

Gambar 22. Program Python untuk Percobaan_3

Gambar 23. Masukan dan Hasil Running Percobaan_3


Jawab pertanyaan berikut:
1. Sebutkan baris program yang anda perbaiki agar program dapat berjalan dengan benar.
2. Apakah hasil cetak dari input list A = [2, 4, 3, 5, 7, 9].
MODUL MATA KULIAH PRAKTIKUM

PENGANTAR TEKNIK TELEKOMUNIKASI


3

Modul 4: Searching

Dosen Pengampu:

Rahmat Widadi, S.Pd., M.Eng.

PROGRAM STUDI S1 TEKNIK BIOMEDIS


FAKULTAS TEKNIK TELEKOMUNIKASI DAN ELEKTRO
INSTITUT TEKNOLOGI TELKOM PURWOKERTO
2021
SEARCHING

IV. TUJUAN
5. Memahami penggunaan pemrograman python dalam algoritma searching.
6. Mengetahui keunggulan pemrograman python pada algoritma searching.
7. Membuat algoritma searching menggunakan bahasa pemrograman python.
8. Menggunakan algoritma searching untuk menyelesaikan suatu masalah.

V. DASAR TEORI
2.3. Searching Algorithm
2.2.1. Sequential Search
Pada bahasa pemrograman python, item (elemen) dari list memiliki posisi relatif
yang disebut sebagai indeks. Karena nilai indeks ini urut dimulai dari 0, kita dapat
melihatnya secara berurutan. Proses ini memunculkan teknik pencarian yang
sederhana yaitu Sequential Search (pencarian sekuensial). Gambar 1 menunjukkan
cara kerja sequential search. Algortirma pencarian ini dimulai dari item pertama dalam
list kemudian berpindah item berikutnya sampai menemukan item yang dicari.
Sequential search berakhir apabila item pada list telah habis dan artinya item yang
dicari tidak ditemukan. Penerapan sequential search menggunakan bahasa
pemrograman python ditunjukan pada Gambar 2. Sedangkan Gambar 3 adalah
sequential search pada list yang telah urut, pencarian akan berhenti apabila item telah
ditemukan.

Gambar 1. Cara Kerja Sequential Search


SEARCHING

Gambar 2. Penerapan Sequential Search pada Bahasa Pemrograman Python

Gambar 3. Penerapan Sequential Search pada List yang Terurut

2.2.2. Binary Search


Binary search digunakan untuk mencari item pada list yang telah terurut
sebelumnya (ordered list). Algortima ini dimulai dengan memeriksa item yang
lokasinya ditengah list. Jika item tersebut adalah item yang dicari maka proses
pencarian selesai. Apabila salah, maka setengah dari item yang tersisa dihilangkan.
Jika item yang dicari lebih besar dari item tengah, seluruh bagian bawah list dan item
tengah dapat dihilangkan. Penacarian dimulai lagi dari item tengah dan bandingkan
dengan item yang dicari. Apabila item yang dicari belum ditemukan maka list
kembali dibagi 2. Proses ini menghilangkan sebagian besar kemungkinan ruang
pencarian sehingga proses pencarian dapat lebih cepat. Gambar 4 menunjukan proses
binary search. Contoh pencarian untuk item 54. Sedangkan Gambar 5 merupakan
contoh untuk pencarian item 19. Penerapan binary search pada bahasa pemrograman
python ditampilkan pada Gambar 6 dan 7. Gambar 6 merupakan penerapan binary
search menggunakan iterasi sedangkan Gambar 7 menggunakan rekursi.
SEARCHING

Gambar 4. Proses pada Binary Search

Gambar 5. Pencarian Item 19 pada Binary Search

Gambar 6. Penerapan Binary Search Menggunakan Iterasi


SEARCHING

Gambar 7. Penerapan Binary Search Menggunakan Rekursi

VI. PERCOBAAN
Pada percobaan ini anda akan diberikan beberapa program yang harus anda ketik
kembali. Kemudian jawab pertanyaan pada yang terdapat pada setiap percobaan.
Langkah-langkah percobaan:
f. Setiap soal latihan terdiri dari listing program dan output dari program tersebut.
g. Ketik kembali listing program yang terdapat dalam modul ke dalam google
collabs.
h. Klik save and run untuk menjalankan program tersebut
i. Jika menemui error pada program anda, perbaiki listing program hingga
dihasilkan output yang sesuai dengan yang diinginkan soal
j. Jawab pertanyaan berdaasarkan program yang sudah anda buat.

Percobaan_1

Gambar 19. Program Python untuk Percobaan_1

Gambar 20. Contoh Hasil Cetak untuk Percobaan_1


Jawab pertanyaan berikut:

1. Sebutkan jenis algortima yang digunakan pada percobaan_2.


2. Buatlah pseudocode dan flowchat dari program tersebut.
SEARCHING

Jawab pertanyaan berikut:

1. Buatlah pseudocode dan flowchat dari program tersebut.

Percobaan_2

Gambar 21. Program Python untuk Percobaan_2

Gambar 22. Contoh Hasil Cetak untuk Percobaan_2


Jawab pertanyaan berikut:

1. Sebutkan jenis algortima yang digunakan pada percobaan_2.


2. Buatlah pseudocode dan flowchat dari program tersebut.
SEARCHING

MODUL MATA KULIAH PRAKTIKUM

PENGANTAR TEKNIK

TELEKOMUNIKASI 3

Modul 2: Struktur Data

Dosen Pengampu:

Rahmat Widadi, S.Pd., M.Eng.

PROGRAM STUDI S1 TEKNIK TELEKOMUNIKASI


FAKULTAS TEKNIK TELEKOMUNIKASI DAN ELEKTRO
INSTITUT TEKNOLOGI TELKOM PURWOKERTO
2021
SEARCHING

Institut Teknologi Telkom Purwokerto


SEARCHING

STURKTUR DATA

I. TUJUAN
1. Memahami penggunaan pemrograman python dalam struktur data.
2. Mengetahui keunggulan pemrograman python pada pengelolaan struktur data.
3. Membuat struktur data sederhana menggunakan bahasa pemrograman python.
4. Menggunakan struktur data untuk menyelesaikan suatu masalah.

II. DASAR TEORI


2.1. Struktur Data Linier
Struktur data linear adalah kumpulan data yang itemnya diurutkan dan bergantung
pada bagaimana data tersebut ditambahkan atau dihapus dari struktur. Struktur data linier
dapat dianggap memiliki dua ujung: atas dan bawah atau depan dan belakang. Yang
membedakan satu struktur linier dari yang lain adalah cara item ditambahkan dan
dihilangkan, khususnya lokasi tempat penambahan dan penghapusan ini terjadi, misalnya,
menambahkan hanya ke satu ujung, menambah keduanya, dll.

2.2. Stack
Stack (dalam bahasa Indonesia: Tumpukan) adalah struktur data linier dengan
penambahan item baru dan penghapusan item yang ada selalu terjadi di ujung yang sama,
disebut sebagai bagian atas stack. Penambahan dan penghapusan item dilakukan pada
bagian atas stack. Sifat ini biasa disebut Last-in, first-out (LIFO). Item terakhir yang
ditempatkan pada stack akan menjadi item pertama yang dibuang. Gambar 1. Merupakan
contoh analogi dalam keseharian adalah tumpukan piring. Pada tumpukan piring,
penambahan piring dan pengambilan piring selalu dilakukan dibagian atas tumpukan.

Gambar 1. Analogi Stack Dalam Kehidupan Sehari-Hari

Institut Teknologi Telkom Purwokerto


SEARCHING

Gambar 2 adalah proses menambahkan item pada struktur data stack dengan
menambahkan hanya ke atas Stack dan menghapus hanya dari atas Stack. Item terakhir
yang ditempatkan pada stack akan menjadi item pertama yang dihapus.

Gambar 2. Proses Penambahan dan Penghapusan Item pada Stack

Operasi yang dapat dilakukan pada struktur data stack adalah:

1. Stack () : membuat stack baru yang kosong. Operasi ini tidak membutuhkan
parameter dan akan mengembalikan sebuah stack kosong.
2. push (item) : menambahkan item baru ke atas stack. Operasi ini membutuhkan
masukan berupa item dan tidak mengembalikan apa-apa. Selain itu
stack akan berubah dengan bertambahnya sebuah item baru pada
posisi paling atas.
3. pop () : menghapus item teratas dari stack. Operasi ini tidak membutuhkan
parameter dan stack akan berubah dengan berkurangyanya sebuah
item baru pada posisi paling atas.
4. peek () : mengembalikan item teratas dari stack tetapi tidak menghapusnya.
Operasi ini tidak membutuhkan parameter dan stack tidak diubah.
5. is_empty () : menguji untuk melihat apakah stack kosong. Operasi ini tidak
membutuhkan parameter dan stack tidak diubah. Operasi is_empty ()
mengembalikan nilai Boolean. Apabila stack kosong akan
mengembalikan nilai true dan mengembalikan nilai false apabila
stack berisi item.
6. size () : mengembalikan jumlah item yang terdapat pada stack. Operasi ini
tidak membutuhkan parameter dan stack tidak diubah.

2.3. Queue
Queue (dalam bahasa Indonesia: Antrian) adalah struktur data dengan penambahan
item baru terjadi di satu ujung (belakang/akhir queue) dan penghapusan item selalu

terjadi di ujung lain (depan/awal queue). Sifat queue ini disebut First-in, First-Out

Institut Teknologi Telkom Purwokerto


SEARCHING

(FIFO): Item pertama yang dimasukkan ke dalam queue adalah item pertama yang keluar.
Operasi yang dapat dilakukan pada struktur data queue adalah:

1. Queue () : membuat antrian baru yang kosong. Operasi ini tidak membutuhkan
parameter dan akan mengembalikan struktur data queue kosong.
2. enqueue (item) : menambahkan item baru ke belakang queue. Operasi enqueue
() membutuhkan masukan berupa item dan tidak mengembalikan
apa- apa. Selain itu queue akan berubah dengan bertambahnya
sebuah item baru pada posisi paling belakang/akhir.
3. dequeue () : menghapus item depan dari queue. Operasi ini tidak membutuhkan
parameter. Queue akan berubah dengan berkurangnya sebuah item
baru pada posisi paling depan/awal.
4. peek () : mengembalikan item paling awal dari queue tetapi tidak
menghapusnya. Operasi ini tidak membutuhkan parameter dan queue
tidak diubah.
5. is_empty () : menguji untuk melihat apakah queue kosong. Operasi ini tidak
membutuhkan parameter dan queue tidak diubah. Operasi is_empty
() mengembalikan nilai Boolean. Apabila queue kosong akan
mengembalikan nilai true dan mengembalikan nilai false apabila
queue berisi item.
6. size () : mengembalikan jumlah item yang terdapat pada queue. Operasi ini
tidak membutuhkan parameter dan queue tidak diubah.

Gambar 3 menunjukan proses penambahan dan penghapusan item pada queue.

Gambar 3. Proses Penambahan dan Penghapusan Item pada Queue

Institut Teknologi Telkom Purwokerto


SEARCHING

2.4. Double Ended Queue (Deque)


Deque adalah struktur dara linier dengan item ditambahkan dan dihapus dari salah satu
ujung, baik depan atau belakang. Item terbaru tersebut akan berada di salah satu ujung.
Operasi yang dapat dilakukan pada struktur data deque adalah:

1. Deque () : membuat deque baru yang kosong. Operasi ini tidak


membutuhkan parameter dan akan mengembalikan struktur data
queue kosong.
2. add_front (item) : menambahkan item baru ke depan deque. Operasi add_front
(item) membutuhkan masukan berupa item dan tidak
mengembalikan apa-apa. Selain itu deque akan berubah dengan
bertambahnya sebuah item baru pada posisi paling depan/awal.
3. add_rear (item) : menambahkan item baru ke belakang deque. Operasi add_rear
(item) membutuhkan masukan berupa item dan tidak
mengembalikan apa-apa. Selain itu deque akan berubah dengan
bertambahnya sebuah item baru pada posisi paling
belakang/akhir.
4. remove_front () : menghapus item pada posisi paling depan/awal dari deque.
Operasi remove_front () tidak membutuhkan masukan berupa
item namun akan memperoleh item yang dihapus tersebut. Selain
itu deque akan berubah dengan berkurangnya sebuah item pada
posisi paling depan/awal.
5. remove_rear () : menghapus item pada posisi paling belakang/akhir dari deque.
Operasi remove_rear () tidak membutuhkan masukan berupa
item namun akan memperoleh item yang dihapus tersebut.
Selain itu deque akan berubah dengan berkurangnya sebuah item
pada posisi paling belakang/akhir.
6. is_empty () : menguji untuk melihat apakah deque kosong. Operasi ini tidak
membutuhkan parameter dan deque tidak diubah. Operasi
is_empty () mengembalikan nilai Boolean. Apabila deque
kosong akan mengembalikan nilai true dan mengembalikan nilai
false apabila deque berisi item.
7. size () : mengembalikan jumlah item yang terdapat pada deque. Operasi
ini tidak membutuhkan parameter dan deque tidak diubah.

Institut Teknologi Telkom Purwokerto


SEARCHING

2.5. List
List adalah kumpulan item di mana setiap item memiliki posisi relatif terhadap
item
yang lain. Kita dapat menganggap list tersebut memiliki item pertama, item kedua,
item ketiga, dan seterusnya. Kita juga bisa merujuk ke awal sebuah list (item pertama)
dan akhir list (item terakhir). Berdasarkan urut tidaknya item, list dibagi menjadi dua
yaitu ordered (berurutan) dan unordered (tidak berurutan). Ordered artinya item
disimpan dengan cara yang diurutkan sedangkan unordered item disimpan dengan cara
yang tidak diurutkan. Gambar 4 merupakan contoh ordered dan unordered list.

(a)

(b)

Gambar 4. (a) Ordered List dan (b) Unordered List

Untuk mengimplementasikan unordered list, dibutuhkan sebuah struktur data yang


dinamakan Linked List. Linked list terdiri dari node dan link. Node berfungsi
menyimpan item sedangkan link menghubungkan sebuah node dengan node
berikutnya. Gambar 5 (a) adalah node dengan itemnya masing-masing, sedangkan
pada Gambar 5 (b) setiap node telah terhubung menggunakan link.

(a)

(b)

Gambar 5. Linked List

Institut Teknologi Telkom Purwokerto


SEARCHING

Item dapat disisipkan dan dihapus dari linked list tanpa mengubah data. Gambar 6
menunjukan proses penyisipan dan penghapusan sebuah item pada linked list.

Gambar 6. Proses Penyisipan dan Penghapusan Item pada Linked List

Operasi yang dapat dilakukan pada struktur data list adalah:

1. List () : Membuat list baru yang kosong. Operasi ini tidak membutuhkan
parameter dan akan mengembalikan struktur data List kosong.
2. add(item) : Menambahkan item baru ke list. Operasi add(item)
membutuhkan masukan berupa item dan tidak mengembalikan
apa-apa. Selain itu list akan berubah dengan bertambahnya
sebuah item baru.
3. remove(item) : Menghapus item dari list. Operasi remove(item) membutuhkan
item dan mengubah list dengan menghapus sebuah item.
4. search(item) : Mencari sebuah item pada list. Operasi search(item)
membutuhkan item. Operasi ini akan mengembalikan nilai
boolean dengan nilai true apabila item terdapat dalam list dan
false apabila item tidak terdapat pada list.
5. is_empty () : menguji untuk melihat apakah list kosong. Operasi ini tidak
membutuhkan parameter dan list tidak diubah. Operasi is_empty
() mengembalikan nilai Boolean. Apabila list kosong akan
mengembalikan nilai true dan mengembalikan nilai false apabila
list berisi item.
6. size () : mengembalikan jumlah item yang terdapat pada list. Operasi ini
tidak membutuhkan parameter dan list tidak diubah. Operasi ini
mengembalikan nilai integer jumlah data pada list.

Institut Teknologi Telkom Purwokerto


SEARCHING

III. PERCOBAAN
Pada percobaan ini anda akan diberikan beberapa program yang harus anda ketik kembali.
Anda diharuskan memodifikasi program berdasarkan perintah pada soal.

Langkah-langkah percobaan

a. Setiap soal percobaa terdiri dari listing program dan output dari program tersebut.
b. Ketik kembali listing program yang terdapat dalam modul ke dalam google
collabs.
c. Klik save and run untuk menjalankan program tersebut
d. Jika menemui error pada program anda, perbaiki listing program hingga dihasilkan
output yang sesuai dengan yang diinginkan soal.
e. Jawab pertanyaan berdasarkan program yang sudah anda buat.

Percobaan_1

Gambar 7. Program Python untuk Percobaan_1

Institut Teknologi Telkom Purwokerto


SEARCHING

Gambar 8. Hasil Running Percobaan_1

Institut Teknologi Telkom Purwokerto


SEARCHING

Jawab pertanyaan berikut:


1. Mengapa hasil print program baris terakhir bernilai 5? Jelaskan!
2. Item paling atas dan paling bawah setelah program tersebut dijalankan adalah…

Percobaan_2

Gambar 9. Program Python untuk Percobaan_2

Gambar 10. Hasil Running Percobaan_2


Jawab pertanyaan berikut:
1. Mengapa hasil print program baris terakhir bernilai 2? Jelaskan!
2. Item paling awal dan paling akhir setelah program tersebut dijalankan adalah…

Institut Teknologi Telkom Purwokerto


SEARCHING

Percobaan_3

Gambar 11. Program Python untuk Percobaan_3

Gambar 12. Hasil Running Percobaan_3


Jawab pertanyaan berikut:
1. Mengapa hasil print program baris terakhir bernilai 3? Jelaskan!
2. Item paling awal dan paling akhir setelah program tersebut dijalankan adalah…
3. Modifikasi Program tersebut untuk mengecek sebuah kata berbentuk palindrom atau bukan
(palindrome checker)

Institut Teknologi Telkom Purwokerto


SEARCHING

Percobaan_4

Gambar 13. Program Python untuk Percobaan_4

Gambar 14. Hasil Running Percobaan_4

Jawab pertanyaan berikut:


1. Mengapa hasil print program memiliki urutan 7, 7, 2, dan 12? Jelaskan!
2. Modifikasi program tersebut untuk mebuat linked list 5 node dengan urutan: 2, 6, 9, 1, dan
15.

Institut Teknologi Telkom Purwokerto


SEARCHING

Percobaan_5
class Node:
def init (self, init_data):
self.data = init_data
self.next = None
def get_data(self):
return self.data
def get_next(self):
return self.next
def set_data(self, new_data):
self.data = new_data
def set_next(self, new_next):
self.next = new_next

class UnorderedList:
def init (self):
self.head = None
def is_empty(self):
return self.head == None
def add(self, item): temp =
Node(item)
temp.set_next(self.head)
self.head = temp
def size(self):
current = self.head
count = 0
while current != None:
count = count + 1
current = current.get_next()
return count
def search(self,item):
current = self.head
found = False
while current != None and not found:
if current.get_data() == item:
found = True
else:
current = current.get_next()
return found
def remove(self, item):
current = self.head
previous = None
found = False
while not found:
if current.get_data() == item:
found = True
else:
previous = current
current = current.get_next()

if previous == None:
self.head = current.get_next()
else:
previous.set_next(current.get_next())

mylist = (. . .) ()
mylist.add(42)
mylist.(. . .)(74)
mylist.add(17)
mylist.add(33)
mylist.(. . .) (92)
mylist.add(54)
print(mylist.(. . .) (33))
print(mylist.(. . .) ())
mylist.(. . .) (17)
mylist.remove(74)
print(mylist.search(74))

Institut Teknologi Telkom Purwokerto


SEARCHING

Gambar 15. Program Python untuk Percobaan_5

Gambar 16. Hasil Running Percobaan_5

Jawab pertanyaan berikut:


1. Mengapa hasil print program adalah True, 6 dan False? Jelaskan!
2. Modifikasi linked list agar berperan sebagai stack pada permasalahan tumpukan barang
(percobaan 1) dan queue pada permasalahan antrian (percobaan 2).

Institut Teknologi Telkom Purwokerto


SEARCHING

MODUL MATA KULIAH PRAKTIKUM

PENGANTAR TEKNIK

TELEKOMUNIKASI 3

Modul 1: Dasar Pemrograman Python

Dosen Pengampu:

Rahmat Widadi, S.Pd., M.Eng.

PROGRAM STUDI S1 TEKNIK TELEKOMUNIKASI


FAKULTAS TEKNIK TELEKOMUNIKASI DAN ELEKTRO
INSTITUT TEKNOLOGI TELKOM PURWOKERTO
2021

Institut Teknologi Telkom Purwokerto


SEARCHING

DASAR PEMROGRAMAN PYTHON

I. TUJUAN
1. Mengetahui peralatan yang dibutuhkan dalam pemrograman python
2. Memahami penggunaan pemrograman python dalam listing program
3. Mengetahui keunggulan pemrograman python pada suatu program
4. Membuat program sederhana menggunakan bahasa pemrograman python

II. DASAR TEORI


2.1. Bahasa Pemrograman Python
Python adalah bahasa pemrograman interpretatif multiguna. Tidak seperti bahasa lain
yang susah untuk dibaca dan dipahami, python lebih menekankan pada keterbacaan kode
agar lebih mudah untuk memahami sintaks. Hal ini membuat Python sangat mudah
ipelajari baik untuk pemula maupun untuk yang sudah menguasai bahasa pemrograman
lain. Bahasa ini muncul pertama kali pada tahun 1991, dirancang oleh seorang bernama
Guido van Rossum. Sampai saat ini Python masih dikembangkan oleh Python Software
Foundation. Bahasa Python mendukung hampir semua sistem operasi, bahkan untuk
sistem operasi Linux, hampir semua distronya sudah menyertakan Python di dalamnya.
Gambar
1 merupakan simbol bahasa pemrograman python.

Gambar 1. Simbol Bahasa Pemrograman Python

2.2. Instalasi Bahasa Pemrograman Python


Berikut adalah langkah-langkah instalasi bahasa pemrograman dan editor python pada
sistem operasi Windows:

1. Buka browser, kunjungi http://www.python.org/downloads/windows/. Pilih


salah satu edisi python (disarankan versi 3.xx).
2. Buka (klik 2x) file installer python yang baru saja di download.

Institut Teknologi Telkom Purwokerto


SEARCHING

3. Ikuti langkah instalasi sampai selesai.

Institut Teknologi Telkom Purwokerto


SEARCHING

2.3. Menjalankan Editor Bahasa Pemrograman Python


Pada dasarnya editor untuk bahasa pemrograman python sangat banyak. Beberapa
diantaranya yaitu: IDLE Python, Spyder, Google Colab, Jupyter Notebook dll. Semua
editor tersebut dapat kita gunakan untuk mengembangkan program berbasis bahasa
pemrograman python. Berikut tutorial menjalankan editor bahasa pemrograman python
menggunakan IDLE Python Google Colab, Google Colab, dan Virtual Lab Programing
(VPL) pada LMS Institut Teknologi Telkom Purwokerto.

2.3.1. Menggunakan Script Editor pada IDLE Python


Untuk menjalankan script yang disimpan dalam file, buka IDLE (python shell
di windows), Anda bisa mencarinya di tombol START.

1. Klik menu File - New File


2. Tulis script Python pada window yang muncul, contoh:
print("Belajar Python")
print("di Teknik Biomedis ITTP")
3. Simpan script menggunakan menu File - Save
4. Jalankan program dengan klik menu Run - Run Module

Gambar 2. Membuat Script Python Menggunakan Script Editor

2.3.2. Menggunakan Google Colab


1. Buka Web: https://colab.research.google.com/
2. Klik: NOTEBOOK BARU sehingga muncul halaman baru
3. Tulis script Python pada halaman yang muncul, contoh:
print ("Belajar Python di Google Colab")
4. Jalankan program dengan klik menu Runtime – Jalankan Semua

Institut Teknologi Telkom Purwokerto


SEARCHING

Gambar 3. Membuat Script Python Menggunakan Google Colab

2.3.3. Menggunakan Virtual Lab Programing (VPL) pada LMS


1. Klik VPL yang terdapat pada LMS kemudian pilih edit.
2. Ketik nama file ditambah ektensi “.py”. Contoh: latihan.py
3. Tulis script Python pada halaman yang muncul, contoh:
print ("Belajar Python di VPL")
4. Simpan file dengan klik save kemudian jalankan dengan cara klik run.
Run

Save

Gambar 4. Menyimpan dan Menjalankan Program yang Telah Dibuat

5. Apabila berhasil maka akan muncul tampilan seperti Gambar 5.

Gambar 5. Hasil Program yang Telah Dibuat

Institut Teknologi Telkom Purwokerto


SEARCHING

2.4. Dasar Bahasa Pemrograman Python


2.4.1. Python Case Sensitivity
Python bersifat case sensitif, ini artinya huruf besar dan huruf kecil memiliki
perbedaan. Sebagai contoh jika Anda menggunakan fungsi print dengan huruf
kecil print() akan berhasil. Lain hal jika anda menggunakan huruf kapital Print()
atau PRINT() , akan muncul pesan error.

2.4.2. Komentar pada Pemrograman Python


Komentar (comment) adalah kode di dalam script Python yang tidak
dieksekusi atau tidak dijalankan mesin. Komentar hanya digunakan untuk
menandai atau memberikan keterangan tertulis pada script. Untuk menggunakan
komentar anda cukup menulis tanda pagar #, diikuti dengan komentar Anda.
Penulisan Komentar lebih dari satu baris yaitu dengan menggunakan kutip dua 3
kali dan ditutup dengan kutip dua 3 kali juga.

Gambar 6. Contoh Penggunaan Komentar Pemrograman Python

2.4.3. Tipe Data pada Pemrograman Python


Tipe data menunjukan jenis data yang disimpan dalam komputer. Setiap tipe
data mempunyai karakteristik tersendiri yang sangat bermanfaat dalam pembuatan
program. Perubahan sebuah tipe data ke tipe data yang lain sangat memungkinkan

Institut Teknologi Telkom Purwokerto


SEARCHING

dalam bahasa pemrograman python. Berikut adalah tipe data dari bahasa
pemrograman Python :

Institut Teknologi Telkom Purwokerto


SEARCHING

Gambar 6. Tipe Data pada Pemrograman Python

Gambar 7. Contoh Penggunaan Tipe Data pada Pemrograman Python

Institut Teknologi Telkom Purwokerto


SEARCHING

2.4.4. Variabel pada Pemrograman Python


Variabel adalah lokasi memori yang dicadangkan untuk menyimpan berbagai
tipe data. Variabel menyimpan data yang diperoleh dari eksekusi program.
Variabel pada pemrograman python mempunyai sifat yang dinamis, artinya
variabel tidak perlu didekralasikan berupa tipe data tertentu dan variabel dapat
diubah pada saat program eksekusi. Penulisan variabel Python sendiri juga
memiliki aturan tertentu, yaitu :

a. Karakter pertama harus berupa huruf atau garis bawah/underscore _


b. Karakter selanjutnya dapat berupa huruf, garis bawah/underscore _ atau angka
c. Karakter pada nama variabel bersifat sensitif (case-sensitif). Artinya huruf
kecil dan huruf besar dibedakan. Sebagai contoh, variabel x dan X adalah
variabel yang berbeda.

Untuk mulai membuat variabel di Python caranya sangat mudah, Anda cukup
menuliskan variabel lalu mengisinya dengan suatu nilai dengan cara
menambahkan tanda sama dengan = diikuti dengan nilai yang ingin dimasukan.

Gambar 9. Contoh Penggunaan Variabel pada Pemrograman Python

Institut Teknologi Telkom Purwokerto


SEARCHING

2.4.5. Operator pada Pemrograman Python


Operator adalah konstruksi yang dapat memanipulasi nilai dari operan.
Sebagai contoh operasi 4 + 8 = 10. Disini 4 dan 8 adalah operan dan + adalah
operator. Bahasa pemrograman Python mendukung berbagai macam operator,
diantaranya:

a. Operator Aritmatika (Arithmetic Operators)

Gambar 10. Operator Aritmatika pada Pemrograman Python

b. Operator Perbandingan (Comparison/Relational Operators)


Operator perbandingan (comparison operators) digunakan untuk
membandingkan suatu nilai dari masing-masing operan.

Institut Teknologi Telkom Purwokerto


SEARCHING

Gambar 10. Operator Perbandingan pada Pemrograman Python

Institut Teknologi Telkom Purwokerto


SEARCHING

c. Operator Penugasan (Assignment Operators)

Gambar 11. Operator Perbandingan pada Pemrograman Python

2.4.6. Kondisi pada pada Pemrograman Python


a. Kondisi If
Pengambilan keputusan (kondisi if) digunakan untuk mengantisipasi
kondisi yang terjadi saat jalanya program dan menentukan tindakan apa yang
akan diambil sesuai dengan kondisi. Pada python ada beberapa
statement/kondisi diantaranya adalah if, else dan elif. Kondisi if digunakan
untuk mengeksekusi kode jika kondisi bernilai benar True. Jika kondisi
bernilai salah False maka statement/kondisi if tidak akan di-eksekusi. Dari
contoh pada Gambar 12, jika program dijalankan maka akan mencetak string
"Sembilan Lebih Besar Dari Angka Tujuh" sebanyak 1 kali yaitu pada if
pertama. Di if kedua statement bernilai salah, jadi perintah print("Sembilan
Lebih Besar Dari Angka Sepuluh") tidak akan dieksekusi.

Institut Teknologi Telkom Purwokerto


SEARCHING

Gambar 12. Contoh Penggunaan Kondisi If pada Pemrograman Python


b. Kondisi If Else
Pengambilan keputusan (kondisi if else) tidak hanya digunakan untuk
menentukan tindakan apa yang akan diambil sesuai dengan kondisi, tetapi
juga digunakan untuk menentukan tindakan apa yang akan diambil/dijalankan
jika kondisi tidak sesuai. Pada python ada beberapa statement/kondisi
diantaranya adalah if, else dan elif Kondisi if digunakan untuk mengeksekusi
kode jika kondisi bernilai benar. Kondisi if else adalah kondisi dimana jika
pernyataan benar True maka kode dalam if akan dieksekusi, tetapi jika
bernilai salah False maka akan mengeksekusi kode di dalam else. Pada contoh
Gambar 13, jika program dijalankan maka akan mencetak string "Maaf Anda
Tidak Lulus" karena pernyataan pada if bernilai False

Gambar 13. Contoh Penggunaan Kondisi If Else pada Pemrograman Python


c. Kondisi Elif
Pengambilan keputusan (kondisi if elif) merupakan lanjutan/percabangan
logika dari “kondisi if”. Dengan elif kita bisa membuat kode program yang
akan menyeleksi beberapa kemungkinan yang bisa terjadi. Hampir sama
dengan kondisi “else”, bedanya kondisi “elif” bisa banyak dan tidak hanya
satu. Pada contoh Gambar 14, jika program dijalankan maka akan mencetak
string "Saya akan libur".

Institut Teknologi Telkom Purwokerto


SEARCHING

Gambar 14. Contoh Penggunaan Kondisi Elif pada Pemrograman Python


2.4.7. Fungsi Python
Fungsi adalah blok kode terorganisir dan dapat digunakan kembali yang
digunakan untuk melakukan sebuah tindakan/action. Fungsi memberikan
modularitas yang lebih baik untuk aplikasi Anda dan tingkat penggunaan kode
yang tinggi. Anda dapat menentukan fungsi untuk menyediakan fungsionalitas
yang dibutuhkan. Berikut adalah aturan sederhana untuk mendefinisikan fungsi
dengan Python.

a. Fungsi blok dimulai dengan def kata kunci diikuti oleh nama fungsi dan tanda
kurung (()).
b. Setiap parameter masukan atau argumen harus ditempatkan di dalam tanda
kurung ini. Anda juga dapat menentukan parameter di dalam tanda kurung ini.
c. Pernyataan pertama dari sebuah fungsi dapat berupa pernyataan opsional -
string dokumentasi fungsi atau docstring.
d. Blok kode dalam setiap fungsi dimulai dengan titik dua (:) dan indentasi.
e. Pernyataan kembali [ekspresi] keluar dari sebuah fungsi, secara opsional
menyampaikan kembali ekspresi ke pemanggil. Pernyataan pengembalian
tanpa argumen sama dengan return None.

Institut Teknologi Telkom Purwokerto


SEARCHING

Gambar 15. Contoh Pendefinisan Fungsi pada Pemrograman Python

Institut Teknologi Telkom Purwokerto


SEARCHING

Untuk memanggil suatu fungsi, gunakan nama fungsi diikuti dengan tanda kurung:

Gambar 16. Contoh Pemanggilan Fungsi pada Pemrograman Python


2.4.8. Modul pada Python
Sebuah modul dapat diibaratkan seperti Library. File yang berisi sekumpulan
fungsi yang ingin disertakan pada program. Pembuatan modul dilakukan dengan
meyimpan program yang dinginkan dalam file dengan ekstensi file .py. Simpan
program ini dalam file bernama mymodule.py.

Gambar 17. Contoh Modul mymodule.py

Sekarang kita dapat menggunakan modul yang baru saja kita buat, dengan
menggunakan pernyataan import. Saat menggunakan fungsi dari modul, gunakan
sintaks: nama_modul.nama_fungsi.

Institut Teknologi Telkom Purwokerto


SEARCHING

Gambar 18. Contoh Penggunaan Modul mymodule.py

Modul juga dapat hanya diimport sebagian, dengan menggunakan sintak from.
Impor hanya data dictionary person1 dari modul:

Gambar 19. Contoh Penggunaan Sintak from

Modul juga dapat membuat nama aliasnya dengan sintak “as”. Berikut adalah
contohnya.

Gambar 20. Contoh Penggunaan Sintak as

Institut Teknologi Telkom Purwokerto


SEARCHING

2.4.9. Kelas dan Objek pada Python


Python adalah bahasa pemrograman berorientasi objek. Hampir semua yang
ada di Python adalah objek, dengan data dan metodenya. Kelas dapat dikatakan
seperti konstruktor objek, atau "cetak biru" untuk membuat objek. Untuk
membuat kelas, gunakan sintak class. Berikut contoh definisi dan penggunaan
kelas untuk membuat objek bernama p1, dan cetak nilai x.

Gambar 21. Contoh Penggunaan Class

Semua kelas memiliki fungsi yang disebut init (), yang selalu
dijalankan ketika kelas dipanggil. Parameter self adalah referensi ke kelas saat ini,
dan digunakan untuk mengakses variabel milik kelas. Objek juga dapat berisi
metode. Metode dalam objek adalah fungsi yang dimiliki objek. Berikut ini contoh
penggunaan kelas dan objek.

Gambar 22. Contoh Penggunaan Class dan Objek

2.5. Pseudocode dan Flowchart


Program mirip dengan buku yaitu dibaca dari atas halaman dan dilanjutkan sampai
akhir halaman. Dalam bahasa Indonesia, setiap baris teks di dalam buku berisi
informasi yang dibaca dari kiri ke kanan. Demikian juga, program juga dibaca oleh

Institut Teknologi Telkom Purwokerto


SEARCHING

komputer dalam urutan dari kiri ke kanan. Program-program yang akan dibahas juga
dijalankan

Institut Teknologi Telkom Purwokerto


SEARCHING

secara berurutan. Dimulai dari baris pertama dan kemudian dilanjutkan ke baris
berikutnya. Struktur berurutan ini dapat direpresentasikan dengan pseudocode,
flowchart, dan program Python.

1. Pseudocode
Pseudocode adalah bahasa yang sangat mirip dengan bahasa Inggris yang
memungkinkan kita untuk merepresentasikan program secara ringkas. Satu-
satunya hal yang dibutuhkan adalah pernyataan untuk menunjukkan letak
dimulainya program dan akhir dari program. Titik awal dari Pseudocode
menggunakan kata Start dan Stop untuk menunjukkan titik akhir. Setiap program
akan berisi pernyataan untuk mencapai tujuan.

2. Flowchart
Diagram Alir (Flowchart) digunakan untuk memvisualisasikan perilaku
program. Flowchart menggunakan simbol dan bentuk untuk merepresentasikan
algoritma. Pseudocode dapat diterjemahkan menjadi flowchart dan sebaliknya.
Gambar 23 menunjukkan beberapa simbol yang digunakan dalam flowchart di
mana teks ditempatkan di dalam simbol. Simbol flowchart yang akan banyak kita
gunakan diantaranya anak panah (flow direction symbol), Terminator, Input-
output, dan simbol pemrosesan (Processing Symbol).

Institut Teknologi Telkom Purwokerto


SEARCHING

Gambar 23. Simbol Flowchart


3. Penerapan Pseudocode dan Flowchart
Berikut ini contoh penerapan pseudocode dan flowchart untuk melaksanakan
operasi matematis. Langkah yang perlu ditempuh yaitu identifikasi input,
identifikasi tujuan atau sasaran, dan pemrosesan untuk memenuhi tujuan.
Hitung dan cetak rata-rata dari tiga angka: 5, 10, dan 15.
a. Input: angka 5, 10, dan 15.
b. Tujuan: rata-rata dari nilai input.
c. Pemrosesan yang selanjutnya akan dijadikan pseudocode dan flowchart:
1) Tetapkan nilai untuk input.
2) Hitung jumlahnya.
3) Hitung rata-rata.
4) Cetak rata-rata.

Institut Teknologi Telkom Purwokerto


SEARCHING

Gambar 18. Pseudocode untuk menghitung dan Cetak Rata-Rata dari Tiga Angka

Gambar 19. Flowchart untuk menghitung dan Cetak Rata-Rata dari Tiga Angka

Gambar 20. Program Python untuk menghitung dan Cetak Rata-Rata dari Tiga
Angka
Institut Teknologi Telkom Purwokerto
SEARCHING

Tentukan apakah bilangan yang dimasukkan genap atau ganjil


a. Input: nilai yang diketik.
b. Tujuan: menentukan jenis nilai dimasukan yaitu genap atau ganjil.
c. Pemrosesan yang selanjutnya akan dijadikan pseudocode dan flowchart:
1) Input nilai.
2) Bagi nilai dengan 2.
3) Jika sisa pembagian sama dengan 0 maka nilai tersebut adalah jenis
bilangan genap jika tidak sama dengan 0 maka jenis bilangan ganjil.
4) Cetak jenis bilangan.

Gambar 21. Pseudocode untuk Menententukan Bilangan yang Dimasukkan Genap


atau Ganjil

Gambar 22. Flowchart untuk Menententukan Bilangan yang Dimasukkan Genap


atau Ganjil

Institut Teknologi Telkom Purwokerto


SEARCHING

Gambar 23. Program Python untuk Menententukan Bilangan yang Dimasukkan


Genap atau Ganjil

III. PERCOBAAN
Pada percobaan ini anda akan diberikan beberapa program yang harus anda ketik kembali.
Anda akan menemui error pada program yang ada kerjakan. Berdasarkan dasar teori yang
sudah anda pelajari selesaikan error yang ada untuk mendapatkan output yang sesuai.

Langkah-langkah percobaan.

a. Setiap soal latihan terdiri dari listing program dan output dari program tersebut.
b. Ketik kembali listing program yang terdapat dalam modul ke dalam google
collabs.
c. Klik save and run untuk menjalankan program tersebut
d. Jika menemui error pada program anda, perbaiki listing program hingga dihasilkan
output yang sesuai dengan yang diinginkan soal
e. Jawab pertanyaan berdaasarkan program yang sudah anda buat.

Percobaan_1

Gambar 24. Program Python untuk Percobaan_1

Institut Teknologi Telkom Purwokerto


SEARCHING

Gambar 25. Contoh Hasil Cetak untuk Percobaan_1


Jawab pertanyaan berikut:
1. Operasi aritmatika apa saja yang terdapat pada program tersebut?
2. Mengapa muncul error pada baris 8?
3. Berapa total gaji apabila gaji per jam adalah Rp. 50000 dan Jumlah jam kerja adalah 43?
Buktikan dengan hasil cetak program.
4. Buatlah pseudocode dan flowchat dari program tersebut.

Percobaan_2

Gambar 26. Program Python untuk Percobaan_2

Gambar 27. Contoh Hasil Cetak untuk Percobaan_2


Jawab pertanyaan berikut:
1. Operasi perbandingan apa saja yang terdapat pada program tersebut?
2. Mengapa muncul error pada baris 7?
3. Berapa Nilai yang tertinggi apabila dimasukan angka 4, 8, dan 2? Buktikan dengan hasil
cetak program.

Institut Teknologi Telkom Purwokerto


SEARCHING

4. Buatlah pseudocode dan flowchat dari program tersebut.

Institut Teknologi Telkom Purwokerto


SEARCHING

Percobaan_3

Buatlah program menggunakan bahasa pemrograman python dengan masukan sebuah


angka dan:
Cetak “Angka adalah bilangan positif” jika angkanya> 0.
Cetak “Angka adalah nol” jika angkanya 0.
Cetak “Angkaadalah bilangan negatif”.

Institut Teknologi Telkom Purwokerto

Anda mungkin juga menyukai