Latihan soal bab 4

06 October 2024 22:58:04 Dibaca : 15

Nama: Nuralmi Saleh

Nim: 411423022

Prodi/Kelas : Pendidikan Matematika/B

Mata Kuliah : Komputasi dan Pemrograman

Dosen Pengampu :

1. Jelaskan apa yang dimaksud dengan fungsi!

Fungsi adalah blok kode yang digunakan untuk melakukan tugas tertentu dan mengembalikan nilai setelah tugas tersebut selesai. Fungsi biasanya memiliki parameter yang menerima input, melakukan operasi, dan kemudian memberikan output. Contohnya, dalam pemrograman, fungsi dapat digunakan untuk mengembalikan nilai dari perhitungan matematika.

2. Jelaskan apa yang dimaksud dengan prosedur!

Prosedur adalah blok kode yang digunakan untuk melakukan suatu tugas atau aksi, tetapi tidak mengembalikan nilai apapun. Prosedur bisa menerima parameter seperti fungsi, tetapi tujuan utamanya adalah melakukan serangkaian instruksi, tanpa menghasilkan output yang langsung dikembalikan.

3. Jelaskan apa perbedaan fungsi dan prosedur!

Perbedaan utama antara fungsi dan prosedur adalah bahwa fungsi mengembalikan nilai sebagai hasil dari eksekusi, sedangkan prosedur hanya melakukan tugas tertentu tanpa mengembalikan nilai apapun. Fungsi lebih sering digunakan saat hasil dari eksekusi tersebut diperlukan, sedangkan prosedur hanya digunakan untuk menjalankan instruksi atau tugas-tugas tertentu.

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

  • Iteratif: Iterasi adalah pendekatan di mana suatu proses dilakukan secara berulang menggunakan loop seperti for, while, atau lainnya, hingga kondisi tertentu terpenuhi.
  • Rekursif: Rekursi adalah pendekatan di mana suatu fungsi memanggil dirinya sendiri untuk memecahkan masalah dengan membagi masalah tersebut menjadi submasalah yang lebih kecil.
  • Perbedaan: Iterasi menggunakan perulangan eksplisit untuk menyelesaikan tugas, sedangkan rekursi menyelesaikan masalah dengan memanggil fungsi itu sendiri. Rekursi cenderung lebih mudah digunakan untuk masalah yang dapat dipecah menjadi submasalah yang lebih kecil, tetapi memerlukan lebih banyak memori dibandingkan dengan iterasi. Di sisi lain, iterasi biasanya lebih efisien dalam hal penggunaan memori.

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

Langkah-langkah:

1. Definisi Fungsi

  • Langkah ini mendefinisikan sebuah fungsi bernama cek_bilangan.
  • Fungsi ini menerima satu parameter, yaitu n, yang akan digunakan untuk menyimpan bilangan yang akan diperiksa.

2. Pengecekan Bilangan Positif

  • Dalam fungsi ini, program memeriksa apakah nilai n lebih besar dari 0 menggunakan pernyataan if.
  • Jika kondisi ini benar, fungsi akan mengembalikan string "Bilangan positif". Ini menunjukkan bahwa bilangan yang dimasukkan adalah positif.

3. Pengecekan Bilangan Negatif

  • Jika kondisi pertama (bilangan lebih besar dari 0) tidak terpenuhi, program kemudian memeriksa kondisi kedua menggunakan elif.
  • Di sini, program memeriksa apakah n kurang dari 0.
  • Jika ya, fungsi mengembalikan string "Bilangan negatif" yang menunjukkan bahwa bilangan yang dimasukkan adalah negatif.

4. Pengecekan Bilangan Nol

  • Jika kedua kondisi sebelumnya tidak terpenuhi (artinya bilangan tidak lebih besar dari 0 dan tidak kurang dari 0), program akan mengeksekusi blok else.
  • Ini berarti nilai n adalah 0, sehingga fungsi akan mengembalikan string "Bilangan nol".

5. Meminta Input dari Pengguna

  • Program meminta pengguna untuk memasukkan bilangan menggunakan fungsi input().
  • Nilai yang dimasukkan oleh pengguna akan dianggap sebagai string, sehingga kita menggunakan float() untuk mengonversinya menjadi bilangan desimal (float).
  • Input ini disimpan dalam variabel bilangan.

6. Memanggil Fungsi dan Menampilkan Hasil

  • Setelah pengguna memasukkan bilangan, program memanggil fungsi cek_bilangan() dengan argumen bilangan.
  • Fungsi akan memproses input dan mengembalikan hasilnya.
  • Hasil yang dikembalikan oleh fungsi (string yang menyatakan kategori bilangan) akan ditampilkan di layar menggunakan fungsi print().

Hasil:

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

Langkah-langkah:

1. Definisi Fungsi

  • Pada langkah ini, kita mendefinisikan sebuah fungsi bernama cek_bulat_ganjil.
  • Fungsi ini menerima satu parameter n, yang akan digunakan untuk menyimpan bilangan yang akan diperiksa.

2. Pengecekan Bilangan Genap

  • Di dalam fungsi, program menggunakan pernyataan if untuk memeriksa apakah bilangan n genap.
  • Pengecekan dilakukan dengan menggunakan operator modulus (%), yang memberikan sisa pembagian. Jika n % 2 sama dengan 0, maka bilangan tersebut adalah genap.
  • Jika kondisi ini benar, fungsi akan mengembalikan string "Bilangan bulat". Namun, perlu diperhatikan bahwa seharusnya output ini lebih tepat jika dinyatakan sebagai "Bilangan genap".

3. Pengecekan Bilangan Ganjil

  • Jika kondisi pertama (bilangan genap) tidak terpenuhi, maka program akan mengeksekusi blok else.
  • Ini menunjukkan bahwa bilangan tersebut adalah ganjil.
  • Dalam hal ini, fungsi mengembalikan string "Bilangan ganjil".

4. Meminta Input dari Pengguna

  • Program meminta pengguna untuk memasukkan sebuah bilangan bulat menggunakan fungsi input().
  • Input yang diterima dianggap sebagai string, sehingga kita menggunakan int() untuk mengonversinya menjadi bilangan bulat (integer).
  • Nilai ini kemudian disimpan dalam variabel bilangan.

5. Memanggil Fungsi dan Menampilkan Hasil

  • Setelah mendapatkan input dari pengguna, program memanggil fungsi cek_bulat_ganjil() dengan argumen bilangan yang telah dimasukkan oleh pengguna.
  • Fungsi ini akan memproses input dan mengembalikan hasilnya (apakah bilangan tersebut genap atau ganjil).
  • Hasil yang dikembalikan oleh fungsi akan ditampilkan di layar menggunakan fungsi print().

Hasil:

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

 

Langkah-langkah:

1. Definisi Fungsi

  • Pada langkah ini, kita mendefinisikan sebuah fungsi bernama cek_tahun_kabisat.
  • Fungsi ini menerima satu parameter, yaitu tahun, yang akan digunakan untuk menyimpan tahun yang akan diperiksa.

2. Pengecekan Tahun Kabisat

  • Di dalam fungsi, program menggunakan pernyataan if untuk memeriksa apakah tahun tersebut merupakan tahun kabisat.
  • Aturan untuk menentukan tahun kabisat adalah:Tahun harus habis dibagi 4 dan tidak boleh habis dibagi 100, kecuali tahun tersebut habis dibagi 400.
  • Pengecekan dilakukan dengan menggunakan operator modulus (%):tahun % 4 == 0: Memastikan tahun habis dibagi 4.tahun % 100 != 0: Memastikan tahun tidak habis dibagi 100.tahun % 400 == 0: Memastikan tahun habis dibagi 400.
  • Jika salah satu dari kondisi tersebut benar, fungsi akan mengembalikan string "Tahun kabisat".

3. Pengecekan Bukan Tahun Kabisat

  • Jika kondisi pertama tidak terpenuhi (artinya tahun tersebut bukan tahun kabisat), maka program akan mengeksekusi blok else.
  • Dalam hal ini, fungsi akan mengembalikan string "Bukan tahun kabisat".

4. Meminta Input dari Pengguna

  • Program meminta pengguna untuk memasukkan sebuah tahun menggunakan fungsi input().
  • Input yang diterima dianggap sebagai string, sehingga kita menggunakan int() untuk mengonversinya menjadi bilangan bulat (integer).
  • Nilai ini kemudian disimpan dalam variabel tahun.

5. Memanggil Fungsi dan Menampilkan Hasil

  • Setelah mendapatkan input dari pengguna, program memanggil fungsi cek_tahun_kabisat() dengan argumen tahun yang telah dimasukkan oleh pengguna.
  • Fungsi ini akan memproses input dan mengembalikan hasilnya (apakah tahun tersebut kabisat atau bukan).
  • Hasil yang dikembalikan oleh fungsi akan ditampilkan di layar menggunakan fungsi print().

Hasil:

8. Buat sebuah program yang menerapkan proses rekursif!

Langkah-langkah:

1. Definisi Fungsi

  • Pada langkah ini, kita mendefinisikan sebuah fungsi bernama faktorial.
  • Fungsi ini menerima satu parameter, yaitu n, yang akan digunakan untuk menyimpan bilangan yang faktorialnya akan dihitung.

2. Basis Rekursi

  • Di dalam fungsi, kita pertama-tama memeriksa apakah n sama dengan 0 atau 1 menggunakan pernyataan if.
  • Basis kasus dari rekursi ini adalah bahwa faktorial dari 0 atau 1 adalah 1.
  • Jika kondisi ini benar, fungsi akan mengembalikan nilai 1.

3. Panggilan Rekursif

  • Jika kondisi basis tidak terpenuhi (artinya n lebih besar dari 1), program akan mengeksekusi blok else.
  • Dalam blok ini, kita melakukan operasi rekursif. Program akan mengembalikan nilai n dikalikan dengan hasil dari fungsi faktorial yang dipanggil kembali dengan parameter n - 1.
  • Dengan cara ini, fungsi akan terus memanggil dirinya sendiri dengan nilai n yang berkurang sampai mencapai kondisi basis (0 atau 1).

4. Meminta Input dari Pengguna

  • Program meminta pengguna untuk memasukkan sebuah bilangan menggunakan fungsi input().
  • Input yang diterima dianggap sebagai string, sehingga kita menggunakan int() untuk mengonversinya menjadi bilangan bulat (integer).
  • Nilai ini kemudian disimpan dalam variabel bilangan.

5. Memanggil Fungsi dan Menampilkan Hasil

  • Setelah mendapatkan input dari pengguna, program memanggil fungsi faktorial() dengan argumen bilangan yang telah dimasukkan oleh pengguna.
  • Fungsi ini akan menghitung faktorial dari bilangan tersebut dengan menggunakan rekursi.
  • Hasil yang dikembalikan oleh fungsi akan ditampilkan di layar dalam format string yang menjelaskan hasilnya.

Hasil:

Kategori

  • Masih Kosong

Blogroll

  • Masih Kosong