LAB_07_NONSTEF
unknown
python
a year ago
1.9 kB
10
Indexable
keturunan = [] def cek_keturunan(ortu:str,anak:str,index:int = 0): if index >= len(keturunan): return 0 if ortu == anak: print("sesuai"); return 0 if keturunan[index][0] == ortu: cek_keturunan(keturunan[index][1],anak) cek_keturunan(ortu,anak,index+1) def cetak_keturunan(ortu:str,index:int = 0): if index >= len(keturunan): return if keturunan[index][0] == ortu: anak = keturunan[index][1] print(anak) cetak_keturunan(anak) cetak_keturunan(ortu,index+1) def jarak_generasi(ortu:str,anak:str,index:int = 0): if ortu == anak:print(ortu, anak);return if index >= len(keturunan): return if keturunan[index][0] == ortu: jarak_generasi(keturunan[index][1],anak) jarak_generasi(ortu,anak,index+1) def main(): print("masukan data relasi: ") while True: masukan = input().split() if masukan[0] == "SELESAI": break keturunan.append(masukan) print() print("======================================================================") print("Selamat Datang di Relation Finder! Pilihan yang tersedia:") print("1. CEK_KETURUNAN") print("2. CETAK_KETURUNAN") print("3. JARAK_GENERASI") print("4. EXIT") match int(input("Masukan pilihan: ")): case 1: print(cek_keturunan(input("Masukan nama parent: "),input("masukan nama child: "))) case 2: cetak_keturunan(input("Masukan nama parent: ")) case 3: print(jarak_generasi(input("Masukan nama parent: "),input("masukan nama child: "))) case 4: print("======================================================================") print("terima kasih telah menggunakan relation finder!") case _: print("input tidak valid") if __name__ == "__main__": main()
Editor is loading...