Latihan Soal Bab 3 Buku Python: Bahasa Pemrograman Era Digital
Nama: Dahlia Hunawa
Nim: 411423004
Prodi/Kelas: Pendidikan Matematika/B
Mata Kuliah: Komputasi dan Pemrograman
Dosen Pengampu: Agusyarif Rezka Nuha, S.Pd. M.Pd
1. Apa yang Dimaksud dengan Counted Loop dan Uncounted Loop?
Counted loop adalah jenis perulangan yang sudah ditentukan sebelumnya berapa kali akan dieksekusi. Dengan kata lain, loop ini memiliki jumlah iterasi yang jelas, biasanya menggunakan variabel counter. Sebagai contoh, jika kita tahu bahwa kita ingin menjalankan sebuah perulangan sebanyak 10 kali, maka itu adalah counted loop. Loop semacam ini sering digunakan dalam perulangan for di berbagai bahasa pemrograman.
Contohnya:
Di sisi lain, uncounted loop adalah perulangan yang tidak memiliki jumlah iterasi pasti sejak awal. Loop ini akan terus berjalan hingga suatu kondisi tertentu terpenuhi, bukan berdasarkan jumlah iterasi yang sudah ditetapkan. Biasanya, jenis perulangan ini ditemukan dalam loop while, di mana kondisi loop terus diperiksa di setiap iterasi. Perulangan akan berhenti ketika kondisinya menjadi False.
2. Apa yang Dimaksud dengan Nested Loop?
Nested loop adalah perulangan yang terdapat di dalam perulangan lain. Dengan kata lain, sebuah loop berjalan di dalam loop yang lain. Ini sering digunakan saat kita ingin menjalankan perulangan bertingkat, misalnya untuk mengakses data yang berbentuk matriks atau tabel (dua dimensi). Nested loop memungkinkan kita untuk mengulangi tindakan tertentu di setiap iterasi dari loop luar. Misalkan, jika kita ingin mencetak matriks 3x3, kita bisa menggunakan dua loop yang saling bersarang (nested):
Dalam contoh ini, loop di dalam (inner loop) akan selesai sepenuhnya sebelum loop di luar (outer loop) pindah ke iterasi berikutnya.
3. Apa yang Dimaksud dengan Controlled Jump?
Controlled jump adalah mekanisme dalam program yang memungkinkan kita untuk melompat ke bagian lain dari kode tanpa mengikuti alur eksekusi linear. Biasanya, ini dilakukan menggunakan perintah seperti break, continue, atau bahkan return di beberapa bahasa pemrograman. Controlled jump memungkinkan kita untuk mempengaruhi jalannya loop atau fungsi, sering kali digunakan untuk mempercepat proses atau menghindari kode yang tidak diperlukan lagi.
- break: Berhenti dari loop sepenuhnya, tidak peduli apakah loop itu sudah mencapai kondisi akhirnya atau belum.
- continue: Melompati iterasi saat ini dan lanjut ke iterasi berikutnya tanpa menghentikan seluruh loop.
4. Apa yang Dimaksud dengan Perulangan Jenis Iteratif?
Perulangan iteratif adalah proses mengulang eksekusi sekelompok kode beberapa kali berdasarkan kondisi tertentu. Biasanya, perulangan ini digunakan untuk mengulangi instruksi yang sama sampai kondisi yang diberikan tidak lagi terpenuhi. Ada dua jenis perulangan iteratif yang paling umum:
- For Loop: Digunakan ketika kita tahu berapa kali loop harus dijalankan.
- While Loop: Digunakan ketika jumlah perulangan tidak diketahui sebelumnya, dan akan terus berjalan sampai kondisi yang ditentukan menjadi False.
5. Program untuk membuat tabel perkalian
Algoritma ini berfungsi untuk menampilkan tabel perkalian dari 1 hingga 10, dengan angka dari 0 sampai 10 menggunakan while loop. Algoritma ini dibagi menjadi dua bagian: bagian pertama untuk angka 1 hingga 5, dan bagian kedua untuk angka 6 hingga 10.
Bagaimana Algoritma Ini Bekerja?
1) Bagian Pertama
- Pada bagian pertama, loop luar (while j <= 10) digunakan untuk mengatur angka yang akan dikalikan, yaitu dari 0 hingga 10.
- Kemudian, ada loop dalam (while i <= 5) yang digunakan untuk mengatur angka 1 sampai 5, yang akan dikalikan dengan j.
- Setiap kali iterasi, hasil perkalian ditampilkan dengan format i * j = hasil, dan disusun dalam satu baris menggunakan end="\t".
- Setelah loop dalam selesai (setiap angka dari 1 sampai 5 sudah dikalikan dengan j), program menampilkan baris baru (print()), dan nilai j bertambah 1 untuk iterasi berikutnya.
2) Bagian Kedua
- Bagian kedua bekerja dengan cara yang sama, tetapi untuk angka 6 hingga 10.
- Loop luar (while j <= 10) tetap mengatur angka dari 0 sampai 10, namun kali ini loop dalam (while i <= 10) mengatur angka 6 sampai 10.
- Setelah semua kombinasi selesai, hasilnya adalah tabel perkalian lengkap.
Output
Program ini akan menghasilkan tabel perkalian yang terstruktur dengan baik seperti ini:
6. Program untuk konversi suhu
Program ini digunakan untuk melakukan konversi suhu dari derajat Celsius ke tiga satuan suhu lainnya, yaitu: Reamur, Kelvin, dan Fahrenheit. Program akan menampilkan tabel konversi dari batas bawah hingga batas atas suhu yang ditentukan oleh pengguna.
Cara kerja Program:
1) Fungsi konversi_suhu(celsius)
Fungsi ini digunakan untuk menghitung tiga jenis konversi suhu dari Celsius, yaitu ke Reamur, Kelvin, dan Fahrenheit.
- Reamur dihitung menggunakan rumus (4/5) * celsius, karena konversi dari Celsius ke Reamur berdasarkan skala ini.
- Kelvin dihitung dengan menambahkan 273 ke suhu Celsius (celsius + 273). Ini karena titik nol Kelvin adalah -273°C, jadi kita cukup menambahkannya untuk mendapatkan skala Kelvin.
- Fahrenheit menggunakan rumus (9/5) * celsius + 32. Rumus ini sudah umum digunakan dalam konversi suhu ke Fahrenheit.
Setelah ketiga nilai tersebut dihitung, fungsi ini mengembalikannya dalam bentuk tuple (tiga nilai sekaligus) yang nantinya akan ditampilkan dalam tabel.
2) Fungsi main()Fungsi main() adalah pusat dari program ini yang mengatur proses input, perhitungan, dan output. Berikut adalah langkah-langkahnya:
- Input batas bawah dan batas atas: Pengguna diminta untuk memasukkan suhu awal (batas bawah) dan suhu akhir (batas atas). Program kemudian akan mengkonversi semua suhu dalam rentang tersebut.
- Tampilan Header Tabel: Program menampilkan judul kolom (Celsius, Reamur, Kelvin, Fahrenheit) dengan format tabel agar lebih mudah dibaca.
- Perulangan (Loop): Setelah input batas bawah dan atas diberikan, program menjalankan perulangan for untuk setiap nilai Celsius dalam rentang yang diminta (mulai dari batas bawah hingga batas atas).
Di setiap iterasi perulangan, program:
- Memanggil fungsi konversi_suhu(celsius) untuk melakukan konversi.
- Menampilkan hasil konversi dalam format tabel. Hasil ditampilkan dengan format yang rapi untuk menjaga tata letak tabel tetap terlihat konsisten.
- Fungsi ini menggunakan range(batas_bawah, batas_atas + 1) untuk memastikan semua nilai dari batas bawah hingga batas atas dihitung.
- Format f"{celsius:>5}|{reamur:>5.1f}|{kelvin:>5}|{fahrenheit:>5.1f}" memastikan bahwa hasil konversi ditampilkan dengan presisi (terutama Reamur dan Fahrenheit yang memiliki satu angka desimal).
3) Bagian if __name__ == "__main__":
Baris ini memastikan bahwa program akan dijalankan hanya jika script ini dijalankan secara langsung (bukan diimpor sebagai modul dalam program lain).
Bagian ini memanggil fungsi main() untuk memulai program, mengambil input pengguna, melakukan perhitungan konversi, dan menampilkan hasilnya dalam bentuk tabel.
Output
Program ini akann menghasilkan konversi suhu dari Celcius ke tiga jenis satuan yaitu: Reamur, Kelvin, dan Fahrenheit dalam b entuk tabel.
7. Program Pola Segitiga
Program ini menggunakan struktur loop while, dengan perulangan diatur berdasarkan nilai i dan j.
Penjelasan Program:
1. Inisialisasi variabel:
- Variabel count diinisialisasi dengan nilai 1 untuk mulai mencetak angka dari 1.
- Variabel i diinisialisasi dengan nilai 1 sebagai kontrol untuk baris pertama.
2. Loop while pertama (mengontrol baris):
- while i <= n: Loop ini akan berjalan selama i masih kurang dari atau sama dengan n, di mana n adalah jumlah baris segitiga.
- Untuk setiap iterasi i, program akan mencetak i angka di baris tersebut.
3. Loop while kedua (mengontrol kolom):
- Di dalam setiap baris, while j <= i akan berjalan sebanyak i kali. Misalnya, untuk baris ke-3 (i = 3), akan ada 3 angka yang dicetak.
- Di dalam loop ini, setiap kali nilai count dicetak, count ditambah 1 sehingga setiap angka berikutnya dalam pola akan terus meningkat.
4. Mencetak angka:
- print(count, end=" ") akan mencetak nilai count diikuti oleh spasi tanpa pindah ke baris baru (karena end=" ").
- Setelah semua angka pada baris selesai dicetak, print() di luar loop kedua digunakan untuk pindah ke baris baru.
5. Increment variabel baris:
- Setelah satu baris selesai dicetak, i ditambah 1 (i += 1) untuk pindah ke baris berikutnya.
Output untuk n=4
8. Program Pola Segitiga Huruf
Program ini akan pola segitiga huruf.
Penjelasan Program:
1. Inisialisasi variabel:
- i diinisialisasi dengan nilai 1 untuk mengontrol baris pertama.
- char diinisialisasi dengan nilai 65, yaitu kode ASCII untuk huruf 'A'.
2. Loop while pertama (mengontrol baris):
- while i <= n: Loop ini akan berjalan sebanyak n kali untuk mencetak n baris pola segitiga.
- Untuk setiap baris i, huruf yang dicetak adalah sama dan bertambah dengan setiap baris baru.
3. Loop while kedua (mengontrol kolom):
- while j <= i: Loop ini akan mencetak i huruf yang sama di setiap baris (misalnya baris pertama 1 huruf, baris kedua 2 huruf, dan seterusnya).
4. Mencetak huruf:
- print(chr(char), end=" "): chr(char) mengonversi kode ASCII ke huruf, dan end=" " memastikan bahwa setiap huruf dipisahkan oleh spasi tanpa pindah ke baris baru.
5. Pindah ke huruf berikutnya:
- Setelah mencetak semua huruf di baris tersebut, char ditambah 1 (char += 1), sehingga huruf berikutnya akan dicetak pada baris selanjutnya.
6. Increment variabel baris:
- Setelah satu baris selesai dicetak, i ditambah 1 (i += 1) untuk pindah ke baris berikutnya.
Output:
Untuk n = 5
Kategori
- Masih Kosong
Blogroll
- Masih Kosong