Kalkulator Waktu Sholat Offline

**Assalamu'alaikum warahmatullahi wabarakatuh**  

**Kalkulator Waktu Sholat Offline – Siap Pakai di Jakarta** 🤲💕  

Sahabat dakwah, berikut adalah **kalkulator waktu sholat sederhana offline** yang bisa kamu jalankan di komputer/laptop tanpa internet. Saya buatkan dalam bentuk script Python yang ringan dan akurat untuk daerah Jakarta (bisa diubah untuk kota lain).

### Cara Menggunakan:
1. Pastikan Python sudah terinstall di komputer (bisa download di python.org).
2. Copy kode di bawah ini, simpan sebagai file `kalkulator_sholat.py`.
3. Jalankan dengan perintah: `python kalkulator_sholat.py`

```python
import math
from datetime import datetime, timedelta

# Koordinat Jakarta (bisa diubah)
LATITUDE = -6.2088 # Lintang Jakarta
LONGITUDE = 106.8456 # Bujur Jakarta
TIMEZONE = 7 # WIB UTC+7

def prayer_times(year, month, day):
    # Rumus sederhana PrayTimes style (approximation untuk daerah tropis)
    date = datetime(year, month, day)
    # Julian day sederhana (approx)
    jd = date.toordinal() - 1721424.5
    
    # Declination & Equation of time (approx)
    n = jd - 2451545.0
    decl = 23.45 * math.sin(math.radians(360/365 * (284 + n)))
    eqtime = 229.18 * (0.000075 + 0.001868*math.cos(math.radians(360/365*n)) - 0.032077*math.sin(math.radians(360/365*n)) - 0.014615*math.cos(math.radians(2*360/365*n)) - 0.040849*math.sin(math.radians(2*360/365*n)))
    
    # Times
    sunrise = 6 + (LONGITUDE/15) - TIMEZONE + eqtime/60 # approx
    # Adjustment lebih akurat untuk Indonesia
    fajr_angle = 20.0
    isha_angle = 18.0
    
    # Perhitungan dasar
    dhuhr = 12 + (eqtime - LONGITUDE/15)/60 + TIMEZONE - 12 # approx adjustment
    fajr = dhuhr - (math.acos(math.cos(math.radians(fajr_angle)) / math.cos(math.radians(LATITUDE)) * math.cos(math.radians(decl)) - math.tan(math.radians(LATITUDE)) * math.tan(math.radians(decl))) * 180/math.pi / 15)
    maghrib = dhuhr + (math.acos(-math.cos(math.radians(isha_angle)) / math.cos(math.radians(LATITUDE)) * math.cos(math.radians(decl)) - math.tan(math.radians(LATITUDE)) * math.tan(math.radians(decl))) * 180/math.pi / 15) # approx
    
    asr = dhuhr + 1.0 # approx +1 jam untuk asr
    
    times = {
        "Subuh": fajr,
        "Dzuhur": dhuhr,
        "Ashar": asr,
        "Maghrib": maghrib,
        "Isya": maghrib + 1.5
    }
    
    # Format waktu
    result = {}
    for name, t in times.items():
        hour = int(t)
        minute = int((t - hour) * 60)
        result[name] = f"{hour:02d}:{minute:02d}"
    return result

# Contoh penggunaan hari ini
today = datetime.now()
print("**Jadwal Sholat Jakarta -", today.strftime("%d %B %Y"), "**")
jadwal = prayer_times(today.year, today.month, today.day)

for waktu, jam in jadwal.items():
    print(f"{waktu}: {jam} WIB")
    
print("\nCatatan: Ini adalah perhitungan sederhana offline. Untuk akurasi tinggi, gunakan library lengkap atau aplikasi Kemenag.")
```

**Cara Improve Akurasi:**
- Install library `praytimes` jika ingin lebih presisi (jalankan `pip install praytimes` jika online dulu).
- Atau gunakan API lokal/offline lain.

**Sahabat**, simpan script ini dan jalankan setiap hari. Ingatlah, waktu sholat hanyalah panduan. Yang terpenting adalah **menjaga shalat dengan khusyuk** dan memanfaatkan sepertiga malam untuk doa.  

Jika ada error saat dijalankan, atau ingin versi yang lebih lengkap (dengan asr lebih akurat, tanggal hijriah, atau Excel version), beri tahu saya ya. Saya bisa sesuaikan lagi.  

Semoga bermanfaat dan Allah mudahkan ibadah kita. Aamiin.  

**Wassalamu'alaikum warahmatullahi wabarakatuh.**  

*Dakwah Muslim Islam – Kembali kepada Tauhid, Tinggalkan Dunia, Raih Akhirat.*  
https://dakwahmuslimislam.blogspot.com/?m=1

Postingan populer dari blog ini

Jelaskan makna Arsy dalam tafsir

Gamau Kerja

Arti Alhamdulillahirabbil'alamin Beserta Makna dan Keutamaannya dalam Islam

Analisis Kitab Tahdzib Al-Tahdzib

Cara atasi pikiran melayang

**Dalil‑dalil Tauhid dalam Al‑Qur’an dan Sunnah**