Latihan Soal Bab 5_5.9
Nama : Asrika Said
NIM : 411423049
Prodi / Kelas : Pendidkan Matematika / B
Mata Kuliah : Komaputasi dan Pemrograman
Dosen Pengampu : Agusyarif Rezka Nuha, S.Pd. M.Si
1. Aturan Penjumlahan dan Pengurangan Matrik
Penjelasan Kode:
a. Input Jumlah Baris dan Kolom
Kode ini meminta pengguna untuk memasukkan jumlah baris dan kolom untuk matriks, lalu mengonversinya ke dalam tipe data int
dan menyimpannya di variabel baris
dan kolom
.
b. Pengecekan Jumlah Baris dan Kolom
- Bagian ini memeriksa apakah jumlah baris atau kolom kurang dari atau sama dengan 0.
- Jika benar, program menampilkan pesan bahwa jumlah baris dan kolom harus lebih besar dari 0.
- Jika salah, program melanjutkan ke proses berikutnya di dalam blok
else
.
c. Input Elemen Matriks
- Pada bagian ini, program meminta pengguna untuk memasukkan nilai-nilai elemen untuk setiap baris dari matriks A dan matriks B.
input(...)
menerima input pengguna berupa angka yang dipisahkan dengan spasi.split()
membagi input tersebut menjadi daftar (list) angka dalam bentuk string.map(float, ...)
mengonversi setiap elemen string menjadifloat.
list(...)
mengubah hasil map menjadi list yang merupakan baris dalam matriks.- Looping
[... for i in range(baris)]
digunakan untuk mengulangi proses ini sesuai jumlah baris yang diinginkan.
d. Operasi Penjumlahan Matriks
- Bagian ini menghitung hasil penjumlahan elemen-elemen matriks A dan matriks B, baris demi baris dan kolom demi kolom.
for i in range(baris)
untuk setiap baris.for j in range(kolom)
untuk setiap kolom di dalam baris.matriks_a[i][j] + matriks_b[i][j]
menambahkan elemen matriks A dan matriks B di posisi[i][j].
- Hasil penjumlahan disimpan dalam
hasil_penjumlahan.
e. Operasi Pengurangan Matriks
- Mirip dengan proses penjumlahan, kode ini menghitung hasil pengurangan elemen-elemen matriks A dan matriks B.
- Hasil pengurangan disimpan dalam
hasil_pengurangan
.
f. Menampilkan Hasil Penjumlahan Matriks
- Bagian ini menampilkan hasil penjumlahan matriks A dan B.
for baris in hasil_penjumlahan
untuk mengakses setiap baris hasil penjumlahan.print(baris)
menampilkan elemen dalam satu baris hasil penjumlahan.
g. Menampilkan Hasil Pengurangan Matriks
- Bagian ini menampilkan hasil pengurangan matriks A dan B.
- Sama seperti langkah sebelumnya,
for baris in hasil_pengurangan
digunakan untuk menampilkan setiap baris hasil pengurangan.
Berikut contoh hasil jika program dijalankan:
2. Aturan Perkalian Matriks
Penjelasan Kode:
a. Input Jumlah Baris dan Kolom untuk Matriks A dan B
- Program meminta pengguna untuk memasukkan jumlah baris dan kolom untuk kedua matriks, A dan B, dan mengonversi input menjadi tipe data
int
. baris_a
dankolom_a
menyimpan jumlah baris dan kolom untuk matriks A.baris_b
dankolom_b
menyimpan jumlah baris dan kolom untuk matriks B.
b. Input Elemen Matrik A
- Program meminta pengguna untuk memasukkan elemen matriks A baris per baris dan kolom per kolom.
input(f"Elemen [{i+1}][{j+1}]: ")
meminta nilai elemen di barisi+1
dan kolomj+1
(penomoran dimulai dari 1).float(...)
mengonversi input menjadi tipe datafloat.
for j in range(kolom_a)
mengulangi proses input untuk setiap kolom dalam satu baris.for i in range(baris_a)
mengulangi proses input untuk setiap baris.- Hasil akhirnya disimpan dalam bentuk list 2D
matriks_a
, yang berisi semua elemen matriks A.
c. Input Elemen Matriks B
- Bagian ini sama seperti proses input matriks A, namun untuk matriks B.
- Hasil akhirnya disimpan dalam bentuk list 2D
matriks_b
, yang berisi semua elemen matriks B.
d. Menghitung Perkalian Matriks
- Bagian ini melakukan perkalian matriks antara
matriks_a
danmatriks_b
. zip(*matriks_b)
mentransposematriks_b
, sehingga memungkinkan pengambilan kolom matriks B sebagai list yang dapat dioperasikan.for row_a in matriks_a
mengiterasi setiap baris dari matriks A.for col_b in zip(*matriks_b)
mengiterasi setiap kolom dari matriks B yang telah ditranspose.sum(a * b for a, b in zip(row_a, col_b))
menghitung dot product antararow_a
dari matriks A dancol_b
dari matriks B, untuk menghasilkan satu elemen dari hasil perkalian matriks.- Hasil perkalian disimpan dalam
matriks_hasil
.
e. Menampilkan Hasil Perkalian Matriks
- Bagian ini menampilkan hasil perkalian matriks.
for baris in matriks_hasil
mengiterasi setiap baris darimatriks_hasil
.print(baris)
menampilkan elemen dalam satu baris hasil perkalian.
Berikut hasil saat program dijalankan:
Studi kasus 5 bab 5_Visualisasi Grafik
Nama : Asrika Said
NIM : 411423049
Prodi / Kelas : Pendidkan Matematika / B
Mata Kuliah : Komaputasi dan Pemrograman
Dosen Pengampu : Agusyarif Rezka Nuha, S.Pd. M.Si
Data yang dibuat di MS Excel dengan Format CSV:
Penjelasan Program:
1. Import Library
Kode ini mengimpor tiga library:
matplotlib.pyplot
sebagaiplt
untuk membuat grafik.pandas
sebagaipd
untuk pengolahan data dalam bentuk DataFrame.numpy
sebagainp
untuk perhitungan numerik.
2. Baca File CSV
file_csv
berisi lokasi file CSV.pd.read_csv(file_csv, delimiter=";")
membaca data dari file CSV dengan pemisah tanda titik koma(;)
, dan menyimpannya dalam variabel data.print(data)
menampilkan isi DataFramedata
.print('-'*37)
menampilkan garis pemisah untuk memperjelas hasil keluaran.
3. Hitung dan Tampilkan Statistk
Kode ini menghitung nilai minimum, maksimum, dan rata-rata dari kolom "Hasil Penjualan" dalam DataFrame data
, lalu menampilkannya:
np.min(data['Hasil Penjualan'])
menghitung nilai minimum.np.max(data['Hasil Penjualan'])
menghitung nilai maksimum.np.mean(data['Hasil Penjualan'])
menghitung rata-rata."{:.2f}".format(...)
memformat angka hasil perhitungan menjadi dua angka desimal.
4. Persiapan Data Untuk Grafik
Nama_Barang
menyimpan data dari kolom "Nama Barang".penjualan
menyimpan data dari kolom "Hasil Penjualan".
5. Membuat Grafik Batang
Kode ini membuat grafik batang dengan:
plt.bar(Nama_Barang, penjualan, color='blue')
yang membuat grafik dengan nama barang di sumbu x dan hasil penjualan di sumbu y, serta warna batang biru.plt.title
memberi judul pada grafik.plt.ylabel
danplt.xlabel
memberi label pada sumbu y dan sumbu x.plt.show()
menampilkan grafik yang telah dibuat.
Berikut hasil saat program dijalankan:
Visualisasi Grafik:
Studi kasus 4 bab 5 : Membaca Data Dari File CSV
Nama : Asrika Said
NIM : 411423049
Prodi / Kelas : Pendidkan Matematika / B
Mata Kuliah : Komaputasi dan Pemrograman
Dosen Pengampu : Agusyarif Rezka Nuha, S.Pd. M.Si
Data yang dibuat di MS Excel dengan Format CSV:
Penjelasan Program:
1. Import Library
Mengimpor dua library, yaitu pandas
sebagai pd
dan numpy
sebagai np. pandas digunakan untuk manipulasi dan analisis data, sedangkan numpy sering digunakan untuk operasi matematika, terutama yang melibatkan array dan statistik.
2. Membaca File CSV
pada bagian ini, kamu menentukan path dari file CSV (file_csv) dan menggunakan pd.read_csv() untuk membaca data dari file tersebut. delimiter=";" menunjukkan bahwa data dalam file CSV dipisahkan oleh tanda titik koma (;).
3. Menampilkan Data
bagian ini digunakan untuk menampilkan data yang telah dibaca dari file CSV. print(data) akan menampilkan keseluruhan data dalam bentuk tabel.
4. Menghitung dan Menampilkan Gaji Maksimum dan Minimum
print("*"*80)
mencetak 80 tanda bintang(*)
sebagai pemisah tampilan.np.max(data['GAJI'])
digunakan untuk menghitung nilai maksimum dari kolomGAJI
, lalu hasilnya diformat agar memiliki dua angka di belakang koma dengan "{:.2f}".format(...).
np.min(data['GAJI'])
melakukan hal yang sama untuk menghitung nilai minimum dari kolomGAJI.
- hasil dari kedua perhitungan ini ditampilkan dengan format yang rapi dan mudah dibaca, diapit oleh garis bintang sebagai pemisah tampilan.
Berikut hasil saat program dijalankan:
Tugas KDP_Operasi Statistika Dasar Pada Array
Nama : Asrika Said
NIM : 411423049
Prodi / Kelas : Pendidkan Matematika / B
Mata Kuliah : Komaputasi dan Pemrograman
Dosen Pengampu : Agusyarif Rezka Nuha, S.Pd. M.Si
Data Jumlah Penduduk Perempuan Menurut Kecamatan di Bolaang Mongondow Selatan Pada Tahun 2020
- Kec. Pinolosian : 6.992 jiwa
- Kec. Tomini : 2.953 jiwa
- Kec. Bolaang Uki : 8.595 jiwa
- Kec. Helumo : 3.310 jiwa
- Kec. Pinolosian 5.050 jiwa
- Kec. Pinolosian Tengah : 2.938 jiwa
- Kec. Pinolosian Timur : 3.603 jiwa
Sumber : Badan Pusat Statistik Kabupaten Bolaang Mongondow Selatan. (2021). Jumlah Penduduk Menurut Kecamatan dan Jenis Kelamin (Jiwa), 2019-2020. Diakses dari https://bolselkab.bps.go.id/id/statistics-table/2/NDYjMg==/jumlah-penduduk-menurut-kecamatan-dan-jenis-kelamin.html pada 22 oktober 2024.
Langkah-langkah Operasi Statistika Pada Array
1. Import Libraries:
Mengimpor modul numpy dengan alias 'np' sehingga kita dapat menggunakan fungsi-fungsi numpy dalam kode.
2. Membuat Array:
Membuat sebuah array numpy dengan nilai-nilai tertentu.
3. Menghitung Mean, Median, Modus
np.mean(a)
menghitung rata-rata (mean) dari elemen-elemen dalam arraya
.np.median(a)
menghitung median dari arraya
. Median adalah nilai tengah dari data yang sudah diurutkan.statistics.mode(a)
menghitung modus dari arraya
. Modus adalah nilai yang paling sering muncul dalam data.
4. Menghitung Standar Deviasi (Standard Deviation):
Fungsi np.std()
menghitung standar deviasi dari elemen dalam array a
. Standar deviasi mengukur seberapa tersebar nilai dalam dataset dibandingkan dengan rata-rata.
5. Menghitung Kuantil (Quantile):
Di sini, program menghitung kuantil untuk persentil ke-25 (Q1), median (Q2 atau persentil ke-50), dan persentil ke-75 (Q3) menggunakan fungsi np.quantile()
. Kuatil membantu melihat distribusi data.
6. Menghitung Variansi Populasi (Population Variance):
Menggunakan fungsi statistics.pvariance()
untuk menghitung variansi populasi, yaitu ukuran dari seberapa tersebar nilai dalam populasi data.
7. Mencari Nilai Maksimum:
Fungsi np.max()
digunakan untuk menemukan nilai terbesar dalam array a
.
8. Mencari Nilai Minimum:
Fungsi np.min()
digunakan untuk mencari nilai terkecil dalam array a
.
9. Menghitung Jumlah Semua Elemen (Sum):
Menggunakan a.sum()
untuk menghitung jumlah total semua elemen dalam array a
.
10. Menghitung Hasil Perkalian Semua Elemen (Product):
Menggunakan a.prod()
untuk menghitung hasil perkalian semua elemen dalam array a
.
11. Mencari Indeks Nilai Minimum:
Fungsi a.argmin()
digunakan untuk menemukan indeks di mana nilai minimum berada dalam array a
.
12. Mencari Indeks Nilai Maksimum:
Fungsi a.argmax()
digunakan untuk menemukan indeks di mana nilai maksimum berada dalam array a
.
Berikut hasil saat program dijalankan:
Latihan Soal Bab 4_Program Python
Nama : Asrika Said
NIM : 411423049
Prodi / Kelas : Pendidkan Matematika / B
Mata Kuliah : Komaputasi dan Pemrograman
Dosen Pengampu : Agusyarif Rezka Nuha, S.Pd. M.Si
1. Apa itu fungsi?
Dalam pemrograman, fungsi adalah sekumpulan instruksi yang dikelompokkan menjadi satu kesatuan untuk melakukan tugas tertentu. Fungsi memungkinkan Anda untuk mengorganisir kode, membuatnya lebih mudah dibaca, dan menghindari pengulangan kode. Dengan menggunakan fungsi, Anda dapat memanggilnya berulang kali di berbagai bagian program tanpa harus menulis ulang instruksi yang sama.
Ciri-ciri Fungsi
- Nama Fungsi: Setiap fungsi memiliki nama yang unik yang digunakan untuk memanggilnya.
- Parameter (Argumen): Fungsi dapat menerima masukan berupa parameter, yang memungkinkan pengguna untuk memberikan data yang berbeda saat memanggil fungsi.
- Nilai Kembali: Fungsi dapat mengembalikan nilai setelah menyelesaikan tugasnya. Namun, tidak semua fungsi harus mengembalikan nilai.
- Modularitas: Fungsi membantu memecah program besar menjadi bagian-bagian kecil yang lebih mudah dikelola.
2. Apa itu 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.
Ketika prosedur dipanggil, semua instruksi di dalamnya dijalankan secara berurutan. Prosedur dapat menerima parameter, yang memungkinkan pengguna untuk memberikan input yang berbeda saat memanggilnya. Penggunaan prosedur meningkatkan keterbacaan kode, meminimalkan pengulangan, dan memudahkan pemeliharaan serta pengujian. Dengan cara ini, prosedur membantu dalam pengembangan perangkat lunak yang lebih efisien, terutama dalam proyek yang lebih besar dan kompleks.
3. 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.
Tujuan dan Penggunaan yang Berbeda:
- Fungsi: Tujuan utama fungsi adalah untuk menghasilkan output berdasarkan input. Oleh karena itu, fungsi sering digunakan dalam konteks perhitungan atau pengolahan data, di mana hasil dari fungsi diperlukan untuk langkah selanjutnya dalam program.
- Prosedur: Prosedur lebih berorientasi pada tindakan dan pengelolaan alur program. Misalnya, prosedur mungkin digunakan untuk mencetak laporan, menyimpan data, atau mengubah tampilan antarmuka pengguna, di mana hasilnya tidak perlu dikembalikan.
Struktur dan Sintaksis:
- Fungsi: Menggunakan kata kunci return untuk mengembalikan nilai. Ini adalah bagian penting dari definisi fungsi, karena menunjukkan bahwa fungsi memiliki hasil yang bisa digunakan.
- Prosedur: Tidak memerlukan pernyataan return, sehingga strukturnya lebih sederhana dalam hal ini. Prosedur lebih fokus pada eksekusi instruksi tanpa perlu memikirkan nilai yang dikembalikan.
Penggunaan Parameter:
- Fungsi: Parameter yang diterima oleh fungsi digunakan untuk menghasilkan nilai kembali. Ini menciptakan interaksi yang lebih dinamis, karena hasil dapat bervariasi berdasarkan input.
- Prosedur: Parameter yang diterima oleh prosedur biasanya digunakan untuk memodifikasi tindakan yang dilakukan oleh prosedur tanpa perlu mengembalikan nilai. Ini memungkinkan prosedur untuk berfungsi dalam konteks yang lebih luas tanpa terikat pada hasil spesifik.
Perbedaan antara fungsi dan prosedur muncul dari tujuan dan cara mereka dirancang untuk digunakan dalam pemrograman:
- Fungsi dirancang untuk memberikan hasil yang dapat diandalkan dan digunakan dalam berbagai konteks perhitungan atau pengolahan data. Dengan mengembalikan nilai, fungsi memfasilitasi pengembangan kode yang lebih modular dan dapat digunakan kembali, sedangkan
- Prosedur dirancang untuk melaksanakan tugas atau aksi tanpa fokus pada hasil. Ini membuat prosedur lebih sesuai untuk mengelola alur dan interaksi dalam program, terutama dalam konteks aplikasi yang lebih kompleks di mana efek samping dari suatu tindakan lebih penting daripada nilai yang dihasilkan.
4. Apa itu iteratif, rekursif, dan apa perbedaan keduanya
IteratifIteratif adalah pendekatan dalam pemrograman yang menggunakan loop (seperti for atau while) untuk mengulangi serangkaian instruksi hingga kondisi tertentu terpenuhi. Dalam metode ini, proses berulang dilakukan dengan memanfaatkan variabel kontrol yang diubah setiap iterasi. Pendekatan ini sering digunakan ketika jumlah pengulangan dapat ditentukan sebelumnya atau ketika proses yang berulang tidak terlalu kompleks. Contoh penggunaan iteratif adalah menghitung jumlah angka dalam sebuah daftar atau mencetak elemen dari sebuah array.
RekursifRekursif adalah pendekatan yang melibatkan fungsi yang memanggil dirinya sendiri untuk menyelesaikan suatu masalah. Rekursi biasanya digunakan untuk menyelesaikan masalah yang dapat dibagi menjadi sub-masalah yang lebih kecil dan serupa. Setiap panggilan fungsi rekursif biasanya memiliki kondisi dasar yang menghentikan proses rekursi. Contoh penggunaan rekursif adalah menghitung faktorial dari suatu angka atau mencari elemen dalam struktur data seperti pohon.
Berikut adalah penjelasan mengenai perbedaan antara iteratif dan rekursif:
- Metode Pengulangan:
Iteratif: Menggunakan loop (seperti for atau while) untuk mengulangi blok kode. Proses berulang ini dilakukan dengan mengubah variabel kontrol di setiap iterasi.
Rekursif: Menggunakan fungsi yang memanggil dirinya sendiri untuk menyelesaikan masalah. Rekursi membagi masalah menjadi sub-masalah yang lebih kecil.
- Kondisi Berhenti:
Iteratif: Memiliki kondisi yang ditetapkan dalam loop untuk menghentikan iterasi. Misalnya, loop akan berhenti ketika variabel kontrol mencapai nilai tertentu.
Rekursif: Memiliki kondisi dasar yang menghentikan panggilan fungsi rekursif. Tanpa kondisi ini, rekursi dapat menyebabkan stack overflow.
- Penggunaan Memori:
Iteratif: Umumnya lebih efisien dalam penggunaan memori, karena tidak menyimpan banyak panggilan fungsi dalam stack.
Rekursif: Dapat mengkonsumsi lebih banyak memori, karena setiap panggilan fungsi disimpan dalam stack hingga mencapai kondisi dasar.
- Keterbacaan Kode:
Iteratif: Kode dengan pendekatan iteratif bisa lebih panjang dan mungkin lebih sulit dibaca untuk masalah yang kompleks.
Rekursif: Kode rekursif seringkali lebih ringkas dan lebih mudah dipahami untuk masalah yang cocok, seperti struktur pohon atau algoritma tertentu.
- Contoh Penggunaan:
Iteratif: Banyak digunakan untuk menghitung total atau memproses elemen dalam daftar menggunakan loop.
Rekursif: Sering digunakan untuk algoritma seperti pencarian dalam pohon, menghitung faktorial, atau menyelesaikan masalah Fibonacci.
5. Membuat fungsi yang digunakan untuk mengecek suatu bilangan, apakah bilangan tersebut positif atau negatif
Penjelasan:
Definisi Fungsi cek_bilangan:
- Fungsi
cek_bilangan()
didefinisikan tanpa argumen, dan di dalamnya terdapatloop while True
: yang artinyaloop
ini akan berjalan terus-menerus sampai ada kondisi tertentu yang menghentikannya.
Menerima Input dari Pengguna:
Program meminta pengguna memasukkan sebuah angka melalui fungsi input()
. Nilai yang dimasukkan oleh pengguna kemudian dikonversi menjadi tipe float
, sehingga program bisa menerima bilangan desimal (seperti 2.5, -3.7) atau bilangan bulat.
Cek Positif, Negatif, atau Nol:
- Setelah input diterima, program melakukan pengecekan menggunakan struktur kontrol
if
,elif
, danelse
:
- Jika angka yang dimasukkan lebih besar dari nol, maka akan dicetak bahwa bilangan tersebut positif.
- Jika angka lebih kecil dari nol, dicetak bahwa bilangan tersebut negatif.
- Jika angka sama dengan nol, maka program akan mencetak "Bilangan tersebut adalah nol."
Tanya Apakah Ingin Melanjutkan:
- Setelah mencetak hasil, program akan menanyakan kepada pengguna apakah mereka ingin mengecek bilangan lain:
- Jawaban dari pengguna disimpan dalam variabel
lanjut
dan diubah menjadi huruf kecil(.lower())
agar jawaban seperti "YA", "ya", atau "Ya" bisa dibaca dengan benar.
Kondisi Penghentian Program:
- Program mengecek apakah pengguna tidak menjawab "ya":
- Jika pengguna menjawab selain "ya" (misalnya "tidak" atau "no"), program akan mencetak pesan "Terima kasih! Program selesai." dan
break
digunakan untuk keluar dariloop while
, sehingga program berhenti berjalan.
Memulai Program:
- Terakhir, di luar definisi fungsi, ada pemanggilan fungsi
cek_bilangan()
untuk memulai program:
Tahapan ini membuat program terus-menerus mengecek apakah bilangan yang dimasukkan positif, negatif, atau nol, lalu menanyakan apakah pengguna ingin melanjutkan atau tidak.
Berikut hasil jika program dijalankan:
6. Membuat fungsi yang digunakan untuk mengecek suatu bilangan. apakah bilangan bulat atau bilangan ganjil
Penjelasan Kode:
Definisi Fungsi
def cek_bulat_ganjil(angka):
mendefinisikan sebuah fungsi dengan namacek_bulat_ganjil
. Fungsi ini menerima satu parameter, yaituangka
. Fungsi ini bertujuan untuk mengecek apakah angka yang diberikan adalah bilangan bulat atau bilangan ganjil.if angka % 2 == 0:
Dalam fungsi, kita menggunakan operator modulo (%
) untuk memeriksa apakah angka habis dibagi 2. Jikaangka % 2 == 0
, maka bilangan tersebut dianggap genap. Dalam konteks ini, jika bilangan genap, fungsi mengembalikan string:"Bilangan tersebut adalah bilangan bulat."
return "Bilangan tersebut adalah bilangan ganjil." :
Jikaangka
tidak habis dibagi 2 (yaituangka % 2 != 0),
maka bilangan tersebut dianggap ganjil.
Fungsi akan mengembalikan string: "Bilangan tersebut adalah bilangan ganjil."
angka = int(input("Masukkan sebuah bilangan: ")):
Setelah mendefinisikan fungsi, program meminta pengguna untuk memasukkan bilangan melaluiinput().
Input ini kemudian diubah menjadi tipeint
(bilangan bulat) untuk memastikan bahwa operasi matematika dapat dilakukan.hasil = cek_bulat_ganjil(angka) :
Setelah pengguna memasukkan bilangan, program memanggil fungsicek_bulat_ganjil()
dengan argumenangka.
Hasil dari fungsi disimpan dalam variabelhasil.
print(hasil):
program mencetak hasil yang disimpan di variabelhasil,
yang memberikan informasi kepada pengguna apakah bilangan yang dimasukkan adalah bilangan bulat (genap) atau bilangan ganjil.
Contoh hasil saat program dijalankan:
7. Membuat fungsi yang digunakan untuk mengecek apakah suatu tahun adalah tahun kabisat atau bukan
Penjelasan Kode:
def cek_tahun_kabisat(tahun):
Fungsicek_tahun_kabisat
didefinisikan untuk mengecek apakah tahun yang diberikan adalah tahun kabisat.kabisat = tahun % 4 == 0 and (tahun % 100 != 0 or tahun % 400 == 0)
: Di dalam fungsi, kita menggunakan logika untuk menentukan apakah tahun tersebut kabisat, yaitu dapat dibagi 4 dan (tidak dapat dibagi 100 atau dapat dibagi 400).if kabisat:
return f"{tahun} adalah tahun kabisat."
: Jika kabisat bernilaiTrue
, fungsi mengembalikan string yang menyatakan tahun tersebut adalah tahun kabisat.else:
return f"{tahun} bukan tahun kabisat."
: Jikakabisat
bernilaiFalse
, fungsi mengembalikan string yang menyatakan tahun tersebut bukan tahun kabisat.tahun = int(input("Masukkan tahun: "))
: Program meminta pengguna untuk memasukkan tahun dan mengonversinya menjadi integer.hasil = cek_tahun_kabisat(tahun)
: Fungsi dipanggil dengan argumen tahun yang dimasukkan, dan hasilnya disimpan dalam variabelhasil
.print(hasil)
: Program mencetak hasil pengecekan apakah tahun tersebut adalah tahun kabisat atau bukan.
contoh hasil saat program dijalankan:
8. Membuat sebuah program yang menerapkan proses rekursif
Penjelasan Kode:
- Definisi Fungsi
def faktorial_recursive(n):
Di sini, fungsi faktorial_recursive
didefinisikan untuk menghitung faktorial dari bilangan bulat n
yang diberikan sebagai argumen.
- Kasus Dasar
if n <= 1:
return 1
Dalam rekursi, kita perlu menentukan kasus dasar untuk menghentikan proses. Dalam hal ini, jika n adalah 0 atau 1, fungsi akan mengembalikan 1. Ini sesuai dengan definisi faktorial, di mana 0! = 1
dan 1! = 1.
- Panggilan Rekursif
else:
return n * faktorial_recursive(n - 1)
Jika n lebih besar dari 1, fungsi akan memanggil dirinya sendiri dengan parameter n - 1. Proses ini akan terus berlanjut hingga mencapai kasus dasar. Hasil dari panggilan rekursif tersebut dikalikan dengan n saat ini, sehingga kita mendapatkan hasil faktorial.
- Input
angka = int(input("Masukkan sebuah bilangan bulat non-negatif: "))
: Program memeriksa apakah angka yang dimasukkan pengguna valid (non-negatif). Jika tidak, akan menampilkan pesan kesalahan.
- Menghitung dan Menampilkan Hasil
else:
hasil = faktorial_recursive(angka)
print(f"Faktorial dari {angka} adalah {hasil}.")
Jika input valid, program memanggil fungsi faktorial_recursive
dengan angka yang dimasukkan. Hasilnya kemudian dicetak ke layar.
Contoh hasil saat menjalankan program:
Kategori
- Masih Kosong
Blogroll
- Masih Kosong