Untitled

 avatar
dzaz
plain_text
6 days ago
1.5 kB
4
Indexable
import 'dart:io';

void main() {
  // Daftar menu makanan dan minuman
  final menu = {
    'Makanan': ['Nasi kuning', 'Soto', 'Sate Ayam'],
    'Minuman': ['Es Teh', 'Es Jeruk', 'Kopi']
  };

  // Fungsi untuk menampilkan menu
  void tampilkanMenu() {
    print('Daftar Menu:');
    menu.forEach((kategori, daftar) {
      print('\n$kategori:');
      for (var i = 0; i < daftar.length; i++) {
        print('${i + 1}. ${daftar[i]}');
      }
    });
  }

  // Fungsi untuk memilih pesanan
  Map<String, int> pilihPesanan() {
    final pesanan = <String, int>{};
    menu.forEach((kategori, daftar) {
      print('\nMasukkan nomor $kategori yang ingin dipesan (0 untuklewati):');
      for (var i = 0; i < daftar.length; i++) {
        stdout.write('${i + 1}. ');
        int jumlah = int.tryParse(stdin.readLineSync() ?? '0') ?? 0;
        if (jumlah > 0) {
          pesanan['${daftar[i]} ($kategori)'] = jumlah;
        }
      }
    });
    return pesanan;
  }

  // Fungsi untuk menampilkan detail pesanan
  void tampilkanDetailPesanan(Map<String, int> pesanan) {
    print('\nDetail Pesanan Anda:');
    if (pesanan.isEmpty) {
      print('Tidak ada pesanan.');
    } else {
      pesanan.forEach((item, jumlah) {
        print('- $item: $jumlah');
      });
    }
  }

  // Main program
  print('Selamat datang di Warung Makan Sederhana!');

  tampilkanMenu();

  final pesanan = pilihPesanan();

  tampilkanDetailPesanan(pesanan);

  print('\nTerima kasih atas kunjungannya!');
}
Leave a Comment