Soal 1

Buatlah sebuah file Python interaktif yang mengandung sebuah function untuk menentukan nilai FPB (Faktor Persekutuan Besar) & KPK (Kelipatan Persekutuan Kecil) dari 2 buah bilangan. Pembahasan seputar FPB & KPK pernah kita pelajari bersama di bangku Sekolah Dasar, masih ingat dong?

  • Case Flow: Saat dieksekusi, program akan meminta user memasukkan 2 buah angka secara bebas. Kemudian user akan mendapatkan nilai FPB dan KPK dari 2 buah angka yang dimasukkan.

  • Output yang diharapkan saat file diekseskusi via terminal:

    Ketik angka pertama     : 3
    Ketik angka kedua       : 2
    FPB dari 3 dan 2 adalah : 1
    KPK dari 3 dan 2 adalah : 6
  • Contoh screenshot:

soal1

Soal 2

Buatlah sebuah file Python yang mengandung sebuah return function untuk menentukan kategori bilangan sebuah angka. Misal: angka 13 tergolong bilangan bulat, cacah, asli, ganjil & prima. Berikut adalah definisi & pengkategorian bilangan menurut laman Wikipedia (klik di sini):

  • Bilangan Bulat: Bilangan yang terdiri atas bilangan cacah (0, 1, 2, 3, ...) beserta nilai negatifnya (0, -1, -2, -3, ...). Bilangan bulat dapat dituliskan tanpa komponen desimal atau pecahan.

  • Bilangan Cacah: Himpunan bilangan bulat yang tidak bernilai negatif, yaitu (0, 1, 2, 3 ...).

  • Bilangan Negatif: Himpunan bilangan bulat yang nilainya lebih kecil dari 0, yaitu (-1, -2, -3, ...)

  • Bilangan Nol: Yaitu 0

  • Bilangan Asli: Himpunan bilangan cacah positif yang bukan nol, yaitu (1, 2, 3, ...)

  • Bilangan Ganjil: Himpunan bilangan asli positif yang nilainya tidak habis dibagi 2, yaitu (1, 3, 5, 7, 9, ...)

  • Bilangan Genap: Himpunan bilangan asli positif yang nilainya habis dibagi 2, yaitu (2, 4, 6, 8, 10, ...). Bilangan nol (0) juga digolongkan sebagai bilangan genap.

  • Bilangan Prima: Himpunan bilangan asli yang nilainya lebih besar daripada 1, yang faktor pembaginya adalah 1 dan bilangan itu sendiri. 2 dan 3 adalah bilangan prima. 4 bukan bilangan prima karena dapat dibagi 2.

  • Bilangan Komposit: Himpunan bilangan asli yang nilainya lebih besar daripada 1, yang bukan merupakan bilangan prima.

    Soal2

  • Case Flow: Saat dieksekusi, program akan meminta user memasukkan angka secara bebas. Kemudian user akan mendapatkan kategori bilangan dari angka yang dimasukkan, dalam bentuk list.

  • Output yang diharapkan saat file diekseskusi via terminal:

    Ketik angka : 2
    ['bulat', 'cacah', 'asli', 'genap', 'prima']
    Ketik angka : 15
    ['bulat', 'cacah', 'asli', 'ganjil', 'komposit']
  • Contoh screenshot:

soal2

Soal 3

Buatlah sebuah file Python interaktif untuk menyajikan top 5 informasi/berita hari ini kepada user seputar teknologi, bisnis, olahraga, kesehatan dan sains di Indonesia. Gunakan News API (klik di sini), login & dapatkan API Key untuk menggunakan API tersebut. Untuk memanfaatkan API berita seputar teknologi, bisnis, olahraga, kesehatan dan sains di Indonesia, baca dokumentasi berikut:

  1. News API - Berita Indonesia - Teknologi
  2. News API - Berita Indonesia - Bisnis
  3. News API - Berita Indonesia - Olahraga
  4. News API - Berita Indonesia - Kesehatan
  5. News API - Berita Indonesia - Sains
  • Case Flow: Saat dieksekusi, program akan menawarkan 5 pilihan berita kepada user, yakni berita seputar teknologi, bisnis, olahraga, kesehatan dan sains di Indonesia. Usai user menentukan pilihan, program akan menyajikan top 5 judul berita hari ini di bidang yang user pilih. Cukup judul beritanya saja!

  • Note: Selesaikan hanya dengan memanfaatkan requests package! News API menyediakan package khusus untuk Python yang dapat Anda install melalui pip (selengkapnya klik sini):

    $ pip install newsapi-python

    Namun Anda tidak diperkenankan menggunakan package tersebut. Cukup dengan requests package saja.

  • Output yang diharapkan saat file diekseskusi via terminal:

      Selamat datang, mau tahu berita apa hari ini?
      [1] Berita seputar teknologi
      [2] Berita seputar bisnis
      [3] Berita seputar olahraga
      [4] Berita seputar kesehatan
      [5] Berita seputar science
      Ketik pilihan Anda [1/2/3/4/5] : 3
      Berikut adalah top 5 berita Indonesia bidang sports :
      1 - Coutinho Memble, Valverde Membela - Bola.net
      2 - Beda Mourinho dan Solskjaer Versi Winger MU - Bola - Liputan6.com
      3 - Lorenzo Anggap Marquez Sama dengan Rossi - Kompas.com - KOMPAS.com
      4 - Anders Antonsen, Juara Narsis yang Idolakan Taufik Hidayat - VIVA.co.id
      5 - Final Tragis, Ratu Bulutangkis Dunia Mendadak Terkapar di Senayan - VIVA - VIVA.co.id
  • Contoh screenshot:

soal3