{}
run-icon
main.py
# ===================================================== # APLIKASI PREDIKSI JADWAL MENSTRUASI # ===================================================== from datetime import datetime, timedelta print("=== APLIKASI PREDIKSI JADWAL MENSTRUASI ===\n") # Input data pengguna nama = input("Masukkan nama Anda: ").strip() usia = int(input("Masukkan usia Anda (tahun): ")) tgl_haid = input("Masukkan tanggal terakhir haid (format: DD/MM/YYYY): ") siklus = input("Masukkan lama siklus menstruasi (hari) [default 28]: ") # Validasi input siklus if siklus == "": siklus = 28 else: siklus = int(siklus) # Konversi tanggal tgl_haid_dt = datetime.strptime(tgl_haid, "%d/%m/%Y") # Perhitungan tanggal-tanggal penting haid_berikut = tgl_haid_dt + timedelta(days=siklus) masa_subur_mulai = tgl_haid_dt + timedelta(days=siklus - 12) masa_subur_selesai = tgl_haid_dt + timedelta(days=siklus - 8) ovulasi = tgl_haid_dt + timedelta(days=siklus - 11) pms = haid_berikut - timedelta(days=7) # Hasil prediksi print(f"\n=== HASIL PREDIKSI UNTUK {nama.upper()} ===") print(f"Usia: {usia} tahun") print(f"Panjang siklus: {siklus} hari") print(f"Tanggal terakhir haid: {tgl_haid_dt.strftime('%d %B %Y')}") print(f"Perkiraan haid berikutnya: {haid_berikut.strftime('%d %B %Y')}") print(f"Perkiraan masa subur: {masa_subur_mulai.strftime('%d %B %Y')} s.d {masa_subur_selesai.strftime('%d %B %Y')}") print(f"Tanggal ovulasi: {ovulasi.strftime('%d %B %Y')}") print(f"Perkiraan PMS: mulai {pms.strftime('%d %B %Y')}") print("\nTerima kasih telah menggunakan aplikasi prediksi jadwal menstruasi!")
Output