import gradio as gr def add_until_single_digit(num1, num2): sum_digits = sum(map(int, str(num1) + str(num2))) if sum_digits < 10: return sum_digits else: while sum_digits >= 10: sum_digits = sum(map(int, str(num1) + str(num2))) num1, num2 = sum_digits, 0 return num1 def calculate_element(tarikh): result1 = add_until_single_digit(int(tarikh[0]), int(tarikh[1])) result2 = add_until_single_digit(int(tarikh[2]), int(tarikh[3])) result3 = add_until_single_digit(int(tarikh[4]), int(tarikh[5])) result4 = add_until_single_digit(int(tarikh[6]), int(tarikh[7])) result5 = add_until_single_digit(result1, result2) result6 = add_until_single_digit(result3, result4) result7 = add_until_single_digit(result5, result6) result = result7 % 5 if result == 1: return "Logam" elif result == 2: return "Air" elif result == 3: return "Api" elif result == 4: return "Kayu" else: return "Tanah" iface = gr.Interface( fn=calculate_element, inputs=gr.Textbox("Masukkan tarikh lahir (contoh 01011999):"), outputs=gr.Textbox(), live=True ) iface.launch()