Latihan soal bab 4

06 October 2024 22:58:04 Dibaca : 16

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:

Latihan Soal BAB 3

26 September 2024 19:21:54 Dibaca : 27

Nama : Nuralmi Saleh

Nim : 411423022

Prodi/Kelas : Pendidikan Matematika/B

Mata Kuliah : Komputasi dan Pemrograman

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

 

1. Counted Loop dan Uncounted Loop

  • Counted Loop merupakan jenis perulangan yang jumlah iterasinya sudah ditentukan sebelumnya. Contoh yang umum digunakan adalah perulangan for, dimana kita menentukan berapa kali perulangan akan dilakukan. 
  • Uncounted Loop Jenis perulangan ini tidak memiliki batasan yang jelas mengenai jumlah iterasi. Perulangan akan terus berlangsung hingga suatu kondisi tertentu terpenuhi. Contoh yang umum adalah perulangan while.

2. Nested Loop

Nested Loop adalah perulangan di dalam perulangan. Ini berarti ada satu loop yang diletakkan di dalam loop lainnya. Nested loop sering digunakan untuk melakukan iterasi pada struktur data multidimensi, seperti matriks.

3. Controlled Jump

Controlled Jump adalah pernyataan yang memungkinkan program untuk melompat ke bagian lain dari kode berdasarkan kondisi tertentu. Contoh dari controlled jump adalah pernyataan break dan continue.

  • break digunakan untuk keluar dari loop.
  • continue digunakan untuk melewatkan iterasi saat ini dan melanjutkan ke iterasi berikutnya.

4. Perulangan Jenis Iteratif

Perulangan Jenis Iteratif adalah perulangan yang dilakukan dengan cara mengulangi blok kode tertentu berdasarkan kondisi yang ditentukan, biasanya menggunakan kontrol iterasi seperti for, while, atau do-while. Dalam perulangan ini, iterasi dilakukan secara sistematis sesuai dengan batasan yang telah ditentukan.

5. Membuat Algoritma dengan kode semu dan Program untuk membuat tabel perkalian, menggunakan perulangan

Langkah-langkah:

1. Loop Pertama:

  • for j in range(0, 11):
  • Ini mengiterasi j dari 0 hingga 10 (total 11 angka).

2. Loop Kedua:

  • for i in range(1, 6):
  • Di dalam loop pertama, ini mengiterasi i dari 1 hingga 5 (total 5 angka).

3. Mencetak Hasil Perkalian:

  • print(f"{i} * {j} = {i * j}", end="\t")
  • Mencetak hasil perkalian i dan j dalam format yang rapi.
  • end="\t" memastikan bahwa output diakhiri dengan tab, sehingga hasil perkalian berada dalam kolom yang rapi.

4. Mencetak Baris Baru:

  • print()
  • Setelah menyelesaikan loop kedua (semua i untuk satu j), baris baru dicetak untuk memisahkan hasil dari setiap nilai j.

5. Mencetak Baris Kosong:

  • print()
  • Mencetak baris kosong untuk memberi jarak antara dua bagian tabel.

6. Loop Ketiga:

  • for j in range(0, 11):
  • Mirip dengan loop pertama, mengiterasi j dari 0 hingga 10.

7. Loop Keempat:

  • for i in range(6, 11):
  • Di dalam loop ketiga, ini mengiterasi i dari 6 hingga 10 (total 5 angka).

 

8. Mencetak Hasil Perkalian:

  • print(f"{i} * {j} = {i * j}", end="\t")
  • Mencetak hasil perkalian i dan j dengan cara yang sama seperti sebelumnya.

9. Mencetak Baris Baru:

  • print()
  • Setelah menyelesaikan loop keempat, baris baru dicetak untuk memisahkan hasil dari setiap nilai j.

 Kesimpulan:

Kode ini menghasilkan dua tabel perkalian:

 6. Membuat Algoritma dengan Kode semu dan Program unutuk konversi suhu dan celcius, Reamur, Fahrenheir, dan Kalvin

Langkah-langkah

1. Definisi Fungsi

  • Fungsi konversi_suhu: Didefinisikan dengan dua parameter, batas_bawah dan batas_atas, yang menentukan rentang suhu dalam derajat Celcius yang akan dikonversi.

2. Cetak Header Tabel

Header Tabel: Mencetak judul kolom untuk tabel konversi suhu:

  • C: Celcius
  • R: Reamur
  • K: Kelvin
  • F: Fahrenheit

 

 Garis Pemisah: Mencetak garis pemisah untuk tabel dengan panjang 28 karakter.

3. Loop untuk Rentang Suhu

  • Loop: Melakukan iterasi dari batas_bawah hingga batas_atas. Fungsi range akan menghasilkan angka dari batas_bawah sampai batas_atas (inklusif).

4. Konversi Suhu

Reamur: Dihitung dengan rumus 

Kelvin: Dihitung dengan rumus

Fahrenheit: Dihitung dengan rumus

5. Cetak Hasil Konversi

Format Output: Mencetak nilai suhu untuk Celcius, Reamur, Kelvin, dan Fahrenheit dengan format yang rapi:

  • <5, <7, <8: Menentukan lebar kolom untuk setiap suhu.
  • :.2f: Membatasi angka desimal menjadi dua tempat.

6. Input Pengguna

  • Input: Mengambil input dari pengguna untuk batas_bawah dan batas_atas sebagai rentang suhu yang diinginkan.

7. Panggil Fungsi

  • Eksekusi Fungsi: Memanggil fungsi konversi_suhu dengan argumen batas yang telah dimasukkan oleh pengguna.

Kesimpulan:

7. Membuat Algoritma dengan Kode semu dan Program untuk menampilkan pola segitiga 

Langkah-langkah:

1. Definisi Fungsi

  • def cetak_pola(n): mendefinisikan sebuah fungsi bernama cetak_pola yang menerima satu parameter n. Parameter ini menentukan jumlah baris yang akan dicetak.

2. Inisialisasi Variabel:

  • angka = 1: Sebuah variabel angka diinisialisasi dengan nilai 1. Ini akan digunakan untuk mencetak angka secara berurutan.

3. Loop Luar:

  • or i in range(1, n + 1):: Loop ini akan berjalan dari 1 hingga n (inklusif). Variabel i akan menunjukkan nomor baris yang sedang diproses.
  • Contoh: Jika n = 4, loop luar akan berjalan dengan i bernilai 1, 2, 3, dan 4.

4. Loop Dalam:

  •  for j in range(i):: Loop ini berjalan sebanyak i kali pada setiap iterasi loop luar. Ini berarti pada baris pertama (i=1), loop dalam akan berjalan 1 kali; pada baris kedua (i=2), loop dalam akan berjalan 2 kali; dan seterusnya.
  • Contoh:
  • Untuk i = 1: Loop dalam berjalan 1 kali.Untuk i = 2: Loop dalam berjalan 2 kali.Untuk i = 3: Loop dalam berjalan 3 kali.Untuk i = 4: Loop dalam berjalan 4 kali.

5. Mencetak Angka:

  • print(angka, end=''): Mencetak nilai angka saat ini tanpa menambahkan baris baru setelahnya (end='' menghindari perpindahan baris).
  • angka += 1: Menambahkan 1 ke angka untuk persiapan mencetak angka berikutnya.

6. Baris Baru:

  • print(): Setelah loop dalam selesai untuk setiap baris, fungsi ini mencetak baris baru. Ini memastikan bahwa angka pada baris berikutnya akan dimulai di baris baru.

7. Input Pengguna:

  • n = int(input("Masukkan jumlah baris (n): ")): Meminta pengguna untuk memasukkan jumlah baris yang diinginkan. Nilai yang dimasukkan kemudian diubah menjadi tipe data integer.

8. Memanggil Fungsi:

  • cetak_pola(n): Memanggil fungsi cetak_pola dengan argumen n yang diberikan oleh pengguna, sehingga pola angka akan dicetak sesuai dengan jumlah baris yang diminta.

Contoh:

Jika pengguna memasukkan n = 4, berikut adalah proses yang terjadi:

  • Baris 1: Mencetak 1
  • Baris 2: Mencetak 2 3
  • Baris 3: Mencetak 4 5 6
  • Baris 4: Mencetak 7 8 9 10

Kesimpulan: 

Hasil akhirnya akan terlihat seperti ini:

8. Membuat Algoritma dengan Kode semu dan Program unutk menampilkan pola segitiga

 

Langkah-langkah:

1. Definisi Fungsi

  • Fungsi ini didefinisikan dengan nama segitiga_huruf dan menerima satu parameter, n, yang merupakan jumlah baris yang akan dicetak.

 2. Loop untuk Baris

  • Loop ini berjalan dari 1 hingga n (inklusif). Setiap iterasi i mewakili nomor baris saat ini.

3. Menghitung Huruf

Menghitung huruf yang akan dicetak. Fungsi chr() mengubah nilai ASCII menjadi karakter:

  •  chr(65) menghasilkan huruf A untuk i = 1.
  • chr(66) menghasilkan huruf B untuk i = 2.
  • Dan seterusnya.

4. Loop untuk Mencetak Huruf

  • Loop ini mencetak karakter huruf sebanyak i kali. Jadi, pada baris pertama, huruf dicetak 1 kali, pada baris kedua 2 kali, dan seterusnya.

5. Mencetak Huruf

  • Mencetak huruf tanpa berpindah ke baris baru. Argumen end='' memastikan bahwa output akan berada di baris yang sama hingga loop selesai.

6.  Pindah ke Baris Baru

  • Perintah ini memindahkan kursor ke baris baru setelah mencetak semua huruf di baris saat ini, sehingga pada iterasi berikutnya, huruf akan dicetak di baris baru.

7. Input dari Pengguna

  • Mengambil input dari pengguna, mengonversinya menjadi integer, dan menyimpannya dalam variabel n.

8.  Memanggil Fungsi

  • Memanggil fungsi segitiga_huruf dengan argumen n, yang akan menghasilkan pola segitiga sesuai dengan jumlah baris yang diminta.

Contoh Keseluruhan

Jika pengguna memasukkan 5, prosesnya adalah:

  • Baris 1: Cetak A
  • Baris 2: Cetak B B
  • Baris 3: Cetak C C C
  • Baris 4: Cetak D D D D
  • Baris 5: Cetak E E E E E

Kesimpulan:

Hasil akhirnya akan terlihat seperti ini:

Nama : Nuralmi Saleh

Nim : 411423022

Prodi/Kelas : Pendidikan Matematika/B

Mata Kuliah : Komputasi dan Pemrograman

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

 

1. Deklarasi Variabel

  • input ("masukan nilai: "): menampilkan pesan kepada pengguna untuk memasukan nilai.
  • int(...): mengonversi input yang diterima (dalam bentuk string) menjadi integer.
  • Nilai yang dimasukan oleh pengguna disimpan dalam variabel nilai.

 

 

2. Pengulangan dengan Loop

  • for in range (nilai): : Memulai loop yang akan diulang sebanyak nilai kali.
  • range (nilai): Menghasilkan urutan angka dari 0 hingga nilai - 1.

 

 

3.  Mencetak Pesan 

  • str (i): Mengonversi angka i menjadi string.
  • print (...): Mencetak hasil ke layar.
  • Kode ini mencetak nomor urut (dari 0 hingga nilai - 1) diikuti dengan kalimat "Saya Belajar Python".

 

4. Menjalankan Kode 

  • Ketika Anda menjalankan kode ini, Anda akan diminta untuk memasukan nilai. Misalnya, jika anda memasukan 3, maka outputnya akan: 

 

Ringkasan : 

  • Kode ini menerima input dari penggunaan, kemudian menggunakan loop untuk mencetak kalimat yang sama dengan  nomor urut di depannya sebanyak nilai yang dimasukkan. Ini adalah contoh sederhana dari penggunaan input, loop, dan fungsi print dalam Python.

Kategori

  • Masih Kosong

Blogroll

  • Masih Kosong