Anda di halaman 1dari 15

LAPORAN PRAKTIKUM

ALGORITMA DAN PEMROGRAMAN

PENGGUNAAN PYTHON UNTUK MEMBUAT SEBUAH PROGRAM


PENGECEKAN DUPLIKASI DAN PENGHITUNG JUMLAH KATA
BESERTA PRESENTASE KEMUNCULAN SEBUAH HURUF DALAM
KATA TERSEBUT

USE PYTHON TO CREATE A DUPLICATION CHECKING PROGRAM AND


CALCULATE THE NUMBER OF WORDS ALONG WITH THE PERCENTAGE
OF OCCURRENCE OF A LETTER IN THE WORD

WILDAN HIDAYATURROHMAN

24010122140093

DEPARTEMEN MATEMATIKA

FAKULTAS SAINS DAN MATEMATIKA

UNIVERSITAS DIPONEGORO

SEMARANG

2023
KATA PENGANTAR

Kami menyadari bahwa meskipun kami telah berusaha sebaik mungkin


dalam menyelesaikan laporan ini, hasilnya belum sempurna dan tentu masih
banyak kekurangan. Oleh sebab itu, kritik dan saran membangun dari pembaca
demi perbaikan laporan ini akan kami terima dengan terbuka.

Semoga laporan ini dapat bermanfaat dan membantu para pembaca dalam
memperoleh pengetahuan mengenai penggunaan bahasa pemrograman python
dalam menyelesaikan program untuk mengecek ada tidaknya duplikasi dalam
suatu list bilangan dan program yang meminta pengguna untuk memasukkan
sebuah kalimat sehingga program ini dapat menganalisis kalimat tersebut untuk
menghitung jumlah kemunculan setiap kata dan menghitung persentase
kemunculan tiap huruf dalam kalimat tersebut.

Semarang, 08 Desember 2023

Wildan Hidayaturrohman

i
DAFTAR ISI

KATA PENGANTAR..............................................................................................i
BAB I.......................................................................................................................2
LANDASAN TEORI...............................................................................................2
1.1 Algortima dan Pemrograman....................................................................2
1.2 Python........................................................................................................3
BAB II......................................................................................................................4
PEMBAHASAN......................................................................................................4
2.1 Permasalahan.............................................................................................4
2.1.1 Permasalahan Pertama.......................................................................4
2.1.2 Permasalahan Kedua..........................................................................4
2.2 Flowchart...................................................................................................5
2.2.1 Flowchart Permasalahan Pertama......................................................5
2.2.2 Flowchart Permasalahan Kedua.........................................................6
2.3 Script Program...........................................................................................8
2.3.1 Script Program Permasalahan Pertama..............................................8
2.3.2 Script Program Permasalahan Kedua.................................................8
2.4 Output......................................................................................................10
2.4.1 Output Permasalahan Pertama.........................................................10
2.4.2 Output Permasalahan Kedua............................................................10
BAB III..................................................................................................................11
PENUTUP.............................................................................................................11
3.1 Kesimpulan..............................................................................................11
DAFTAR PUSTAKA...........................................................................................13

ii
BAB I

LANDASAN TEORI

1.1 Algortima dan Pemrograman


Algoritma dan pemrograman adalah fondasi utama dalam dunia ilmu
komputer, landasan bagi pengembangan perangkat lunak, analisa data, bahkan
menjadi solusi atas permasalahan yang kompleks. Algoritma adalah sekumpulan
langkah rinci yang ditujukan untuk komputer dalam menyelesaikan suatu masalah
[2]. Algoritma penting untuk dipahami sebelum merancang sebuah program,
karena menjadi penghubung antara output yang diinginkan dan input yang
tersedia. Sebuah algoritma dapat dibangun dati tiga buah struktur dasar, yaitu
struktur runtunan (sequence), struktur pemilihan (selection), dan struktur
pengulangan (repetition) [3]. Algoritma runtunan (sequence) terdiri atas satu atau
lebih instruksi yang dikerjakan secara beruntun sesuai dengan urutannya dalam
algoritma [1]. Algoritma pemilihan (selection) yaitu intruksi yang dikerjakan
berdasarkan kondisi tertentu dimana syarat tersebut bernilai benar atau salah,
intruksi akan dilaksanakan jika syarat bernilai benar dan tidak akan dikerjakan
jika syarat tidak terpenuhi atau bernilai salah [1]. Algoritma pemilihan
menggunakan statemen if, if/else, if/elif/else. Statemen if digunakan saat terdapat
satu pilihan, statemen if/else digunakan Ketika terdapat dua pilihan, dan statemen
if/elif/else digunakan Ketika terdapat lebih dari dua pilihan. Algoritma
pengulangan (repetition) merupakan pengulangan sejumlah aksi yang sama
sebanyak jumlah yang ditentukan atau kondisi yang diinginkan [1]. Algortima
pengulangan memiliki dua statemen yaitu for dan while. Algoritma erat kaitannya
dengan bahasa pemrograman, yang berfungsi sebagai alat yang memberdayakan
pengguna untuk menerjemahkan ide-ide dari algoritma sehingga dapat dijalankan
oleh komputer. Selanjutnya, dalam bahasa pemrograman terdapat tipe data yaitu
klasifikasi yang digunakan untuk menentukan nilai dari suatu variabel dalam tipe
operasi matematika, hubungan relasional, maupun logika. Berikut tabel macam-
macam tipe data dalam bahasa pemrograman [1].

iii
1.2 Python
Bahasa pemrograman adalah kumpulan aturan sintaks yang digunakan
untuk menulis program komputer, sehingga memungkinkan programmer
mengintruksikan komputer untuk melakukan tugas tertentu. Bahasa pemrograman
menjadi jembatan komunikasi antara manusia dengan komputer. Melalui
serangkaian intruksi dari manusia, kemudian komputer akan memberikan jawaban
atau output yang sesuai dengan intruksi yang diberikan. Maka intruksi harus dapat
dimengerti oleh komputer, sehingga intruksi yang diinterpretasi dan dieksekusi
sesuai dengan yang diharapkan. Terdapat beberapa jenis Bahasa pemrograman
diantaranya Python, Java, C++, JavaScript, dan banyak lagi. Setiap Bahasa
memiliki karakteristiknya masing-masing, kegunaan khusus dan Tingkat abstraksi
yang berbeda.

Bahasa pemrograman Python sangat populer akhir-akhir ini.


Pengembangan Python melibatkan jutaan programmer, peneliti, dan pengguna
dari berbagai latar belakang, tidak hanya di kalangan IT, karena Python bersifat
open source. Python memiliki berbagai kegunaan, seperti pengembangan aplikasi
web, aplikasi desktop, IoT, dan banyak lagi. Python dapat dijalankan di berbagai
platform seperti Windows, Linux, dan lain-lain. Bahasa pemrograman Python
pertama kali ditemukan oleh Guido van Rossum di Stichting Mathematisch
Centrum, Amsterdam pada tahun 1991 [4]. Sintaks yang dimiliki Python juga
sederhana dan mirip dengan Bahasa Inggris, selain itu sintaks Python juga
memungkinkan penulisan kode yang lebih ringkas dibandingkan Bahasa
pemrograman lain. Python menggunakan interpreter sehingga program dapat
dieksekusi dengan cepat setelah selesai dibuat.

iv
BAB II

PEMBAHASAN

2.1 Permasalahan
2.1.1 Permasalahan Pertama
Buatlah program dengan menggunakan if/else dan for/while untuk
mengecek ada tidaknya duplikasi dalam suatu list bilangan.

2.1.2 Permasalahan Kedua


Buatlah program Python yang meminta pengguna untuk memasukkan
sebuah kalimat. Program ini akan menganalisis kalimat tersebut untuk
menghitung jumlah kemunculan setiap kata dan menghitung persentase
kemunculan tiap huruf dalam kalimat tersebut.

Program Anda akan menyajikan hasil analisis dalam dua bagian:


a. Jumlah Kemunculan Tiap Kata: Program akan menghitung dan
menampilkan jumlah kemunculan setiap kata dalam kalimat. Selain
itu, untuk setiap kata, program akan menampilkan persentase
kemunculannya dalam kalimat.
b. Persentase Kemunculan Tiap Huruf: Program juga akan
menghitung dan menampilkan persentase kemunculan tiap huruf
dalam kalimat. Huruf kapital dan huruf kecil dianggap sama.

v
2.2 Flowchart
2.2.1 Flowchart Permasalahan Pertama

vi
2.2.2 Flowchart Permasalahan Kedua
2.2.2.1 Flowchart Permasalahan Kedua untuk Kata

vii
2.2.2.2 Flowchart Permasalahan Kedua untuk Huruf

viii
2.3 Script Program
2.3.1 Script Program Permasalahan Pertama
nilai = input("Masukkan nilai dari tiap bilangan (gunakan spasi untuk
memisahkan bilangan) : ")
list_bil_input = nilai.split()
list_bil_input.sort()
list_baru = []
for i in list_bil_input:
if type(i)==str:
list_baru.append(int(i))
print(list_baru)
list_baru.sort()

hasil = ' '


list_baru2 = []
list_baru2.append(list_baru[0])

for bil in list_baru[1:]:


list_baru2.append(bil)
if list_baru2[-1] == list_baru2[-2]:
hasil = 'terdapat duplikasi'
break
else:
hasil = 'tidak terdapat duplikasi'
print(hasil)
print(list_baru)
2.3.2 Script Program Permasalahan Kedua
kalimat = input('Masukkan kalimat :')
kalimat1 = kalimat.replace(",",' ')

ix
kalimat2 = kalimat1.replace(".",' ')
kalimat3 = kalimat2.replace("?",' ')
kalimat4 = kalimat3.replace("!",' ')
list_kalimat = kalimat4.split()
jumlah_kata = len(list_kalimat)

hitung_kata = {}
for kata in list_kalimat:
kata = kata.lower()
hitung_kata[kata] = hitung_kata.get(kata, 0) + 1
print('Banyak kemunculan kata:',hitung_kata)

persentase_kata = {kata: hitung / jumlah_kata * 100 for kata, hitung i

jumlah_huruf = 0
hitung_huruf = {}
for huruf in kalimat:
if huruf.isalpha():
huruf = huruf.lower()
hitung_huruf[huruf] = hitung_huruf.get(huruf, 0) + 1
jumlah_huruf += 1

persentase_huruf = {huruf: hitung / jumlah_huruf * 100 for huruf,


hitung in hitung_huruf.items()}

for kata, persentase in persentase_kata.items():


print('Persentase munculnya kata',f'{kata}: {persentase:.2f}%')

x
for huruf, persentase in persentase_huruf.items():
print('Persentase munculnya huruf',f'{huruf}: {persentase:.2f}%')

2.4 Output
2.4.1 Output Permasalahan Pertama
Masukan nilai dari tiap bilangan (gunakan spasi untuk memisahkan
bilangan) : 1 2 3 4 5 2 3 4 5

[1, 2, 2, 3, 3, 4, 4, 5, 5]

terdapat duplikasi

[1, 2, 2, 3, 3, 4, 4, 5, 5]

2.4.2 Output Permasalahan Kedua


Masukan kalimat :aku, ya AKU. namanya? YA wildan!
Banyak kemunculan kata: {'aku': 2, 'ya': 2, 'namanya': 1, 'wildan': 1}
Persentase munculnya kata aku: 33.33%
Persentase munculnya kata ya: 33.33%
Persentase munculnya kata namanya: 16.67%
Persentase munculnya kata wildan: 16.67%
Persentase munculnya huruf a: 34.78%
Persentase munculnya huruf k: 8.70%
Persentase munculnya huruf u: 8.70%
Persentase munculnya huruf y: 13.04%
Persentase munculnya huruf n: 13.04%
Persentase munculnya huruf m: 4.35%
Persentase munculnya huruf w: 4.35%
Persentase munculnya huruf i: 4.35%
Persentase munculnya huruf l: 4.35%
Persentase munculnya huruf d: 4.35%

xi
BAB III

PENUTUP

3.1 Kesimpulan
Dalam laporan praktikum ini, penulis telah menjelaskan penggunaan
bahasa pemrograman python dalam menganalisis dan menyelesaikan program
untuk mengecek ada tidaknya duplikasi dalam suatu list bilangan dan program
yang meminta pengguna untuk memasukkan sebuah kalimat sehingga
program ini dapat menganalisis kalimat tersebut untuk menghitung jumlah
kemunculan setiap kata dan menghitung persentase kemunculan tiap huruf
dalam kalimat tersebut menggunakan bahasa pemrograman python. Melalui
praktikum ini, mahasiswa diperkenalkan pada pemanfaatan teknologi
perangkat lunak untuk memahami dan menyelesaikan permasalahan yang ada
untuk diselesaikan melalui sebuah program. Dengan demikian, laporan
praktikum ini tidak hanya mencapai tujuan utama untuk memperkenalkan
mahasiswa pada algoritma dalam menyelesaikan sebuah permasalahan, tetapi
juga memberikan pemahaman yang mendalam tentang bahasa pemrograman
pemrograman sehingga algoritma tersebut dapat diterapkan dalam sebuah
program agar sebuah masalah dapat diselesaikan dengan mudah dengan
bantuan komputasi. Semua ini memberikan dasar yang kokoh bagi mahasiswa
untuk menghadapi tantangan di dunia kerja saat ini yang sangat mengandalkan
pemrograman untuk menyelesaikan sebuah permasalahan, baik itu
permasalahan sederhana atau bahkan permasalahan yang sangat kompleks.
Penulis yakin bahwa pengetahuan dan keterampilan yang diperoleh melalui
praktikum ini akan membekali mahasiswa dengan landasan yang kuat dalam
memahami dan mengatasi berbagai masalah menggunakan algoritma dan
pemrograman di masa depan. Berdasarkan laporan ini, dapat disimpulkan
bahwa algoritma dan pemrograman dapat menyelesaikan program untuk
mengecek ada tidaknya duplikasi dalam suatu list bilangan dan program yang
meminta pengguna untuk memasukkan sebuah kalimat sehingga program ini
dapat menganalisis kalimat tersebut untuk menghitung jumlah kemunculan

xii
setiap kata dan menghitung persentase kemunculan tiap huruf dalam kalimat
tersebut dengan menggunakan bahasa python.

xiii
DAFTAR PUSTAKA

[1] Muhammad Romzi, Budi Kurniawan, “PEMBELAJARAN


PEMROGRAMAN PYTHON DENGAN PENDEKATAN LOGIKA
ALGORITMA,” JTIM: Jurnal Teknik Informatika Mahakarya, vol. 3, no. 2,
pp. 1-8, 2020.

[2] A. Kadir, Dasar Logika Pemrograman Komputer, PT. Elex Media, 2017.

[3] Rinaldi Munir, Leony Lidya, Algoritma dan pemrograman : dalam bahasa
pascal, C, dan C++, Informatika Bandung, 2016.

xiv

Anda mungkin juga menyukai