Tugas Visualisasi Grafik

31 October 2024 16:51:34 Dibaca : 20

Nama                             :  Karsum H. Talib

NIM                                :  411423033

Prodi / Kelas                  :  Pendidikan Matematika / B

Mata Kuliah                   :  Komputasi dan Pemograman

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

 

1. Plot fungsi f(x) = 3x3 - 2x2 + 4x - 5 menggunakan python pada interval x = - 5 hingga x = 5, tampilkan grafik yang jelas dengan label sumbu x dan y

Cara kerja program :

Langkah 1: 

  • numpy sebagai np: digunakan untuk operasi numerik, seperti mencari akar polinomial.
  • matplotlib.pyplot sebagai plt: digunakan untuk membuat grafik.

Langkah 2:

  • Fungsi f(x) didefinisikan sebagai 3x3 - 2x2+4x
  • saat program memanggil f(x),nilai x akan diproses oleh fungsi ini dan menghasilkan nilai f(x) sesuai rumuspolinomia tersebut

Langkah 3 : 

  • x = np.linspace(-5, 5, 400): Membuat array x yang berisi 400 titik dari -5 hingga 5. Titik-titik ini adalah koordinat pada sumbu x untuk grafik.
  • y = f(x) yakni menghitung nilai y dengan memasukkan setiap nilai x ke fungsi f(x). Hasilnya adalah array y yang berisi nilai f(x) untuk setiap titik x.

Langkah 4:

  • plt. figure(figsize=10,5): membuat figur dengan ukuran 10 x 5 inci
  • plt.plot menggambarkan grafik fungsi f(x)=3x3-2x2+4x-5 dengan warna pink . Label f(x) = 3x3-2x2+4x-5 akanmuncul dalam legenda
  • plt.axhline menggambarkan garis horizontal pada y = 0 (sumbu x)dengan warna hitam dan ketebalan garis 0.5
  • plt.axvline menggambarkan garis bertikal pada x=0 (sumbu y) dengan warna hitam dan ketebalan garis 0.5
  • Tujuannya adalah memberikan panduan visual untuk sumbu x dan y pada grafik.

Langkah 5: 

  • plt.xlabel (x) dan plt.ylabel f(x): Menambahkan label pada sumbu x dan y.
  • plt.title: Menambahkan judul grafik, yaitu Grafik Fungsi Kuadrat3x3-2x2+4x-5
  • plt.legend: Menampilkan legenda untuk grafik yang berisi label fungsi dan akar-akar.
  • plt.grid : Menambahkan grid pada grafik untuk memudahkan pembacaan.
  • plt.show: Menampilkan grafik

Berikut keluaran dari program ini :

2. Visualisasi grafik dari fungsi dari fungsi kuadrat berikut menggunakan  Phyton: 2x2-7x+3

Berikut cara kerja program ini :

Langkah 1:

  • numpy sebagai np: digunakan untuk operasi numerik, seperti mencari akar polinomial.
  • matplotlib.pyplot sebagai plt: digunakan untuk membuat grafik.

Langkah 2 :

  • Fungsi f(x) didefiniskan untukmenghitung nilai fungsi kuadrat f(x)=2x2-7x+3 berdasarkan input x

Langkah  3 :

 

  • x_values membuat daftar nilai x dari -1 hingga 5 dengan langkah 0.01. ini dilakukan dengan range (-100,500) dan mengalikannya dengan 0.01 untuk membuat daftar nilai dessimal
  • y_values: Menghitung nilai fungsi f(x) untuk setiap x dalam x values dengan menggunakan list comprehension.

Langkah 4 :

  • plt. figure(figsize=8,6): membuat figur dengan ukuran 8 x 6 inci
  • plt.plot menggambarkan grafik fungsi f(x)=2x2-7+3 dengan warna pink . Label f(x) = 2x2-7x+3 akanmuncul dalam legenda 
  • plt.axhline menggambarkan garis horizontal pada y = 0 (sumbu x)dengan warna hitam dan ketebalan garis 0.5
  • plt.axvline menggambarkan garis bertikal pada x=0 (sumbu y) dengan warna hitam dan ketebalan garis 0.5
  • Tujuannya adalah memberikan panduan visual untuk sumbu x dan y pada grafik.

Langkah 5 :

  • np.roots 2,-7,3 digunakan untuk menghitung  akar-akar dari persamaan kuadrat 2x2-7x+3=0 . Fungsi ini menerima koefisien fungsi sebagai input 2,-7,3
  • Dengan plt.plot (root,f(root), ro), setiap akaar akan ditampilkan digrafik sebagai titk merah ro
  • foor root in roots akan melakukan literasi untuk setaip akar, memasistikansemua titik potong dengan sumbu x muncul

Langkah 6 : 

  • plt.xlabel (x) dan plt.ylabel f(x): Menambahkan label pada sumbu x dan y.
  • plt.title: Menambahkan judul grafik, yaitu Grafik Fungsi Kuadrat :2x2-7x+3
  • plt.legend: Menampilkan legenda untuk grafik yang berisi label fungsi dan akar-akar.
  • plt.grid : Menambahkan grid pada grafik untuk memudahkan pembacaan.
  • plt.show: Menampilkan grafik

Berikut keluaran dari program ini :

 Terimakasih

Studi Kasus

29 October 2024 19:00:41 Dibaca : 9

Nama                             :  Karsum H. Talib

NIM                                :  411423033

Prodi / Kelas                  :  Pendidikan Matematika / B

Mata Kuliah                   :  Komputasi dan Pemograman

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

1. Membuat program untuk membaca sumber data dari file dengan format csv, disini programnya menengai data struktur organisasi. Buat file csv menggunakan MS Excel dengan isian data seperti berikut :

Berikut programnya :

Pertama, program ini mengimpor dua library penting, yaitu pandas dan numpy. Pandas digunakan untuk membaca dan mengolah data dalam format CSV, sedangkan numpy digunakan untuk melakukan perhitungan matematika.

Selanjutnya, program membaca file CSV yang berisi data gaji karyawan. Lokasi file ditentukan menggunakan path yang diberikan, yaitu 'C:\Users\irman\Documents\KARSUM H. TALIB\SEMESTER 3\KDP\Data1.csv'. Data yang dibaca kemudian disimpan dalam variabel 'data'.

Setelah data berhasil dibaca, program mencetak keseluruhan data yang terdapat dalam file CSV. Ini dilakukan dengan menjalankan perintah 'print(data)'. Kemudian, program mencetak garis pemisah untuk memudahkan pembacaan output.

Selanjutnya, program menghitung dan mencetak nilai maksimum dari kolom 'GAJI' pada data. Ini dilakukan dengan memanfaatkan fungsi 'np.max()' dari library numpy, dan hasil perhitungan dicetak dengan format yang rapi. Program juga menghitung dan mencetak nilai minimum dari kolom 'GAJI' pada data. Sama seperti sebelumnya, ini dilakukan dengan memanfaatkan fungsi 'np.min()' dari library numpy, dan hasil perhitungan dicetak dengan format yang rapi.

contoh keluaran dari program ini sebagai berikut :

 2.  Membuat program dengan sumber datanya dari file dengan format cvs,kemudian datanya berupa data pengeluaran tiap bulan, file disusun dengan menggunakan MS Excel dengan isian datanya sebagai berikut :

Cara kerja program :

Program ini dimulai dengan mengimpor modul-modul yang diperlukan, yaitu matplotlib.pyplot untuk membuat grafik, pandas untuk membaca dan mengolah data CSV, serta numpy untuk melakukan operasi matematika.

Selanjutnya, program membaca file CSV yang terletak di direktori tertentu dan menyimpan data ke dalam variabel data. Data pada kolom 'Bulan' disimpan ke variabel Bulan, dan data pada kolom 'Total Pengeluaran' disimpan ke variabel Pengeluaran.

Setelah itu, program mencetak data yang telah dibaca untuk memastikan bahwa data telah terbaca dengan benar

Kemudian, program menghitung nilai maksimum dan minimum serta nilai rata-rata dari kolom 'Total Pengeluaran' dan mencetak hasilnya. Hal ini berguna untuk memberikan gambaran umum tentang rentang nilai pengeluaran dalam data tersebut.

Pada bagian akhir, program membuat sebuah grafik batang (bar chart) untuk menampilkan data pengeluaran per bulan. Grafik ini memiliki 'Bulan' sebagai sumbu-x dan 'Total Pengeluaran' sebagai sumbu-y. Tujuan dari grafik ini adalah untuk memberikan visualisasi yang jelas tentang pola pengeluaran selama satu tahun. Secara keseluruhan, program ini melakukan analisis sederhana pada data keuangan, dengan membaca data dari file CSV, menghitung nilai maksimum dan minimum, serta menampilkan visualisasi dalam bentuk grafik batang.

Keluaran dari program ini sebagai berikut 

Visualisasi bentuk grafik batang dari data pengeluaran 1 tahun :

Terima Kasih  

Latihan Soal BAB 5

29 October 2024 09:54:53 Dibaca : 12

Nama                             :  Karsum H. Talib

NIM                                :  411423033

Prodi / Kelas                  :  Pendidikan Matematika / B

Mata Kuliah                   :  Komputasi dan Pemograman

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

 

Membuat program Phyton yaitu penjumlahan,pengurangan serta perkalian tanpa memanfaatkan fungsi yang terdapat di library. Berikut beberapa langkahnya :

Fungsi pertama ini bertugas untuk membuat matriks berdasarkan input pengguna. Pengguna diminta memasukkan jumlah baris dan kolom, serta elemen-elemen untuk setiap posisi dalam matriks. Elemen-elemen tersebut disimpan dalam struktur data list, yang merupakan representasi dari matriks. Setelah semua elemen dimasukkan, fungsi mengembalikan matriks yang telah dibuat.

Kemudian, fungsi ini melakukan penjumlahan antara dua matriks, yaitu Matriks A dan Matriks B. Sebelum melakukan penjumlahan, fungsi memeriksa apakah kedua matriks memiliki ukuran yang sama. Jika tidak, program akan menampilkan pesan kesalahan. Jika ukuran matriks sesuai, fungsi menjumlahkan elemen-elemen yang bersesuaian dan menyimpannya dalam matriks hasil, yang kemudian dikembalikan.

Lalu, fungsi ini melakukan pengurangan antara Matriks A dan Matriks B dengan cara yang mirip dengan fungsi penjumlahan. Fungsi memeriksa kesamaan ukuran kedua matriks. Jika ukuran tidak sama, pesan kesalahan ditampilkan. Jika sesuai, fungsi mengurangi elemen-elemen yang bersesuaian dan menyimpan hasilnya dalam matriks hasil, yang kemudian dikembalikan.

Langkah selanjutnya, fungsi ini bertanggung jawab untuk melakukan perkalian antara Matriks A dan Matriks B. Syarat untuk melakukan perkalian adalah jumlah kolom di Matriks A harus sama dengan jumlah baris di Matriks B. Jika syarat ini tidak terpenuhi, program akan menampilkan pesan kesalahan. Jika syarat terpenuhi, fungsi akan menghitung hasil perkalian menggunakan tiga loop: satu untuk iterasi baris Matriks A, satu untuk kolom Matriks B, dan satu untuk melakukan penjumlahan dari hasil perkalian elemen-elemen yang relevan.

Pada bagian ini, program meminta pengguna untuk memasukkan ukuran matriks. Pengguna diminta untuk menentukan jumlah baris dan kolom untuk Matriks A. Jumlah baris untuk Matriks B otomatis ditetapkan sama dengan jumlah kolom dari Matriks A, sehingga memenuhi syarat untuk operasi perkalian.

Setelah mendapatkan ukuran matriks, program membuat Matriks A dan Matriks B dengan memanggil fungsi buat_matriks. Setelah matriks dibuat, program kemudian menghitung dan menampilkan hasil penjumlahan, pengurangan, dan perkalian dengan memanggil fungsi yang sesuai. Jika operasi tidak valid, program akan menampilkan pesan kesalahan.

Dan yang bagian akhir program, hasil dari operasi penjumlahan, pengurangan, dan perkalian ditampilkan kepada pengguna. Sebelum menampilkan hasil, program memeriksa apakah hasilnya valid (tidak None). Jika valid, hasil akan ditampilkan dalam bentuk matriks.

 

Keluaran dari program ini sebagai berikut :

dan untuk keluaran terhadap penjumlahan, penguranaga serta perkaalian antara matriks A dan matriks B sebagai berikut :

Terima kasih 

TUGAS KDP

22 October 2024 10:54:32 Dibaca : 8

Nama                             :  Karsum H. Talib

NIM                                :  411423033

Prodi / Kelas                  :  Pendidikan Matematika / B

Mata Kuliah                   :  Komputasi dan Pemograman

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

 

Menyajikan data statistik terkait fasilitas sekolah di Provinsi Gorontalo pada tahun 2021. Data ini dikeluarkan oleh Badan Pusat Statistik Provinsi Gorontalo pada tanggal 3 Februari 2022. Memberikan gambaran menyeluruh mengenai ketersediaan fasilitas sekolah di berbagai kabupaten/kota di Provinsi Gorontalo. Data disajikan berdasarkan tingkat pendidikan, mulai dari sekolah dasar hingga perguruan tinggi.

Sumber : Badan Pusat Statistik Provinsi Gorontalo. (2021). Jumlah Desa/Kelurahan yang Memiliki Fasilitas Sekolah Menurut Kabupaten/Kota dan Tingkat Pendidikan di Provinsi Gorontalo. Diakses pada Hari Selasa, 22 Oktober 2024 pukul 07.46 dari https://gorontalo.bps.go.id/id/statistics-table/3/ZURVeVVGRlljVWRMV25JeVEwVkRWa29yWldsR1p6MDkjMw==/jumlah-desa-sup-1--sup--kelurahan-yang-memiliki-fasilitas-sekolah-menurut-kabupaten-kota-dan-tingkat-pendidikan-di-provinsi-gorontalo.html?year=2021

 1. Import Numpy dan Statistics

Numpy: ini digunakan untuk operasi numerik dan manipulasi array. Dalam program ini, NumPy mempermudah pengolahan data dalam bentuk array 2D, termasuk perhitungan statistik.Statistics: Library ini digunakan untuk menghitung statistik dasar seperti modus dan varians. Ini berguna untuk analisis lebih lanjut dari data yang ada.

2. Data Input 

Data tentang jumlah desa/kelurahan yang memiliki fasilitas sekolah dimasukkan ke dalam sebuah array 2D. Setiap baris mewakili satu kelompok data (misalnya, kabupaten/kota), dan setiap kolom mewakili kategori tertentu (misalnya, tingkat pendidikan).

3.Menampilkan Data

Program menampilkan informasi tentang dataset yang sedang dianalisis, membantu pengguna memahami konteks data.

4. Menghitung Mean(Rata-rata)

Rata-rata dihitung untuk seluruh elemen dalam array 2D. Rata-rata memberikan gambaran umum tentang nilai tengah dari data

5. Menghitung Median 

Median adalah nilai tengah dari dataset. Jika data diurutkan, median memisahkan data menjadi dua bagian yang sama. Ini berguna untuk memahami distribusi data, terutama jika ada nilai ekstrim.

6. Menghitung Modus

 

Data diratakan (flattened) dari 2D menjadi 1D, dan modus dihitung. Modus adalah nilai yang paling sering muncul dalam dataset, memberikan informasi tentang frekuensi kemunculan nilai-nilai tertentu.

7. Menghitung Standar Deviasi 

Standar deviasi mengukur seberapa tersebar data dari rata-rata. Nilai ini menunjukkan variabilitas atau penyebaran nilai-nilai dalam data.

8. Menghitung Persentil 

  • Berdasarkan baris 

Persentil memberikan informasi tentang distribusi data. Program menghitung persentil 25, 50, dan 75 untuk setiap baris, yang menunjukkan nilai di bawah atau sama dengan persentase tertentu dari data dalam baris tersebut.

Menampilkan Hasil :

Persentil 1 (Persentil 25):  menampilkan nilai persentil 25, yang menunjukkan nilai yang lebih rendah atau sama dengan 25% dari seluruh nilai dalam setiap baris.

Persentil 2 (Median):  menampilkan nilai persentil 50, yang merupakan nilai tengah atau median dari data dalam setiap baris.Persentil 3 (Persentil 75): menampilkan nilai persentil 75, yang menunjukkan nilai yang lebih rendah atau sama dengan 75% dari seluruh nilai dalam setiap baris.

  • Berdasarkan Kolom

Program menghitung persentil 25, 50, dan 75 untuk setiap baris, yang menunjukkan nilai di bawah atau sama dengan persentase tertentu dari data dalam baris tersebut. Program ini menghitung dan menyimpan persentil 25, 50 (median), dan 75 untuk setiap kolom (tingkat pendidikan) dalam data fasilitas sekolah. 

Menampilkan hasil :

Persentil juga dihitung untuk setiap kolom, memberikan gambaran tentang distribusi nilai dalam kategori tertentu (misalnya, tingkat pendidikan).Program ini menampilkan persentil 25, 50 (median), dan 75 yang telah dihitung untuk setiap kolom (tingkat pendidikan) dalam data fasilitas sekolah. 

9. Menghitung Varians 

Varians mengukur seberapa jauh nilai-nilai dalam dataset tersebar dari rata-rata. Ini dihitung sebagai rata-rata kuadrat dari deviasi setiap nilai dari rata-rata. Varians memberikan informasi tambahan tentang konsistensi nilai-nilai dalam dataset.

10. Menghitung Nilai maksimum dan Minimum 

  • Berdasarkan Baris 

Nilai maksimum dan minimum dihitung untuk setiap baris. Ini membantu mengidentifikasi nilai tertinggi dan terendah dalam setiap kelompok data.

  • Berdasarkan Kolom 

Demikian juga, nilai maksimum dan minimum dihitung untuk setiap kolom, memberikan informasi tentang batasan nilai dalam kategori tertentu

11. Menghitung Jumlah dan Hasil perkalian 

Jumlah dan hasil perkalian dari seluruh elemen dalam array dihitung. Ini memberikan informasi tambahan tentang totalitas data dan bisa relevan dalam analisis lebih lanjut

12. Menghitung Argmin dan Argmax

Program ini menghitung dan menampilkan indeks dari nilai minimum (argmin) dan nilai maksimum (argmax) yang terdapat dalam array Data_fasilitas_Sekolah. Informasi ini dapat berguna untuk mengidentifikasi elemen dengan nilai ekstrem (terkecil dan terbesar) dalam data fasilitas sekolah.

13. Menampilkan Nilai Minimum dan Maksimum 

Program ini menampilkan nilai minimum dan nilai maksimum yang terdapat dalam array Data_fasilitas_Sekolah. Nilai-nilai ini diperoleh dengan menggunakan indeks minimum (argmin) dan indeks maksimum (argmax) yang telah dihitung sebelumnya.

Output dari program ini sebagai berikut :

Sekian dan Terimakasih 

 

Program Phyton - Soal BAB 4

06 October 2024 12:01:51 Dibaca : 23

Nama                             :  Karsum H. Talib

NIM                                :  411423033

Prodi / Kelas                  :  Pendidikan Matematika / B

Mata Kuliah                   :  Komputasi dan Pemograman

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

1. Apa yang Dimaksud dengan Fungsi?

Fungsi adalah blok kode dalam pemrograman yang dirancang untuk melakukan tugas tertentu dan mengembalikan nilai setelah selesai dieksekusi. Fungsi biasanya menerima input (disebut parameter) dan mengembalikan output yang merupakan hasil dari operasi di dalam fungsi tersebut.

2. Apa yang Dimaksud dengan Prosedur?

Prosedur adalah blok kode yang mirip dengan fungsi, tetapi tidak mengembalikan nilai. Prosedur digunakan untuk menjalankan serangkaian instruksi tanpa harus mengembalikan hasil tertentu. Prosedur dalam banyak bahasa pemrograman dikenal sebagai fungsi yang tidak mengembalikan nilai.

3. Perbedaan Fungsi dan Prosedur

  • Fungsi: Mengembalikan nilai setelah selesai dijalankan. Biasanya digunakan jika kita membutuhkan hasil dari operasi tersebut. Contoh: Fungsi yang menghitung luas persegi panjang dan mengembalikan hasilnya.
  • Prosedur: Tidak mengembalikan nilai setelah selesai dijalankan. Biasanya digunakan untuk menjalankan instruksi tertentu tanpa perlu hasil balik. Contoh: Prosedur yang mencetak pesan atau menampilkan informasi.

Secara umum, perbedaan utama adalah apakah suatu blok kode mengembalikan nilai atau tidak.

4. Jelaskan apa yanag dimakasud dengan iteratif, rekursif, dan apa perbedaan kedua

  • Iteratif: Metode yang menggunakan perulangan (loop) untuk mengulang blok kode hingga kondisi tertentu terpenuhi. Contoh perulangan adalah for atau while dalam Python.
  • Contoh iterasi untuk menghtung faktorial dari sebuah bilangan 

  • Rekursif: Metode pemrograman di mana fungsi memanggil dirinya sendiri untuk menyelesaikan tugas hingga mencapai kondisi dasar (base case). Rekursi sering digunakan untuk masalah yang dapat dipecah menjadi sub-masalah yang lebih kecil.
  • Contoh rekursi untuk menghitung faktorial:

Perbedaan antara Iteratif dan Rekursif :

  • Iteratif menggunakan struktur perulangan (loop) seperti for atau while, sedangkan rekursif menggunakan fungsi yang memanggil dirinya sendiri untuk menyelesaikan masalah.
  • Dalam beberapa kasus, rekursi bisa membuat kode lebih ringkas dan mudah dibaca, namun bisa menyebabkan masalah stack overflow jika kedalaman rekursinya terlalu besar. Iterasi, di sisi lain, lebih efisien dalam hal penggunaan memori karena tidak menggunakan stack rekursif.

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

Cara Kerja Program :

1. Definisi  Fungsi cek_bilangan

- Fungsi : Program dimulai dengan mendefinisikan sebuah fungsi bernama cek_bilangan yang menerima satu                      parameter, yaitu bilangan.

- Pengecekan:

  • Jika bilangan lebih besar dari 0, fungsi mengembalikan string "Bilangan Positif".
  • Jika bilangan kurang dari 0, fungsi mengembalikan string "Bilangan Negatif".
  • Jika bilangan sama dengan 0, fungsi mengembalikan string "Bilangan Nol".

- Fungsi ini bertujuanuntuk mengkalsifikasikan  bilangan yang dimasukkan kedalam salah satu dari tiga kategor t    tersebut.

 2. Input 

  • Program meminta pengguna untuk memasukkan sebuah bilangan melalui fungsi input().
  • Input yang diterima berupa string, sehingga harus diubah menjadi integer menggunakan int().
  • Nilai yang dimasukkan oleh pengguna disimpan dalam variabel bil.

 3. Memanggil fungsi dan menyimpan hasil.

  • Program memanggil fungsi cek_bilangan, dengan argumen bil yang merupakan bilangan yang dimasukkan oleh pengguna.
  • Hasil dari fungsi (string yang menunjukkan status bilangan) disimpan dalam variabel hasil.

4. Menampilkan hasil 

  • Program menampilkan hasil kepada pengguna menggunakan print().
  • Menggunakan f-string (f"...") untuk menyisipkan nilai variabel bil dan hasil dalam string yang dicetak.
  • Output mencakup informasi mengenai bilangan yang dimasukkan oleh pengguna dan statusnya (positif, negatif, atau nol).

contoh jalannya program :

Misalkan memasukan 5:

  • Fungsi cek_bilangan(5) dipanggil.Karena 5 lebih besar dari 0, fungsi mengembalikan "Bilangan Positif".Program kemudian mencetak: "Anda memasukkan: 5. Hasil pengecekan: Bilangan Positif."        

Misalkan memasukkan -10:

  • Fungsi cek_bilangan(-10) dipanggil.Fungsi mengembalikan "Bilangan Negatif".Program mencetak: "Anda memasukkan: -10. Hasil pengecekan: Bilangan Negatif."

Misalkan memasukkan 0:

  • Fungsi cek_bilangan(0) dipanggil.Fungsi mengembalikan "Bilangan Nol".Program mencetak: "Anda memasukkan: 0. Hasil pengecekan: Bilangan Nol."

 

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

Cara Kerja Program 

1. Fungsi cek_bilangan(n):

  • Fungsi ini bertujuan untuk memeriksa apakah suatu bilangan adalah bilangan bulat dan bilangan ganjil.
  • Parameter n: Ini adalah bilangan yang akan diperiksa.

2. Pemeriksaan bilangan bulat

  • if isinstance(n, int): Memeriksa apakah n adalah bilangan bulat. Jika ya, program akan mencetak bahwa n adalah bilangan bulat.
  • print(f"{n} adalah bilangan bulat."): Menampilkan pesan bahwa n adalah bilangan bulat.

3. Pemeriksaan bilangan ganjil 

  • if n % 2 != 0: Memeriksa apakah n adalah bilangan ganjil. Jika n dibagi 2 tidak menghasilkan sisa 0, maka itu adalah bilangan ganjil.
  • print(f"{n} adalah bilangan ganjil."): Menampilkan pesan bahwa n adalah bilangan ganjil.
  • Jika tidak, program akan mencetak bahwa n adalah bilangan bulat tetapi tidak mengonfirmasi ganjil.
  • else: print(f"{n} bukan bilangan bulat."): Jika n tidak adalah bilangan bulat, maka mencetak pesan bahwa n bukan bilangan bulat.

4. Bagian  try-except:

  • try:: Mencoba menjalankan kode yang ada di dalam blok ini.
  • angka_input = int(input("Masukkan sebuah bilangan: ")): Menerima input dari pengguna dan mengonversinya ke integer. Jika pengguna memasukkan nilai yang tidak bisa diubah menjadi integer, program akan memasuki blok except.
  • except ValueError:: Menangkap kesalahan jika terjadi konversi yang tidak valid, dan menampilkan pesan bahwa input tidak valid.

Contoh penggunaan program:

Jika memasukkan 7.outputnya akan:

jika memasukkan 8, outputnya  akan :

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

Cara kerja program :

1. Definisi Fungsi 

Program dimulai dengan mendefinisikan fungsi bernama cek_tahun_kabisat yang menerima satu parameter, yaitu tahun

2. Mencetak Informasi tahun 

Program mencetak tahun yang dimasukkan oleh pengguna untuk memberi konfirmasi.

3. Pengecekan tahun kasibat

  • Tahun Kasibat adalah tahun yang habis dibagi 4: tahun %4 = =0
  • Tidak habis dibagi 100: tahun % 100 != 0 (kecuali tahun tersebut juga habis dibagi 400)
  • Atau habis dibagi 400: tahun % 400 == 0
  • Hasil dari ekspresi ini disimpan dalam variabel is_kabisat.

4. Menampilkan hasil pengecekan 

Program memeriksa nilai is_kabisat. Jika True, program mencetak bahwa tahun tersebut adalah tahun kabisat; jika False, program mencetak bahwa tahun tersebut bukan tahun kabisat.

5. Penjelasan logika 

  • Program kemudian memberikan penjelasan lebih lanjut tentang logika di balik keputusan tersebut
  • Penjelasan ini memberikan rincian tentang mengapa tahun tertentu dianggap kabisat atau tidak berdasarkan sifat pembagiannya

6. Contoh penggunaan 

  • Pengguna diminta untuk memasukkan tahun
  • Setelah itu, fungsi cek_tahun_kabisat(tahun_input) dipanggil untuk memeriksa tahun yang dimasukkan.

Menampilkan hasil :

Misalnya memasukkan tahun 2000

Misalnya memasukkan tahun 2019

misalnya memasukkan 2040

 

8. Buatkan sebuah program yang menerapkan proses rekursif

Cara Kerja program :

1. Definisi Fungsi 

Fungsi jumlah_digit(n) didefinisikan untuk menghitung jumlah digit dari bilangan n. Di dalamnya, kita menggunakan dua jenis kontrol alur: kondisi dasar (base case) dan rekursi.

2. Kondisi dasar 

Baris if n < 10: memeriksa apakah n kurang dari 10. Jika ya, maka fungsi langsung mengembalikan n. Ini berarti bahwa jika n hanya memiliki satu digit, maka itu adalah hasil akhir. Misalnya, jika n adalah 7, maka hasilnya adalah 7.

3. Rekursi 

  • Jika n memiliki lebih dari satu digit (yaitu n >= 10), maka kita akan menjumlahkan digit terakhir dari n dengan hasil dari pemanggilan fungsi jumlah_digit dengan argumen yang lebih kecil (n // 10).
  • n % 10 memberikan digit terakhir dari n, sementara n // 10 menghilangkan digit terakhir dari n. Contoh jika  n = 98765.
  • jumlah_digit(98765):98765 % 10 = 5 (digit terakhir)Memanggil fungsi lagi: jumlah_digit(9876)
  • jumlah_digit(9876):9876 % 10 = 6 (digit terakhir)Memanggil fungsi lagi: jumlah_digit(987)

Proses ini berulang sampai mencapai kondisi dasar di mana n hanya tersisa sebagai satu digit.

4. Contoh penggunaan

  • Di bagian bawah program, kita meminta pengguna untuk memasukkan angka. Input ini kemudian dikonversi menjadi bilangan bulat dan disimpan dalam variabel angka.
  • Fungsi jumlah_digit(angka) dipanggil untuk menghitung jumlah digit dari angka yang dimasukkan. Hasilnya disimpan dalam variabel hasil.
  • Akhirnya, program mencetak hasil jumlah digit tersebut.

Contoh proses :

misalkan memasukkan n = 98765.

1. Pemanggilan pertama 

  • Jumlah_digit(98765):
  • 98765 % 10 = 5 (digit terakhir)
  • Memanggil fungsi lagi: jumlah_digit(9876)

2. Pemanggilan kedua 

  • Jumlah_digit(9876):
  • 9876 % 10 = 6 (digit terakhir)
  • Memanggil fungsi lagi: jumlah_digit(987)

3. Pemanggilan ketiga 

  • Jumlah_digit(987):
  • 987 % 10 = 7 (digit terakhir)
  • Memanggil fungsi lagi: jumlah_digit(98)

4. Pemanggilan keempat 

  • Jumlah_digit(98):
  • 98 % 10 = 8 (digit terakhir)
  • Memanggil fungsi lagi: jumlah_digit(9)

5. Pemanggilan kelima 

  • Jumlah_digit(9):
  • Kondisi dasar tercapai karena 9 < 10.
  • Mengembalikan 9.

Menghitung jumlah digit

Sekarang kita akan menghitung hasil dari semua pemanggilan sebelumnya:

 

  • Dari pemanggilan kelima, kita memiliki: 9
  • Dari pemanggilan keempat: 8 + 9 = 17
  • Dari pemanggilan ketiga: 7 + 17 = 24
  • Dari pemanggilan kedua: 6 + 24 = 30
  • Dari pemanggilan pertama: 5 + 30 = 35

Kategori

  • Masih Kosong

Blogroll

  • Masih Kosong