Algoritma dan Pemrograman Dasar
Laporan Praktikum
Disusun Oleh:
Rezki Fadhillah 2170231007 Dosen Pembimbing:
Ali Khumaidi S.Kom, M.Kom Fakultas Teknik
Prodi Informatika
2021
KATA PENGENTAR Assalamu’alaikum wr.wb
Segala puji bagi Allah SWT atas nikmat tak terhingga yang telah kita terima dariNya. Sholawat serta salam semoga selalu tercurah kepada uswah khasanah kita Rosulullah Muhammad SAW,keluarga,sahabat,serta para pengikutnya yang setia hingga akhir zaman. Tak lupa rasa terima kasih kami haturkan kepada semua pihak yang telah membantu terselesaikannya makalah ini. Semoga bantuan yang telah diberikan dapat bermanfaat dan mendapat balasan yang setimpal dari Allah.Amiin.
Makalah ini Saya susun untuk memenuhi laporan akhir praktikum mata kuliah Algoritma dan Pemrograman. Dengan menyusun laporan akhir praktikum ini, Saya memperoleh banyak sekali wawasan baru mengenai cara belajar pengkodingan melalui Bahasa Python. Saya berharap semoga pengetahuan yang Saya dapatkan dalam mengikuti praktikum ini bisa bermanfaat di masa mendatang.
Saya juga berharap makalah ini bermanfaat bagi semua pihak. Kritik dan saran yang sifatnya membangun senantiasa diharapkan agar bisa lebih baik lagi untuk kedepannya.
Wassalamu’alaikum wr.wb.
Bekasi, 07 Desember 2021
3 DAFTAR ISI
BAB I. PENDAHULUAN ……… 1
1.1 Latar Belakang ……… 1
1.2 Tujuan Praktikum ………. 1
BAB II. LANDASAN TEORI ………. 2
1. Pseudocode dan Flowchart ………. 2
2. Variabel ……….. 2
3. Tipe Data ……… 3
4. String Format ……….. 4
5. Komentar Script ………. 4
6. Loop ……… 4
7. Struktur Kontrol (if … else) ……… 4
8. Function ……… 4
1. List (Array) ………. 5
2. Tuple ………... 5
3. Dictionary ………... 6
4. User Input ………... 7
5. Ekspresi Logika ……….. 7
BAB III. PRAKTIKUM ………... 13
3.1 Tugas Praktikum ………... 13
3.2 Rancangan Program ……….. 19
3.3 Hasil Praktikum ………. 29
3.4 Project Kelompok……….. 34
BAB IV. PENUTUP ……….. 40
4.1 Kesimpulan ……… 40
4.2 Saran ……….. 40
4 BAB I
PENDAHULUAN 1.1 Latar Belakang
Python adalah salah satu bahasa pemrograman dari beberapa bahasa pemrograman seperti java, C, C++ dan lain-lain. Python merupakan bahasa pemrograman yang freeware atau perangkat bebas dalam arti sebenarnya, tidak ada batasan dalam penyalinannya atau mendistribusikannya. Bahasa pemrograman python ini menjadi umum digunakan untuk kalangan engineer seluruh dunia dalam pembuatan perangkat lunaknya.
Python merupakan bahasa pemrograman populer nomor lima setelah C. Hal tersebut membuktikan bahwa banyak programmer yang menggunakan bahasa python. Selain dapat digunakan untuk membuat aplikasi desktop, python juga dapat digunakan untuk membuat aplikasi web, pembuatan game dan lain sebagainya. Dalam perkuliahan teknik informatika banyak diajarkan beberapa bahasa pemrograman, seperti java, php dan lain-lain. Saat ini modul praktikum di teknik informatika menggunakan bahasa java.
Dari modul tersebut banyak mahasiswa yang memahami bahasa pemrograman yang digunakan dalam modul tersebut. Karena saat ini bahasa python termasuk bahasa yang popular digunakan. Untuk mengetahui apakah bahasa python dapat juga digunakan sebagai bahasa pembelajaran maka akan disesuaikan dengan modul perkuliahan dan modul praktikum di teknik informatika.
1.2 Tujuan Praktikum
a. Memahami dan mempelajari aspek pemrograman dari bahasa python
5 b. Mempelajari dan memahami cara memrogram dengan
menggunakan bahasa python BAB II Landasan Teori
2.1 Pada modul 1 landasan teori yang di pelajari yaitu : 1. Pseudocode dan Flowchart
Salah satu cara menuliskan alur program / algoritma dengan menggunakan Bahasa yang mudah di pahami oleh manusia, sedangkan flowchart adalah diagram alir yang menggambarkan alur program menggunakan symbol yang di hubungkan menggunakan anak panah sebagai arah alur program.
2. Variabel
Mempelajari dan memahami cara memrogram dengan
menggunakan bahasa python. Terdapat aturan dalam pembuatan variable yaitu :
a. Variabel tidak boleh diawali dengan angka/number b. Variable tidak boleh angka
c. Variable pada python bersifat case sensitive.
6 3. Tipe Data
Table Tipe Data Python table 2.1
Tipe Data Contoh Penjelasan
Boolean True atau False Menyatakan benar True yang bernilai 1, atau salah False yang bernilai 0
String “Ayo belajar
Python”
Menyatakan
karakter/kalimat bias berupa huruf, angka, dll(diapait tanda “ atau ‘)
Integer 25 atau 1209 Menyatakan bilangan bulat Float 3,14 atau 0,99 Menyatakan bilangan yang
mempunyai koma
List [‘xyz’,786,2.23] Data untaian yang
menyimpan berbagai tipe data dan isinya bias di ubah- ubah
Tuple (‘xyz’,768,2.23) Data untaian yang menyimpan berbagai tipe data tapi isinya tidak bias di ubah
Dictionary {‘nama’:’adi’,’id’:2} Data untaian yang menyimpan berbagai tipe data berupa pasangan penunjuk dan nilai
7 4. String Format
Untuk menggabungkan string pada python dapat di lakukan menggunakan string.format(nilai1, nilai2, … nilai-n) di mana untuk menyisipkan string ke dalam kalimat digunakan tanda {}.
5. Komentar Script
Komentar pada script di tandai dengan tanda pagar (#) atau (“””) tiga tanda petik ganda. Komentar script di gunakan sebagai keterangan / penjelasan terhadap suatu baris kode atau satu file script yang menjelaskan kegunaan / cara penggunaan script tersebut.
6. Loop (Perulangan)
Terdapat 2 jenis perulangan dalam python yaitu For … Loop dan While … Loop. Proses perulangan menggunakan While menggunakan tipe data Boolean ( TRUE / FALSE ), sedangkan perulangan For menggunakan batas nilai / range sehingga range loop telah di capai maka proses perulangan akan selesai.
7. Struktur Kontrol (if … else)
If … else merupakan struktur kondisi yang akan membandingkan dua nilai atau lebih dan memberikan hasil sesuai dengan parameter yang di berikan oleh user.
8. Function
Fungsi dapat menyederhanakan proses penulisan script yang berulang-ulang sehingga dapat di gunakan kembali ketika di butuhkan.
Untuk mendefinisikan suatu fungsi diawali dengan def <nama_fungsi>
diikuti dengan (parameter1, …, parameter-n).
8 2.2 Pada modul 2 dasar teori yang di pelajari yaitu :
1. List (Array)
List pada python dapat dikenali dengan tanda kurung siku [ … ] data yang berada pada list dapat di akses menggunakan indeks masing- masingdata, dimana indeks dimulai pada angka 0 … n dimana n adalah panjang data list.
Untuk menambahkan data kedalam list dapat digunakan fungsi append, untuk mengeluarkan data dari daftar list dapat digunakan fungsi pop, untuk menggabungkan 2 buah list dapat digunakan fungsi extend.
Detail fungsi dari list dapat dilihat dengan menggunakan perintah dir(variable_list).
2. Tuple
Tuple memiliki bentuk umum sebagai berikut :
variable_tuple = (‘nilai’, 1, … , ‘nilai ke-n’)
variable_tuple = (‘nilai’, 1, … , ‘nilai ke-n’)
Tipe data tuple merupakan jenis tipe data yang immutable (tidak dapat diubah, tidak dapat ditambah, tidak dapat dikurangi). Tuple hanya memiliki 2 fungsi yang aktif yang dapat digunakan yaitu count(menghitung jumlah data yang sama pada daftar tuple), index untuk mengetahui nomor index suatu data pada tuple.
9 3. Dictionary
Bentuk umum Dictionary : variabel_dictionary =
{
Key : ‘value’
Key : 123, key: [1,2,3,4],
Key : (1,2,3,4), … , key-n:’value’}
Tipe data dictionary menggunakan kurunug kurawal {} dan memiliki “key”
dan “value” yang menyimpan nilainya. Untuk menampilkan semua key didalam dictionary digunakan fungsi keys(), menampilkan semua data di dalam dictionary dapat menggunakan fungsi items(), dan untuk mengeluarkan data dari dalam dictionary digunakan fungsi pop.
10 2.3 Pada modul 3 dasar teori yang di pelajari yaitu :
1. User Input
User input memungkinkan python script untuk dapat menerima inputan dari user.
Bentuk umum :
Input (‘string information’)
Raw_input(‘string information’)#hanya terdapat pada python versi 2x
Python akan menampilkan prompt input agar user dapat mengetikkan informasi untuk berinteraksi dengan aplikasi.
Input tersebut dapat dimasukkan kedalam variabel atau dapat langsung ditampilkan.
2. Ekspresi Logika
Ekspresi logika memiliki keluaran dengan tipe data Boolean (TRUE / FALSE) selain dapat membandingkan nilai angka, ekspresi logika juga dapat membandingkan string atau digunakan pada loop.
11 Table Ekspresi Logika
Table 2.2
Operator Keterangan
< (kurang dari)
Mengembalikan apakah x kurang dari y. Semua pembading mengembalikan True atau False. 5 < 3 mengembalikan False, 3 < 5 mengembalikan True dan 2 < 5 < 7 mengembalikan True.
> (lebih dari)
Mengembalikan apakah x kurang dari y. 5 > 3 mengembalikan True
<= (kurang dari atau sama dengan)
Mengembalikan apakah x kurang dari atau sama dengan y. 5 <=
5 mengembalikan True.
>= (lebih dari atau sama dengan)
Mengembalikan apakah x lebih dari atau sama dengan y. 5 >= 5 mengembalikan True.
== (sama dengan)
Membandingkan apakah kedua obyek sama. 2 == 2 mengembalikan True, ‘nama’ == ‘Nama’ mengembalikan
False, ‘nama’ == ‘nama’ mengembalikan True.
!= (tidak sama dengan)
Membandingkan apakah kedua obyek berbeda. 2 != 3 mengembalikan True.
Not (Boolean NOT)
Jika x bernilai True akan mengembalikan False. Jika x bernilai False akan mengembalikan True. X = True ; not x
mengembalikan False
12
And (Boolean AND)
X dan Y mengenmbalikan False jika x bernilai False, selain itu akan mengembalikan nilai y.
X = False; y= True; x and y akan mengembalikan False karena x bernilai False. Pada kasusu ini Python tidak akan mengevaluasi y karena nilai x. Hal ini disebut short-circuit
evaluasi
Or (Boolean OR)
Jika x bernilai True, x or y akan mengembalikan True, selain itu akan mengembalikan nilai y.
X = True ; Y = False; x or y mengembalikan True. Short- circuit evaluasi berlaku juga disini.
2.4 Pada modul 4 dasar teori yang di pelajari yaitu :
Pada latihan 1 modul 4 membahas :
Memfilter data, apakah data tersebut merupakan bilangan ganjil atau genap. Dengan menggunakan for in dan menggunakan struktur control (if … else)
Pada latihan 2 modul 4 membahas :
Menemukan nilai terbesar dengan menggunakan for in data dan menggunakan if … else
Pada latihan 3 modul 4 membahas :
Merubah huruf kecil menjadi huruf kapital, dan merubah huruf kapital menjadi huruf kecil. Dengan menggunakan for in dan if else
13
Pada latihan 4 modul 4 membahas :
Mengubah urutan sebuah string, dengan menggunakan for in range dan menggunakan len.
Contoh :
Kalimat = “Belajar Pemrograman Python Sangat Menyenangkan”
rev_kalimat = “ “
for indeks in range (1, len(kalimat) + 1) :
rev_kalimat += kalimat[len(kalimat) = indeks]
print(rev_kalimat)
2.5 Pada modul 5 dasar teori yang di pelajari yaitu :
Pada latihan 1 modul 5 membahas :
Membuat segitiga 45 derajat dengan menggunakan for i in range
Pada latihan 2 modul 5 membahas :
Membuat segitiga terbalik dengan menggunakan for i in range, star, rstar, space
Pada latihan 3 modul 5 membahas :
Membuat segitiga menggunakan angka dengan menggunakan for i in range, space, spacex
14 BAB III
PRAKTIKUM 3.1 Tugas Praktikum:
MODUL 1
1. Buat script dengan hasil keluaran seperti dibawah ini dengan ketentuan : a. Judul Script dihasilkan dari fungsi
b. Hasil perhitungan keliling persegi merupakan nilai return dari fungsi.
c. Fungsi hitung keliling persegi memiliki 2 parameter yaitu Panjang dan lebar.
2.
Buat script dengan hasil “String 1 – 10 Senang Belajar Python”15
3.
Buat fungsi untuk memfilter input nilai, jika nilai yang diberikan 90 maka cetak informasi "Anda Lulus" jika nilai yang diberikan dibawah 70 maka cetak informasi "Anda Harus Mengulang". Dengan nama fungsiValidasiNilai dengan nama input parameter nilai.
MODUL 2
1. List, Tuple, Dictionary
Buat script yang menghasilkan tampilan seperti berikut :
16 MODUL 3
1. User Input Ketentuan :
1. Pesan anda lulus jika nilai > 75 dan jika kurang dari 75 pesan maaf anda harus mengulang.
2. Jika nama tidak diinput, munculkan pesan error Nama Tidak boleh kosong
3. Jika nilai tidak diinput, munculkan pesan error Nilai tidak boleh kosong
17 2. Ekspresi Logika
Ketentuan :
• Range Nilai antara 85 hingga 100 nilai = A
• Range Nilai antara 60 hingga 84 nilai = B
• Range Nilai antara 50 hingga 59 nilai = C
• Selain itu nilai = D Agar nilai dapat dibandingkan gunakan fungsi int() untuk mengkonversi inputan user menjadi integer.
18 MODUL 4
1.
Buat script untuk mengeluarkan hasil seperti gambar dibawah ini, dengan ketentuan :1. Memunculkan angka yang hilang dari list
2. Mengurutkan dan memisahkan angka genap dan ganjil
19 MODUL 5
1. Buat script untuk menampilkan bentuk seperti gambar berikut :
20 2.
3.
3.2 Rancangan Program : MODUL 1 :
1. Keliling Persegi
21 2. Membuat String
22 3. Seleksi Nilai
23 MODUL 2 :
1. Membuat List, Tuple dan Dictionary
MODUL 3 :
1. Membuat User Input :
24 2. Membuat Konversi Nilai Angka Menggunakan Ekspresi Logika
25
26 MODUL 4 :
1. Memunculkan angka yang hilang dari list, Mengurutkan dan Memisahkan Angka Genap dan Ganjil
MODUL 5 :
1. Membuat Script Untuk Menghasilkan Segitiga
27 2. Membuat Script Untuk Menghasilkan Segitiga Terbalik
28 3. Membuat Script Untuk Menghasilkan Segitiga Angka
29 3.3 Hasil Praktikum :
MODUL 1 :
1. Keliling Persegi Panjang
2. Membuat String
30 3. Seleksi Nilai
MODUL 2 :
1. List, Tuple, Dictionary
31 MODUL 3 :
1. Hasil User Input
32 Lanjutan Hasil User Input
33 2. Hasil Konversi Nilai Dengan Menggunakan Ekpresi Logika
MODUL 4 :
1. Hasil Rancangan Program Untuk Memunculkan angka yang hilang dari list, Mengurutkan dan Memisahkan Angka Genap dan Ganjil
34 MODUL 5 :
1. Hasil Rancangan Segitiga
2. Hasil Rancangan Segitiga Terbalik
35 3. Hasil Rancangan Segitiga Angka
36 TUGAS AKHIR
RANCANGAN PROGRAM
37
HASIL TUGAS AKHIR
38 BAB IV
PENUTUP
39 4.1 Kesimpulan
Kesimpulan yang dapat ditarik dari makalah ini bahwa bahasa pemrograman Phyton adalah bahasa pemrograman yang bersifat interpreted karena program – program Phyton dapat langsung di eksekusi oleh interpreted tanpa harus melalui tahap kompilasi, dalam artian tidak terkompile secara sempurna dan mudah dibawa ataupun diedit kembali, kemudian penggunaan Decision atau pemilihan kondisi pada bahasa phyton terdiriatas IF, IF Bersarang, ELIF ataupun ELSE.
Kemudian perbandingan bahasa pemrograman arduino dengan phyton itu terletak pada fungsi dan kegunaannya masing, serta kelebihan dan kekurangan bahasa pemrograman dalam kegunaanya.
4.2 Saran
Saran dari laporan ini terus lah belajar dan tingkatkan skill pemrograman agar sukses dalam pemrograman di suatu hari dan dapat menggapai cita – cita.