Latihan Bab 4

07 October 2024 00:22:22 Dibaca : 26

Nama                     : I Komang Yuda

NIM                        : 411423072

Prodi / Kelas          : Pendidkan Matematika / B

Mata Kuliah           : Komputasi dan Pemrograman

Dosen Pengampu : Agusyarif Rezka Nuha, S.Pd. M.Pd

 

1. Jelaskan apa yang dimaksud dengan fungsi 

Fungsi dalam algoritma adalah blok kode yang dirancang untuk melakukan tugas tertentu. Fungsi digunakan untuk mengimplementasikan konsep modular (memecah mecah program ke dalam subprogram yang dikenal dengan tehnik dekomposisi). Fungsi bertugas untuk menjalankan serangkaian perintah secara speksifik. Cara membuat fungsi di phyton dengan menggunakan kata kunci def, kemudian diikuti dengan nama fungsi.

  • def, untuk membuat fungsi
  • nama fungsi, merupakan nama fungsi 
  • daftar parameter, untuk membuat parameter (argumen)
  • statement, merupakan pernyataan yang diberikan pada fungsi
  • return, untuk mengembalikan suatu nilai ekspresi dari sebuah fungsi

Tujuan utama dari fungsi adalah untuk:

  • Modularitas: Fungsi membantu memisahkan tugas-tugas berbeda dalam program, membuatnya lebih terorganisir.
  • Pengulangan: Anda dapat menggunakan kembali kode yang sama di berbagai tempat tanpa menulis ulang.
  • Pemeliharaan: Kode yang terorganisir dengan fungsi lebih mudah dibaca, dipahami, dan dimodifikasi.
  • Abstraksi: Pengguna fungsi tidak perlu tahu detail internal cara kerja fungsi, hanya bagaimana cara menggunakannya.

2. Jelaskan apa yang dimaksud dengan prosedur 

Prosedur dalam pemrograman adalah sekumpulan instruksi yang dikelompokkan untuk melaksanakan tugas tertentu. Prosedur mirip dengan fungsi, tetapi biasanya tidak mengembalikan nilai setelah eksekusi. Tujuan utama dari prosedur adalah untuk menyederhanakan dan mengorganisir kode, sehingga membuatnya lebih terstruktur dan mudah dipahami.

3. Jelaskan apa perbedaan Fungsi dengan Prosedur 

Fungsi Mengembalikan Nilai, Prosedur Tidak:

Fungsi, Dirancang untuk melakukan perhitungan atau pengolahan data dan mengembalikan hasil. Ini memungkinkan pengguna untuk mendapatkan nilai dari fungsi yang dapat digunakan dalam ekspresi lain, menjadikannya fleksibel untuk berbagai aplikasi.Prosedur, Fokus pada menjalankan serangkaian instruksi atau tugas tertentu tanpa mengembalikan nilai. Prosedur lebih banyak digunakan untuk menjalankan aksi, seperti mengubah status atau menampilkan informasi, tanpa perlu memberikan hasil kembali ke pemanggil.

4. Jelaskan apa yang dimaksud dengan literatif, rekursif, dan apa perbedaan keduanya 

Iteratif dan rekursif adalah dua pendekatan berbeda dalam pemrograman untuk memecahkan masalah, khususnya dalam hal pengulangan atau pemrosesan berulang.

a. Iteratif

Pendekatan iteratif adalah metode di mana proses pengulangan dilakukan menggunakan struktur kontrol loop (seperti for, while, atau do while). Dalam pendekatan ini, instruksi yang sama diulang sampai kondisi tertentu terpenuhi.

Ciri-ciri iteratif:

  • Menggunakan loop untuk melakukan pengulangan.
  • Biasanya lebih efisien dalam hal penggunaan memori, karena tidak memerlukan banyak stack frame.
  • Umumnya lebih mudah dipahami dalam beberapa kasus karena pendekatannya yang langsung.

b. RekursifPendekatan rekursif adalah metode di mana sebuah fungsi memanggil dirinya sendiri untuk menyelesaikan bagian dari masalah, biasanya dengan ukuran masalah yang lebih kecil, hingga mencapai kondisi dasar (base case) yang menghentikan rekursi.

Ciri-ciri rekursif:

  • Fungsi memanggil dirinya sendiri dalam proses.
  • Memerlukan base case (kondisi dasar) agar tidak terjadi rekursi tanpa henti.
  • Biasanya lebih mudah digunakan untuk masalah yang memiliki struktur berulang yang jelas (misalnya, pohon, graf).
  • Dapat menggunakan lebih banyak memori karena setiap pemanggilan fungsi disimpan dalam stack (call stack).

Iteratif dan rekursif berbeda dalam cara mereka menangani pengulangan. Iteratif menggunakan struktur kontrol seperti loop (for, while) untuk mengulang instruksi hingga kondisi tertentu terpenuhi. Misalnya, dalam menghitung faktorial, iterasi terus berlangsung sampai nilai tertentu tercapai. Pendekatan ini biasanya lebih hemat memori karena tidak menggunakan call stack. Sebaliknya, rekursif melibatkan fungsi yang memanggil dirinya sendiri untuk menyelesaikan bagian-bagian kecil dari masalah, hingga mencapai kondisi dasar (base case) yang menghentikan pemanggilan lebih lanjut. Dalam menghitung faktorial secara rekursif, fungsi terus memanggil dirinya sendiri dengan nilai yang lebih kecil hingga mencapai nilai dasar (misalnya n = 1). Rekursi sering kali lebih mudah digunakan pada masalah yang dapat dipecah menjadi sub-masalah yang lebih kecil, seperti pada struktur pohon atau graf.

5. Membuat fungsi yang digunakan untuk mengecek suatu bilangan, apakah bilangan tersebut positif atau negatif

Berikut adalah langkah-langkah untuk membuat fungsi yang mengecek apakah suatu bilangan positif, negatif, atau nol:

1. Mendefinisikan Fungsi

Pertama, kita buat fungsi yang akan melakukan pengecekan. Fungsi ini diberi nama cek bilangan dan akan menerima satu parameter yaitu bilangan yang akan diperiksa.

2. Melakukan Pengecekan

Di dalam fungsi, kita buat kondisi untuk mengecek apakah bilangan tersebut positif, negatif, atau nol menggunakan pernyataan if, elif, dan else.

- Jika bilangan lebih besar dari 0, maka kita katakan bahwa bilangan tersebut positif.

- Jika bilangan lebih kecil dari 0, maka kita katakan bahwa bilangan tersebut negatif.

- Jika bilangan sama dengan 0, maka bilangan tersebut adalah nol.

3.  Memanggil Fungsi

Setelah mendefinisikan fungsi, kita perlu memanggil fungsi tersebut dan memberikan bilangan yang ingin dicek. Misalnya, kita ingin memeriksa apakah bilangan 5 positif atau negatif.

4. Menampilkan Hasil

Setelah kita memanggil fungsi, kita bisa mencetak hasilnya menggunakan print() untuk melihat apakah bilangan tersebut positif, negatif, atau nol.

Program akan menampilkan hasil seperti ini:

Ketika kita memeriksa bilangan 5:

 

Ketika kita memeriksa bilangan - 5:

 

Ketika kita memeriksa bilangan 0:

 

6. Membuat fungsi yang digunakan untuk mengecek suatu bilangan. apakah bilangan bulat atau bilangan ganjil

Penjelasan:

a. Fungsi cek ganjil genap:

  • Fungsi ini menerima satu parameter, yaitu bilangan.Di dalam fungsi, dilakukan pengecekan apakah bilangan tersebut habis dibagi 2 menggunakan operator modulus ().
  • Jika habis dibagi 2, bilangan dianggap genap; jika tidak, bilangan tersebut ganjil.

b. Input dari Pengguna:

  • Program menggunakan fungsi input() untuk meminta pengguna memasukkan sebuah bilangan.
  • Hasil input berupa string, sehingga perlu dikonversi menjadi bilangan bulat menggunakan int(). 

c. Program menggunakan loop while untuk terus menanyakan bilangan kepada pengguna hingga mereka tidak ingin melanjutkan lagi.

  • Variabel lanjutkan diinisialisasi dengan nilai y untuk memastikan loop dimulai.Setelah setiap pengecekan, pengguna ditanya apakah mereka ingin melanjutkan dengan mengetik y (ya) atau n (tidak).
  • Jika pengguna mengetik y, program akan mengulang. Jika mengetik n, loop akan berhenti.

 Program akan menampilkan hasil seperti ini:

 

7. Membuat fungsi yang digunakan untuk mengecek apakah suatu tahun adalah tahun kabisat atau bukan

Penjelasan :

 

a. Fungsi cek tahun kabisat:

  • Fungsi ini menerima satu parameter, yaitu tahun.
  • Di dalam fungsi, kita menggunakan kondisi if untuk memeriksa apakah tahun tersebut memenuhi kriteria tahun kabisat:tahun  4 == 0: Memeriksa apakah tahun dapat dibagi 4.
  • tahun  100 = 0: Memeriksa apakah tahun tidak dapat dibagi 100 (kecuali jika juga dapat dibagi 400).
  • tahun  400 == 0: Memeriksa apakah tahun dapat dibagi 400.

b. Meminta Input dari Pengguna:

  • Program meminta pengguna untuk memasukkan tahun yang ingin dicek dengan menggunakan input(). Input ini kemudian dikonversi menjadi integer menggunakan int().

c. Memanggil Fungsi dan Menampilkan Hasil:

  • Setelah mendapatkan input tahun dari pengguna, kita memanggil fungsi cek tahun kabisat dengan tahun tersebut sebagai argumen.
  • Hasil dari fungsi (True atau False) digunakan untuk mencetak apakah tahun tersebut adalah tahun kabisat atau bukan.

Program akan menampilkan hasil seperti ini:

8. Membuat sebuah program yang menerapkan proses rekursif

 

Penjelasan:

a. Fungsi faktorial:

 Fungsi ini menggunakan rekursi untuk menghitung faktorial dari bilangan yang diberikan

b. Meminta Input dari Pengguna:

  • Program meminta pengguna untuk memasukkan bilangan bulat positif menggunakan input(), dan mengkonversinya menjadi integer.
  • Program juga memeriksa apakah input tersebut adalah bilangan bulat positif. Jika input negatif, program akan meminta pengguna untuk memasukkan bilangan positif.

Program akan menampilkan hasil seperti ini:

 

 

 

BAB 3 SISTEM KONTROL

27 September 2024 00:43:00 Dibaca : 48

 

Latihan Soal Bab 3

1. Counted loop dan Uncounted loop

   Counted loop (Perulangan Terhitung) adalah perulangan yang jumlah iterasinya diketahui atau ditentukan sebelumnya. Biasanya, ini digunakan ketika kita tahu berapa kali perulangan harus dilakukan sebelum perulangan dimulai. Dalam Python, perulangan ini biasanya menggunakan pernyataan for.

* Contoh Penggunaan Counted loop (for)

 

* Contoh keluaran program seperti pada gambar berikut.

    Uncounted loop (Perulangan Tidak Terhitung)  adalah perulangan yang jumlah iterasinya tidak diketahui sebelumnya. Perulangan akan terus berjalan sampai suatu kondisi tertentu terpenuhi. Ini biasanya diimplementasikan menggunakan while loop. Perulangan ini akan terus berlanjut sampai syarat atau kondisi menjadi False. 

* Contoh Penggunaan Uncounted loop (while)

* Contoh keluaran program seperti pada gambar berikut.

 

2. Nested Loop

     Perulangan di dalam pengulangan disebut dengan perulangan bersarang (nested loop). Nested loop adalah konsep di mana sebuah loop (perulangan) berada di dalam loop lain. Loop yang berada di dalam disebut inner loop, sementara loop yang melingkupi disebut outer loop. Pada nested loop, perulangan paling dalam dikerjakan terlebih dahulu. Bila perulangan paling dalam selesai dikerjakan selanjutkan mengerjakan perulangandi bagian luar. 

* Contoh Penggunaan Nested Loop (for)

* Contoh keluaran program seperti pada gambar berikut.

3. Controlled Jump

    Pada bahasa pemrograman Python mengenal Controlled jump. Kita bisa melakukan intervensi pada proses perulangan, sehingga mengubah arah jalannya proses perulangan. Intervensi pada proses perulangan dapat dilakukan dengan menerapkan Controlled jump. Pada bahasa pemrograman Python, Controlled jump seperti break dan continue. Sedangkan return digunakan untuk keluar dari suatu fungsi atau method. Penerapan break dan continue sudah kita coba pada latihan perulangan dengan for dan while, untuk return akan digunakan pada saat membuat fungsi.

4. Pengulangan iteratif

    Perulangan iteratif adalah proses di mana sekelompok instruksi atau perintah (statements) dieksekusi berulang kali selama syarat atau kondisi tertentu masih terpenuhi. Begitu kondisi tersebut tidak lagi terpenuhi, perulangan akan berhenti. Konsep ini diimplementasikan menggunakan struktur perulangan for dan while dalam Python.

5. Program untuk memebuat tabel perkalian

Tahap Pembuatan:

   a.  Menggunakan Dua Loop untuk Menghasilkan Tabel Perkalian     Dalam program ini, kita akan menggunakan dua loop bersarang (nested loops). Loop pertama digunakan untuk menghasilkan angka dasar perkalian dari 1 hingga 10, sedangkan loop kedua digunakan untuk menghitung dan menampilkan hasil perkalian setiap angka dengan angka-angka dari 1 hingga 10.

:

  • range (1, 11) menghasilkan angka dari 1 hingga 10. Ini akan menjadi angka dasar untuk tabel perkalian.
  • Loop ini disebut outer loop karena mengelilingi loop lain yang bertanggung jawab untuk menghitung hasil perkalian.

   b.  Mencetak Judul atau Deskripsi Tabel      Untuk setiap angka dari outer loop, kita mencetak judul yang menunjukkan bahwa tabel perkalian untuk angka tersebut akan dimulai.

  • Menggunakan f-string untuk menyisipkan variabel angka ke dalam teks yang dicetak agar output terlihat dinamis.
  • \n digunakan untuk memulai baris baru sebelum mencetak tabel perkalian berikutnya, sehingga outputnya lebih teratur.

    c.  Menggunakan Inner Loop untuk Menghitung Hasil PerkalianDi dalam loop pertama, kita menggunakan loop kedua (inner loop) untuk menghitung dan mencetak hasil perkalian antara angka dari outer loop dengan angka-angka dari 1 hingga 10.

  • range (1, 11) dalam inner loop menghasilkan angka dari 1 hingga 10 yang digunakan untuk perkalian.
  • Dalam setiap iterasi inner loop, hasil adalah hasil perkalian dari angka (nilai dari outer loop) dengan i (nilai dari inner loop).
  • print() digunakan untuk menampilkan hasil perkalian dalam format angka x i = hasil, yang memastikan hasilnya dicetak dalam bentuk tabel perkalian yang rapi.

Keluaran program akan seperti ini: 

         

 

6. Program untuk konversu suhu (Celcius, Farenheit, Kelvin)

Tahap Pembuatan:

   a. Mendefinisikan Lookup Table   Program dimulai dengan membuat lookup table yang menyimpan nilai suhu dalam berbagai skala untuk setiap nilai Celsius dari 0 hingga 5. 

   b. Membuat Fungsi untuk Menampilkan Tabel     Fungsi display_temperature_table_lookup() bertugas untuk menampilkan tabel yang berisi nilai Celsius beserta konversi suhu lainnya berdasarkan lookup table.

   c Melakukan Loop untuk Mencetak Setiap Baris Data    Pada Baris ini program akan mengiterasi setiap nilai Celsius dari 0 hingga 5 dan menampilkan nilai-nilai yang sesuai dari lookup table.

fungsi display_temperature_table_lookup() untuk menampilkan tabel suhu berdasarkan data dalam lookup table.

Keluaran program akan seperti ini:

 7. Algoritma dengan kode semu dan program untuk menampilkan pola segitiga (Angka)

Tahap Pembuatan:

    a. Inisialisasi Angka Awal     

Program dimulai dengan mendefinisikan fungsi `print_number_pattern_alt(n)`. Di dalam fungsi tersebut, variabel `current_number` diinisialisasi dengan nilai 1. Variabel ini digunakan untuk menyimpan angka yang akan dicetak pada setiap baris.

  • `current_number` adalah angka yang pertama kali dicetak, dimulai dari 1. Pada setiap iterasi, nilai ini diperbarui.

   b. Looping untuk Baris Pola     

Sebuah loop digunakan untuk mengontrol jumlah baris yang dicetak, berdasarkan nilai `n` yang diberikan.

  • `range(1, n + 1)` memastikan bahwa loop berjalan mulai dari baris pertama hingga baris ke-`n`.
  • Variabel `i` menunjukkan nomor baris yang sedang dikerjakan.

   c. Membuat Deretan Angka pada Setiap Baris

Untuk setiap baris, deretan angka harus dicetak. Deretan ini dimulai dari angka yang ada di `current_number`, dan panjang deretan sesuai dengan nomor baris `i`.

 

Ini adalah list comprehension yang menghasilkan deretan angka dalam bentuk string.

  • `current_number + j` menghasilkan angka yang dicetak pada baris saat ini. Angka pertama adalah `current_number`, kemudian angka berikutnya bertambah 1 hingga jumlah angka sama dengan `i`.
  • Misalnya, untuk baris pertama (`i=1`), hanya satu angka yang dicetak, yaitu `1`. Untuk baris kedua (`i=2`), dua angka dicetak: `2 3`, dan seterusnya.

   d. Mencetak Deretan Angka dalam Bentuk Pola Deretan angka yang telah dibuat diubah menjadi string yang dipisahkan oleh spasi, lalu dicetak.

  • `row` berisi daftar angka dalam bentuk string. `join()` menggabungkan elemen-elemen dalam daftar tersebut dengan spasi di antara setiap angka, sehingga menghasilkan satu baris string yang rapi.
  • Misalnya, pada iterasi pertama, akan tercetak: `1`. Pada iterasi kedua, akan tercetak: `2 3`, dan seterusnya.

   e. Memperbarui Angka Awal untuk Baris Berikutnya     

Setelah mencetak satu baris, program memperbarui nilai `current_number` untuk memastikan baris berikutnya dimulai dari angka yang tepat.

  • Setelah setiap iterasi loop, nilai `current_number` ditambah dengan `i`, yaitu jumlah angka yang dicetak pada baris tersebut.
  • Misalnya, setelah mencetak baris pertama (dengan 1 angka), `current_number` diperbarui menjadi `2`. Setelah mencetak baris kedua (dengan 2 angka: `2 3`), `current_number` diperbarui menjadi `4`, dan seterusnya.

    f. Menjalankan Fungsi 

Fungsi dipanggil dengan nilai `n=7`, yang berarti pola akan dicetak sebanyak 7 baris.

Output untuk n=7:

Program ini akan mencetak pola angka seperti berikut:

 8. Algoritma dengan kode semu dan program untuk menampilkan pola segitiga (Huruf)

Tahap Pembuatan:

   a. Definisi Fungsi `print_triangle(n)`

     Program dimulai dengan mendefinisikan fungsi `print_triangle(n)` yang bertanggung jawab untuk mencetak pola segitiga dengan karakter huruf alfabet berdasarkan input `n`, yang menentukan jumlah baris.

Fungsi ini menerima parameter `n` yang merupakan jumlah baris yang ingin dicetak dalam pola segitiga.

   b.  Loop untuk Mengontrol Baris    Di dalam fungsi, sebuah loop `for` digunakan untuk mengontrol jumlah baris yang akan dicetak.

  • `range(n)` membuat loop yang berjalan dari `0` hingga `n-1`. Setiap iterasi mewakili satu baris dari segitiga.

   c. Menghasilkan Karakter Berdasarkan Nomor Baris

Di dalam loop, karakter alfabet dihasilkan menggunakan fungsi `chr()`. Angka 65 adalah kode ASCII untuk huruf 'A'. Setiap iterasi menambahkan `i` ke nilai 65 untuk mendapatkan huruf yang berbeda pada setiap baris.

  • Pada iterasi pertama (`i=0`), karakter yang dihasilkan adalah `chr(65 + 0)` atau `A`.
  • Pada iterasi kedua (`i=1`), karakter yang dihasilkan adalah `chr(65 + 1)` atau `B`, dan seterusnya.
  • Dengan cara ini, karakter yang akan dicetak pada setiap baris selalu berubah sesuai dengan nomor baris.

    d. Mencetak Karakter yang Berulang       

Setelah mendapatkan karakter yang sesuai untuk baris tersebut, karakter ini dicetak sebanyak `i+1` kali, di mana `i` adalah nomor baris dimulai dari 0. Ini menghasilkan segitiga di mana setiap baris bertambah satu karakter lebih banyak dari baris sebelumnya.

  • Pada iterasi pertama (`i=0`), `char * (i + 1)` berarti `A` dicetak sekali: `A`.
  • Pada iterasi kedua (`i=1`), `char * (i + 1)` berarti `B` dicetak dua kali: `BB`, dan seterusnya.
  • Setiap karakter dicetak berulang sesuai dengan jumlah baris yang sedang diproses.

   e. Meminta Input dari Pengguna

Sebelum memanggil fungsi `print_triangle()`, program meminta pengguna untuk memasukkan angka `n` yang akan menentukan jumlah baris dari segitiga karakter yang dicetak.

  • Program meminta input dari pengguna, dan nilai input tersebut dikonversi menjadi integer (`int`) sebelum digunakan sebagai parameter untuk fungsi `print_triangle(n)`.

   f. Memanggil Fungsi   

Setelah nilai `n` diperoleh dari pengguna, fungsi `print_triangle(n)` dipanggil untuk mencetak pola segitiga dengan jumlah baris yang sesuai dengan input pengguna.

Program akan mencetak pola huruf seperti ini:

Nama :I Komang Yuda

NIm : 411423072

Prodi / Kelas : Pendidikan Matematika / B

Mata kuliah : Komputasi dan Pemograman

Dosen Pengampu : Agusyarif Rezka Nuha, S.Pd, M,Pd

 

Algoritma Menghitung Sewa dan Denda Keterlambatan Menggunakan Phyton

           Program ini berfungsi untuk menghitung total pembayaran sewa, dengan mempertimbangkan durasi sewa dan keterlambatan pengembalian. Apabila terjadi keterlambatan, denda sebesar 50% dari biaya sewa per hari keterlambatan akan dikenakan. Program ini juga meminta informasi dari pengguna, seperti nama, alamat, nomor telepon, serta lama waktu sewa. 

 

1.Baris ke 1 (Menetapkan biaya sewa)

 Variabel biaya_sewa: Nilai ini merupakan biaya sewa tetap perhari, yang dalam program ini ditetapkan sebesar 250.000

2.Baris ke 2 - 7 (Menambah kan variable)

  • Input() : Program meminta pengguna untuk memasukkan data seperti nama, alamat, nomor telepon, lama sewa, dan lama keterlambatan. Semua data ini disimpan ke dalam variabel.
  • Str(input()) : Mengonversi input menjadi string. Digunakan untuk variabel nama dan alamat.
  • int(input()) : Mengonversi input menjadi integer (bilangan bulat). Digunakan untuk variabel no_tlp, lama_sewa, dan lama_keterlambatan, karena semua ini harus berupa angka.

3. Baris ke 8 (Perencanaan If untuk keterlambatan)

Penggunaan if : Pernyataan if dalam digunakan untuk membuat keputusan berdasarkan kondisi tertentu. Dalam program ini digunakan untuk memeriksa apakah pengguna mengalami keterlambatan (lama_keterlambatan >= 1), jika terjadi keterlambatan maka denda akan dikenakan.

4. Baris ke 9-11 (Perhitungan Denda dan Total Pembayaran)

 

Perhitungan denda : jika pengguna terlambat, denda dihitung sebesar 50% dari biaya sewa per hari keterlambatan. Rumusnya adalah 0.5*biaya_sewa*lama_keterlambatan.

Total pembayaran : jika ada denda, maka total pembayaran dihitung dengan menjumlahkan total biaya sewa (lama_sewa * biaya_sewa) dan denda yang dihitung.output: program menamppilkan total pembayaran, termasuk denda.

output : program menamppilkan total pembayaran, termasuk denda.

Jika pembayaran terlambat, Program akan berjalan seperti ini:

5. Baris ke 12-14 (Pembayaran jika Tanpa Denda)

 

else: pernyataan else digunakan untuk mengeksekusi blok kode tertentu jika kondisi pada pernyataan if atau elif sebelumnya tidak terpenuhi. Dengan kata lain, else memberikan jalur alternatif untuk menjalankan kode jika semua kondisi lain gagal. Pada program ini pernyataan else digunakan untuk menentukan adanya keterlambatan :( lama_keterlambatan < 1), maka denda tidak dikenakan.

total pembayaran tanpa denda : total hanya hitung berdasarkan biaya sewa tanpa tambahan denda. rumusnya adalah lama_sewa * biaya_sewa.

output : program menampilkan total pembayaran tanpa denda.

Jika pembayaran tepat waktu, Program akan berjalan seperti ini:

Kesimpulan

Program dapat secara otomatis menghitung total biaya sewa dan denda keterlambatan, sehingga mempermudah proses penghitungan tanpa harus dilakukan secara manual. Ini meningkatkan efisiensi dan mengurangi risiko kesalahan perhitungan.

 

PKKMB2023

16 August 2023 14:09:27 Dibaca : 10

di hari pertama sampai ke tiga berjalan lancar seperti biasa,di hari ke empat dan kelima mulai menegangkan,khusus nya hari ke lima aturan para kakak senior sangat ketat walau begitu para kakak senior sebenarnya sangat baik mereka melatih mental kami untuk menghadapi kehidupan kuliah kedepannya .kesimpulan saya pkkmb ung 2023 sangat menyenangkan