This commit is contained in:
Chizuui
2025-11-27 00:38:38 +07:00
parent 5444efab13
commit 1795fa1c2f
81 changed files with 1893 additions and 0 deletions

7
Acara-10/loop.py Executable file
View File

@@ -0,0 +1,7 @@
angka = [1,2,3,4,5,6,7,8,9,10]
jumlah = 0
for i in angka:
jumlah = jumlah + i
print ('jumlah =', jumlah)

6
Acara-10/lopping.py Executable file
View File

@@ -0,0 +1,6 @@
jumlah = 5
while jumlah > 0:
print (jumlah)
jumlah -= 1
print("selesai")

5
Acara-10/nasted-loop.py Executable file
View File

@@ -0,0 +1,5 @@
for baris in range(5):
for kolom in range(7):
print('*', end=' ')
else :
print('')

13
Acara-10/while-true.py Executable file
View File

@@ -0,0 +1,13 @@
angka = 0
while True :
print(angka)
angka = angka + 1
if angka == 2:
print("skip")
continue
if angka == 5:
print ("break")
break
print("selesai")

0
Acara-11/1.py Executable file
View File

26
Acara-11/2.py Executable file
View File

@@ -0,0 +1,26 @@
angka = [1, 5, 7, 9, 11]
# Mendapatkan jumlah item pada list menggunakan len
print("Jumlah item pada list:")
print(len(angka))
# Mengakses item di akhir list menggunakan append
print("Item terakhir pada list:")
angka.append(13)
print(angka)
# menyisipkan item pada indeks tertentu menggunakan isert
print ('menyisipkan angka 3 pada indeks ke 1 mengguanakan insert:')
indeks =1
angka.insert(indeks, 3)
print(angka)
# menambah list pada list menggunakan extend
print ('menambah list berisi 15, 17, 19 pada list nomor:')
angka.extend([15, 17, 19])
print(angka)
#cek indeks
print("cek angka 1 indeks berapa? angka 2 di indeks keberapa?")
print (angka.index(1))
print (angka.index(2))

26
Acara-11/3.py Executable file
View File

@@ -0,0 +1,26 @@
day = ['hari', 'senin', 'selasa', 'maret', 'rabu', 'kamis', 'juni']
print (day)
# menghapus nilai yang sama
print ('menghapus maret dari list :')
day.remove('maret')
print (day)
# menghapus nilai pada indeks tertentu (del)
print ('menghapus indeks ke 0 yaitu hari :')
del day[0]
print (day)
# menghapus nilai pada indeks tertentu (pop)
print ('menghapus indeks ke 4 yaitu juni mneggunakan pop :')
day.pop(4)
print (day)
# menghapus nilai item terakhir pada list yaitu kamis (pop)
print ('menghapus item terakhir pada list yaitu kamis menggunakan pop :')
day.pop()
print (day)
# menghapus nilai yang dihapus menggunakan pop
print ('menghapus nilai yang dihapus menggunakan pop :')
print (day.pop(0))

18
Acara-11/4.py Executable file
View File

@@ -0,0 +1,18 @@
angka = [3, 5, 8, 1, 2, 9, 7, 4, 6,]
huruf = ['doni','caca','eva','bobi,','ani','faruk']
print(angka)
print(huruf)
# mengurutkan isi list berupa angka dan kata menggunakan sort
print('marilah kita urutkan :')
angka.sort()
huruf.sort()
print(angka)
print(huruf)
# membalik index isi list berapa angka dan kata menggunaan reverse
print('membalik urutan index :')
angka.reverse()
huruf.reverse()
print(angka)
print(huruf)

22
Acara-11/5.py Executable file
View File

@@ -0,0 +1,22 @@
# list minuman dengan 2 dimensi
minuman = [
["kopi","susu","teh"],
["jus apel","jus melon","jur jeruk"],
["es kopi","es campur","es teler"]
]
print(minuman)
print('\n')
# cara mengakses list multidiemnsi
# angka pertama menunjukkan kolom,yang kedua adalah baris
print("menampilkan salah satu menu dengan menunjuk nomer index :")
print(minuman[2][0])
print(minuman[0][1])
print('\n')
# mencetak isi list di dalam list satu persatu
print('\n')
print("menampilkan isi list di dalam list :")
for menu in minuman:
for menu2 in menu:
print(menu2)

39
Acara-11/list1.py Executable file
View File

@@ -0,0 +1,39 @@
# membuat list kosong
ListKosong = []
# membuat list berisi 1 item
List_1_Item = ['satuItem']
# membuat list dengan banyak item dengan satu tipe data
ListKata = ["mangga", "jambu", "apel", "anggur "]
listAngka = [23, 11, 94]
# membuat list dengan berbagai tipe data
ListCampuran = [23, "Novemver", 94]
# Membuat list berisi list ( bercabang)
ListNasted = ["Mahasiswa", ["Dian", 17, 160.5],"Lulus"]
ListGabugan = [ListKata, listAngka]
# mencetak hasil
#print (listAngka)
#print (ListKata)
#print (ListCampuran)
#print (ListNasted)
#print (ListGabugan)
# Mencetak indeks dari list
#print (ListNasted[0])
#print (ListNasted[1])
#print (ListNasted[1][0])
#print (ListNasted[1][1])
#print (ListNasted[1][2])
#print (ListNasted[2])
# Membuat list kosong
ListKosong = []
kata = "WORKSHOP"
angka = 12345678
print (kata[5])
print (angka[5])

25
Acara-11/slising_list.py Executable file
View File

@@ -0,0 +1,25 @@
list_kata = ["mangga", "jambu", "apel", "anggur"]
#mengubah indeks ke 1 pada list_kata
print ("Sebelum diubah:")
list_kata[1] = "rambutan"
print (list_kata)
# menambah list pada liat_kata tapi tidak disimpan
print ('List juga bisa ditambahkan :')
print (list_kata + ["delima", "melon", "pear"])
# menambah list pada list_kata dan disimpan
print ('List juga bisa ditambahkan dan disimpan :')
list_kata += ["delima", "melon", "pear"]
print (list_kata)
# mengali list pada list_kata
print ('List juga bisa dikali :')
print (list_kata * 2)
# memeriksa item pada list
print ('mangga' in list_kata)
print ('salah' not in list_kata)
if "melon" in list_kata:
print ("Ada melon")

11
Acara-12/NastedTuple.py Executable file
View File

@@ -0,0 +1,11 @@
tuple1 = (1,2,3)
tuple2 = ('satu', 'dua', 'tiga')
tuple3 = ('andi', 23,68.5)
tuple4 = (tuple1, tuple2, tuple3)
print (tuple1)
print (tuple2)
print (tuple3)
print (tuple4)
print (tuple4[1][2])
print (tuple4[2][0])

4
Acara-12/PengulanganTuple.py Executable file
View File

@@ -0,0 +1,4 @@
tupleBulan = ('Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni')
for month in tupleBulan:
print (month)

13
Acara-12/SequenceUnpacking.py Executable file
View File

@@ -0,0 +1,13 @@
def finchion1():
tuple1 = (1, 2, 3)
tuple2 = ('satu', 'dua', 'tiga')
tuple3 = ('andi', 23, 68.5)
tuple4 = (tuple1, tuple2, tuple3)
nama, usia, berat = tuple3
print ('nama : ', nama)
print ('usia : ', usia)
print ('berat : ', berat)
finchion1()

16
Acara-12/slicing.py Executable file
View File

@@ -0,0 +1,16 @@
tupleAngka = 1,2,3,4,5,6,7,8,9,10
#slicing tuple
print (tupleAngka[0:3])
print (tupleAngka[1:-1]) # memotong indeks ke 1 hinga -1
print (tupleAngka[-1:1])
print ('\n')
#slicing tanpa batas
print (tupleAngka[2:])
print (tupleAngka[5:])
print (tupleAngka[8:])
print (tupleAngka[:0])
print (tupleAngka[:1])
print (tupleAngka[:3])
print (tupleAngka[:5])

8
Acara-12/slicing3.py Executable file
View File

@@ -0,0 +1,8 @@
tupleAngka = 1,2,3,4,5,6,7,8,9,10
#Indeks kelipatan
#dari awal sampai khir dengan kelipatan indeks 2 langkah
print (tupleAngka[::2])
#dari indeks 1 hingga ke-8 dengan kelipatan indeks 3 langkah
print (tupleAngka[1:8:3])

4
Acara-12/slicing4.py Executable file
View File

@@ -0,0 +1,4 @@
tupleAngka = 1,2,3,4,5,6,7,8,9,10
#mencoba mengubah tuple indeks ke 0 dari angka 1 menjadi angka 0
tupleAngka[0] = 0

23
Acara-12/tuple.py Executable file
View File

@@ -0,0 +1,23 @@
tupleKosong = ()
tupleSingleton = ('satu',)
tupleSingleton2 = (1,)
tupleSingleton3 = 'satu',
tupleBulan = ('Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni')
#dibuat tanpa kurung
tupleAngka = 1,2,3,4,5,6,7,8,9,10
print (tupleKosong)
print (tupleSingleton)
print (tupleSingleton2)
print (tupleSingleton3)
print (tupleBulan)
print (tupleAngka)
print ('\n')
#cek tipe data
print (type(tupleSingleton))
print (type(tupleSingleton2))
print (type(tupleSingleton3))
print (type(tupleAngka))

20
Acara-12/tuple2.py Executable file
View File

@@ -0,0 +1,20 @@
tupleKosong = ()
tupleSingleton = ('satu',)
tupleSingleton2 = (1,)
tupleSingleton3 = 'satu',
tupleBulan = ('Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni')
#dibuat tanpa kurung
tupleAngka = 1,2,3,4,5,6,7,8,9,10
# menggabungkan 2 tuple menjadi 1
tupleGab = tupleSingleton3 + tupleAngka
print (tupleGab)
#mengakses data tuple
print (tupleBulan[0])
print (tupleBulan[3])
print (tupleBulan[5])
print (tupleAngka[-1])
print (tupleAngka[-3])
print (tupleAngka[-5])

8
Acara-12/tupleFunc.py Executable file
View File

@@ -0,0 +1,8 @@
tuple1 = (1,2,3)
tuple2 = ('satu', 'dua', 'tiga')
tuple3 = ('andi', 23,68.5)
tuple4 = (tuple1, tuple2, tuple3)
print (max(tuple1))
print (min(tuple1))
print (len(tuple1))

10
Acara-13/difference.py Normal file
View File

@@ -0,0 +1,10 @@
a = {1,2,3,4,5}
b = {4,5,6,7,8}
# mencari selisih antara set a dan b menggunakan operator -
print (a - b)
# menggunakan fungsi difference()
print (a.difference(b))
# Menggunakan fungsi difference()
print (b.difference(a))

11
Acara-13/intersection.py Normal file
View File

@@ -0,0 +1,11 @@
a = {1,2,3,4,5}
b = {4,5,6,7,8}
# mencari irisan antara set a dan b menggunakan operator &
print (a & b)
# menggunakan fungsi intersection()
print (a.intersection(b))
# Menggunakan fungsi intersection()
print (b.intersection(a))

8
Acara-13/komplemen.py Normal file
View File

@@ -0,0 +1,8 @@
a = {1,2,3,4,5}
b = {4,5,6,7,8}
print (a^b)
print (a.symmetric_difference(b))
print (b^a)
print (b.symmetric_difference(a))

7
Acara-13/nasted.py Normal file
View File

@@ -0,0 +1,7 @@
# Membuat nested set
nested_set = {10, 'SMK', ('RPL', 'TKJ', 'MM'), (1, 2)}
print(nested_set)
# Mengakses elemen dalam nested set
for item in nested_set:
print(item)

23
Acara-13/set1.py Normal file
View File

@@ -0,0 +1,23 @@
# kurung kurawal
setNomor = {1, 2, 3, 4, 5}
print (setNomor)
#dengan fungsi set()
setString = set (('senin', 'selasa', 'rabu', 'kamis', 'Jumat'))
print (setString)
#set kosong dengan fungsi set dan bukan kurawal
setKosong = set([])
print (setKosong)
#tidak dapat berisi item yang duplikat
SetDuplicate = {1, 2, 3, 3, 4, 4, 5}
print (SetDuplicate)
# dengan tipe data yang berbeda
setMix = {1.5,2.5,3.5,'coba', (4,5,6)}
print (setMix)
# list tidak bisa menjadi aggota set karena list bersifat mutable
setList = {1.5, 2.5, 3.5, 'coba', [4, 5, 6]}
print (setList)

27
Acara-13/set2.py Normal file
View File

@@ -0,0 +1,27 @@
#buat set baru
numSet = {1, 2, 3}
print (numSet)
#menambah item ke set
numSet.add(4)
print (numSet)
# menguodate item pada set tidak akan update jika item sudah ada
numSet.update([5, 1, 6, 2, 7])
print (numSet)
# menghapus item pada set
numSet.discard(6) #akan error jika item tidak ada
print (numSet)
numSet.remove(7) #akan error jika item tidak ada
print (numSet)
# menghapus item set sebelah kiri dengan pop()
numSet.pop() #akan error jika set kosong
print (numSet)
print (numSet.pop())
print (numSet)
#mengosongkan set
numSet.clear()
print (numSet)

11
Acara-13/task.py Normal file
View File

@@ -0,0 +1,11 @@
# 1. buat sebuah set, tampilkan isinya satu persatu
prodi_ti = ["MIF","MIF", "TKK", "TRK"]
print (prodi_ti)
# menampilkan isi prodi_ti satu persatu
set_prodi_ti = set(prodi_ti)
print (set_prodi_ti)
for prodi in set_prodi_ti:
print (prodi)

29
Acara-13/task2.py Normal file
View File

@@ -0,0 +1,29 @@
# 2. Buat sebuah nasted set, dan tampilkan isinya satu per satu
jurusan = ("Teknik", "Teknologi Informasi", "Kesehatan")
prodi = ("Management informasi kesehatan", "Teknik Komputer", "Teknik Energi Terbarukan")
# mengjonversikan tuple menjadi frozenset agar bisa dimasukkan ke dalam set lain
jurusan_set = frozenset(jurusan)
prodi_set = frozenset(prodi)
# membuat nested set
data_kampus = {
"Jurusan",
jurusan_set,
prodi_set,
"Prodi" # Elemen string tambahan
}
for elemen in data_kampus:
# Mengecek apakah elemen adalah frozenset (sub-koleksi)
if isinstance(elemen, frozenset):
print(f"\n--- List (Frozenset) ---")
for item in elemen:
print(f" -> {item}") # Menampilkan isi frozenset
print("-" * 30)
else:
# Elemen biasa (string)
print(f"Tipe Data: {elemen}")

11
Acara-13/union.py Normal file
View File

@@ -0,0 +1,11 @@
a = {1,2,3,4,5}
b = {4,5,6,7,8}
#mencari gabungan antara set a dan b menggunakan operator |
print (a|b)
# menggunakan fungsi union()
print (a.union(b))
#Menggunakan fungsi unioon()
print (b.union(a))

4
Acara-14/Dictionary/1.py Executable file
View File

@@ -0,0 +1,4 @@
identitas1 = {"nama": "andi", "umur": "17 Tahun", "gender": "L"}
identitas2 = {"nama": "bila", "umur": "16 Tahun", "gender": "P"}
print(identitas1)
print(identitas2)

View File

@@ -0,0 +1,2 @@
identitas1 = {"nama": "andi", "umur": "17 Tahun", "gender": "L"}
identitas2 = {"nama": "bila", "umur": "16 Tahun", "gender": "P"}

65
Acara-14/Dictionary/2.py Executable file
View File

@@ -0,0 +1,65 @@
mahasiswa = {
"nama": "Budi",
"umur": 20,
"Gender": "L",
"menikah": False,
"hobi": ["membaca", "bermain"],
"kuliah" : {
"jurusan": "Jurusan teknologi informasi",
"prodi": "D3 Teknik Komputer"
}
}
for key in sorted(mahasiswa):
print('%s: %s' % (key, mahasiswa[key]))
# print('Jumlah key pada variable siswa :', len(mahasiswa))
# print('Apakah dictionary mahasiswa memiliki key nama?')
# print('nama' in mahasiswa)
# print('\nApakah variable siswa TIDAK memiliki key status?')
# print('status' not in mahasiswa)
# # menghaus item
# del mahasiswa ['nama']
# print('Nama Mahasiswa:', mahasiswa.get("nama"))
# # menghapus menggunakan pop
# mahasiswa.pop ('umur')
# print('Umur Mahasiswa:', mahasiswa.get("umur"))
# # menampilkan nilai kembalian data yang saudah dihapus
# gender = mahasiswa.pop('Gender')
# print('jenis kelamin mahasiswa:', gender)
# # mencetak key alamat sekaligus cek
# print('Alamat:', mahasiswa.get("alamat"))
# # menambahkan key alamat ke dalam dict mahasiswa
# mahasiswa["alamat"] = "jember"
# # mencetak hasil
# print('Mahasiswa {} beralamat di {}'.format(
# mahasiswa.get('nama'),
# mahasiswa.get('alamat')
# ))
# # mengubah nilai item
# print('Nama Awal:', mahasiswa.get("nama"))
# mahasiswa["nama"] = "Budi Santoso"
# print('Nama Setelah Diubah:', mahasiswa.get("nama"))
# #mengakses item pada dictionary
# #menggunakan get()
# print('Nama Mahasiswa:', mahasiswa.get("nama"))
# # menggunakan kurung siku []
# print ('Umur Mahasiswa:', mahasiswa["umur"])
# # menggunakan fungsi berantai untuk dictionary bertingkat
# print('Jurusan Mahasiswa:', mahasiswa.get("kuliah").get("jurusan"))
# # menggunakan kurung siku di kedua dua nya
# print('Prodi Mahasiswa:', mahasiswa["kuliah"]["prodi"])

Binary file not shown.

10
Acara-15/a.py Executable file
View File

@@ -0,0 +1,10 @@
def halo(SalamPebuka):
print(SalamPebuka)
halo("Selamat Pagi")
def salam(name):
print("Selamat Pagi", name)
salam("Budi")
salam(123)

10
Acara-15/b.py Normal file
View File

@@ -0,0 +1,10 @@
# membua fungsi dengan parameter *nama
def saam(*nama):
i=0
print('Halo', end=' ')
while len(nama) > i:
print(nama[i], end=' ')
i += 1
# mengisi masing masing parameter dengan tipe data string
saam('Aldo', 'Budi', 'Cici')
saam('Doni', 'Eka', 'Fani', 'Gina')

7
Acara-15/c.py Normal file
View File

@@ -0,0 +1,7 @@
def salam(**person):
print('Halo', person['NamaDepan'], person['NamaBelakang'])
salam(NamaDepan='Aldo', NamaBelakang='Siregar')
salam(NamaBelakang='Budi', NamaDepan='Santoso')
salam(NamaDepan='Budi', NamaBelakang='Santoso', usia=20)
salam(NamaDepan='Budi')

5
Acara-15/d.py Normal file
View File

@@ -0,0 +1,5 @@
def perkalian(a, b):
hasil = int(a) * int(b)
return hasil
print('hasil perkalian dari 3 dan 5 adalah', perkalian(3, 5))

18
Acara-15/e.py Normal file
View File

@@ -0,0 +1,18 @@
# variable global
nama = "Desca Rizki Febriant"
golongan = "B"
def sebut():
# variable local
nama = "Bara"
golongan = "A"
# mengakses variable lokal
print ('Nama: %s' % nama)
print ('Golongan: %s' % golongan)
# mengakses variable global
print ('Nama: %s' % nama)
print ('Golongan: %s' % golongan)
# memanggil fungsi sebut
sebut()

62
Acara-16/calc1.py Normal file
View File

@@ -0,0 +1,62 @@
def tambah(x, y):
return x + y
def kurang(x, y):
return x - y
def kali(x, y):
return x * y
def bagi(x, y):
return x / y
print("Pilih operasi Kalkulasi")
print("1. Penjumlahan")
print("2. Pengurangan")
print("3. Perkalian")
print("4. Pembagian")
pilih = input("Masukkan pilihan (1/2/3/4): ")
num1 = int(input("Masukkan bilangan pertama: "))
num2 = int(input("Masukkan bilangan kedua: "))
if pilih == "1":
print(num1, "+", num2, "=", tambah(num1, num2))
elif pilih == "2":
print(num1, "-", num2, "=", kurang(num1, num2))
elif pilih == "3":
print(num1, "*", num2, "=", kali(num1, num2))
elif pilih == "4":
print(num1, "/", num2, "=", bagi(num1, num2))
else:
print("Pilihan tidak valid")
# pilihan = input("Masukkan pilihan (1/2/3/4): ")
# if pilihan == "1":
# num1 = float(input("Masukkan bilangan pertama: "))
# num2 = float(input("Masukkan bilangan kedua: "))
# print("Hasil penjumlahan:", tambah(num1, num2))
# elif pilihan == "2":
# num1 = float(input("Masukkan bilangan pertama: "))
# num2 = float(input("Masukkan bilangan kedua: "))
# print("Hasil pengurangan:", kurang(num1, num2))
# elif pilihan == "3":
# num1 = float(input("Masukkan bilangan pertama: "))
# num2 = float(input("Masukkan bilangan kedua: "))
# print("Hasil perkalian:", kali(num1, num2))
# elif pilihan == "4":
# num1 = float(input("Masukkan bilangan pertama: "))
# num2 = float(input("Masukkan bilangan kedua: "))
# print("Hasil pembagian:", bagi(num1, num2))
# else:
# print("Pilihan tidak valid")

63
Acara-16/calc2.py Normal file
View File

@@ -0,0 +1,63 @@
def tambah(x, y):
return x + y
def kurang(x, y):
return x - y
def kali(x, y):
return x * y
def bagi(x, y):
return x / y
def input_angka(pesan):
while True:
try:
return float(input(pesan))
except ValueError:
print("Input bukan angka, coba lagi.")
def input_pilihan():
while True:
pilih = input("Masukkan pilihan (1/2/3/4: ").strip()
if pilih.isdigit() and pilih in {"0", "1", "2", "3", "4"}:
return int(pilih)
print("Input bukan angka atau tidak valid, coba lagi.")
def tampil_menu():
print("==============================================")
print("WORKSHOP PEMROGRAMAN DASAR")
print("Selamat Datang di Program Kalkulator Sederhana")
print("==============================================")
print("Silahkan Pilih Opsi Operasi kalkulator")
print("1. Penjumlahan")
print("2. Pengurangan")
print("3. Perkalian")
print("4. Pembagian")
while True:
tampil_menu()
pilih = input_pilihan()
num1 = input_angka("Masukkan bilangan pertama: ")
num2 = input_angka("Masukkan bilangan kedua: ")
if pilih == "1":
print(num1, "+", num2, "=", tambah(num1, num2))
elif pilih == "2":
print(num1, "-", num2, "=", kurang(num1, num2))
elif pilih == "3":
print(num1, "*", num2, "=", kali(num1, num2))
elif pilih == "4":
print(num1, "/", num2, "=", bagi(num1, num2))
input("Tekan Enter untuk kembali ke menu...")
print()

141
Acara-16/temp.py Normal file
View File

@@ -0,0 +1,141 @@
def TampilkanSuhu():
print("==================================================")
print("WORKSHOP PEMROGRAMAN DASAR")
print("Selamat Datang di Program Konversi Suhu Sederhana")
print("==================================================")
print("1. Celcius")
print("2. Fahrenheit")
print("3. Kelvin")
print("4. Reamur")
print("Silahkan Pilih Satuan Mana yang akan di Konversi")
def subTampilanSuhu():
print('Suhu')
def input_angka(pesan):
while True:
try:
return float(input(pesan))
except ValueError:
print("Input bukan angka, coba lagi.")
def input_pilihan():
while True:
pilih = input("Masukkan pilihan (1/2/3/4: ").strip()
if pilih.isdigit() and pilih in {"0", "1", "2", "3", "4"}:
return int(pilih)
print("Input bukan angka atau tidak valid, coba lagi.")
# def konversiSuhu(suhu):
# drjt = int(suhu[:-1])
# inputan = suhu[-1]
# if inputan.upper() == "C":
# hasil1 = float((9 * drjt) / 5 + 32)
# hasil2 = float(drjt + 273.15)
# hasil3 = float(4 / 5 * drjt)
# jenisX = "Celcius"
# jenis1 = "Fahrenheit"
# jenis2 = "Kelvin"
# jenis3 = "Reamur"
# print(f"{drjt} {jenisX}, ={hasil1:.1f} {jenis1}")
# print(f"{drjt} {jenisX}, ={hasil2:.1f} {jenis2}")
# print(f"{drjt} {jenisX}, ={hasil3:.1f} {jenis3}")
# elif inputan.upper() == "F":
# hasil1 = float((drjt - 32) * 5 / 9)
# hasil2 = float(((drjt - 32) * 5 / 9) + 273.15)
# hasil3 = float(4 / 9 * (drjt - 32))
# jenisX = "Fahrenheit"
# jenis1 = "Celcius"
# jenis2 = "Kelvin"
# jenis3 = "Reamur"
# print(f"{drjt} {jenisX}, ={hasil1:.1f} {jenis1}")
# print(f"{drjt} {jenisX}, ={hasil2:.1f} {jenis2}")
# print(f"{drjt} {jenisX}, ={hasil3:.1f} {jenis3}")
# elif inputan.upper() == "K":
# hasil1 = float(drjt - 273.15)
# hasil2 = float((drjt - 273.15) * 9 / 5 + 32)
# hasil3 = float(4 / 5 * (drjt - 273))
# jenisX = "Kelvin"
# jenis1 = "Celcius"
# jenis2 = "Fahrenheit"
# jenis3 = "Reamur"
# print(f"{drjt} {jenisX}, ={hasil1:.1f} {jenis1}")
# print(f"{drjt} {jenisX}, ={hasil2:.1f} {jenis2}")
# print(f"{drjt} {jenisX}, ={hasil3:.1f} {jenis3}")
# elif inputan.upper() == "R":
# hasil1 = float((5 / 4) * drjt)
# hasil2 = float((9 / 4 * drjt) + 32)
# hasil3 = float((5 / 4 * drjt) + 273)
# jenisX = "Reamur"
# jenis1 = "Celcius"
# jenis2 = "Fahrenheit"
# jenis3 = "Kelvin"
# print(f"{drjt} {jenisX}, ={hasil1:.1f} {jenis1}")
# print(f"{drjt} {jenisX}, ={hasil2:.1f} {jenis2}")
# print(f"{drjt} {jenisX}, ={hasil3:.1f} {jenis3}")
# else:
# print("Maaf, inputan tidak sesuai. Sesuaikan inputan dengan kriteria yang ada")
def suhuCelcius(drjt):
hasil1 = float(drjt - 273.15)
hasil2 = float((drjt - 273.15) * 9 / 5 + 32)
hasil3 = float(4 / 5 * (drjt - 273))
jenisX = "Celcius"
jenis1 = "Kelvin"
jenis2 = "Fahrenheit"
jenis3 = "Reamur"
print(f"{drjt} {jenisX}, ={hasil1:.1f} {jenis1}")
print(f"{drjt} {jenisX}, ={hasil2:.1f} {jenis2}")
print(f"{drjt} {jenisX}, ={hasil3:.1f} {jenis3}")
def suhuFahrenheit(drjt):
hasil1 = float((drjt - 32) * 5 / 9 + 273.15)
hasil2 = float((drjt - 32) * 5 / 9)
hasil3 = float((drjt - 32) * 4 / 9)
jenisX = "Fahrenheit"
jenis1 = "Kelvin"
jenis2 = "Celcius"
jenis3 = "Reamur"
print(f"{drjt} {jenisX}, ={hasil1:.1f} {jenis1}")
print(f"{drjt} {jenisX}, ={hasil2:.1f} {jenis2}")
print(f"{drjt} {jenisX}, ={hasil3:.1f} {jenis3}")
def suhuKelvin(drjt):
hasil1 = float(drjt - 273.15)
hasil2 = float((drjt - 273.15) * 9 / 5 + 32)
hasil3 = float(4 / 5 * (drjt - 273))
jenisX = "Kelvin"
jenis1 = "Celcius"
jenis2 = "Fahrenheit"
jenis3 = "Reamur"
print(f"{drjt} {jenisX}, ={hasil1:.1f} {jenis1}")
print(f"{drjt} {jenisX}, ={hasil2:.1f} {jenis2}")
print(f"{drjt} {jenisX}, ={hasil3:.1f} {jenis3}")
def suhuReamur(drjt):
hasil1 = float(drjt * 5 / 4 + 273.15)
hasil2 = float(drjt * 9 / 4 + 32)
hasil3 = float(drjt * 9 / 10)
jenisX = "Reamur"
jenis1 = "Kelvin"
jenis2 = "Fahrenheit"
jenis3 = "Celcius"
print(f"{drjt} {jenisX}, ={hasil1:.1f} {jenis1}")
print(f"{drjt} {jenisX}, ={hasil2:.1f} {jenis2}")
print(f"{drjt} {jenisX}, ={hasil3:.1f} {jenis3}")
while True:
TampilkanSuhu()
pilih = input_pilihan()

75
Acara-16/temp2.py Normal file
View File

@@ -0,0 +1,75 @@
def konversiSuhu(suhu):
drjt = int(suhu[:-1])
inputan = suhu[-1]
if inputan.upper() == "C":
hasil1 = float((9 * drjt) / 5 + 32)
hasil2 = float(drjt + 273.15)
hasil3 = float(4 / 5 * drjt)
jenisX = "Celcius"
jenis1 = "Fahrenheit"
jenis2 = "Kelvin"
jenis3 = "Reamur"
print(f"{drjt} {jenisX}, ={hasil1:.1f} {jenis1}")
print(f"{drjt} {jenisX}, ={hasil2:.1f} {jenis2}")
print(f"{drjt} {jenisX}, ={hasil3:.1f} {jenis3}")
elif inputan.upper() == "F":
hasil1 = float((drjt - 32) * 5 / 9)
hasil2 = float(((drjt - 32) * 5 / 9) + 273.15)
hasil3 = float(4 / 9 * (drjt - 32))
jenisX = "Fahrenheit"
jenis1 = "Celcius"
jenis2 = "Kelvin"
jenis3 = "Reamur"
print(f"{drjt} {jenisX}, ={hasil1:.1f} {jenis1}")
print(f"{drjt} {jenisX}, ={hasil2:.1f} {jenis2}")
print(f"{drjt} {jenisX}, ={hasil3:.1f} {jenis3}")
elif inputan.upper() == "K":
hasil1 = float(drjt - 273.15)
hasil2 = float((drjt - 273.15) * 9 / 5 + 32)
hasil3 = float(4 / 5 * (drjt - 273))
jenisX = "Kelvin"
jenis1 = "Celcius"
jenis2 = "Fahrenheit"
jenis3 = "Reamur"
print(f"{drjt} {jenisX}, ={hasil1:.1f} {jenis1}")
print(f"{drjt} {jenisX}, ={hasil2:.1f} {jenis2}")
print(f"{drjt} {jenisX}, ={hasil3:.1f} {jenis3}")
elif inputan.upper() == "R":
hasil1 = float((5 / 4) * drjt)
hasil2 = float((9 / 4 * drjt) + 32)
hasil3 = float((5 / 4 * drjt) + 273)
jenisX = "Reamur"
jenis1 = "Celcius"
jenis2 = "Fahrenheit"
jenis3 = "Kelvin"
print(f"{drjt} {jenisX}, ={hasil1:.1f} {jenis1}")
print(f"{drjt} {jenisX}, ={hasil2:.1f} {jenis2}")
print(f"{drjt} {jenisX}, ={hasil3:.1f} {jenis3}")
else:
print("Maaf, inputan tidak sesuai. Sesuaikan inputan dengan kriteria yang ada")
# --- Bagian Program Utama ---
i = 0
print("=========================================")
print("WORKSHOP PEMROGRAMAN DASAR")
print("Selamat Datang di Program Konversi Suhu Sederhana")
print("=========================================")
while i == 0:
temp = input(
"\nSilahkan masukkan suhu, diikuti satuan suhu (Misal: 0C, 200F, 273K, 60R = "
)
konversiSuhu(temp)
lagi = input("Hitung lagi? (1=ya & 0=tidak) = ")
if lagi == "1":
i = 0
elif lagi == "0":
i = 1

161
Acara-16/temp3.py Normal file
View File

@@ -0,0 +1,161 @@
def input_angka(pesan):
while True:
try:
return float(input(pesan))
except ValueError:
print("Input bukan angka, coba lagi.")
def input_pilihan(valid_opsi, pesan="Pilih: "):
valid_opsi = {str(o) for o in valid_opsi}
while True:
s = input(pesan).strip()
if s in valid_opsi:
return int(s)
print(f"Input tidak valid. Pilihan yang tersedia: {sorted(valid_opsi)}")
# =================
# NOTE :
# c = Celcius
# k = Kelvin
# f = Fahrenheit
# r = Reamur
# =================
def to_c_from_f(f):
return (f - 32) * 5 / 9
def to_c_from_r(r):
return r * 5 / 4
def to_c_from_k(k):
return k - 273.15
def from_c_to_f(c):
return c * 9 / 5 + 32
def from_c_to_r(c):
return c * 4 / 5
def from_c_to_k(c):
return c + 273.15
def konversi_suhu():
print("==============================================")
print("WORKSHOP PEMROGRAMAN DASAR")
print("Selamat Datang di Program Konversi Suhu Sederhana")
print("==============================================")
print("1. Celcius")
print("2. Reamur")
print("3. Fahrenheit")
print("4. Kelvin")
pilih = input_pilihan(
{1, 2, 3, 4}, "Masukkan satuan yang akan dikonversi (1/2/3/4): "
)
# Menaruh label
label = {1: "Celcius", 2: "Reamur", 3: "Fahrenheit", 4: "Kelvin"}[pilih]
print(f"\n=={label}==")
if pilih == 1: # pilihan ke 1
c = input_angka("Suhu Celcius = ")
print("\nMau diubah ke satuan suhu yang mana ?")
print("1. Reamur")
print("2. Fahrenheit")
print("3. Kelvin")
tujuan = input_pilihan({1, 2, 3}, "Pilih = ")
if tujuan == 1:
hasil = from_c_to_r(c)
tujuan = "reamur"
elif tujuan == 2:
hasil = from_c_to_f(c)
tujuan = "fahrenheit"
else:
hasil = from_c_to_k(c)
tujuan = "kelvin"
elif pilih == 2: # pilihan ke 2
r = input_angka("Suhu Reamur = ")
c = to_c_from_r(r)
print("\nMau diubah ke satuan suhu yang mana ?")
print("1. Celcius")
print("2. Fahrenheit")
print("3. Kelvin")
tujuan = input_pilihan({1, 2, 3}, "Pilih = ")
if tujuan == 1:
hasil = c
tujuan = "celcius"
elif tujuan == 2:
hasil = from_c_to_f(c)
tujuan = "fahrenheit"
else:
hasil = from_c_to_k(c)
tujuan = "kelvin"
elif pilih == 3: # pilihan ke 3
f = input_angka("Suhu Fahrenheit = ")
c = to_c_from_f(f)
print("\nMau diubah ke satuan suhu yang mana ?")
print("1. Celcius")
print("2. Reamur")
print("3. Kelvin")
tujuan = input_pilihan({1, 2, 3}, "Pilih = ")
if tujuan == 1:
hasil = c
tujuan = "celcius"
elif tujuan == 2:
hasil = from_c_to_r(c)
tujuan = "reamur"
else:
hasil = from_c_to_k(c)
tujuan = "kelvin"
else: # pilihan ke 4
k = input_angka("Suhu Kelvin = ")
c = to_c_from_k(k)
print("\nMau diubah ke satuan suhu yang mana ?")
print("1. Celcius")
print("2. Reamur")
print("3. Fahrenheit")
tujuan = input_pilihan({1, 2, 3}, "Pilih = ")
if tujuan == 1:
hasil = c
tujuan = "celcius"
elif tujuan == 2:
hasil = from_c_to_r(c)
tujuan = "reamur"
else:
hasil = from_c_to_f(c)
tujuan = "fahrenheit"
print(f"\nSuhu {tujuan} = {hasil:.12f}\n") # presisi mirip contoh
def MenuUtama():
print("==============================================")
print("WORKSHOP PEMROGRAMAN DASAR")
print("Selamat Datang di Program Konversi Suhu Sederhana")
print("==============================================")
print("1. Konversi Suhu")
print("2. Keluar")
while True:
MenuUtama()
m = input_pilihan({1, 2}, "Pilih menu (1/2): ")
if m == 1:
konversi_suhu()
elif m == 2:
print("Terima kasih, program selesai.")
break
input("Tekan Enter untuk kembali ke menu...")

View File

@@ -0,0 +1 @@
print('hello')

View File

@@ -0,0 +1,7 @@
from machine import Pin
from time import sleep
led=Pin(2,Pin.OUT)
while True:
led.value(not led.value())
sleep(0.5)

22
Acara-7/input-output.py Executable file
View File

@@ -0,0 +1,22 @@
# Simple Input and Output in Python
# Ask the user to enter their name
name = input("Enter your name: ") # input() gets user input as a string
# Print a greeting message using the input
print("Hello,", name) # print() outputs text to the screen
# Ask the user to enter their age
age = input("Enter your age: ")
# Print a message with the user's age
print("You are", age, "years old.")
var = int(input("Enter an Number: ")) # Convert input to integer
print("You entered the Number:", var)
flt = float(input("Enter a floating-point number: ")) # Convert input to float
print("You entered the float:", flt)
# Demonstrating formatted output
print("Formatted output: Name: {}, Age: {}, Integer: {}, Float: {:.2f}".format(name, age, var, flt))
print(f"Formatted output using f-string: Name: {name}, Age: {age}, Integer: {var}, Float: {flt:.2f}")

5
Acara-7/input-output2.py Executable file
View File

@@ -0,0 +1,5 @@
nama = input("Masukkan nama Anda: ")
umur = int(input("Masukkan umur Anda: "))
tinggi = float(input("Masukkan tinggi badan Anda (dalam cm): "))
print ("Halo %s, Umur kamu %i tahun dan tinggi badambu %f cm." % (nama, umur, tinggi))

3
Acara-7/input-output3.py Executable file
View File

@@ -0,0 +1,3 @@
print (1, 3, 5, 7)
print (1,2,3,4, sep='*')
print (1,2,3,4, sep='#', end='&')

9
Acara-8/Percabangan-1.py Executable file
View File

@@ -0,0 +1,9 @@
#if
angka = int(input("Masukkan angka: "))
if angka > 5:
print("angka lebih besar dari 5")
elif angka == 5:
print("angka sama dengan 5")
else:
print("angka lebih kecil dari 5")

26
Acara-8/if-elif-else.py Executable file
View File

@@ -0,0 +1,26 @@
# angka = int (input("Masukkan angka: "))
# if angka > 0:
# print("angka positif")
# elif angka == 0:
# print("angka nol")
# else:
# print("angka negatif")
hari = input("Masthx infukkan hari (Senin, Selasa, Rabu, Kamis, Jumat, Sabtu, Minggu): ")
if hari == "Senin":
print("Hari ini adalah hari Senin")
elif hari == "Selasa":
print("Hari ini adalah hari Selasa")
elif hari == "Rabu":
print("Hari ini adalah hari Rabu")
elif hari == "Kamis":
print("Hari ini adalah hari Kamis")
elif hari == "Jumat":
print("Hari ini adalah hari Jumat")
elif hari == "Sabtu":
print("Hari ini adalah hari Sabtu")
elif hari == "Minggu":
print("Hari ini adalah hari Minggu")
else:
print("Hari yang Anda masukkan tidak valid")

6
Acara-8/if-else.py Executable file
View File

@@ -0,0 +1,6 @@
age = int(input("Masukkan umur Anda: "))
if age >= 18:
print("Anda sudah dewasa.")
else:
print("Anda masih di bawah umur.")

10
Acara-8/if.py Executable file
View File

@@ -0,0 +1,10 @@
angka = 5
if (angka > 3):
print("angka lebih besar dari 5")
if (angka < 10):
print("angka lebih kecil dari 10")
if (angka == 5):
print("angka sama dengan 5")

18
Acara-8/naste-if.py Executable file
View File

@@ -0,0 +1,18 @@
try :
age = int(input("Masukkan umur Anda: "))
if (age >= 17):
kerja = input("Apakah Anda sudah bekerja atau masih kuliah? (kerja/kuliah): ").lower()
if kerja == "kerja":
print("Selamat! Anda sudah dewasa dan bekerja.")
elif kerja == "kuliah":
print("Anda sudah dewasa dan masih kuliah.")
else:
print("Input tidak valid")
elif (4 < age < 17):
print("Anda masih Seorang siswa.")
else:
print("Anda masih Anak-anak.")
except:
print("Input tidak valid, masukkan angka saja.")

15
Operator Penugasan.py Executable file
View File

@@ -0,0 +1,15 @@
#a =3
#print("Awal mula a = %d" % a)
#a += 5
#print("Nilai setelah ditambah 5:")
#print("a = %d" % a)
a = 5
a += 2
a -= 3
a *= 10
a /= 4
a **= 2
print("Nilai a adalah %d" % a)

9
Operator bitwise.py Executable file
View File

@@ -0,0 +1,9 @@
a = 0b01 #desimal=1
b = 0b10 #desimal=2
print (a&b) #AND
print (a|b) #OR
print (a^b) #XOR
print (~a) #NOT
print (~b) #NOT

26
Operator bitwise2.py Executable file
View File

@@ -0,0 +1,26 @@
a = 4
b = 5
#operasi AND
c = a & b
print ("a & b = %s" % c)
#operasi OR
c = a | b
print ("a | b = %s" % c)
#operasi XOR
c = a ^ b
print ("a ^ b = %s" % c)
#operasi NOT
c = ~a
print ("~a = %s" % c)
c = ~b
print ("~b = %s" % c)
#operasi geser ke kiri
c = a << b
print ("a << b = %s" % c)
c = b << a
print ("b << a = %s" % c)

View File

@@ -0,0 +1,23 @@
def hutang():
try:
hutang_awal = float(input("Masukkan jumlah hutang awal: "))
persen_bunga = float(input("Masukkan persentase bunga per hari (contoh: 2 untuk 2%): "))
hari = int(input("Masukkan jumlah hari: "))
# Persentase bunga diubah menjadi desimal lalu dibagi 100
hutang_akhir = hutang_awal * (1 + (persen_bunga / 100)) ** hari
# Menampilkan hasil
print(f"\nData yang di input:")
print(f"Hutang awal: Rp {hutang_awal:,.2f}")
print(f"Bunga harian: {persen_bunga}%")
print(f"Jumlah hari: {hari} hari")
print("-" * 30)
print(f"Hutang akhir: Rp {hutang_akhir:,.2f}")
except ValueError:
print("Input tidak valid. Pastikan memasukkan angka untuk semua nilai.")
# Menjalankan fungsi utama
if __name__ == "__main__":
hutang()

118
Tugas/Crud.py Normal file
View File

@@ -0,0 +1,118 @@
# Variabel global untuk menyimpan data
# menggunakan list (daftar) dari dictionary
data_mahasiswa = []
def tampilkan_data():
print("\n--- Daftar Data Tersimpan ---")
if not data_mahasiswa:
print("Belum ada data yang tersimpan.")
else:
# Menampilkan data sesuai format
for i, data in enumerate(data_mahasiswa, start=1):
print(f"{i}. {data['nama']}, {data['alamat']}")
print("-----------------------------")
def tambah_data():
# Fungsi untuk menu 1: Tambah data
print("\n--- Menu 1: Tambah Data ---")
nama = input("Masukkan data nama: ")
alamat = input("Masukkan data alamat: ")
# Simpan data ke dalam list
data_mahasiswa.append({"nama": nama, "alamat": alamat})
print("\nData baru berhasil ditambahkan!")
def ubah_data():
print("\n--- Menu 2: Ubah Data ---")
tampilkan_data()
if not data_mahasiswa:
print("Data kosong, tidak ada yang bisa diubah.")
return # Kembali ke menu utama
try:
# Meminta input nomor data yang akan diubah
pilihan_str = input("Pilih data yang akan dirubah : ")
pilihan = int(pilihan_str)
# Konversi ke index list
index = pilihan - 1
# Apakah nomor yang dipilih ada di dalam list?
if 0 <= index < len(data_mahasiswa):
# Langkah 2: Meminta input data baru
print(
f"Anda akan mengubah data ke-{pilihan}: {data_mahasiswa[index]['nama']}"
)
nama_baru = input("Masukkan nama baru: ")
alamat_baru = input("Masukkan alamat baru: ")
# Proses perubahan data
data_mahasiswa[index] = {"nama": nama_baru, "alamat": alamat_baru}
print("\nData berhasil diubah!")
else:
print("Nomor data invalid.")
except ValueError:
print("Input Invalid. Masukkan Angka.")
def hapus_data():
print("\n--- Menu 3: Hapus Data ---")
tampilkan_data()
if not data_mahasiswa:
print("Data kosong, tidak ada yang bisa dihapus.")
return # Kembali ke menu utama
try:
pilihan_str = input("Pilih data no data yang akan dihapus : ")
pilihan = int(pilihan_str)
# Mengkonversi indeks
index = pilihan - 1
# Apakah nomor yang dipilih ada di dalam list?
if 0 <= index < len(data_mahasiswa):
# Menghaops data dari list
data_yang_dihapus = data_mahasiswa.pop(index)
print(f"\nData '{data_yang_dihapus['nama']}' berhasil dihapus.")
else:
print("Nomor data invalid.")
except ValueError:
print("Input Invalid. Masukkan Angka.")
def jalankan_program():
while True:
print("\nMenu")
print("1. Tambah data")
print("2. Ubah data")
print("3. Hapus data")
print("4. Tampil data")
pilihan = input("Pilihlah no menu diatas: ")
if pilihan == "1":
tambah_data()
elif pilihan == "2":
ubah_data()
elif pilihan == "3":
hapus_data()
elif pilihan == "4":
tampilkan_data()
input("\nTekan Enter untuk kembali ke menu...")
else:
print("Pilihan invalid. Pilih nomor 1-4.")
jalankan_program()

BIN
Tugas/LDR Sensor.fzz Normal file

Binary file not shown.

BIN
Tugas/Lamp Sensor.fzz Normal file

Binary file not shown.

BIN
Tugas/Lamp Sensor2.fzz Normal file

Binary file not shown.

19
Tugas/a.py Normal file
View File

@@ -0,0 +1,19 @@
def tampilkanAngka(batas, i=50):
print(f"Perulangan ke {i}")
if i == batas: # jika i sama dengan batas
print("Selesai.")
return
elif i < batas:
# Jika i lebih kecil
tampilkanAngka(batas, i + 2)
elif i > batas:
# Jika i lebih besar
tampilkanAngka(batas, i - 2)
print("--- Recrusive Start ---")
tampilkanAngka(60)
print("--- Recrusive End ---")

10
Tugas/b.py Normal file
View File

@@ -0,0 +1,10 @@
def jumlah_deret(n):
if n == 0:
return 0
else:
return n + jumlah_deret(n - 2)
bilangan = 8
hasil = jumlah_deret(bilangan)
print(f"Jumlah deret dari 1 sampai {bilangan} adalah {hasil}")

9
Tugas/c.py Normal file
View File

@@ -0,0 +1,9 @@
def func(n):
if n == 1:
return 1
else:
return func(n - 1) + func(n - 2)
for i in range(5):
print(func(i), end=" ")

120
Tugas/crud2.py Executable file
View File

@@ -0,0 +1,120 @@
# Variabel global untuk menyimpan data
# Ini adalah 'state' program, terpisah dari fungsi.
# Berbeda dengan 'self.data_mahasiswa' yang terikat pada objek.
data_mahasiswa = []
def tampilkan_data():
print("\n--- Daftar Data Tersimpan ---")
# Langsung mengakses variabel GLOBAL 'data_mahasiswa'
if not data_mahasiswa:
print("Belum ada data yang tersimpan.")
else:
# Menampilkan data sesuai format
for i, data in enumerate(data_mahasiswa, start=1):
print(f"{i}. {data['nama']}, {data['alamat']}")
print("-----------------------------")
# Ini juga FUNGSI biasa
def tambah_data():
print("\n--- Menu 1: Tambah Data ---")
nama = input("Masukkan data nama: ")
alamat = input("Masukkan data alamat: ")
# Langsung memodifikasi variabel GLOBAL
data_mahasiswa.append({"nama": nama, "alamat": alamat})
print("\nData baru berhasil ditambahkan!")
# FUNGSI biasa
def ubah_data():
print("\n--- Menu 2: Ubah Data ---")
# Memanggil FUNGSI global lainnya
tampilkan_data()
if not data_mahasiswa:
print("Data kosong, tidak ada yang bisa diubah.")
return
try:
pilihan_str = input("Pilih data yang akan dirubah : ")
pilihan = int(pilihan_str)
index = pilihan - 1
if 0 <= index < len(data_mahasiswa):
print(
f"Anda akan mengubah data ke-{pilihan}: {data_mahasiswa[index]['nama']}"
)
nama_baru = input("Masukkan nama baru: ")
alamat_baru = input("Masukkan alamat baru: ")
# Langsung memodifikasi variabel GLOBAL
data_mahasiswa[index] = {"nama": nama_baru, "alamat": alamat_baru}
print("\nData berhasil diubah!")
else:
print("Nomor data invalid.")
except ValueError:
print("Input Invalid. Masukkan Angka.")
# FUNGSI biasa
def hapus_data():
print("\n--- Menu 3: Hapus Data ---")
tampilkan_data()
if not data_mahasiswa:
print("Data kosong, tidak ada yang bisa dihapus.")
return
try:
pilihan_str = input("Pilih data no data yang akan dihapus : ")
pilihan = int(pilihan_str)
index = pilihan - 1
if 0 <= index < len(data_mahasiswa):
# Langsung memodifikasi variabel GLOBAL
data_yang_dihapus = data_mahasiswa.pop(index)
print(f"\nData '{data_yang_dihapus['nama']}' berhasil dihapus.")
else:
print("Nomor data invalid.")
except ValueError:
print("Input Invalid. Masukkan Angka.")
# FUNGSI utama untuk menjalankan program
def jalankan_program():
while True:
print("\nMenu")
print("1. Tambah data")
print("2. Ubah data")
print("3. Hapus data")
print("4. Tampil data")
print("5. Keluar") # Tambahan kecil
pilihan = input("Pilihlah no menu diatas: ")
# Memanggil FUNGSI global, bukan method objek
if pilihan == "1":
tambah_data() # Bukan app.tambah_data()
elif pilihan == "2":
ubah_data() # Bukan app.ubah_data()
elif pilihan == "3":
hapus_data() # Bukan app.hapus_data()
elif pilihan == "4":
tampilkan_data() # Bukan app.tampilkan_data()
input("\nTekan Enter untuk kembali ke menu...")
elif pilihan == "5":
print("Program selesai.")
break # Keluar dari loop
else:
print("Pilihan invalid. Pilih nomor 1-5.")
# Langsung panggil FUNGSI global untuk memulai program
jalankan_program()

99
Tugas/crud3.py Executable file
View File

@@ -0,0 +1,99 @@
data_mahasiswa = []
def show_data():
print("\n--- Daftar Data Tersimpan ---")
if not data_mahasiswa:
print("Belum ada data yang tersimpan.")
else:
for index, mahasiswa in enumerate(data_mahasiswa, start=1):
print(f"{index}. Nama: {mahasiswa['nama']}, Alamat: {mahasiswa['alamat']}")
print()
def add_data():
print("\n--- Menambahkan Data Mahasiswa ---")
nama = input("Nama: ")
alamat = input("alamat: ")
data_mahasiswa.append({"nama": nama, "alamat": alamat})
print("Data berhasil ditambahkan.")
def change_data():
print("\n--- Mengubah Data Mahasiswa ---")
if not data_mahasiswa:
print("Belum ada data yang tersimpan.")
else:
show_data()
index = int(input("Masukkan nomor data yang ingin diubah: ")) - 1
if 0 <= index < len(data_mahasiswa):
nama = input("Nama baru: ")
alamat = input("alamat baru: ")
data_mahasiswa[index]["nama"] = nama
data_mahasiswa[index]["alamat"] = alamat
print("Data berhasil diubah.")
else:
print("Nomor data tidak valid.")
def delete_data():
print("\n--- Menghapus Data Mahasiswa ---")
if not data_mahasiswa:
print("Belum ada data yang tersimpan.")
else:
show_data()
index = int(input("Masukkan nomor data yang ingin dihapus: ")) - 1
if 0 <= index < len(data_mahasiswa):
del data_mahasiswa[index]
print("Data berhasil dihapus.")
else:
print("Nomor data tidak valid.")
def save_data():
with open("data_mahasiswa.txt", "w") as file:
for data in data_mahasiswa:
file.write(f"{data['nama']},{data['alamat']}\n")
def load_data():
try:
with open("data_mahasiswa.txt", "r") as file:
for line in file:
nama, alamat = line.strip().split(",")
data_mahasiswa.append({"nama": nama, "alamat": alamat})
except FileNotFoundError:
pass
def run_program():
while True:
print("\n--- Menu ---")
print("1. Tambah Data")
print("2. Ubah Data")
print("3. Hapus Data")
print("4. Tampilkan Data")
print("5. Simpan Data")
print("6. Load Data")
print("7. Keluar")
choice = input("Pilih menu (1/2/3/4/5/6/7): ")
if choice == "1":
add_data()
elif choice == "2":
change_data()
elif choice == "3":
delete_data()
elif choice == "4":
show_data()
elif choice == "5":
save_data()
elif choice == "6":
load_data()
elif choice == "7":
print("Finished")
break
else:
print("Pilihan tidak valid.")
run_program()

18
Tugas/d.py Normal file
View File

@@ -0,0 +1,18 @@
def hitung_faktorial(n):
if n == 0 and n == 1:
return 1
else:
n - hitung_faktorial(n + 1)
angka1 = 3
hasil = hitung_faktorial(angka1)
print(hitung_faktorial)
angka2 = 0
hasil2 = hitung_faktorial(angka2)
print(hitung_faktorial)
angka3 = 5
hasil3 = hitung_faktorial(angka3)
print(hitung_faktorial)

1
Tugas/data_mahasiswa.txt Executable file
View File

@@ -0,0 +1 @@
asdas,asdas

47
Tugas/recrusive.py Normal file
View File

@@ -0,0 +1,47 @@
# Data Mahasiswa
data_mahasiswa = [
{"nim": "101", "nama": "Budi", "ipk": 3.2},
{"nim": "102", "nama": "Ani", "ipk": 3.8},
{"nim": "103", "nama": "Candra", "ipk": 2.9},
{"nim": "104", "nama": "Dewi", "ipk": 3.5},
]
# === CONTOH 1: MENCETAK NAMA ===
def cetak_nama_rekursif(list_mhs):
# 1. Kasus Dasar (Base Case)
if not list_mhs:
return
# 2. Langkah Rekursif (Recursive Step)
mahasiswa_pertama = list_mhs[0]
print(f"- {mahasiswa_pertama['nama']} (NIM: {mahasiswa_pertama['nim']})")
cetak_nama_rekursif(list_mhs[1:])
print("### Daftar Nama Mahasiswa ###")
cetak_nama_rekursif(data_mahasiswa)
# === CONTOH 2: MENGHITUNG IPK > 3.0 ===
def hitung_ipk_di_atas(list_mhs, batas_ipk=3.0):
# 1. Kasus Dasar (Base Case)
if not list_mhs:
return 0
# 2. Langkah Rekursif (Recursive Step)
mahasiswa_pertama = list_mhs[0]
sisa_list = list_mhs[1:]
jumlah_dari_sisa = hitung_ipk_di_atas(sisa_list, batas_ipk)
if mahasiswa_pertama["ipk"] > batas_ipk:
return 1 + jumlah_dari_sisa
else:
return 0 + jumlah_dari_sisa
# Menjalankan fungsi
jumlah_lulus = hitung_ipk_di_atas(data_mahasiswa, 3.0)
print(f"\n### Jumlah Mahasiswa dengan IPK > 3.0 ###")
print(f"Total: {jumlah_lulus} mahasiswa")

8
a.py Executable file
View File

@@ -0,0 +1,8 @@
#nama = input("Masukkan nama Anda: ")
#usia = input("Masukkan usia Anda: ")
#
#print("Selamat datang, ", nama, ". Anda berusia", usia, "tahun.")
angka =int(input("masukan sebuah angka : "))
print(angka+10)

7
b.py Executable file
View File

@@ -0,0 +1,7 @@
angka = 100
def ubah_angka():
angka = 50
print("Di dalam fungsi:", angka)
ubah_angka()
print("Di luar fungsi:", angka)

View File

View File

@@ -0,0 +1,5 @@
#variable 4
MataKuliah = "Workshop Pemrograman Dasar"
print (MataKuliah)
del (MataKuliah)
print (MataKuliah)

View File

@@ -0,0 +1,26 @@
a = 10
b = 3
#menggunakan poperator penjumlaham
c = a + b
print("Hasil %d + %d = %d" % (a, b, c))
#menggunakan operator pengurangan
c = a - b
print("Hasil %d - %d = %d" % (a, b, c))
#menggunakan operator perkalian
c = a * b
print("Hasil %d * %d = %d" % (a, b, c))
#menggunakan operator pembagian
c = a / b
print("Hasil %d / %d = %f" % (a, b, c))
#menggunakan operator Sisa bagi
c = a % b
print("Hasil %d %% %d = %d" % (a, b, c))
#menggunakan operator Pangkat
c = a ** b
print("Hasil %d ** %d = %d" % (a, b, c))

View File

@@ -0,0 +1,23 @@
name = input("Your name is: ")
age = input("Your age is: ")
matakuliah = "aaa"
var1, var2, var3 = 5, "test2", 3.14
#print("Hello " + name + ", you are " + age + " years old.")
print("Hello {name}.")
print("Hello World")
age = int(input("Masukkan Umur Kamu: "))
if age > 30:
print("Umur Mu Diatas 30 Tahun")
else:
print("Umur Mu Masih Di Bawah 30 Tahun")
print(var1, var2, var3)
print (matakuliah)
del (matakuliah)
print ("Matakuliah telah dihapus")

16
operator logika.py Executable file
View File

@@ -0,0 +1,16 @@
a = True
b = False
#Logika AND
c = a and b
print("%r and %r = %r" % (a,b,c))
#Logika OR
c = a or b
print("%r or %r = %r" % (a,b,c))
#Logika NOT
c = not a
print("not %r = %r" % (a,c))
c = not b
print("not %r = %r" % (b,c))

25
operator pembanding.py Executable file
View File

@@ -0,0 +1,25 @@
a = 5
b = 3
# apakah a sama dengan b?
c =a == b
print("Apakah %d == %d: %r" % (a,b,c))
# apakah a < b?
c = a < b
print("Apakah %d < %d: %r" % (a,b,c))
# apakah a > b?
c = a > b
print("Apakah %d > %d: %r" % (a,b,c))
# apakah a <= b?
c = a <= b
print("Apakah %d <= %d: %r" % (a,b,c))
# apakah a >= b?
c = a >= b
print("Apakah %d >= %d: %r" % (a,b,c))
#apakah a != b?
c = a != b
print("Apakah %d != %d: %r" % (a,b,c))

13
seb.py Executable file
View File

@@ -0,0 +1,13 @@
import zlib
import gzip
import rncryptor
cryptor = rncryptor.RNCryptor()
binary = gzip.open("SEB-Slearn.seb", 'rb')
f = binary.read()
binary.close()
#im getting error here
dec_data = (rncryptor.decrypt(f[4:], 'iitu'))
print(zlib.decompress(dec_data,15 + 32))

57
simple calc.py Executable file
View File

@@ -0,0 +1,57 @@
# Fungsi untuk penjumlahan
def add(x, y):
return x + y
# Fungsi untuk pengurangan
def subtract(x, y):
return x - y
# Fungsi untuk perkalian
def multiply(x, y):
return x * y
# Fungsi untuk pembagian
def divide(x, y):
# Memastikan tidak ada pembagian dengan nol
if y == 0:
return "Error! Pembagian dengan nol tidak bisa."
return x / y
print("Pilih operasi.")
print("1.Penjumlahan")
print("2.Pengurangan")
print("3.Perkalian")
print("4.Pembagian")
while True:
# Mengambil input dari pengguna
choice = input("Masukkan pilihan (1/2/3/4): ")
# Mengecek apakah pilihan valid
if choice in ('1', '2', '3', '4'):
try:
num1 = float(input("Masukkan angka pertama: "))
num2 = float(input("Masukkan angka kedua: "))
except ValueError:
print("Input tidak valid. Masukkan angka.")
continue
if choice == '1':
print(num1, "+", num2, "=", add(num1, num2))
elif choice == '2':
print(num1, "-", num2, "=", subtract(num1, num2))
elif choice == '3':
print(num1, "*", num2, "=", multiply(num1, num2))
elif choice == '4':
print(num1, "/", num2, "=", divide(num1, num2))
# Cek apakah pengguna ingin lanjut
next_calculation = input("Mau coba lagi? (ya/tidak): ")
if next_calculation.lower() != "ya":
break
else:
print("Pilihan tidak valid")

22
simple calc2.py Executable file
View File

@@ -0,0 +1,22 @@
angka1 = float(input("Masukkan angka pertama: "))
operator = input("Masukkan operator (+, -, *, /): ")
angka2 = float(input("Masukkan angka kedua: "))
if operator == '+':
hasil = angka1 + angka2
print(f"Hasil: {angka1} + {angka2} = {hasil}")
elif operator == '-':
hasil = angka1 - angka2
print(f"Hasil: {angka1} - {angka2} = {hasil}")
elif operator == '*':
hasil = angka1 * angka2
print(f"Hasil: {angka1} * {angka2} = {hasil}")
elif operator == '/':
if angka2 != 0:
hasil = angka1 / angka2
print(f"Hasil: {angka1} / {angka2} = {hasil}")
else:
print("Error! Tidak bisa membagi dengan nol.")
else:
print("Operator tidak valid.")

16
test.py Executable file
View File

@@ -0,0 +1,16 @@
bergerak = True
while bergerak:
command = input("Masukkan perintah (maju, mundur, belok kiri, belok kanan, berhenti): ").lower()
if command == "maju":
print("Robot bergerak maju.")
elif command == "mundur":
print("Robot bergerak mundur.")
elif command == "belok kiri":
print("Robot berbelok ke kiri.")
elif command == "belok kanan":
print("Robot berbelok ke kanan.")
elif command == "berhenti":
print("Robot berhenti.")
bergerak = False
else:
print("Perintah tidak dikenali. Silakan coba lagi.")