SlideShare a Scribd company logo
Pemrograman Python
3.x
Herry Prasetyo
Pemrograman Dasar – Herry Prasetyo | 1
Apa itu Python?
Python adalah bahasa pemrograman yang populer. Python diciptakan oleh Guido van
Rossum dan dirilis pada tahun 1991.
Python digunakan untuk:
• Pengembangan web (server-side)
• Pengembangan perangkat lunak
• Matematika
• Scripting sistem
Apa yang dapat dilakukan Python?
• Python dapat digunakan di server untuk membuat aplikasi web.
• Python dapat digunakan bersama perangkat lunak lain untuk membuat alur kerja.
• Python dapat terhubung ke sistem basis data. Python juga dapat membaca dan
memodifikasi file.
• Python dapat digunakan untuk menangani big data dan melakukan perhitungan
matematika yang kompleks.
• Python dapat digunakan untuk prototyping cepat atau untuk pengembangan
perangkat lunak siap produksi.
Mengapa menggunakan Python?
• Portabilitas: Python dapat berjalan di berbagai platform, seperti Windows, Mac,
Linux, dan Raspberry Pi.
• Sintaksis sederhana: Sintaks Python mirip dengan bahasa Inggris.
• Kode lebih ringkas: Python memungkinkan pengembang menulis program dengan
lebih sedikit baris kode dibandingkan beberapa bahasa pemrograman lainnya.
• Interpreter: Python berjalan di sistem interpreter, yang berarti kode dapat dieksekusi
segera setelah ditulis, memungkinkan prototyping yang lebih cepat.
• Pendekatan pemrograman: Python dapat digunakan dalam cara prosedural,
berorientasi objek, atau fungsional.
Hal penting yang perlu diketahui
• Versi terbaru Python adalah Python 3, yang akan digunakan dalam tutorial ini.
• Python 2 masih banyak digunakan, tetapi tidak lagi menerima pembaruan selain
pembaruan keamanan.
Pemrograman Dasar – Herry Prasetyo | 2
• Dalam tutorial ini, kode Python akan ditulis di editor teks. Namun, Anda juga dapat
menulis Python di Lingkungan Pengembangan Terpadu (IDE), seperti Thonny,
Pycharm, Netbeans, atau Visual Studio Code, yang sangat berguna saat mengelola
koleksi file Python yang lebih besar.
Sintaks Python dibandingkan dengan bahasa pemrograman lainnya
• Keterbacaan: Python dirancang agar mudah dibaca dan memiliki beberapa
kesamaan dengan bahasa Inggris serta dipengaruhi oleh logika matematika.
• Baris baru: Python menggunakan baris baru untuk menyelesaikan perintah,
sedangkan bahasa lain sering menggunakan titik koma (;) atau tanda kurung.
• Indentasi: Python menggunakan indentasi (spasi putih) untuk menentukan cakupan,
seperti cakupan loop, fungsi, dan kelas. Sebaliknya, banyak bahasa pemrograman
lain menggunakan kurung kurawal untuk tujuan ini.
Dengan kelebihan-kelebihan tersebut, Python telah menjadi salah satu bahasa pemrograman
yang paling banyak digunakan di dunia.
Pemrograman Dasar – Herry Prasetyo | 3
Tipe Data dalam Pemrograman Python
Python memiliki beberapa tipe data bawaan (built-in data types) yang digunakan untuk
menyimpan berbagai jenis nilai. Tipe data ini dikelompokkan ke dalam beberapa kategori,
yaitu:
1. Tipe Data Numerik
Tipe data yang digunakan untuk menyimpan angka, baik bilangan bulat, bilangan desimal
(floating point), maupun bilangan kompleks.
Tipe Data Contoh Deskripsi
int x = 10 Bilangan bulat (integer)
float y = 3.14 Bilangan desimal (floating point)
complex z = 3 + 4j Bilangan kompleks (real + imajiner)
Contoh Kode:
x = 10 int
y = 3.14 float
z = 3 + 4j complex
print(type(x)) Output: <class 'int'>
print(type(y)) Output: <class 'float'>
print(type(z)) Output: <class 'complex'>
2. Tipe Data Teks
Tipe data yang digunakan untuk menyimpan teks atau string.
Tipe Data Contoh Deskripsi
str nama = "Python" Teks atau string
Contoh Kode:
nama = "Python"
print(type(nama)) Output: <class 'str'>
Catatan: String di Python dapat dibuat menggunakan tanda kutip tunggal (') atau kutip ganda
(").
Pemrograman Dasar – Herry Prasetyo | 4
3. Tipe Data Boolean
Tipe data yang hanya memiliki dua nilai: True atau False.
Tipe Data Contoh Deskripsi
bool is_active = True Nilai logika (True/False)
Contoh Kode:
is_active = True
is_login = False
print(type(is_active)) Output: <class 'bool'>
print(type(is_login)) Output: <class 'bool'>
4. Tipe Data Urutan (Sequence)
Tipe data yang dapat menyimpan beberapa nilai dalam satu variabel. Data ini disusun secara
berurutan.
Tipe Data Contoh Deskripsi
list data = [1, 2, 3] Daftar yang dapat diubah
tuple data = (1, 2, 3) Daftar yang tidak dapat diubah
range data = range(5) Urutan bilangan (0, 1, 2, 3, 4)
Contoh Kode:
List
data_list = [1, 2, 3, 4]
print(type(data_list)) Output: <class 'list'>
Tuple
data_tuple = (1, 2, 3, 4)
print(type(data_tuple)) Output: <class 'tuple'>
Range
data_range = range(5)
print(type(data_range)) Output: <class 'range'>
Pemrograman Dasar – Herry Prasetyo | 5
Perbedaan List dan Tuple:
• List dapat diubah (mutable).
• Tuple tidak dapat diubah (immutable).
5. Tipe Data Koleksi (Set)
Tipe data yang menyimpan beberapa nilai yang tidak berurutan dan tidak memiliki duplikasi.
Tipe Data Contoh Deskripsi
set data = {1, 2, 3} Kumpulan data unik tanpa urutan
frozenset data = frozenset({1, 2, 3}) Set yang tidak bisa diubah (immutable)
Contoh Kode:
Set
data_set = {1, 2, 3, 4, 4}
print(type(data_set)) Output: <class 'set'>
Frozenset
data_frozenset = frozenset({1, 2, 3, 4})
print(type(data_frozenset)) Output: <class 'frozenset'>
Catatan:
• Set tidak memiliki elemen duplikat. Jika Anda mencoba memasukkan elemen yang
sama, Python akan menghapus duplikatnya.
• Frozenset adalah set yang tidak dapat diubah (immutable).
6. Tipe Data Pemetaan (Mapping)
Tipe data yang menyimpan pasangan kunci-nilai.
Tipe Data Contoh Deskripsi
dict data = {"nama": "Python"} Pasangan kunci: nilai (key-value)
Contoh Kode:
data_dict = {"nama": "Python", "versi": 3.9}
print(type(data_dict)) Output: <class 'dict'>
Catatan:
Pemrograman Dasar – Herry Prasetyo | 6
• Dictionary (dict) adalah tipe data yang berisi pasangan kunci dan nilai.
• Kunci (key) harus bersifat unik, sedangkan nilai (value) bisa berupa tipe data apa saja.
7. Tipe Data Biner
Tipe data ini digunakan untuk bekerja dengan data biner.
Tipe Data Contoh Deskripsi
bytes data = b"Python" Data biner (byte)
bytearray data = bytearray(5) Data byte yang dapat diubah
memoryview data = memoryview(bytes(5)) Objek memori dari bytes
Contoh Kode:
Bytes
data_bytes = b"Python"
print(type(data_bytes)) Output: <class 'bytes'>
Bytearray
data_bytearray = bytearray(5)
print(type(data_bytearray)) Output: <class 'bytearray'>
Memoryview
data_memoryview = memoryview(bytes(5))
print(type(data_memoryview)) Output: <class 'memoryview'>
8. Tipe Data None
Tipe data yang digunakan untuk menyatakan bahwa sebuah variabel tidak memiliki nilai.
Tipe Data Contoh Deskripsi
NoneType x = None Menyatakan nilai kosong
Contoh Kode:
x = None
print(type(x)) Output: <class 'NoneType'>
Catatan:
Pemrograman Dasar – Herry Prasetyo | 7
• None digunakan untuk merepresentasikan kekosongan nilai.
• Ini biasanya digunakan dalam parameter fungsi atau nilai awal dari variabel.
Ringkasan Tipe Data di Python
Kategori Tipe Data Contoh
Numerik int, float, complex 10, 3.14, 3 + 4j
Teks str "Python"
Boolean bool True, False
Urutan list, tuple, range [1, 2], (1, 2), range(5)
Koleksi set, frozenset {1, 2}, frozenset({1, 2})
Pemetaan dict {"key": "value"}
Biner bytes, bytearray, memoryview b"Python"
None NoneType None
Pemrograman Dasar – Herry Prasetyo | 8
Minggu 2
Percabangan (If, Else, Elif)
Latihan 1: Program Cek Nilai Ujian
Deskripsi: Program ini meminta pengguna memasukkan nilai ujian, kemudian menilai apakah
pengguna lulus atau tidak berdasarkan kriteria berikut:
• Nilai >= 75 → Lulus
• Nilai < 75 → Tidak Lulus
Penjelasan Program
Program ini bertujuan untuk menentukan kelulusan siswa berdasarkan nilai ujian yang
dimasukkan oleh pengguna. Berikut adalah penjelasan dari setiap baris kode:
1. Input Data dari Pengguna
nilai = int(input("Masukkan nilai ujian Anda: "))
• Fungsi input() digunakan untuk meminta pengguna memasukkan nilai dari keyboard.
• Data yang diinput oleh pengguna awalnya bertipe string, tetapi karena kita ingin
memprosesnya sebagai angka, maka digunakan int() untuk mengonversi input
menjadi bilangan bulat (integer).
• Nilai tersebut disimpan dalam variabel nilai.
Contoh:
Masukkan nilai ujian Anda: 80
Jika pengguna memasukkan 80, maka nilai tersebut disimpan di variabel nilai.
# Input dari pengguna
nilai = int(input("Masukkan nilai ujian Anda: "))
# Logika if-else
if nilai >= 75:
print(f"Selamat! Anda lulus dengan nilai {nilai}.")
else:
print(f"Maaf, Anda tidak lulus. Nilai Anda adalah
{nilai}.")
Pemrograman Dasar – Herry Prasetyo | 9
2. Logika Percabangan (if-else)
if nilai >= 75:
print(f"Selamat! Anda lulus dengan nilai {nilai}.")
else:
print(f"Maaf, Anda tidak lulus. Nilai Anda adalah {nilai}.")
Penjelasan Logika
1. if nilai >= 75:
o Mengecek apakah nilai yang dimasukkan lebih besar atau sama dengan 75.
o Jika kondisi benar (True), maka program akan menjalankan baris berikutnya,
yaitu:
o print(f"Selamat! Anda lulus dengan nilai {nilai}.")
▪ Teks ini akan dicetak ke layar dengan menampilkan nilai dari variabel
nilai.
▪ F-string (f"...") digunakan agar nilai variabel nilai dapat dimasukkan ke
dalam teks.
Contoh Output:
Selamat! Anda lulus dengan nilai 80.
2. else:
o Jika kondisi pada if tidak terpenuhi (False), maka program akan menjalankan
perintah pada bagian else:
o print(f"Maaf, Anda tidak lulus. Nilai Anda adalah {nilai}.")
▪ Sama seperti sebelumnya, teks ini akan menampilkan nilai variabel
nilai menggunakan F-string.
Contoh Output:
Maaf, Anda tidak lulus. Nilai Anda adalah 60.
Contoh Eksekusi Program
Contoh 1 (Nilai 80)
Masukkan nilai ujian Anda: 80
Selamat! Anda lulus dengan nilai 80.
Penjelasan:
• Pengguna memasukkan nilai 80.
Pemrograman Dasar – Herry Prasetyo | 10
• Karena 80 >= 75, maka program mencetak pesan "Selamat! Anda lulus dengan nilai
80."
Contoh 2 (Nilai 60)
Masukkan nilai ujian Anda: 60
Maaf, Anda tidak lulus. Nilai Anda adalah 60.
Penjelasan:
• Pengguna memasukkan nilai 60.
• Karena 60 < 75, maka program mencetak pesan "Maaf, Anda tidak lulus. Nilai Anda
adalah 60."
Kesimpulan
1. Program ini menerima input nilai dari pengguna.
2. Program kemudian mengecek apakah nilai tersebut lebih besar atau sama dengan 75.
3. Jika nilai memenuhi kriteria (>= 75), maka pengguna dinyatakan lulus.
4. Jika tidak memenuhi kriteria (< 75), maka pengguna dinyatakan tidak lulus.
Latihan 2: Program Kategori Usia
Deskripsi: Program ini mengelompokkan usia seseorang ke dalam kategori:
• Usia < 13 → Anak-anak
• Usia 13-19 → Remaja
• Usia 20-59 → Dewasa
Pemrograman Dasar – Herry Prasetyo | 11
• Usia >= 60 → Lansia
Penjelasan Program
Program ini bertujuan untuk mengelompokkan usia seseorang ke dalam 4 kategori,
yaitu:
• Anak-anak (usia di bawah 13 tahun)
• Remaja (usia 13 hingga 19 tahun)
• Dewasa (usia 20 hingga 59 tahun)
• Lansia (usia 60 tahun ke atas)
Program ini menggunakan logika percabangan if-elif-else untuk menentukan kategori
usia. Berikut penjelasan dari setiap bagian kode.
1. Input Data dari Pengguna
usia = int(input("Masukkan usia Anda: "))
• input(): Meminta pengguna untuk memasukkan usia dari keyboard.
• Data yang diperoleh dari input() bertipe string, sehingga harus dikonversi ke
tipe data integer (int) menggunakan int().
• Nilai yang dimasukkan oleh pengguna kemudian disimpan ke dalam variabel
usia.
Contoh:
Masukkan usia Anda: 18
Jika pengguna memasukkan 18, maka nilai tersebut disimpan di variabel usia.
# Input dari pengguna
usia = int(input("Masukkan usia Anda: "))
# Logika if-elif-else
if usia < 13:
print("Anda adalah Anak-anak.")
elif 13 <= usia <= 19:
print("Anda adalah Remaja.")
elif 20 <= usia <= 59:
print("Anda adalah Dewasa.")
else:
print("Anda adalah Lansia.")
Pemrograman Dasar – Herry Prasetyo | 12
2. Logika Percabangan (if-elif-else)
Program menggunakan if-elif-else untuk mengevaluasi usia pengguna dan
mengelompokkannya dalam kategori tertentu.
Bagian 1: Kondisi Anak-anak
if usia < 13:
print("Anda adalah Anak-anak.")
• Jika usia lebih kecil dari 13, maka program akan mencetak:
• Anda adalah Anak-anak.
• Artinya, jika usia pengguna adalah 12 tahun atau kurang, mereka akan
dikategorikan sebagai Anak-anak.
Contoh Output:
Masukkan usia Anda: 10
Anda adalah Anak-anak.
Bagian 2: Kondisi Remaja
elif 13 <= usia <= 19:
print("Anda adalah Remaja.")
• Jika usia pengguna berada dalam rentang 13 hingga 19 (termasuk 13 dan 19),
maka program akan mencetak:
• Anda adalah Remaja.
• Rentang usia ini menggunakan operator lebih besar sama dengan (>=) dan
lebih kecil sama dengan (<=) secara bersamaan.
• Artinya, jika usia pengguna adalah 13, 14, 15, 16, 17, 18, atau 19 tahun,
mereka akan dikategorikan sebagai Remaja.
Contoh Output:
Masukkan usia Anda: 15
Anda adalah Remaja.
Bagian 3: Kondisi Dewasa
elif 20 <= usia <= 59:
Pemrograman Dasar – Herry Prasetyo | 13
print("Anda adalah Dewasa.")
• Jika usia pengguna berada dalam rentang 20 hingga 59 (termasuk 20 dan 59), maka
program akan mencetak:
• Anda adalah Dewasa.
• Artinya, jika usia pengguna adalah 20 hingga 59 tahun, mereka akan dikategorikan
sebagai Dewasa.
Contoh Output:
Masukkan usia Anda: 45
Anda adalah Dewasa.
Bagian 4: Kondisi Lansia (else)
else:
print("Anda adalah Lansia.")
• Jika usia pengguna tidak memenuhi semua kondisi sebelumnya (tidak masuk kategori
Anak-anak, Remaja, atau Dewasa), maka program akan mencetak:
• Anda adalah Lansia.
• Artinya, jika usia pengguna adalah 60 tahun atau lebih, mereka akan dikategorikan
sebagai Lansia.
Contoh Output:
Masukkan usia Anda: 70
Anda adalah Lansia.
Contoh Eksekusi Program
Contoh 1 (Usia 8)
Masukkan usia Anda: 8
Anda adalah Anak-anak.
• Usia 8 masuk dalam kondisi usia < 13, sehingga pengguna dikategorikan sebagai
Anak-anak.
Contoh 2 (Usia 16)
Masukkan usia Anda: 16
Anda adalah Remaja.
Pemrograman Dasar – Herry Prasetyo | 14
• Usia 16 masuk dalam rentang 13 <= usia <= 19, sehingga pengguna dikategorikan
sebagai Remaja.
Contoh 3 (Usia 35)
Masukkan usia Anda: 35
Anda adalah Dewasa.
• Usia 35 masuk dalam rentang 20 <= usia <= 59, sehingga pengguna dikategorikan
sebagai Dewasa.
Contoh 4 (Usia 70)
Masukkan usia Anda: 70
Anda adalah Lansia.
• Usia 70 tidak memenuhi kondisi usia < 13, 13 <= usia <= 19, atau 20 <= usia <= 59,
sehingga pengguna dikategorikan sebagai Lansia.
Kesimpulan
1. Program ini meminta pengguna memasukkan usia.
2. Berdasarkan usia yang dimasukkan, program akan mengevaluasi kondisi
menggunakan percabangan if-elif-else.
3. Usia pengguna akan dikelompokkan ke dalam 4 kategori:
o Anak-anak (usia < 13)
o Remaja (13 <= usia <= 19)
o Dewasa (20 <= usia <= 59)
o Lansia (usia >= 60)
4. Program mencetak kategori yang sesuai ke layar.
Latihan 3: Program Cek Ganjil/Genap
Deskripsi: Program ini mengecek apakah bilangan yang dimasukkan adalah ganjil atau
genap.
• Bilangan habis dibagi 2 → Genap
• Bilangan tidak habis dibagi 2 → Ganjil
Pemrograman Dasar – Herry Prasetyo | 15
Penjelasan Program
Program ini bertujuan untuk menentukan apakah sebuah bilangan adalah bilangan
genap atau bilangan ganjil. Program menggunakan logika percabangan if-else
berdasarkan sisa hasil bagi (modulus) 2.
1. Input Data dari Pengguna
bilangan = int(input("Masukkan sebuah bilangan: "))
• input(): Meminta pengguna untuk memasukkan bilangan dari keyboard.
• Data dari input() bertipe string, sehingga harus dikonversi ke integer (int)
menggunakan int().
• Nilai yang dimasukkan kemudian disimpan dalam variabel bilangan.
Contoh:
Masukkan sebuah bilangan: 7
Jika pengguna memasukkan 7, maka nilai tersebut disimpan ke dalam variabel
bilangan.
2. Logika Percabangan (if-else)
if bilangan % 2 == 0:
print(f"{bilangan} adalah bilangan Genap.")
else:
print(f"{bilangan} adalah bilangan Ganjil.")
Penjelasan Logika
# Input bilangan dari pengguna
bilangan = int(input("Masukkan sebuah bilangan: "))
# Logika if-else
if bilangan % 2 == 0:
print(f"{bilangan} adalah bilangan Genap.")
else:
print(f"{bilangan} adalah bilangan Ganjil.")
Pemrograman Dasar – Herry Prasetyo | 16
1. if bilangan % 2 == 0:
o Operasi modulus % digunakan untuk mendapatkan sisa hasil bagi dari
bilangan tersebut ketika dibagi dengan 2.
o Jika sisa dari bilangan % 2 adalah 0, maka bilangan tersebut adalah
bilangan genap.
o Jika kondisi ini terpenuhi, maka baris berikutnya akan dieksekusi:
o print(f"{bilangan} adalah bilangan Genap.")
▪ Program akan mencetak bilangan tersebut dan pesan "adalah
bilangan Genap." menggunakan F-string agar variabel bilangan
bisa dimasukkan ke dalam teks.
Contoh Output:
Masukkan sebuah bilangan: 8
8 adalah bilangan Genap.
2. else:
o Jika kondisi bilangan % 2 == 0 tidak terpenuhi (False), artinya bilangan
tersebut tidak habis dibagi 2, maka program akan menjalankan
perintah di bawah else.
o Artinya bilangan tersebut adalah bilangan ganjil.
o Program akan mencetak:
o print(f"{bilangan} adalah bilangan Ganjil.")
Contoh Output:
Masukkan sebuah bilangan: 7
7 adalah bilangan Ganjil.
Contoh Eksekusi Program
Contoh 1 (Bilangan Genap: 8)
Masukkan sebuah bilangan: 8
8 adalah bilangan Genap.
Penjelasan:
• Pengguna memasukkan 8.
• Proses: 8 % 2 = 0 (sisa hasil bagi adalah 0).
Pemrograman Dasar – Herry Prasetyo | 17
• Karena sisa hasil bagi adalah 0, maka program mencetak:
• 8 adalah bilangan Genap.
Contoh 2 (Bilangan Ganjil: 7)
Masukkan sebuah bilangan: 7
7 adalah bilangan Ganjil.
Penjelasan:
• Pengguna memasukkan 7.
• Proses: 7 % 2 = 1 (sisa hasil bagi adalah 1).
• Karena sisa hasil bagi bukan 0, maka program mencetak:
• 7 adalah bilangan Ganjil.
Contoh 3 (Bilangan Negatif: -3)
Masukkan sebuah bilangan: -3
-3 adalah bilangan Ganjil.
Penjelasan:
• Pengguna memasukkan -3.
• Proses: -3 % 2 = 1 (sisa hasil bagi adalah 1).
• Karena sisa hasil bagi bukan 0, maka program mencetak:
• -3 adalah bilangan Ganjil.
Contoh 4 (Bilangan Nol: 0)
Masukkan sebuah bilangan: 0
0 adalah bilangan Genap.
Penjelasan:
• Pengguna memasukkan 0.
• Proses: 0 % 2 = 0 (sisa hasil bagi adalah 0).
• Karena sisa hasil bagi adalah 0, maka program mencetak:
• 0 adalah bilangan Genap.
Pemrograman Dasar – Herry Prasetyo | 18
Catatan:
Meskipun bilangan 0 secara teknis bukan bilangan positif atau negatif, dalam konteks
keparitas (genap/ganjil), 0 dianggap sebagai bilangan genap.
Kesimpulan
1. Program menerima input dari pengguna berupa bilangan.
2. Program mengecek apakah bilangan tersebut habis dibagi 2 menggunakan
operator modulus (%).
3. Jika bilangan habis dibagi 2 (sisa bagi 0), maka bilangan tersebut adalah
genap.
4. Jika bilangan tidak habis dibagi 2 (sisa bagi 1), maka bilangan tersebut adalah
ganjil.
Latihan 4
Deskripsi:
Tentukan harga tiket bioskop berdasarkan usia pengunjung:
• Usia < 12 tahun → Rp 30.000
• Usia 12-59 tahun → Rp 50.000
• Usia >= 60 tahun → Rp 25.000
Instruksi:
1. Input usia dari pengguna.
2. Tentukan harga tiket berdasarkan usia.
Pemrograman Dasar – Herry Prasetyo | 19
Penjelasan Program
Program ini bertujuan untuk menghitung harga tiket berdasarkan usia pengguna. Program
menggunakan logika percabangan if-elif-else untuk menetapkan harga tiket sesuai dengan
kategori usia. Berikut adalah penjelasan dari setiap bagian kode.
1. Input Data dari Pengguna
usia = int(input("Masukkan usia Anda: "))
• input(): Meminta pengguna memasukkan usia dari keyboard.
• Data dari input() bertipe string, sehingga harus dikonversi ke integer (int)
menggunakan int().
• Usia yang dimasukkan oleh pengguna kemudian disimpan dalam variabel usia.
Contoh:
Masukkan usia Anda: 25
Jika pengguna memasukkan 25, maka nilai tersebut disimpan dalam variabel usia.
2. Logika Percabangan (if-elif-else)
if usia < 12:
harga_tiket = 30000
elif 12 <= usia <= 59:
harga_tiket = 50000
# Input dari pengguna
usia = int(input("Masukkan usia Anda: "))
# Logika if-elif-else
if usia < 12:
harga_tiket = 30000
elif 12 <= usia <= 59:
harga_tiket = 50000
else:
harga_tiket = 25000
print(f"Harga tiket untuk usia {usia} tahun adalah
Rp{harga_tiket}.")
Pemrograman Dasar – Herry Prasetyo | 20
else:
harga_tiket = 25000
Penjelasan Logika
Program menggunakan if-elif-else untuk menetapkan harga tiket sesuai usia.
1. if usia < 12:
o Jika usia pengguna kurang dari 12 tahun, maka harga tiket adalah Rp30.000.
o Variabel harga_tiket akan diisi dengan nilai 30000.
Contoh:
Jika pengguna memasukkan usia 8, maka kondisi usia < 12 terpenuhi.
Harga tiket ditetapkan sebagai:
harga_tiket = 30000
2. elif 12 <= usia <= 59:
o Jika usia pengguna berada dalam rentang 12 hingga 59 tahun (termasuk 12
dan 59), maka harga tiket adalah Rp50.000.
o Variabel harga_tiket akan diisi dengan nilai 50000.
Contoh:
Jika pengguna memasukkan usia 25, maka kondisi 12 <= usia <= 59 terpenuhi.
Harga tiket ditetapkan sebagai:
harga_tiket = 50000
Catatan:
Rentang 12 <= usia <= 59 menggunakan operator lebih besar sama dengan (>=) dan lebih
kecil sama dengan (<=), artinya usia 12 dan 59 termasuk dalam kategori ini.
3. else:
o Jika usia pengguna tidak memenuhi semua kondisi sebelumnya (tidak
masuk dalam usia < 12 atau 12 <= usia <= 59), maka harga tiket adalah
Rp25.000.
o Ini berarti usia 60 tahun ke atas akan dikenakan harga tiket Rp25.000.
o Variabel harga_tiket akan diisi dengan nilai 25000.
Contoh:
Jika pengguna memasukkan usia 70, maka kondisi usia < 12 dan 12 <= usia <= 59 tidak
terpenuhi, sehingga program masuk ke blok else.
Harga tiket ditetapkan sebagai:
harga_tiket = 25000
Pemrograman Dasar – Herry Prasetyo | 21
3. Menampilkan Hasil
print(f"Harga tiket untuk usia {usia} tahun adalah Rp{harga_tiket}.")
• Menggunakan F-string (f"...") untuk menampilkan informasi ke layar.
• F-string memungkinkan kita menyisipkan nilai variabel usia dan harga_tiket ke dalam
string.
• Program akan mencetak pesan dalam format:
• Harga tiket untuk usia <usia> tahun adalah Rp<harga_tiket>.
Contoh Output:
Masukkan usia Anda: 25
Harga tiket untuk usia 25 tahun adalah Rp50000.
Contoh Eksekusi Program
Contoh 1 (Usia 8)
Masukkan usia Anda: 8
Harga tiket untuk usia 8 tahun adalah Rp30000.
Penjelasan:
• Pengguna memasukkan usia 8.
• Karena 8 < 12, maka program menetapkan harga tiket menjadi Rp30.000.
Contoh 2 (Usia 25)
Masukkan usia Anda: 25
Harga tiket untuk usia 25 tahun adalah Rp50000.
Penjelasan:
• Pengguna memasukkan usia 25.
• Karena 12 <= 25 <= 59, maka program menetapkan harga tiket menjadi Rp50.000.
Contoh 3 (Usia 12)
Masukkan usia Anda: 12
Harga tiket untuk usia 12 tahun adalah Rp50000.
Penjelasan:
Pemrograman Dasar – Herry Prasetyo | 22
• Pengguna memasukkan usia 12.
• Karena 12 <= 12 <= 59, maka program menetapkan harga tiket menjadi Rp50.000.
Contoh 4 (Usia 59)
Masukkan usia Anda: 59
Harga tiket untuk usia 59 tahun adalah Rp50000.
Penjelasan:
• Pengguna memasukkan usia 59.
• Karena 12 <= 59 <= 59, maka program menetapkan harga tiket menjadi Rp50.000.
Contoh 5 (Usia 70)
Masukkan usia Anda: 70
Harga tiket untuk usia 70 tahun adalah Rp25000.
Penjelasan:
• Pengguna memasukkan usia 70.
• Karena 70 tidak memenuhi kondisi usia < 12 dan 12 <= usia <= 59, maka program
masuk ke blok else.
• Harga tiket untuk usia 70 tahun adalah Rp25.000.
Kesimpulan
1. Program menerima input usia dari pengguna.
2. Program menetapkan harga tiket berdasarkan usia:
o Anak-anak (usia < 12): Rp30.000
o Dewasa (12 <= usia <= 59): Rp50.000
o Lansia (usia >= 60): Rp25.000
3. Program mencetak harga tiket yang sesuai ke layar.
Latihan 5 : Program Penghitung Diskon
Buat program yang menghitung total harga setelah diskon berdasarkan jumlah pembelian:
• Jika total pembelian >= 1.000.000, diskon 20%
Pemrograman Dasar – Herry Prasetyo | 23
• Jika total pembelian >= 500.000, diskon 10%
• Jika total pembelian < 500.000, tidak ada diskon
Instruksi:
1. Input total pembelian dari pengguna.
2. Hitung jumlah diskon dan total harga setelah diskon.
Penjelasan Kode Python: Program Penghitung Diskon
Kode ini adalah program penghitung diskon berdasarkan total pembelian. Program ini
menghitung jumlah potongan harga dan total yang harus dibayar setelah diskon. Berikut adalah
penjelasan kode secara rinci.
1⃣ Input dari Pengguna
total_pembelian = float(input("Masukkan total pembelian Anda: "))
Penjelasan:
• Program meminta pengguna untuk memasukkan total pembelian dalam bentuk angka
desimal (float).
• Fungsi input() akan menerima input dari pengguna sebagai string, lalu float() akan
mengonversi input tersebut menjadi bilangan desimal (contoh: 750000.50).
• Contoh input:
# Input dari pengguna
total_pembelian = float(input("Masukkan total pembelian
Anda: "))
# Logika if-elif-else
if total_pembelian >= 1000000:
diskon = 0.20 # Diskon 20%
elif total_pembelian >= 500000:
diskon = 0.10 # Diskon 10%
else:
diskon = 0 # Tidak ada diskon
# Hitung total harga setelah diskon
potongan_harga = total_pembelian * diskon
total_harga = total_pembelian - potongan_harga
print(f"Total pembelian: Rp{total_pembelian}")
print(f"Diskon: Rp{potongan_harga} ({diskon*100}%)")
print(f"Total yang harus dibayar: Rp{total_harga}")
Pemrograman Dasar – Herry Prasetyo | 24
• Masukkan total pembelian Anda: 750000
Hasil:
• Nilai total_pembelian sekarang bernilai 750000.
2⃣ Logika If-Elif-Else (Percabangan)
if total_pembelian >= 1000000:
diskon = 0.20 # Diskon 20%
elif total_pembelian >= 500000:
diskon = 0.10 # Diskon 10%
else:
diskon = 0 # Tidak ada diskon
Penjelasan:
• Percabangan (if-elif-else) digunakan untuk menentukan persentase diskon
berdasarkan jumlah total pembelian.
• Logika If-Elif-Else:
o Jika total pembelian lebih besar atau sama dengan 1.000.000, maka diskon
adalah 20% (0.20).
o Jika total pembelian lebih besar atau sama dengan 500.000, tetapi kurang dari
1.000.000, maka diskon adalah 10% (0.10).
o Jika total pembelian kurang dari 500.000, maka tidak ada diskon (diskon = 0).
Contoh Kasus:
• Jika total_pembelian = 1.200.000, maka program masuk ke bagian:
• if total_pembelian >= 1000000:
• diskon = 0.20 # Diskon 20%
Hasil: diskon = 0.20
• Jika total_pembelian = 800.000, maka kondisi pertama (total_pembelian >= 1000000)
tidak terpenuhi. Tetapi kondisi kedua terpenuhi:
• elif total_pembelian >= 500000:
• diskon = 0.10 # Diskon 10%
Hasil: diskon = 0.10
• Jika total_pembelian = 300.000, maka tidak ada kondisi yang terpenuhi, sehingga
program masuk ke bagian else:
• else:
Pemrograman Dasar – Herry Prasetyo | 25
• diskon = 0 # Tidak ada diskon
Hasil: diskon = 0
3⃣ Hitung Total Harga Setelah Diskon
# Hitung total harga setelah diskon
potongan_harga = total_pembelian * diskon
total_harga = total_pembelian - potongan_harga
Penjelasan:
1. Hitung Potongan Harga:
2. potongan_harga = total_pembelian * diskon
Rumus ini menghitung potongan harga berdasarkan total pembelian dan persentase diskon.
o Contoh:
Jika total_pembelian = 1.200.000 dan diskon = 0.20, maka:
o potongan_harga = 1.200.000 * 0.20
o = 240.000
3. Hitung Total Harga Setelah Diskon:
4. total_harga = total_pembelian - potongan_harga
Total harga yang harus dibayar adalah total pembelian dikurangi potongan harga.
o Contoh:
Jika total_pembelian = 1.200.000 dan potongan_harga = 240.000, maka:
o total_harga = 1.200.000 - 240.000
o = 960.000
4⃣ Menampilkan Output ke Layar
print(f"Total pembelian: Rp{total_pembelian}")
print(f"Diskon: Rp{potongan_harga} ({diskon*100}%)")
print(f"Total yang harus dibayar: Rp{total_harga}")
Penjelasan:
• print() digunakan untuk mencetak output ke layar.
• f-string (f"...") memungkinkan kita memasukkan variabel langsung ke dalam string.
Contoh:
• total_pembelian = 1200000
Pemrograman Dasar – Herry Prasetyo | 26
• print(f"Total pembelian: Rp{total_pembelian}")
Akan mencetak:
Total pembelian: Rp1200000
• Diskon dalam Persen:
• print(f"Diskon: Rp{potongan_harga} ({diskon*100}%)")
Karena diskon yang dihitung adalah desimal (misal 0.20), maka dikalikan dengan 100 untuk
mengonversinya ke bentuk persen.
o Jika diskon = 0.20, maka:
o diskon*100 = 20
Jadi, program mencetak:
Diskon: Rp240000 (20%)
• Total Harga Setelah Diskon:
• print(f"Total yang harus dibayar: Rp{total_harga}")
Contoh Kasus
Input 1: Total Pembelian = 1.200.000
Input:
Masukkan total pembelian Anda: 1200000
Proses Logika:
1. Total pembelian = 1.200.000
2. Total pembelian >= 1.000.000 → Diskon 20%
3. Potongan harga:
4. 1.200.000 * 0.20 = 240.000
5. Total harga yang harus dibayar:
6. 1.200.000 - 240.000 = 960.000
Output:
Total pembelian: Rp1200000
Diskon: Rp240000.0 (20.0%)
Total yang harus dibayar: Rp960000.0
Input 2: Total Pembelian = 800.000
Pemrograman Dasar – Herry Prasetyo | 27
Input:
Masukkan total pembelian Anda: 800000
Proses Logika:
1. Total pembelian = 800.000
2. Total pembelian >= 500.000 → Diskon 10%
3. Potongan harga:
4. 800.000 * 0.10 = 80.000
5. Total harga yang harus dibayar:
6. 800.000 - 80.000 = 720.000
Output:
Total pembelian: Rp800000
Diskon: Rp80000.0 (10.0%)
Total yang harus dibayar: Rp720000.0
Input 3: Total Pembelian = 300.000
Input:
Masukkan total pembelian Anda: 300000
Proses Logika:
1. Total pembelian = 300.000
2. Total pembelian < 500.000 → Tidak ada diskon
3. Potongan harga:
4. 300.000 * 0 = 0
5. Total harga yang harus dibayar:
6. 300.000 - 0 = 300.000
Output:
Total pembelian: Rp300000
Diskon: Rp0 (0%)
Total yang harus dibayar: Rp300000.0
Kesimpulan
1. Input: Pengguna memasukkan jumlah total pembelian.
Pemrograman Dasar – Herry Prasetyo | 28
2. Logika Diskon: Diskon dihitung berdasarkan kondisi tertentu:
o Diskon 20% jika total pembelian >= Rp1.000.000
o Diskon 10% jika total pembelian >= Rp500.000
o Tidak ada diskon jika total pembelian < Rp500.000
3. Proses: Potongan harga dihitung dari diskon, dan total harga akhir diperoleh dari
pengurangan total pembelian dengan potongan harga.
4. Output: Total pembelian, potongan harga, dan total harga yang harus dibayar.
Soal 1: Menentukan Kategori Nilai Ujian
Buat program Python yang menerima input nilai ujian dari pengguna, kemudian menampilkan
kategori nilai sebagai berikut:
• Nilai >= 90 : A
• Nilai >= 80 dan < 90 : B
• Nilai >= 70 dan < 80 : C
• Nilai >= 60 dan < 70 : D
• Nilai < 60 : E
Soal 2: Menentukan Jenis Bilangan
Buat program Python yang menerima input bilangan dari pengguna, lalu tentukan jenis
bilangan tersebut:
• Jika bilangan tersebut adalah bilangan positif, tampilkan pesan "Bilangan Positif".
• Jika bilangan tersebut adalah bilangan negatif, tampilkan pesan "Bilangan Negatif".
• Jika bilangan tersebut adalah 0, tampilkan pesan "Bilangan Nol".
Soal 3: Menentukan Diskon Berdasarkan Total Pembelian
Buat program Python yang menerima input total pembelian dari pengguna, kemudian tentukan
diskon yang diterima:
• Jika pembelian >= 1.000.000, diskon 20%
• Jika pembelian >= 500.000 dan < 1.000.000, diskon 10%
• Jika pembelian < 500.000, tidak ada diskon.
Hitung juga total pembayaran setelah diskon diterapkan.
Soal 4: Menentukan Tahun Kabisat
Buat program Python yang meminta input tahun dari pengguna, kemudian tentukan apakah
tahun tersebut merupakan tahun kabisat atau bukan tahun kabisat.
Aturan Tahun Kabisat:
Pemrograman Dasar – Herry Prasetyo | 29
• Tahun habis dibagi 4 dan tidak habis dibagi 100, atau
• Tahun habis dibagi 400
Soal 5: Menentukan Zodiak Berdasarkan Bulan dan Tanggal
Buat program Python yang meminta input bulan dan tanggal dari pengguna, kemudian
tentukan zodiak yang sesuai.
Zodiak Tanggal
Capricorn 22 Des - 19 Jan
Aquarius 20 Jan - 18 Feb
Pisces 19 Feb - 20 Mar
Aries 21 Mar - 19 Apr
Taurus 20 Apr - 20 Mei
Gemini 21 Mei - 20 Jun
Cancer 21 Jun - 22 Jul
Leo 23 Jul - 22 Agu
Virgo 23 Agu - 22 Sep
Libra 23 Sep - 22 Okt
Scorpio 23 Okt - 21 Nov
Sagittarius 22 Nov - 21 Des
Input Contoh:
Output Contoh:
Masukkan bulan (1-12): 8
Masukkan tanggal (1-31): 15
Zodiak Anda adalah Leo.
Pemrograman Dasar – Herry Prasetyo | 30

More Related Content

PPTX
pertemuan2.pptx
DOCX
Belajar Python.docx
PPTX
Materi bahasa pemrograman phyton informatika.pptx
PDF
01. Pengenalan Pemrograman Bahasa Pyhton.pdf
PPTX
PerteHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHtx
PPT
Bab3 tipe-data-control
PPTX
mengenal bahasa python untuk pemula di sekolah
PPTX
Dasar Pemrograman Python untuk pembelajaran di SMK
pertemuan2.pptx
Belajar Python.docx
Materi bahasa pemrograman phyton informatika.pptx
01. Pengenalan Pemrograman Bahasa Pyhton.pdf
PerteHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHtx
Bab3 tipe-data-control
mengenal bahasa python untuk pemula di sekolah
Dasar Pemrograman Python untuk pembelajaran di SMK

Similar to Pemrograman Dasar Python Dari Dasar Sampai bisa (20)

PPTX
Python Dasar.pptx
PPTX
Wellcome to python
PPTX
Kelompok1RK
PPTX
Praktikum Metode Numerik0_Menggunakan Python.pptx
PDF
207-P02.pdf
PPTX
Kelompok 4 [Apasih] - Week2 Learning Progress Review
PDF
01 Mengenal Struktur Data
PDF
Pengenalan Variabel, Tipe Data, Input, dan Output
PPT
Poss upi-python-dasar-part1
PDF
Pelatihan Python Dasar Part 1 - POSS UPI
PPTX
Materi - Algoritma & Pemrograman.pptx
PDF
Hendri python
PPTX
Presentasi Proramming Python Tinkat Dasar
PPTX
Pengantar_Python.pptx
PPTX
Slide-INF-Modul-1.pptx
PPTX
Slide-INF-Modul-1.pptx
PDF
BAB 1 - Pengenalan Bahasa Pemrograman.pdf
DOCX
Sharing programming - Python Intro
PPTX
Python Programming Basic
PDF
Tutorial_Pemrograman_Python_2_Untuk_Pemu.pdf
Python Dasar.pptx
Wellcome to python
Kelompok1RK
Praktikum Metode Numerik0_Menggunakan Python.pptx
207-P02.pdf
Kelompok 4 [Apasih] - Week2 Learning Progress Review
01 Mengenal Struktur Data
Pengenalan Variabel, Tipe Data, Input, dan Output
Poss upi-python-dasar-part1
Pelatihan Python Dasar Part 1 - POSS UPI
Materi - Algoritma & Pemrograman.pptx
Hendri python
Presentasi Proramming Python Tinkat Dasar
Pengantar_Python.pptx
Slide-INF-Modul-1.pptx
Slide-INF-Modul-1.pptx
BAB 1 - Pengenalan Bahasa Pemrograman.pdf
Sharing programming - Python Intro
Python Programming Basic
Tutorial_Pemrograman_Python_2_Untuk_Pemu.pdf
Ad

More from Herry Prasetyo (20)

PDF
Matematika Kelas 1 SD Hanya untuk kepentingan pribadi
PDF
Modul AJar Rekayasa Perangkat Lunak 2024
PPTX
Luring DI Makasar pelatihan mobile pptx
PDF
"Web Development - Inovasi Digital 2024"
PDF
Head first laravel
PDF
Modul Laravel
PDF
Modul Ajar Basis Data
PDF
WAWASAN KEBANGSAAN DAN NILAI NILAI BELA NEGARA
PDF
MODUL KEDUA.pdf
PDF
Modul Pertama.pdf
PDF
PDF
Sertifikat Dicoding
PDF
Flutter movie apps tutor
PDF
LatihanSederhanaAJA
PDF
Tutorial basicapp
PDF
Laravel[part ii]
PDF
Laravel[part 1]
PPTX
PPT
Konversi sistem bilangan
PDF
Mengamankan jaringan wifi
Matematika Kelas 1 SD Hanya untuk kepentingan pribadi
Modul AJar Rekayasa Perangkat Lunak 2024
Luring DI Makasar pelatihan mobile pptx
"Web Development - Inovasi Digital 2024"
Head first laravel
Modul Laravel
Modul Ajar Basis Data
WAWASAN KEBANGSAAN DAN NILAI NILAI BELA NEGARA
MODUL KEDUA.pdf
Modul Pertama.pdf
Sertifikat Dicoding
Flutter movie apps tutor
LatihanSederhanaAJA
Tutorial basicapp
Laravel[part ii]
Laravel[part 1]
Konversi sistem bilangan
Mengamankan jaringan wifi
Ad

Recently uploaded (20)

DOCX
Modul Ajar Deep Learning PJOK Kelas 12 SMA Terbaru 2025
DOCX
Modul Ajar Deep Learning Bahasa Inggris Lanjutan Kelas 11 SMA Terbaru 2025
PPTX
Model Lintas minat dan pendalaman materi
PDF
Gangguan Penglihatan Mata - presentasi biologi
DOCX
Modul Ajar Deep Learning PKWU Rekayasa Kelas 12 SMA Terbaru 2025
DOCX
Modul Ajar Deep Learning PAI & BP Kelas 12 SMA Terbaru 2025
PDF
Lembar Kerja Mahasiswa Konsep Sistem Operasi
PPTX
MATERI MPLS TENTANG KURIKULUM DAN KEGIATAN PEMBELAJARAN
PPTX
2. Modul 2 Fase C Berpikir Komputasional.pptx
PDF
Deck Rumah Pendidikan untuk Mendukung Program Prioritas Kemendikdasmen.pdf
PDF
ANALISIS SOALAN BAHASA MELAYU SPM 2021-2024 (1).pdf
DOCX
CONTOH RANCANGAN MODUL PROYEK KOKURIKULER SMA 1.docx
PDF
ANALISIS CP NO 046 TAHUN 2025 FASE C.pdf
PDF
2. Capaian-Pembelajaran-Koding-Dan-Kecerdasan-Artifisial-Pusbuk.pdf
DOCX
LKPD_Bab_1_Informatika_Kelas_9. : Informatika dan Keterampilan Generikdocx
PPTX
PPT MATERI KODING DAN KECERDASAN ARTIFISIAL UNTUK PEMBELAJARAN
PPTX
ppt kelas XII materi sifat koligatif larutan
PPTX
5. Bahan Bacaan Asinkronus Modul 5_ Perencanaan Pembelajaran.pptx
DOCX
Modul Ajar Deep Learning PKN Kelas 10 SMA Terbaru 2025
PPTX
Bahan Presentasi Persamaan Elips .pptx
Modul Ajar Deep Learning PJOK Kelas 12 SMA Terbaru 2025
Modul Ajar Deep Learning Bahasa Inggris Lanjutan Kelas 11 SMA Terbaru 2025
Model Lintas minat dan pendalaman materi
Gangguan Penglihatan Mata - presentasi biologi
Modul Ajar Deep Learning PKWU Rekayasa Kelas 12 SMA Terbaru 2025
Modul Ajar Deep Learning PAI & BP Kelas 12 SMA Terbaru 2025
Lembar Kerja Mahasiswa Konsep Sistem Operasi
MATERI MPLS TENTANG KURIKULUM DAN KEGIATAN PEMBELAJARAN
2. Modul 2 Fase C Berpikir Komputasional.pptx
Deck Rumah Pendidikan untuk Mendukung Program Prioritas Kemendikdasmen.pdf
ANALISIS SOALAN BAHASA MELAYU SPM 2021-2024 (1).pdf
CONTOH RANCANGAN MODUL PROYEK KOKURIKULER SMA 1.docx
ANALISIS CP NO 046 TAHUN 2025 FASE C.pdf
2. Capaian-Pembelajaran-Koding-Dan-Kecerdasan-Artifisial-Pusbuk.pdf
LKPD_Bab_1_Informatika_Kelas_9. : Informatika dan Keterampilan Generikdocx
PPT MATERI KODING DAN KECERDASAN ARTIFISIAL UNTUK PEMBELAJARAN
ppt kelas XII materi sifat koligatif larutan
5. Bahan Bacaan Asinkronus Modul 5_ Perencanaan Pembelajaran.pptx
Modul Ajar Deep Learning PKN Kelas 10 SMA Terbaru 2025
Bahan Presentasi Persamaan Elips .pptx

Pemrograman Dasar Python Dari Dasar Sampai bisa

  • 2. Pemrograman Dasar – Herry Prasetyo | 1 Apa itu Python? Python adalah bahasa pemrograman yang populer. Python diciptakan oleh Guido van Rossum dan dirilis pada tahun 1991. Python digunakan untuk: • Pengembangan web (server-side) • Pengembangan perangkat lunak • Matematika • Scripting sistem Apa yang dapat dilakukan Python? • Python dapat digunakan di server untuk membuat aplikasi web. • Python dapat digunakan bersama perangkat lunak lain untuk membuat alur kerja. • Python dapat terhubung ke sistem basis data. Python juga dapat membaca dan memodifikasi file. • Python dapat digunakan untuk menangani big data dan melakukan perhitungan matematika yang kompleks. • Python dapat digunakan untuk prototyping cepat atau untuk pengembangan perangkat lunak siap produksi. Mengapa menggunakan Python? • Portabilitas: Python dapat berjalan di berbagai platform, seperti Windows, Mac, Linux, dan Raspberry Pi. • Sintaksis sederhana: Sintaks Python mirip dengan bahasa Inggris. • Kode lebih ringkas: Python memungkinkan pengembang menulis program dengan lebih sedikit baris kode dibandingkan beberapa bahasa pemrograman lainnya. • Interpreter: Python berjalan di sistem interpreter, yang berarti kode dapat dieksekusi segera setelah ditulis, memungkinkan prototyping yang lebih cepat. • Pendekatan pemrograman: Python dapat digunakan dalam cara prosedural, berorientasi objek, atau fungsional. Hal penting yang perlu diketahui • Versi terbaru Python adalah Python 3, yang akan digunakan dalam tutorial ini. • Python 2 masih banyak digunakan, tetapi tidak lagi menerima pembaruan selain pembaruan keamanan.
  • 3. Pemrograman Dasar – Herry Prasetyo | 2 • Dalam tutorial ini, kode Python akan ditulis di editor teks. Namun, Anda juga dapat menulis Python di Lingkungan Pengembangan Terpadu (IDE), seperti Thonny, Pycharm, Netbeans, atau Visual Studio Code, yang sangat berguna saat mengelola koleksi file Python yang lebih besar. Sintaks Python dibandingkan dengan bahasa pemrograman lainnya • Keterbacaan: Python dirancang agar mudah dibaca dan memiliki beberapa kesamaan dengan bahasa Inggris serta dipengaruhi oleh logika matematika. • Baris baru: Python menggunakan baris baru untuk menyelesaikan perintah, sedangkan bahasa lain sering menggunakan titik koma (;) atau tanda kurung. • Indentasi: Python menggunakan indentasi (spasi putih) untuk menentukan cakupan, seperti cakupan loop, fungsi, dan kelas. Sebaliknya, banyak bahasa pemrograman lain menggunakan kurung kurawal untuk tujuan ini. Dengan kelebihan-kelebihan tersebut, Python telah menjadi salah satu bahasa pemrograman yang paling banyak digunakan di dunia.
  • 4. Pemrograman Dasar – Herry Prasetyo | 3 Tipe Data dalam Pemrograman Python Python memiliki beberapa tipe data bawaan (built-in data types) yang digunakan untuk menyimpan berbagai jenis nilai. Tipe data ini dikelompokkan ke dalam beberapa kategori, yaitu: 1. Tipe Data Numerik Tipe data yang digunakan untuk menyimpan angka, baik bilangan bulat, bilangan desimal (floating point), maupun bilangan kompleks. Tipe Data Contoh Deskripsi int x = 10 Bilangan bulat (integer) float y = 3.14 Bilangan desimal (floating point) complex z = 3 + 4j Bilangan kompleks (real + imajiner) Contoh Kode: x = 10 int y = 3.14 float z = 3 + 4j complex print(type(x)) Output: <class 'int'> print(type(y)) Output: <class 'float'> print(type(z)) Output: <class 'complex'> 2. Tipe Data Teks Tipe data yang digunakan untuk menyimpan teks atau string. Tipe Data Contoh Deskripsi str nama = "Python" Teks atau string Contoh Kode: nama = "Python" print(type(nama)) Output: <class 'str'> Catatan: String di Python dapat dibuat menggunakan tanda kutip tunggal (') atau kutip ganda (").
  • 5. Pemrograman Dasar – Herry Prasetyo | 4 3. Tipe Data Boolean Tipe data yang hanya memiliki dua nilai: True atau False. Tipe Data Contoh Deskripsi bool is_active = True Nilai logika (True/False) Contoh Kode: is_active = True is_login = False print(type(is_active)) Output: <class 'bool'> print(type(is_login)) Output: <class 'bool'> 4. Tipe Data Urutan (Sequence) Tipe data yang dapat menyimpan beberapa nilai dalam satu variabel. Data ini disusun secara berurutan. Tipe Data Contoh Deskripsi list data = [1, 2, 3] Daftar yang dapat diubah tuple data = (1, 2, 3) Daftar yang tidak dapat diubah range data = range(5) Urutan bilangan (0, 1, 2, 3, 4) Contoh Kode: List data_list = [1, 2, 3, 4] print(type(data_list)) Output: <class 'list'> Tuple data_tuple = (1, 2, 3, 4) print(type(data_tuple)) Output: <class 'tuple'> Range data_range = range(5) print(type(data_range)) Output: <class 'range'>
  • 6. Pemrograman Dasar – Herry Prasetyo | 5 Perbedaan List dan Tuple: • List dapat diubah (mutable). • Tuple tidak dapat diubah (immutable). 5. Tipe Data Koleksi (Set) Tipe data yang menyimpan beberapa nilai yang tidak berurutan dan tidak memiliki duplikasi. Tipe Data Contoh Deskripsi set data = {1, 2, 3} Kumpulan data unik tanpa urutan frozenset data = frozenset({1, 2, 3}) Set yang tidak bisa diubah (immutable) Contoh Kode: Set data_set = {1, 2, 3, 4, 4} print(type(data_set)) Output: <class 'set'> Frozenset data_frozenset = frozenset({1, 2, 3, 4}) print(type(data_frozenset)) Output: <class 'frozenset'> Catatan: • Set tidak memiliki elemen duplikat. Jika Anda mencoba memasukkan elemen yang sama, Python akan menghapus duplikatnya. • Frozenset adalah set yang tidak dapat diubah (immutable). 6. Tipe Data Pemetaan (Mapping) Tipe data yang menyimpan pasangan kunci-nilai. Tipe Data Contoh Deskripsi dict data = {"nama": "Python"} Pasangan kunci: nilai (key-value) Contoh Kode: data_dict = {"nama": "Python", "versi": 3.9} print(type(data_dict)) Output: <class 'dict'> Catatan:
  • 7. Pemrograman Dasar – Herry Prasetyo | 6 • Dictionary (dict) adalah tipe data yang berisi pasangan kunci dan nilai. • Kunci (key) harus bersifat unik, sedangkan nilai (value) bisa berupa tipe data apa saja. 7. Tipe Data Biner Tipe data ini digunakan untuk bekerja dengan data biner. Tipe Data Contoh Deskripsi bytes data = b"Python" Data biner (byte) bytearray data = bytearray(5) Data byte yang dapat diubah memoryview data = memoryview(bytes(5)) Objek memori dari bytes Contoh Kode: Bytes data_bytes = b"Python" print(type(data_bytes)) Output: <class 'bytes'> Bytearray data_bytearray = bytearray(5) print(type(data_bytearray)) Output: <class 'bytearray'> Memoryview data_memoryview = memoryview(bytes(5)) print(type(data_memoryview)) Output: <class 'memoryview'> 8. Tipe Data None Tipe data yang digunakan untuk menyatakan bahwa sebuah variabel tidak memiliki nilai. Tipe Data Contoh Deskripsi NoneType x = None Menyatakan nilai kosong Contoh Kode: x = None print(type(x)) Output: <class 'NoneType'> Catatan:
  • 8. Pemrograman Dasar – Herry Prasetyo | 7 • None digunakan untuk merepresentasikan kekosongan nilai. • Ini biasanya digunakan dalam parameter fungsi atau nilai awal dari variabel. Ringkasan Tipe Data di Python Kategori Tipe Data Contoh Numerik int, float, complex 10, 3.14, 3 + 4j Teks str "Python" Boolean bool True, False Urutan list, tuple, range [1, 2], (1, 2), range(5) Koleksi set, frozenset {1, 2}, frozenset({1, 2}) Pemetaan dict {"key": "value"} Biner bytes, bytearray, memoryview b"Python" None NoneType None
  • 9. Pemrograman Dasar – Herry Prasetyo | 8 Minggu 2 Percabangan (If, Else, Elif) Latihan 1: Program Cek Nilai Ujian Deskripsi: Program ini meminta pengguna memasukkan nilai ujian, kemudian menilai apakah pengguna lulus atau tidak berdasarkan kriteria berikut: • Nilai >= 75 → Lulus • Nilai < 75 → Tidak Lulus Penjelasan Program Program ini bertujuan untuk menentukan kelulusan siswa berdasarkan nilai ujian yang dimasukkan oleh pengguna. Berikut adalah penjelasan dari setiap baris kode: 1. Input Data dari Pengguna nilai = int(input("Masukkan nilai ujian Anda: ")) • Fungsi input() digunakan untuk meminta pengguna memasukkan nilai dari keyboard. • Data yang diinput oleh pengguna awalnya bertipe string, tetapi karena kita ingin memprosesnya sebagai angka, maka digunakan int() untuk mengonversi input menjadi bilangan bulat (integer). • Nilai tersebut disimpan dalam variabel nilai. Contoh: Masukkan nilai ujian Anda: 80 Jika pengguna memasukkan 80, maka nilai tersebut disimpan di variabel nilai. # Input dari pengguna nilai = int(input("Masukkan nilai ujian Anda: ")) # Logika if-else if nilai >= 75: print(f"Selamat! Anda lulus dengan nilai {nilai}.") else: print(f"Maaf, Anda tidak lulus. Nilai Anda adalah {nilai}.")
  • 10. Pemrograman Dasar – Herry Prasetyo | 9 2. Logika Percabangan (if-else) if nilai >= 75: print(f"Selamat! Anda lulus dengan nilai {nilai}.") else: print(f"Maaf, Anda tidak lulus. Nilai Anda adalah {nilai}.") Penjelasan Logika 1. if nilai >= 75: o Mengecek apakah nilai yang dimasukkan lebih besar atau sama dengan 75. o Jika kondisi benar (True), maka program akan menjalankan baris berikutnya, yaitu: o print(f"Selamat! Anda lulus dengan nilai {nilai}.") ▪ Teks ini akan dicetak ke layar dengan menampilkan nilai dari variabel nilai. ▪ F-string (f"...") digunakan agar nilai variabel nilai dapat dimasukkan ke dalam teks. Contoh Output: Selamat! Anda lulus dengan nilai 80. 2. else: o Jika kondisi pada if tidak terpenuhi (False), maka program akan menjalankan perintah pada bagian else: o print(f"Maaf, Anda tidak lulus. Nilai Anda adalah {nilai}.") ▪ Sama seperti sebelumnya, teks ini akan menampilkan nilai variabel nilai menggunakan F-string. Contoh Output: Maaf, Anda tidak lulus. Nilai Anda adalah 60. Contoh Eksekusi Program Contoh 1 (Nilai 80) Masukkan nilai ujian Anda: 80 Selamat! Anda lulus dengan nilai 80. Penjelasan: • Pengguna memasukkan nilai 80.
  • 11. Pemrograman Dasar – Herry Prasetyo | 10 • Karena 80 >= 75, maka program mencetak pesan "Selamat! Anda lulus dengan nilai 80." Contoh 2 (Nilai 60) Masukkan nilai ujian Anda: 60 Maaf, Anda tidak lulus. Nilai Anda adalah 60. Penjelasan: • Pengguna memasukkan nilai 60. • Karena 60 < 75, maka program mencetak pesan "Maaf, Anda tidak lulus. Nilai Anda adalah 60." Kesimpulan 1. Program ini menerima input nilai dari pengguna. 2. Program kemudian mengecek apakah nilai tersebut lebih besar atau sama dengan 75. 3. Jika nilai memenuhi kriteria (>= 75), maka pengguna dinyatakan lulus. 4. Jika tidak memenuhi kriteria (< 75), maka pengguna dinyatakan tidak lulus. Latihan 2: Program Kategori Usia Deskripsi: Program ini mengelompokkan usia seseorang ke dalam kategori: • Usia < 13 → Anak-anak • Usia 13-19 → Remaja • Usia 20-59 → Dewasa
  • 12. Pemrograman Dasar – Herry Prasetyo | 11 • Usia >= 60 → Lansia Penjelasan Program Program ini bertujuan untuk mengelompokkan usia seseorang ke dalam 4 kategori, yaitu: • Anak-anak (usia di bawah 13 tahun) • Remaja (usia 13 hingga 19 tahun) • Dewasa (usia 20 hingga 59 tahun) • Lansia (usia 60 tahun ke atas) Program ini menggunakan logika percabangan if-elif-else untuk menentukan kategori usia. Berikut penjelasan dari setiap bagian kode. 1. Input Data dari Pengguna usia = int(input("Masukkan usia Anda: ")) • input(): Meminta pengguna untuk memasukkan usia dari keyboard. • Data yang diperoleh dari input() bertipe string, sehingga harus dikonversi ke tipe data integer (int) menggunakan int(). • Nilai yang dimasukkan oleh pengguna kemudian disimpan ke dalam variabel usia. Contoh: Masukkan usia Anda: 18 Jika pengguna memasukkan 18, maka nilai tersebut disimpan di variabel usia. # Input dari pengguna usia = int(input("Masukkan usia Anda: ")) # Logika if-elif-else if usia < 13: print("Anda adalah Anak-anak.") elif 13 <= usia <= 19: print("Anda adalah Remaja.") elif 20 <= usia <= 59: print("Anda adalah Dewasa.") else: print("Anda adalah Lansia.")
  • 13. Pemrograman Dasar – Herry Prasetyo | 12 2. Logika Percabangan (if-elif-else) Program menggunakan if-elif-else untuk mengevaluasi usia pengguna dan mengelompokkannya dalam kategori tertentu. Bagian 1: Kondisi Anak-anak if usia < 13: print("Anda adalah Anak-anak.") • Jika usia lebih kecil dari 13, maka program akan mencetak: • Anda adalah Anak-anak. • Artinya, jika usia pengguna adalah 12 tahun atau kurang, mereka akan dikategorikan sebagai Anak-anak. Contoh Output: Masukkan usia Anda: 10 Anda adalah Anak-anak. Bagian 2: Kondisi Remaja elif 13 <= usia <= 19: print("Anda adalah Remaja.") • Jika usia pengguna berada dalam rentang 13 hingga 19 (termasuk 13 dan 19), maka program akan mencetak: • Anda adalah Remaja. • Rentang usia ini menggunakan operator lebih besar sama dengan (>=) dan lebih kecil sama dengan (<=) secara bersamaan. • Artinya, jika usia pengguna adalah 13, 14, 15, 16, 17, 18, atau 19 tahun, mereka akan dikategorikan sebagai Remaja. Contoh Output: Masukkan usia Anda: 15 Anda adalah Remaja. Bagian 3: Kondisi Dewasa elif 20 <= usia <= 59:
  • 14. Pemrograman Dasar – Herry Prasetyo | 13 print("Anda adalah Dewasa.") • Jika usia pengguna berada dalam rentang 20 hingga 59 (termasuk 20 dan 59), maka program akan mencetak: • Anda adalah Dewasa. • Artinya, jika usia pengguna adalah 20 hingga 59 tahun, mereka akan dikategorikan sebagai Dewasa. Contoh Output: Masukkan usia Anda: 45 Anda adalah Dewasa. Bagian 4: Kondisi Lansia (else) else: print("Anda adalah Lansia.") • Jika usia pengguna tidak memenuhi semua kondisi sebelumnya (tidak masuk kategori Anak-anak, Remaja, atau Dewasa), maka program akan mencetak: • Anda adalah Lansia. • Artinya, jika usia pengguna adalah 60 tahun atau lebih, mereka akan dikategorikan sebagai Lansia. Contoh Output: Masukkan usia Anda: 70 Anda adalah Lansia. Contoh Eksekusi Program Contoh 1 (Usia 8) Masukkan usia Anda: 8 Anda adalah Anak-anak. • Usia 8 masuk dalam kondisi usia < 13, sehingga pengguna dikategorikan sebagai Anak-anak. Contoh 2 (Usia 16) Masukkan usia Anda: 16 Anda adalah Remaja.
  • 15. Pemrograman Dasar – Herry Prasetyo | 14 • Usia 16 masuk dalam rentang 13 <= usia <= 19, sehingga pengguna dikategorikan sebagai Remaja. Contoh 3 (Usia 35) Masukkan usia Anda: 35 Anda adalah Dewasa. • Usia 35 masuk dalam rentang 20 <= usia <= 59, sehingga pengguna dikategorikan sebagai Dewasa. Contoh 4 (Usia 70) Masukkan usia Anda: 70 Anda adalah Lansia. • Usia 70 tidak memenuhi kondisi usia < 13, 13 <= usia <= 19, atau 20 <= usia <= 59, sehingga pengguna dikategorikan sebagai Lansia. Kesimpulan 1. Program ini meminta pengguna memasukkan usia. 2. Berdasarkan usia yang dimasukkan, program akan mengevaluasi kondisi menggunakan percabangan if-elif-else. 3. Usia pengguna akan dikelompokkan ke dalam 4 kategori: o Anak-anak (usia < 13) o Remaja (13 <= usia <= 19) o Dewasa (20 <= usia <= 59) o Lansia (usia >= 60) 4. Program mencetak kategori yang sesuai ke layar. Latihan 3: Program Cek Ganjil/Genap Deskripsi: Program ini mengecek apakah bilangan yang dimasukkan adalah ganjil atau genap. • Bilangan habis dibagi 2 → Genap • Bilangan tidak habis dibagi 2 → Ganjil
  • 16. Pemrograman Dasar – Herry Prasetyo | 15 Penjelasan Program Program ini bertujuan untuk menentukan apakah sebuah bilangan adalah bilangan genap atau bilangan ganjil. Program menggunakan logika percabangan if-else berdasarkan sisa hasil bagi (modulus) 2. 1. Input Data dari Pengguna bilangan = int(input("Masukkan sebuah bilangan: ")) • input(): Meminta pengguna untuk memasukkan bilangan dari keyboard. • Data dari input() bertipe string, sehingga harus dikonversi ke integer (int) menggunakan int(). • Nilai yang dimasukkan kemudian disimpan dalam variabel bilangan. Contoh: Masukkan sebuah bilangan: 7 Jika pengguna memasukkan 7, maka nilai tersebut disimpan ke dalam variabel bilangan. 2. Logika Percabangan (if-else) if bilangan % 2 == 0: print(f"{bilangan} adalah bilangan Genap.") else: print(f"{bilangan} adalah bilangan Ganjil.") Penjelasan Logika # Input bilangan dari pengguna bilangan = int(input("Masukkan sebuah bilangan: ")) # Logika if-else if bilangan % 2 == 0: print(f"{bilangan} adalah bilangan Genap.") else: print(f"{bilangan} adalah bilangan Ganjil.")
  • 17. Pemrograman Dasar – Herry Prasetyo | 16 1. if bilangan % 2 == 0: o Operasi modulus % digunakan untuk mendapatkan sisa hasil bagi dari bilangan tersebut ketika dibagi dengan 2. o Jika sisa dari bilangan % 2 adalah 0, maka bilangan tersebut adalah bilangan genap. o Jika kondisi ini terpenuhi, maka baris berikutnya akan dieksekusi: o print(f"{bilangan} adalah bilangan Genap.") ▪ Program akan mencetak bilangan tersebut dan pesan "adalah bilangan Genap." menggunakan F-string agar variabel bilangan bisa dimasukkan ke dalam teks. Contoh Output: Masukkan sebuah bilangan: 8 8 adalah bilangan Genap. 2. else: o Jika kondisi bilangan % 2 == 0 tidak terpenuhi (False), artinya bilangan tersebut tidak habis dibagi 2, maka program akan menjalankan perintah di bawah else. o Artinya bilangan tersebut adalah bilangan ganjil. o Program akan mencetak: o print(f"{bilangan} adalah bilangan Ganjil.") Contoh Output: Masukkan sebuah bilangan: 7 7 adalah bilangan Ganjil. Contoh Eksekusi Program Contoh 1 (Bilangan Genap: 8) Masukkan sebuah bilangan: 8 8 adalah bilangan Genap. Penjelasan: • Pengguna memasukkan 8. • Proses: 8 % 2 = 0 (sisa hasil bagi adalah 0).
  • 18. Pemrograman Dasar – Herry Prasetyo | 17 • Karena sisa hasil bagi adalah 0, maka program mencetak: • 8 adalah bilangan Genap. Contoh 2 (Bilangan Ganjil: 7) Masukkan sebuah bilangan: 7 7 adalah bilangan Ganjil. Penjelasan: • Pengguna memasukkan 7. • Proses: 7 % 2 = 1 (sisa hasil bagi adalah 1). • Karena sisa hasil bagi bukan 0, maka program mencetak: • 7 adalah bilangan Ganjil. Contoh 3 (Bilangan Negatif: -3) Masukkan sebuah bilangan: -3 -3 adalah bilangan Ganjil. Penjelasan: • Pengguna memasukkan -3. • Proses: -3 % 2 = 1 (sisa hasil bagi adalah 1). • Karena sisa hasil bagi bukan 0, maka program mencetak: • -3 adalah bilangan Ganjil. Contoh 4 (Bilangan Nol: 0) Masukkan sebuah bilangan: 0 0 adalah bilangan Genap. Penjelasan: • Pengguna memasukkan 0. • Proses: 0 % 2 = 0 (sisa hasil bagi adalah 0). • Karena sisa hasil bagi adalah 0, maka program mencetak: • 0 adalah bilangan Genap.
  • 19. Pemrograman Dasar – Herry Prasetyo | 18 Catatan: Meskipun bilangan 0 secara teknis bukan bilangan positif atau negatif, dalam konteks keparitas (genap/ganjil), 0 dianggap sebagai bilangan genap. Kesimpulan 1. Program menerima input dari pengguna berupa bilangan. 2. Program mengecek apakah bilangan tersebut habis dibagi 2 menggunakan operator modulus (%). 3. Jika bilangan habis dibagi 2 (sisa bagi 0), maka bilangan tersebut adalah genap. 4. Jika bilangan tidak habis dibagi 2 (sisa bagi 1), maka bilangan tersebut adalah ganjil. Latihan 4 Deskripsi: Tentukan harga tiket bioskop berdasarkan usia pengunjung: • Usia < 12 tahun → Rp 30.000 • Usia 12-59 tahun → Rp 50.000 • Usia >= 60 tahun → Rp 25.000 Instruksi: 1. Input usia dari pengguna. 2. Tentukan harga tiket berdasarkan usia.
  • 20. Pemrograman Dasar – Herry Prasetyo | 19 Penjelasan Program Program ini bertujuan untuk menghitung harga tiket berdasarkan usia pengguna. Program menggunakan logika percabangan if-elif-else untuk menetapkan harga tiket sesuai dengan kategori usia. Berikut adalah penjelasan dari setiap bagian kode. 1. Input Data dari Pengguna usia = int(input("Masukkan usia Anda: ")) • input(): Meminta pengguna memasukkan usia dari keyboard. • Data dari input() bertipe string, sehingga harus dikonversi ke integer (int) menggunakan int(). • Usia yang dimasukkan oleh pengguna kemudian disimpan dalam variabel usia. Contoh: Masukkan usia Anda: 25 Jika pengguna memasukkan 25, maka nilai tersebut disimpan dalam variabel usia. 2. Logika Percabangan (if-elif-else) if usia < 12: harga_tiket = 30000 elif 12 <= usia <= 59: harga_tiket = 50000 # Input dari pengguna usia = int(input("Masukkan usia Anda: ")) # Logika if-elif-else if usia < 12: harga_tiket = 30000 elif 12 <= usia <= 59: harga_tiket = 50000 else: harga_tiket = 25000 print(f"Harga tiket untuk usia {usia} tahun adalah Rp{harga_tiket}.")
  • 21. Pemrograman Dasar – Herry Prasetyo | 20 else: harga_tiket = 25000 Penjelasan Logika Program menggunakan if-elif-else untuk menetapkan harga tiket sesuai usia. 1. if usia < 12: o Jika usia pengguna kurang dari 12 tahun, maka harga tiket adalah Rp30.000. o Variabel harga_tiket akan diisi dengan nilai 30000. Contoh: Jika pengguna memasukkan usia 8, maka kondisi usia < 12 terpenuhi. Harga tiket ditetapkan sebagai: harga_tiket = 30000 2. elif 12 <= usia <= 59: o Jika usia pengguna berada dalam rentang 12 hingga 59 tahun (termasuk 12 dan 59), maka harga tiket adalah Rp50.000. o Variabel harga_tiket akan diisi dengan nilai 50000. Contoh: Jika pengguna memasukkan usia 25, maka kondisi 12 <= usia <= 59 terpenuhi. Harga tiket ditetapkan sebagai: harga_tiket = 50000 Catatan: Rentang 12 <= usia <= 59 menggunakan operator lebih besar sama dengan (>=) dan lebih kecil sama dengan (<=), artinya usia 12 dan 59 termasuk dalam kategori ini. 3. else: o Jika usia pengguna tidak memenuhi semua kondisi sebelumnya (tidak masuk dalam usia < 12 atau 12 <= usia <= 59), maka harga tiket adalah Rp25.000. o Ini berarti usia 60 tahun ke atas akan dikenakan harga tiket Rp25.000. o Variabel harga_tiket akan diisi dengan nilai 25000. Contoh: Jika pengguna memasukkan usia 70, maka kondisi usia < 12 dan 12 <= usia <= 59 tidak terpenuhi, sehingga program masuk ke blok else. Harga tiket ditetapkan sebagai: harga_tiket = 25000
  • 22. Pemrograman Dasar – Herry Prasetyo | 21 3. Menampilkan Hasil print(f"Harga tiket untuk usia {usia} tahun adalah Rp{harga_tiket}.") • Menggunakan F-string (f"...") untuk menampilkan informasi ke layar. • F-string memungkinkan kita menyisipkan nilai variabel usia dan harga_tiket ke dalam string. • Program akan mencetak pesan dalam format: • Harga tiket untuk usia <usia> tahun adalah Rp<harga_tiket>. Contoh Output: Masukkan usia Anda: 25 Harga tiket untuk usia 25 tahun adalah Rp50000. Contoh Eksekusi Program Contoh 1 (Usia 8) Masukkan usia Anda: 8 Harga tiket untuk usia 8 tahun adalah Rp30000. Penjelasan: • Pengguna memasukkan usia 8. • Karena 8 < 12, maka program menetapkan harga tiket menjadi Rp30.000. Contoh 2 (Usia 25) Masukkan usia Anda: 25 Harga tiket untuk usia 25 tahun adalah Rp50000. Penjelasan: • Pengguna memasukkan usia 25. • Karena 12 <= 25 <= 59, maka program menetapkan harga tiket menjadi Rp50.000. Contoh 3 (Usia 12) Masukkan usia Anda: 12 Harga tiket untuk usia 12 tahun adalah Rp50000. Penjelasan:
  • 23. Pemrograman Dasar – Herry Prasetyo | 22 • Pengguna memasukkan usia 12. • Karena 12 <= 12 <= 59, maka program menetapkan harga tiket menjadi Rp50.000. Contoh 4 (Usia 59) Masukkan usia Anda: 59 Harga tiket untuk usia 59 tahun adalah Rp50000. Penjelasan: • Pengguna memasukkan usia 59. • Karena 12 <= 59 <= 59, maka program menetapkan harga tiket menjadi Rp50.000. Contoh 5 (Usia 70) Masukkan usia Anda: 70 Harga tiket untuk usia 70 tahun adalah Rp25000. Penjelasan: • Pengguna memasukkan usia 70. • Karena 70 tidak memenuhi kondisi usia < 12 dan 12 <= usia <= 59, maka program masuk ke blok else. • Harga tiket untuk usia 70 tahun adalah Rp25.000. Kesimpulan 1. Program menerima input usia dari pengguna. 2. Program menetapkan harga tiket berdasarkan usia: o Anak-anak (usia < 12): Rp30.000 o Dewasa (12 <= usia <= 59): Rp50.000 o Lansia (usia >= 60): Rp25.000 3. Program mencetak harga tiket yang sesuai ke layar. Latihan 5 : Program Penghitung Diskon Buat program yang menghitung total harga setelah diskon berdasarkan jumlah pembelian: • Jika total pembelian >= 1.000.000, diskon 20%
  • 24. Pemrograman Dasar – Herry Prasetyo | 23 • Jika total pembelian >= 500.000, diskon 10% • Jika total pembelian < 500.000, tidak ada diskon Instruksi: 1. Input total pembelian dari pengguna. 2. Hitung jumlah diskon dan total harga setelah diskon. Penjelasan Kode Python: Program Penghitung Diskon Kode ini adalah program penghitung diskon berdasarkan total pembelian. Program ini menghitung jumlah potongan harga dan total yang harus dibayar setelah diskon. Berikut adalah penjelasan kode secara rinci. 1⃣ Input dari Pengguna total_pembelian = float(input("Masukkan total pembelian Anda: ")) Penjelasan: • Program meminta pengguna untuk memasukkan total pembelian dalam bentuk angka desimal (float). • Fungsi input() akan menerima input dari pengguna sebagai string, lalu float() akan mengonversi input tersebut menjadi bilangan desimal (contoh: 750000.50). • Contoh input: # Input dari pengguna total_pembelian = float(input("Masukkan total pembelian Anda: ")) # Logika if-elif-else if total_pembelian >= 1000000: diskon = 0.20 # Diskon 20% elif total_pembelian >= 500000: diskon = 0.10 # Diskon 10% else: diskon = 0 # Tidak ada diskon # Hitung total harga setelah diskon potongan_harga = total_pembelian * diskon total_harga = total_pembelian - potongan_harga print(f"Total pembelian: Rp{total_pembelian}") print(f"Diskon: Rp{potongan_harga} ({diskon*100}%)") print(f"Total yang harus dibayar: Rp{total_harga}")
  • 25. Pemrograman Dasar – Herry Prasetyo | 24 • Masukkan total pembelian Anda: 750000 Hasil: • Nilai total_pembelian sekarang bernilai 750000. 2⃣ Logika If-Elif-Else (Percabangan) if total_pembelian >= 1000000: diskon = 0.20 # Diskon 20% elif total_pembelian >= 500000: diskon = 0.10 # Diskon 10% else: diskon = 0 # Tidak ada diskon Penjelasan: • Percabangan (if-elif-else) digunakan untuk menentukan persentase diskon berdasarkan jumlah total pembelian. • Logika If-Elif-Else: o Jika total pembelian lebih besar atau sama dengan 1.000.000, maka diskon adalah 20% (0.20). o Jika total pembelian lebih besar atau sama dengan 500.000, tetapi kurang dari 1.000.000, maka diskon adalah 10% (0.10). o Jika total pembelian kurang dari 500.000, maka tidak ada diskon (diskon = 0). Contoh Kasus: • Jika total_pembelian = 1.200.000, maka program masuk ke bagian: • if total_pembelian >= 1000000: • diskon = 0.20 # Diskon 20% Hasil: diskon = 0.20 • Jika total_pembelian = 800.000, maka kondisi pertama (total_pembelian >= 1000000) tidak terpenuhi. Tetapi kondisi kedua terpenuhi: • elif total_pembelian >= 500000: • diskon = 0.10 # Diskon 10% Hasil: diskon = 0.10 • Jika total_pembelian = 300.000, maka tidak ada kondisi yang terpenuhi, sehingga program masuk ke bagian else: • else:
  • 26. Pemrograman Dasar – Herry Prasetyo | 25 • diskon = 0 # Tidak ada diskon Hasil: diskon = 0 3⃣ Hitung Total Harga Setelah Diskon # Hitung total harga setelah diskon potongan_harga = total_pembelian * diskon total_harga = total_pembelian - potongan_harga Penjelasan: 1. Hitung Potongan Harga: 2. potongan_harga = total_pembelian * diskon Rumus ini menghitung potongan harga berdasarkan total pembelian dan persentase diskon. o Contoh: Jika total_pembelian = 1.200.000 dan diskon = 0.20, maka: o potongan_harga = 1.200.000 * 0.20 o = 240.000 3. Hitung Total Harga Setelah Diskon: 4. total_harga = total_pembelian - potongan_harga Total harga yang harus dibayar adalah total pembelian dikurangi potongan harga. o Contoh: Jika total_pembelian = 1.200.000 dan potongan_harga = 240.000, maka: o total_harga = 1.200.000 - 240.000 o = 960.000 4⃣ Menampilkan Output ke Layar print(f"Total pembelian: Rp{total_pembelian}") print(f"Diskon: Rp{potongan_harga} ({diskon*100}%)") print(f"Total yang harus dibayar: Rp{total_harga}") Penjelasan: • print() digunakan untuk mencetak output ke layar. • f-string (f"...") memungkinkan kita memasukkan variabel langsung ke dalam string. Contoh: • total_pembelian = 1200000
  • 27. Pemrograman Dasar – Herry Prasetyo | 26 • print(f"Total pembelian: Rp{total_pembelian}") Akan mencetak: Total pembelian: Rp1200000 • Diskon dalam Persen: • print(f"Diskon: Rp{potongan_harga} ({diskon*100}%)") Karena diskon yang dihitung adalah desimal (misal 0.20), maka dikalikan dengan 100 untuk mengonversinya ke bentuk persen. o Jika diskon = 0.20, maka: o diskon*100 = 20 Jadi, program mencetak: Diskon: Rp240000 (20%) • Total Harga Setelah Diskon: • print(f"Total yang harus dibayar: Rp{total_harga}") Contoh Kasus Input 1: Total Pembelian = 1.200.000 Input: Masukkan total pembelian Anda: 1200000 Proses Logika: 1. Total pembelian = 1.200.000 2. Total pembelian >= 1.000.000 → Diskon 20% 3. Potongan harga: 4. 1.200.000 * 0.20 = 240.000 5. Total harga yang harus dibayar: 6. 1.200.000 - 240.000 = 960.000 Output: Total pembelian: Rp1200000 Diskon: Rp240000.0 (20.0%) Total yang harus dibayar: Rp960000.0 Input 2: Total Pembelian = 800.000
  • 28. Pemrograman Dasar – Herry Prasetyo | 27 Input: Masukkan total pembelian Anda: 800000 Proses Logika: 1. Total pembelian = 800.000 2. Total pembelian >= 500.000 → Diskon 10% 3. Potongan harga: 4. 800.000 * 0.10 = 80.000 5. Total harga yang harus dibayar: 6. 800.000 - 80.000 = 720.000 Output: Total pembelian: Rp800000 Diskon: Rp80000.0 (10.0%) Total yang harus dibayar: Rp720000.0 Input 3: Total Pembelian = 300.000 Input: Masukkan total pembelian Anda: 300000 Proses Logika: 1. Total pembelian = 300.000 2. Total pembelian < 500.000 → Tidak ada diskon 3. Potongan harga: 4. 300.000 * 0 = 0 5. Total harga yang harus dibayar: 6. 300.000 - 0 = 300.000 Output: Total pembelian: Rp300000 Diskon: Rp0 (0%) Total yang harus dibayar: Rp300000.0 Kesimpulan 1. Input: Pengguna memasukkan jumlah total pembelian.
  • 29. Pemrograman Dasar – Herry Prasetyo | 28 2. Logika Diskon: Diskon dihitung berdasarkan kondisi tertentu: o Diskon 20% jika total pembelian >= Rp1.000.000 o Diskon 10% jika total pembelian >= Rp500.000 o Tidak ada diskon jika total pembelian < Rp500.000 3. Proses: Potongan harga dihitung dari diskon, dan total harga akhir diperoleh dari pengurangan total pembelian dengan potongan harga. 4. Output: Total pembelian, potongan harga, dan total harga yang harus dibayar. Soal 1: Menentukan Kategori Nilai Ujian Buat program Python yang menerima input nilai ujian dari pengguna, kemudian menampilkan kategori nilai sebagai berikut: • Nilai >= 90 : A • Nilai >= 80 dan < 90 : B • Nilai >= 70 dan < 80 : C • Nilai >= 60 dan < 70 : D • Nilai < 60 : E Soal 2: Menentukan Jenis Bilangan Buat program Python yang menerima input bilangan dari pengguna, lalu tentukan jenis bilangan tersebut: • Jika bilangan tersebut adalah bilangan positif, tampilkan pesan "Bilangan Positif". • Jika bilangan tersebut adalah bilangan negatif, tampilkan pesan "Bilangan Negatif". • Jika bilangan tersebut adalah 0, tampilkan pesan "Bilangan Nol". Soal 3: Menentukan Diskon Berdasarkan Total Pembelian Buat program Python yang menerima input total pembelian dari pengguna, kemudian tentukan diskon yang diterima: • Jika pembelian >= 1.000.000, diskon 20% • Jika pembelian >= 500.000 dan < 1.000.000, diskon 10% • Jika pembelian < 500.000, tidak ada diskon. Hitung juga total pembayaran setelah diskon diterapkan. Soal 4: Menentukan Tahun Kabisat Buat program Python yang meminta input tahun dari pengguna, kemudian tentukan apakah tahun tersebut merupakan tahun kabisat atau bukan tahun kabisat. Aturan Tahun Kabisat:
  • 30. Pemrograman Dasar – Herry Prasetyo | 29 • Tahun habis dibagi 4 dan tidak habis dibagi 100, atau • Tahun habis dibagi 400 Soal 5: Menentukan Zodiak Berdasarkan Bulan dan Tanggal Buat program Python yang meminta input bulan dan tanggal dari pengguna, kemudian tentukan zodiak yang sesuai. Zodiak Tanggal Capricorn 22 Des - 19 Jan Aquarius 20 Jan - 18 Feb Pisces 19 Feb - 20 Mar Aries 21 Mar - 19 Apr Taurus 20 Apr - 20 Mei Gemini 21 Mei - 20 Jun Cancer 21 Jun - 22 Jul Leo 23 Jul - 22 Agu Virgo 23 Agu - 22 Sep Libra 23 Sep - 22 Okt Scorpio 23 Okt - 21 Nov Sagittarius 22 Nov - 21 Des Input Contoh: Output Contoh: Masukkan bulan (1-12): 8 Masukkan tanggal (1-31): 15 Zodiak Anda adalah Leo.
  • 31. Pemrograman Dasar – Herry Prasetyo | 30