def teks_ke_angka(kalimat): # Kamus angka untuk memetakan kata ke angka angka = { "satu": 1, "dua": 2, "tiga": 3, "empat": 4, "lima": 5, "enam": 6, "tujuh": 7, "delapan": 8, "sembilan": 9, "sepuluh": 10, "sebelas": 11, } total = 0 temp = 0 # Tokenisasi kalimat menjadi daftar kata tokens = kalimat.split() for t in tokens: if t in angka: temp += angka[t] elif t == "belas": temp += 10 elif t == "puluh": temp *= 10 elif t == "ratus": if temp == 0: temp = 1 temp *= 100 elif t == "ribu": if temp == 0: temp = 1 total += temp * 1000 temp = 0 elif t == "juta": if temp == 0: temp = 1 total += temp * 1000000 temp = 0 elif t == "seratus": temp += 100 elif t == "seribu": total += 1000 elif t == "sejuta": total += 1000000 total += temp return total # BAGIAN UTAMA PROGRAM if __name__ == "__main__": kalimat = input("Masukkan kalimat angka: ").lower() hasil = teks_ke_angka(kalimat) print(f"hasil konversi: {hasil}")