# Variabel global untuk menyimpan data # menggunakan list (daftar) dari dictionary data_mahasiswa = [] def tampilkan_data(): print("\n--- Daftar Data Tersimpan ---") if not data_mahasiswa: print("Belum ada data yang tersimpan.") else: # Menampilkan data sesuai format for i, data in enumerate(data_mahasiswa, start=1): print(f"{i}. {data['nama']}, {data['alamat']}") print("-----------------------------") def tambah_data(): # Fungsi untuk menu 1: Tambah data print("\n--- Menu 1: Tambah Data ---") nama = input("Masukkan data nama: ") alamat = input("Masukkan data alamat: ") # Simpan data ke dalam list data_mahasiswa.append({"nama": nama, "alamat": alamat}) print("\nData baru berhasil ditambahkan!") def ubah_data(): print("\n--- Menu 2: Ubah Data ---") tampilkan_data() if not data_mahasiswa: print("Data kosong, tidak ada yang bisa diubah.") return # Kembali ke menu utama try: # Meminta input nomor data yang akan diubah pilihan_str = input("Pilih data yang akan dirubah : ") pilihan = int(pilihan_str) # Konversi ke index list index = pilihan - 1 # Apakah nomor yang dipilih ada di dalam list? if 0 <= index < len(data_mahasiswa): # Langkah 2: Meminta input data baru print( f"Anda akan mengubah data ke-{pilihan}: {data_mahasiswa[index]['nama']}" ) nama_baru = input("Masukkan nama baru: ") alamat_baru = input("Masukkan alamat baru: ") # Proses perubahan data data_mahasiswa[index] = {"nama": nama_baru, "alamat": alamat_baru} print("\nData berhasil diubah!") else: print("Nomor data invalid.") except ValueError: print("Input Invalid. Masukkan Angka.") def hapus_data(): print("\n--- Menu 3: Hapus Data ---") tampilkan_data() if not data_mahasiswa: print("Data kosong, tidak ada yang bisa dihapus.") return # Kembali ke menu utama try: pilihan_str = input("Pilih data no data yang akan dihapus : ") pilihan = int(pilihan_str) # Mengkonversi indeks index = pilihan - 1 # Apakah nomor yang dipilih ada di dalam list? if 0 <= index < len(data_mahasiswa): # Menghaops data dari list data_yang_dihapus = data_mahasiswa.pop(index) print(f"\nData '{data_yang_dihapus['nama']}' berhasil dihapus.") else: print("Nomor data invalid.") except ValueError: print("Input Invalid. Masukkan Angka.") def jalankan_program(): while True: print("\nMenu") print("1. Tambah data") print("2. Ubah data") print("3. Hapus data") print("4. Tampil data") pilihan = input("Pilihlah no menu diatas: ") if pilihan == "1": tambah_data() elif pilihan == "2": ubah_data() elif pilihan == "3": hapus_data() elif pilihan == "4": tampilkan_data() input("\nTekan Enter untuk kembali ke menu...") else: print("Pilihan invalid. Pilih nomor 1-4.") jalankan_program()