Study Kasus 4
Ilustrasi Data yang dibuat di MS Excel dengan Format CSV
1. Mengimpor Library yang Diperlukan
- `matplotlib.pyplot` adalah modul untuk membuat visualisasi data, seperti grafik batang.
- `pandas` digunakan untuk manipulasi data, seperti membaca data dari file CSV.
- `pd.read_csv` membaca file CSV yang berisi data penjualan barang.
- `r` sebelum path file digunakan untuk membaca path file sebagai raw string.
- sep=";"` menentukan bahwa kolom dalam CSV dipisahkan dengan titik koma (`;`).
- `print(data)` menampilkan seluruh data yang berhasil dibaca.
- `print('-' * 37)` menampilkan garis sebagai pembatas.
2. Menghitung Statistik Penjualan
- `penjualan_min` menghitung nilai penjualan minimum dari kolom `Hasil Penjualan`.
- `penjualan_max` menghitung nilai penjualan maksimum.
- `penjualan_avg` menghitung rata-rata penjualan.
3. Menampilkan Hasil Statistik
- F-string digunakan untuk menampilkan statistik dengan format 2 desimal, memudahkan pembacaan angka dengan koma sebagai pemisah ribuan.
4. Membuat Grafik Batang
- `plt.bar` membuat grafik batang:
- `data['Nama Barang']` sebagai label pada sumbu-x untuk setiap barang.
- `data['Hasil Penjualan']` sebagai nilai pada sumbu-y.
- `color='black' memberi warna hitam pada batang.
- `plt.title`, `plt.xlabel`, dan `plt.ylabel` menambahkan judul grafik dan label sumbu.
- `plt.xticks(rotation=45)` memutar label sumbu-x sebesar 45 derajat agar lebih mudah dibaca.
- `plt.tight_layout()` menyesuaikan tata letak untuk mencegah elemen-elemen tumpang tindih.
- 'plt.show()` menampilkan grafik.
Hasil Program Ketika dijalankan:
Study Kasus 5
Ilustrasi Data:
1. Impor Library
Menggunakan pandas dan numpy untuk analisis data. pandas digunakan untuk manipulasi data berbasis tabel, sedangkan numpy digunakan untuk perhitungan numerik.
2. Membaca File CSV
- pd.read_csv digunakan untuk membaca file CSV.
- r di awal path memastikan bahwa karakter khusus dalam path dibaca apa adanya (misalnya, \n tidak dianggap sebagai newline).
- sep=";" menentukan bahwa kolom-kolom dalam file CSV dipisahkan oleh titik koma (;), bukan koma, yang kadang digunakan sebagai pemisah di beberapa negara.
3. Menampilkan Data yang Dibaca
Menampilkan data dari file CSV untuk memastikan data berhasil dibaca.
4. Membuat Pembatas Tampilan
Menampilkan garis sepanjang 80 karakter sebagai pemisah untuk memudahkan membaca output.
5. Mencari Penjualan Maksimum dan Minimum
- data['penjualan'].max() mengembalikan nilai maksimum dari kolom penjualan.
- data['penjualan'].min() mengembalikan nilai minimum dari kolom penjualan.
6. Menampilkan Penjualan Maksimum dan Minimum dengan Format
- Menggunakan f-string untuk menampilkan penjualan_maks dan penjualan_min dengan format angka:
- :,.2f memformat angka dengan 2 desimal dan menggunakan koma (,) sebagai pemisah ribuan.
- Pembatas Output Akhir, Menampilkan garis sebagai pemisah terakhir dalam output.
Hasil Progam akan seperti ini:
Visualisasi Grafik:
Bab 5
Berikut merupakan program python yaitu penjumlahan, pengurangan dan perkalian matriks tanpa menggunakan fungsi ada yang ada pada library.
1. Meminta Input dari Pengguna
Fungsi input_matriks meminta pengguna memasukkan elemen-elemen untuk sebuah matriks berukuran baris x kolom. Setiap elemen dimasukkan dengan format [i+1, j+1], menandakan baris dan kolom elemen. Matriks yang dibangun berbentuk list dalam list, yaitu list baris yang berisi elemen-elemen kolom. Fungsi ini kemudian mengembalikan matriks yang telah diisi.
2. Fungsi tambah_matriks, kurang_matriks, dan kali_matriks
Kode ini menggunakan tiga fungsi untuk melakukan operasi dasar pada matriks:
- tambah_matriks(A, B) dan kurang_matriks(A, B) Kedua fungsi ini menambahkan atau mengurangi matriks A dan B elemen demi elemen. Mereka memerlukan ukuran matriks A dan B yang sama, jika tidak, penjumlahan dan pengurangan tidak dapat dilakukan.
- kali_matriks (A, B) Fungsi ini melakukan perkalian matriks antara A dan B, yang hanya dapat dilakukan jika jumlah kolom di matriks A sama dengan jumlah baris di matriks B. Dalam perkalian matriks, setiap elemen hasil dihitung dengan menjumlahkan hasil perkalian elemen-elemen baris dari A dan kolom dari B.
3. Meminta Ukuran Matriks dari Pengguna
Pengguna diminta memasukkan jumlah baris dan kolom untuk matriks A dan B. Berdasarkan input ini, kita akan tahu apakah penjumlahan, pengurangan, atau perkalian matriks bisa dilakukan.
4. Memastikan Ukuran Matriks Sesuai untuk Operasi Penjumlahan dan Pengurangan Matriks
Penjumlahan dan pengurangan matriks hanya bisa dilakukan jika matriks A dan B memiliki ukuran yang sama. Jika kondisi terpenuhi, fungsi tambah_matriks dan kurang_matriks akan dipanggil, dan hasilnya ditampilkan. Jika ukuran tidak sama, program mencetak pesan error.
Program akan Berjalan Seperti ini:
Analisis Suku Bunga di Indonesia Tahun 2020 Menggunakan Operasi Statistika Dasar Pada Array
Program ini digunakan untuk menganalisis data suku bunga di Indonesia pada tahun 2020 menggunakan beberapa konsep statistik. Berikut penjelasan dari setiap bagian:
Sumber:
https://www.bps.go.id/id/statistics-table/2/Mzc5IzI=/bi-rate.html
1.Inisialisasi Data Suku Bunga
Data suku bunga di setiap bulan pada tahun 2020 disimpan dalam sebuah array numpy bernama suku_bunga.
2.Menampilkan Suku Bunga Tiap Bulan
Daftar berisi nama bulan dan nilai suku bunga terkait ditampilkan menggunakan perulangan.
3.Menghitung Rata - rata (Mean)
Menggunakan fungsi mean() dari numpy untuk menghitung nilai rata-rata suku bunga sepanjang tahun.
4.Menghitung Median
Menggunakan fungsi median() dari numpy untuk mendapatkan nilai median, yaitu nilai tengah ketika data diurutkan.
5.Menghitung Modus (Mode)
Menggunakan fungsi mode() dari modul statistics untuk menghitung modus, nilai yang paling sering muncul.
6.Menghitung Standar Deviasi
Menggunakan fungsi stdev() untuk menghitung standar deviasi, yang menggambarkan seberapa tersebar data suku bunga dari nilai rata-rata.
7.Menghitung Persentil (25%, 50%, 75%)
Fungsi quantile() digunakan untuk menghitung persentil. Persentil 25% menunjukkan nilai di bawahnya terdapat 25% data, dan seterusnya.
8.Menghitung Varians
Varians menggambarkan seberapa besar penyebaran data dari rata-rata. Dihitung menggunakan fungsi var().
9.Menghitung Nilai Maksimum dan Minimum
min() dan max() digunakan untuk mendapatkan nilai terkecil dan terbesar dari data.
10. Menghitung Jumlah Total (Sum)
sum() digunakan untuk menjumlahkan semua nilai suku bunga sepanjang tahun.
11.Menghitung Hasil Perkalian Semua Elemen (Prod)
prod() mengalikan semua elemen dalam array suku bunga.
12.Mencari Indeks Minimum dan Maksimum
argmin() dan argmax() mengembalikan indeks di mana nilai minimum dan maksimum ditemukan dalam array.
Program akan berjalan seperti ini:
Latihan Bab 4
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:
Kategori
Blogroll
- Masih Kosong