├── raffneptune.jpg ├── README.md ├── gaji.cs ├── absensi.cs ├── kalkulator.cs ├── spbu.cs ├── rental.cs ├── tictactoe.cs ├── parkir.cs ├── bioskop.cs ├── tol.cs ├── perpustakaan.cs ├── kasir.cs ├── restoran.cs ├── supermarket.cs ├── barbershop.cs ├── barbersop.cs ├── kereta.cs ├── dealerkartu(blackjacksimplified).cs ├── dilerkendaraan.cs ├── kafe.cs ├── warnet.cs ├── timezonegame.cs └── index.html /raffneptune.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raffneptune/cs/HEAD/raffneptune.jpg -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |

c#

2 | tap link 3 | -------------------------------------------------------------------------------- /gaji.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | class Program 4 | { 5 | // Fungsi untuk menghitung gaji total 6 | static double HitungGaji(double gajiPokok, double tunjangan, double potongan) 7 | { 8 | return gajiPokok + tunjangan - potongan; 9 | } 10 | 11 | static void Main() 12 | { 13 | double gajiPokok, tunjangan, potongan, gajiTotal; 14 | 15 | // Menampilkan judul program 16 | Console.WriteLine("Program Perhitungan Gaji Karyawan"); 17 | 18 | // Input data 19 | Console.Write("Masukkan gaji pokok: Rp "); 20 | gajiPokok = Convert.ToDouble(Console.ReadLine()); 21 | 22 | Console.Write("Masukkan tunjangan: Rp "); 23 | tunjangan = Convert.ToDouble(Console.ReadLine()); 24 | 25 | Console.Write("Masukkan potongan: Rp "); 26 | potongan = Convert.ToDouble(Console.ReadLine()); 27 | 28 | // Menghitung gaji total 29 | gajiTotal = HitungGaji(gajiPokok, tunjangan, potongan); 30 | 31 | // Menampilkan hasil perhitungan 32 | Console.WriteLine("\nRingkasan Gaji:"); 33 | Console.WriteLine($"Gaji Pokok: Rp {gajiPokok}"); 34 | Console.WriteLine($"Tunjangan: Rp {tunjangan}"); 35 | Console.WriteLine($"Potongan: Rp {potongan}"); 36 | Console.WriteLine($"Gaji Total: Rp {gajiTotal}"); 37 | } 38 | } -------------------------------------------------------------------------------- /absensi.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | class Program 5 | { 6 | // Daftar nama siswa/pegawai 7 | static List daftarNama = new List { "Ali", "Budi", "Citra", "Dewi", "Eka" }; 8 | 9 | // Menyimpan status absensi 10 | static Dictionary absensi = new Dictionary(); 11 | 12 | // Fungsi untuk mencatat absensi 13 | static void CatatAbsensi() 14 | { 15 | Console.WriteLine("Daftar Nama:"); 16 | for (int i = 0; i < daftarNama.Count; i++) 17 | { 18 | Console.WriteLine($"{i + 1}. {daftarNama[i]}"); 19 | } 20 | 21 | foreach (var nama in daftarNama) 22 | { 23 | Console.Write($"Apakah {nama} hadir? (y/n): "); 24 | string status = Console.ReadLine().Trim().ToLower(); 25 | 26 | if (status == "y") 27 | { 28 | absensi[nama] = "Hadir"; 29 | } 30 | else if (status == "n") 31 | { 32 | absensi[nama] = "Tidak Hadir"; 33 | } 34 | else 35 | { 36 | absensi[nama] = "Status Tidak Valid"; 37 | } 38 | } 39 | 40 | Console.WriteLine("\nAbsensi Hari Ini:"); 41 | foreach (var entry in absensi) 42 | { 43 | Console.WriteLine($"{entry.Key}: {entry.Value}"); 44 | } 45 | } 46 | 47 | static void Main() 48 | { 49 | // Menjalankan fungsi untuk mencatat absensi 50 | CatatAbsensi(); 51 | } 52 | } -------------------------------------------------------------------------------- /kalkulator.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | class Program 4 | { 5 | // Fungsi untuk penjumlahan 6 | static double Tambah(double x, double y) 7 | { 8 | return x + y; 9 | } 10 | 11 | // Fungsi untuk pengurangan 12 | static double Kurang(double x, double y) 13 | { 14 | return x - y; 15 | } 16 | 17 | // Fungsi untuk perkalian 18 | static double Kali(double x, double y) 19 | { 20 | return x * y; 21 | } 22 | 23 | // Fungsi untuk pembagian 24 | static double Bagi(double x, double y) 25 | { 26 | if (y != 0) 27 | { 28 | return x / y; 29 | } 30 | else 31 | { 32 | Console.WriteLine("Tidak bisa membagi dengan nol"); 33 | return 0; // Mengembalikan nilai 0 jika pembagian dengan nol 34 | } 35 | } 36 | 37 | static void Main() 38 | { 39 | int pilihan; 40 | double num1, num2; 41 | 42 | // Menampilkan menu operasi 43 | Console.WriteLine("Pilih operasi:"); 44 | Console.WriteLine("1. Tambah"); 45 | Console.WriteLine("2. Kurang"); 46 | Console.WriteLine("3. Kali"); 47 | Console.WriteLine("4. Bagi"); 48 | 49 | // Meminta input pilihan operasi 50 | Console.Write("Masukkan pilihan (1/2/3/4): "); 51 | pilihan = int.Parse(Console.ReadLine()); 52 | 53 | // Meminta input angka 54 | Console.Write("Masukkan angka pertama: "); 55 | num1 = double.Parse(Console.ReadLine()); 56 | Console.Write("Masukkan angka kedua: "); 57 | num2 = double.Parse(Console.ReadLine()); 58 | 59 | // Melakukan operasi sesuai dengan pilihan pengguna 60 | switch (pilihan) 61 | { 62 | case 1: 63 | Console.WriteLine("{0} + {1} = {2:F2}", num1, num2, Tambah(num1, num2)); 64 | break; 65 | case 2: 66 | Console.WriteLine("{0} - {1} = {2:F2}", num1, num2, Kurang(num1, num2)); 67 | break; 68 | case 3: 69 | Console.WriteLine("{0} * {1} = {2:F2}", num1, num2, Kali(num1, num2)); 70 | break; 71 | case 4: 72 | double hasilBagi = Bagi(num1, num2); 73 | if (num2 != 0) // Mengecek apakah pembagian berhasil 74 | { 75 | Console.WriteLine("{0} / {1} = {2:F2}", num1, num2, hasilBagi); 76 | } 77 | break; 78 | default: 79 | Console.WriteLine("Pilihan tidak valid!"); 80 | break; 81 | } 82 | } 83 | } -------------------------------------------------------------------------------- /spbu.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | class Program 4 | { 5 | // Menampilkan menu pilihan bahan bakar 6 | static void DisplayMenu() 7 | { 8 | Console.WriteLine("Selamat datang di SPBU!"); 9 | Console.WriteLine("Pilih jenis bahan bakar:"); 10 | Console.WriteLine("1. Premium (Rp 10.000 per liter)"); 11 | Console.WriteLine("2. Pertalite (Rp 12.000 per liter)"); 12 | Console.WriteLine("3. Pertamax (Rp 15.000 per liter)"); 13 | } 14 | 15 | // Menghitung total harga berdasarkan jenis bahan bakar dan jumlah liter 16 | static double CalculateTotalPrice(int fuelType, double liters) 17 | { 18 | double pricePerLiter = 0; 19 | 20 | if (fuelType == 1) 21 | { 22 | pricePerLiter = 10000; // Harga Premium 23 | } 24 | else if (fuelType == 2) 25 | { 26 | pricePerLiter = 12000; // Harga Pertalite 27 | } 28 | else if (fuelType == 3) 29 | { 30 | pricePerLiter = 15000; // Harga Pertamax 31 | } 32 | 33 | return pricePerLiter * liters; 34 | } 35 | 36 | // Program utama 37 | static void Main() 38 | { 39 | int fuelType; 40 | double liters, totalPrice; 41 | 42 | // Menampilkan menu dan meminta input jenis bahan bakar 43 | DisplayMenu(); 44 | Console.Write("Masukkan pilihan (1/2/3): "); 45 | if (!int.TryParse(Console.ReadLine(), out fuelType) || (fuelType < 1 || fuelType > 3)) 46 | { 47 | Console.WriteLine("Pilihan tidak valid."); 48 | return; 49 | } 50 | 51 | // Meminta input jumlah liter 52 | Console.Write("Masukkan jumlah liter: "); 53 | if (!double.TryParse(Console.ReadLine(), out liters) || liters <= 0) 54 | { 55 | Console.WriteLine("Jumlah liter tidak valid."); 56 | return; 57 | } 58 | 59 | // Menghitung total harga 60 | totalPrice = CalculateTotalPrice(fuelType, liters); 61 | 62 | // Menampilkan struk pembayaran 63 | Console.WriteLine("\n--- STRUK PEMBAYARAN ---"); 64 | if (fuelType == 1) 65 | { 66 | Console.WriteLine("Bahan Bakar: Premium"); 67 | } 68 | else if (fuelType == 2) 69 | { 70 | Console.WriteLine("Bahan Bakar: Pertalite"); 71 | } 72 | else if (fuelType == 3) 73 | { 74 | Console.WriteLine("Bahan Bakar: Pertamax"); 75 | } 76 | Console.WriteLine($"Jumlah Liter: {liters} liter"); 77 | Console.WriteLine($"Total Pembayaran: Rp {totalPrice:N0}"); 78 | Console.WriteLine("-------------------------"); 79 | Console.WriteLine("Terima kasih telah menggunakan layanan kami!"); 80 | } 81 | } -------------------------------------------------------------------------------- /rental.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | class RentalItem 5 | { 6 | public string Name { get; set; } 7 | public int RatePerHour { get; set; } 8 | 9 | public RentalItem(string name, int ratePerHour) 10 | { 11 | Name = name; 12 | RatePerHour = ratePerHour; 13 | } 14 | 15 | public int CalculateCost(int hours) 16 | { 17 | return RatePerHour * hours; 18 | } 19 | } 20 | 21 | class RentalSystem 22 | { 23 | private List items; 24 | 25 | public RentalSystem() 26 | { 27 | items = new List 28 | { 29 | new RentalItem("Sepeda", 5000), 30 | new RentalItem("Skuter", 10000), 31 | new RentalItem("Mobil", 50000) 32 | }; 33 | } 34 | 35 | public void DisplayItems() 36 | { 37 | Console.WriteLine("Barang yang tersedia untuk disewa:"); 38 | for (int i = 0; i < items.Count; i++) 39 | { 40 | Console.WriteLine($"{i + 1}. {items[i].Name} - Rp{items[i].RatePerHour} per jam"); 41 | } 42 | } 43 | 44 | public void RentItem() 45 | { 46 | DisplayItems(); 47 | 48 | Console.Write("Pilih barang yang ingin disewa (1/2/3): "); 49 | int choice; 50 | if (!int.TryParse(Console.ReadLine(), out choice) || choice < 1 || choice > items.Count) 51 | { 52 | Console.WriteLine("Pilihan tidak valid!"); 53 | return; 54 | } 55 | 56 | Console.Write($"Berapa jam Anda ingin menyewa {items[choice - 1].Name}? "); 57 | int hours; 58 | if (!int.TryParse(Console.ReadLine(), out hours) || hours <= 0) 59 | { 60 | Console.WriteLine("Durasi tidak valid!"); 61 | return; 62 | } 63 | 64 | int totalCost = items[choice - 1].CalculateCost(hours); 65 | Console.WriteLine($"Total biaya untuk menyewa {items[choice - 1].Name} selama {hours} jam adalah: Rp{totalCost}"); 66 | } 67 | } 68 | 69 | class Program 70 | { 71 | static void Main(string[] args) 72 | { 73 | RentalSystem rentalSystem = new RentalSystem(); 74 | 75 | while (true) 76 | { 77 | Console.WriteLine("\nSelamat datang di sistem rental!"); 78 | Console.WriteLine("1. Sewa barang"); 79 | Console.WriteLine("2. Keluar"); 80 | Console.Write("Pilih menu: "); 81 | 82 | string choice = Console.ReadLine(); 83 | if (choice == "1") 84 | { 85 | rentalSystem.RentItem(); 86 | } 87 | else if (choice == "2") 88 | { 89 | Console.WriteLine("Terima kasih telah menggunakan sistem rental!"); 90 | break; 91 | } 92 | else 93 | { 94 | Console.WriteLine("Pilihan tidak valid, coba lagi."); 95 | } 96 | } 97 | } 98 | } -------------------------------------------------------------------------------- /tictactoe.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | class TicTacToe 4 | { 5 | // Fungsi untuk menampilkan papan permainan 6 | static void PrintBoard(char[] board) 7 | { 8 | Console.WriteLine("\n"); 9 | for (int i = 0; i < 3; i++) 10 | { 11 | Console.WriteLine($" {board[i * 3]} | {board[i * 3 + 1]} | {board[i * 3 + 2]} "); 12 | if (i < 2) Console.WriteLine("---|---|---"); 13 | } 14 | Console.WriteLine("\n"); 15 | } 16 | 17 | // Fungsi untuk mengecek apakah pemain menang 18 | static bool CheckWin(char[] board, char player) 19 | { 20 | int[,] winConditions = { 21 | {0, 1, 2}, {3, 4, 5}, {6, 7, 8}, // baris 22 | {0, 3, 6}, {1, 4, 7}, {2, 5, 8}, // kolom 23 | {0, 4, 8}, {2, 4, 6} // diagonal 24 | }; 25 | 26 | for (int i = 0; i < 8; i++) 27 | { 28 | if (board[winConditions[i, 0]] == player && 29 | board[winConditions[i, 1]] == player && 30 | board[winConditions[i, 2]] == player) 31 | { 32 | return true; 33 | } 34 | } 35 | return false; 36 | } 37 | 38 | // Fungsi untuk mengecek apakah papan penuh 39 | static bool IsBoardFull(char[] board) 40 | { 41 | foreach (var space in board) 42 | { 43 | if (space == ' ') return false; 44 | } 45 | return true; 46 | } 47 | 48 | // Fungsi utama permainan 49 | static void PlayGame() 50 | { 51 | char[] board = new char[9] { ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ' }; // papan Tic Tac Toe kosong 52 | char currentPlayer = 'X'; 53 | 54 | while (true) 55 | { 56 | PrintBoard(board); 57 | 58 | // Meminta pemain untuk memilih posisi 59 | int move; 60 | Console.Write($"Player {currentPlayer}, pilih posisi (1-9): "); 61 | if (!int.TryParse(Console.ReadLine(), out move) || move < 1 || move > 9 || board[move - 1] != ' ') 62 | { 63 | Console.WriteLine("Posisi tidak valid atau sudah terisi, coba lagi."); 64 | continue; 65 | } 66 | 67 | // Menandai posisi dengan simbol pemain saat ini 68 | board[move - 1] = currentPlayer; 69 | 70 | // Mengecek apakah pemain menang 71 | if (CheckWin(board, currentPlayer)) 72 | { 73 | PrintBoard(board); 74 | Console.WriteLine($"Selamat! Pemain {currentPlayer} menang!"); 75 | break; 76 | } 77 | 78 | // Mengecek apakah papan penuh (seri) 79 | if (IsBoardFull(board)) 80 | { 81 | PrintBoard(board); 82 | Console.WriteLine("Permainan berakhir dengan seri!"); 83 | break; 84 | } 85 | 86 | // Ganti giliran pemain 87 | currentPlayer = (currentPlayer == 'X') ? 'O' : 'X'; 88 | } 89 | } 90 | 91 | // Fungsi utama 92 | static void Main() 93 | { 94 | PlayGame(); 95 | } 96 | } -------------------------------------------------------------------------------- /parkir.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | class Parkir 5 | { 6 | private int kapasitas; 7 | private List kendaraanParkir; 8 | 9 | public Parkir(int kapasitas) 10 | { 11 | this.kapasitas = kapasitas; 12 | kendaraanParkir = new List(); 13 | } 14 | 15 | public void MasukkanKendaraan(string kendaraan) 16 | { 17 | if (kendaraanParkir.Count < kapasitas) 18 | { 19 | kendaraanParkir.Add(kendaraan); 20 | Console.WriteLine($"{kendaraan} berhasil masuk ke area parkir."); 21 | } 22 | else 23 | { 24 | Console.WriteLine("Parkir sudah penuh!"); 25 | } 26 | } 27 | 28 | public void KeluarkanKendaraan(string kendaraan) 29 | { 30 | if (kendaraanParkir.Contains(kendaraan)) 31 | { 32 | kendaraanParkir.Remove(kendaraan); 33 | Console.WriteLine($"{kendaraan} telah keluar dari area parkir."); 34 | } 35 | else 36 | { 37 | Console.WriteLine($"{kendaraan} tidak ditemukan di parkir."); 38 | } 39 | } 40 | 41 | public void StatusParkir() 42 | { 43 | if (kendaraanParkir.Count > 0) 44 | { 45 | Console.WriteLine("Kendaraan yang terparkir:"); 46 | foreach (var kendaraan in kendaraanParkir) 47 | { 48 | Console.WriteLine(kendaraan); 49 | } 50 | } 51 | else 52 | { 53 | Console.WriteLine("Area parkir kosong."); 54 | } 55 | } 56 | } 57 | 58 | class Program 59 | { 60 | static void Main() 61 | { 62 | Console.Write("Masukkan kapasitas parkir: "); 63 | int kapasitasParkir = int.Parse(Console.ReadLine()); 64 | 65 | Parkir parkir = new Parkir(kapasitasParkir); 66 | 67 | while (true) 68 | { 69 | Console.WriteLine("\nPilih menu:"); 70 | Console.WriteLine("1. Masukkan kendaraan"); 71 | Console.WriteLine("2. Keluarkan kendaraan"); 72 | Console.WriteLine("3. Lihat status parkir"); 73 | Console.WriteLine("4. Keluar"); 74 | 75 | Console.Write("Pilihan Anda: "); 76 | string pilihan = Console.ReadLine(); 77 | 78 | if (pilihan == "1") 79 | { 80 | Console.Write("Masukkan nama kendaraan yang ingin parkir: "); 81 | string kendaraan = Console.ReadLine(); 82 | parkir.MasukkanKendaraan(kendaraan); 83 | } 84 | else if (pilihan == "2") 85 | { 86 | Console.Write("Masukkan nama kendaraan yang ingin keluar: "); 87 | string kendaraan = Console.ReadLine(); 88 | parkir.KeluarkanKendaraan(kendaraan); 89 | } 90 | else if (pilihan == "3") 91 | { 92 | parkir.StatusParkir(); 93 | } 94 | else if (pilihan == "4") 95 | { 96 | Console.WriteLine("Terima kasih telah menggunakan sistem parkir!"); 97 | break; 98 | } 99 | else 100 | { 101 | Console.WriteLine("Pilihan tidak valid, coba lagi."); 102 | } 103 | } 104 | } 105 | } -------------------------------------------------------------------------------- /bioskop.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | class Program 4 | { 5 | // Menampilkan daftar film yang tersedia 6 | static void ShowFilms() 7 | { 8 | Console.WriteLine("Daftar Film yang Tersedia:"); 9 | Console.WriteLine("1. Film A - Harga: Rp 50000"); 10 | Console.WriteLine("2. Film B - Harga: Rp 60000"); 11 | Console.WriteLine("3. Film C - Harga: Rp 70000"); 12 | Console.WriteLine("4. Film D - Harga: Rp 55000"); 13 | } 14 | 15 | // Memilih film yang diinginkan oleh pengguna 16 | static int PilihFilm() 17 | { 18 | int pilihan; 19 | while (true) 20 | { 21 | Console.Write("\nPilih film (1-4): "); 22 | if (int.TryParse(Console.ReadLine(), out pilihan) && pilihan >= 1 && pilihan <= 4) 23 | { 24 | return pilihan; 25 | } 26 | else 27 | { 28 | Console.WriteLine("Pilihan tidak valid, coba lagi."); 29 | } 30 | } 31 | } 32 | 33 | // Proses membeli tiket 34 | static void BeliTiket() 35 | { 36 | int pilihan, jumlahTiket, totalHarga; 37 | 38 | while (true) 39 | { 40 | ShowFilms(); 41 | pilihan = PilihFilm(); 42 | 43 | // Menghitung harga berdasarkan film yang dipilih 44 | switch (pilihan) 45 | { 46 | case 1: 47 | totalHarga = 50000; 48 | break; 49 | case 2: 50 | totalHarga = 60000; 51 | break; 52 | case 3: 53 | totalHarga = 70000; 54 | break; 55 | case 4: 56 | totalHarga = 55000; 57 | break; 58 | default: 59 | totalHarga = 0; 60 | break; 61 | } 62 | 63 | // Input jumlah tiket 64 | Console.Write("Masukkan jumlah tiket yang ingin dibeli: "); 65 | while (!int.TryParse(Console.ReadLine(), out jumlahTiket) || jumlahTiket <= 0) 66 | { 67 | Console.Write("Jumlah tiket tidak valid, coba lagi: "); 68 | } 69 | 70 | totalHarga *= jumlahTiket; // Menghitung total harga 71 | 72 | // Menampilkan hasil pembelian 73 | Console.WriteLine($"\nTiket untuk film {GetFilmName(pilihan)} ({jumlahTiket} tiket) berhasil dipesan."); 74 | Console.WriteLine($"Total harga: Rp {totalHarga}"); 75 | 76 | // Tanya apakah ingin membeli tiket lagi 77 | Console.Write("\nApakah Anda ingin membeli tiket lagi? (y/t): "); 78 | char lagi = Char.ToLower(Console.ReadKey().KeyChar); 79 | Console.WriteLine(); 80 | 81 | if (lagi == 't') 82 | { 83 | Console.WriteLine("Terima kasih telah membeli tiket di bioskop kami!"); 84 | break; 85 | } 86 | } 87 | } 88 | 89 | // Mendapatkan nama film berdasarkan pilihan 90 | static string GetFilmName(int pilihan) 91 | { 92 | switch (pilihan) 93 | { 94 | case 1: return "Film A"; 95 | case 2: return "Film B"; 96 | case 3: return "Film C"; 97 | case 4: return "Film D"; 98 | default: return "Film Tidak Diketahui"; 99 | } 100 | } 101 | 102 | // Program utama 103 | static void Main() 104 | { 105 | BeliTiket(); 106 | } 107 | } -------------------------------------------------------------------------------- /tol.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | class Kendaraan 5 | { 6 | public string Nama { get; set; } 7 | public string Golongan { get; set; } 8 | 9 | public Kendaraan(string nama, string golongan) 10 | { 11 | Nama = nama; 12 | Golongan = golongan; 13 | } 14 | } 15 | 16 | class GerbangTol 17 | { 18 | private List antrian; 19 | 20 | public GerbangTol() 21 | { 22 | antrian = new List(); 23 | } 24 | 25 | // Menambah kendaraan ke antrian 26 | public void TambahAntrian(string nama, string golongan) 27 | { 28 | antrian.Add(new Kendaraan(nama, golongan)); 29 | Console.WriteLine($"{nama} ditambahkan ke antrian."); 30 | } 31 | 32 | // Memproses kendaraan pertama dalam antrian 33 | public void ProsesKendaraan() 34 | { 35 | if (antrian.Count > 0) 36 | { 37 | Console.WriteLine($"{antrian[0].Nama} sedang diproses."); 38 | antrian.RemoveAt(0); // Hapus kendaraan pertama 39 | } 40 | else 41 | { 42 | Console.WriteLine("Antrian kosong, tidak ada kendaraan yang diproses."); 43 | } 44 | } 45 | 46 | // Menampilkan antrian kendaraan 47 | public void TampilkanAntrian() 48 | { 49 | if (antrian.Count > 0) 50 | { 51 | Console.WriteLine("Antrian kendaraan saat ini:"); 52 | foreach (var kendaraan in antrian) 53 | { 54 | Console.WriteLine($"{kendaraan.Nama} - {kendaraan.Golongan}"); 55 | } 56 | } 57 | else 58 | { 59 | Console.WriteLine("Antrian kosong."); 60 | } 61 | } 62 | } 63 | 64 | class SistemTol 65 | { 66 | public int TarifGolongan1 { get; set; } 67 | public int TarifGolongan2 { get; set; } 68 | public int TarifGolongan3 { get; set; } 69 | 70 | public SistemTol() 71 | { 72 | TarifGolongan1 = 5000; 73 | TarifGolongan2 = 10000; 74 | TarifGolongan3 = 15000; 75 | } 76 | 77 | // Menghitung biaya tol berdasarkan golongan dan jarak 78 | public void HitungBiaya(string golongan, int jarak) 79 | { 80 | int tarif = 0; 81 | 82 | if (golongan == "golongan_1") 83 | { 84 | tarif = TarifGolongan1; 85 | } 86 | else if (golongan == "golongan_2") 87 | { 88 | tarif = TarifGolongan2; 89 | } 90 | else if (golongan == "golongan_3") 91 | { 92 | tarif = TarifGolongan3; 93 | } 94 | else 95 | { 96 | Console.WriteLine("Golongan kendaraan tidak valid!"); 97 | return; 98 | } 99 | 100 | int biaya = tarif * jarak; 101 | Console.WriteLine($"Biaya tol untuk {golongan} dengan jarak {jarak} km adalah: {biaya} IDR"); 102 | } 103 | } 104 | 105 | class Program 106 | { 107 | static void Main(string[] args) 108 | { 109 | GerbangTol gerbang = new GerbangTol(); 110 | SistemTol sistem = new SistemTol(); 111 | 112 | // Menambah kendaraan ke antrian 113 | gerbang.TambahAntrian("Mobil Kecil - Golongan 1", "golongan_1"); 114 | gerbang.TambahAntrian("Truk Kecil - Golongan 2", "golongan_2"); 115 | gerbang.TambahAntrian("Truk Besar - Golongan 3", "golongan_3"); 116 | 117 | // Menampilkan antrian kendaraan 118 | gerbang.TampilkanAntrian(); 119 | 120 | // Proses kendaraan pertama 121 | gerbang.ProsesKendaraan(); 122 | 123 | // Menghitung biaya tol untuk kendaraan pertama 124 | sistem.HitungBiaya("golongan_1", 10); // Misalnya jarak 10 km 125 | } 126 | } -------------------------------------------------------------------------------- /perpustakaan.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | class Buku 5 | { 6 | public string Judul { get; set; } 7 | public string Penulis { get; set; } 8 | public int TahunTerbit { get; set; } 9 | 10 | public Buku(string judul, string penulis, int tahunTerbit) 11 | { 12 | Judul = judul; 13 | Penulis = penulis; 14 | TahunTerbit = tahunTerbit; 15 | } 16 | 17 | public override string ToString() 18 | { 19 | return $"Judul: {Judul}, Penulis: {Penulis}, Tahun Terbit: {TahunTerbit}"; 20 | } 21 | } 22 | 23 | class Perpustakaan 24 | { 25 | private List daftarBuku = new List(); 26 | 27 | public void TambahBuku(Buku buku) 28 | { 29 | daftarBuku.Add(buku); 30 | Console.WriteLine($"Buku '{buku.Judul}' berhasil ditambahkan."); 31 | } 32 | 33 | public void HapusBuku(string judul) 34 | { 35 | Buku bukuUntukDihapus = daftarBuku.Find(buku => buku.Judul.Equals(judul, StringComparison.OrdinalIgnoreCase)); 36 | 37 | if (bukuUntukDihapus != null) 38 | { 39 | daftarBuku.Remove(bukuUntukDihapus); 40 | Console.WriteLine($"Buku '{judul}' berhasil dihapus."); 41 | } 42 | else 43 | { 44 | Console.WriteLine($"Buku '{judul}' tidak ditemukan."); 45 | } 46 | } 47 | 48 | public void TampilkanBuku() 49 | { 50 | if (daftarBuku.Count == 0) 51 | { 52 | Console.WriteLine("Tidak ada buku di perpustakaan."); 53 | } 54 | else 55 | { 56 | Console.WriteLine("Daftar Buku Perpustakaan:"); 57 | foreach (Buku buku in daftarBuku) 58 | { 59 | Console.WriteLine(buku); 60 | } 61 | } 62 | } 63 | } 64 | 65 | class Program 66 | { 67 | static void Main(string[] args) 68 | { 69 | Perpustakaan perpustakaan = new Perpustakaan(); 70 | 71 | while (true) 72 | { 73 | Console.WriteLine("\nMenu Perpustakaan:"); 74 | Console.WriteLine("1. Tambah Buku"); 75 | Console.WriteLine("2. Hapus Buku"); 76 | Console.WriteLine("3. Tampilkan Daftar Buku"); 77 | Console.WriteLine("4. Keluar"); 78 | 79 | Console.Write("Pilih menu (1/2/3/4): "); 80 | string pilihan = Console.ReadLine(); 81 | 82 | switch (pilihan) 83 | { 84 | case "1": 85 | Console.Write("Masukkan judul buku: "); 86 | string judulTambah = Console.ReadLine(); 87 | 88 | Console.Write("Masukkan penulis buku: "); 89 | string penulisTambah = Console.ReadLine(); 90 | 91 | Console.Write("Masukkan tahun terbit buku: "); 92 | int tahunTerbitTambah = int.Parse(Console.ReadLine()); 93 | 94 | Buku bukuBaru = new Buku(judulTambah, penulisTambah, tahunTerbitTambah); 95 | perpustakaan.TambahBuku(bukuBaru); 96 | break; 97 | 98 | case "2": 99 | Console.Write("Masukkan judul buku yang akan dihapus: "); 100 | string judulHapus = Console.ReadLine(); 101 | perpustakaan.HapusBuku(judulHapus); 102 | break; 103 | 104 | case "3": 105 | perpustakaan.TampilkanBuku(); 106 | break; 107 | 108 | case "4": 109 | Console.WriteLine("Terima kasih! Keluar dari program."); 110 | return; 111 | 112 | default: 113 | Console.WriteLine("Pilihan tidak valid, coba lagi."); 114 | break; 115 | } 116 | } 117 | } 118 | } -------------------------------------------------------------------------------- /kasir.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | public class Barang 5 | { 6 | public string Nama { get; set; } 7 | public double Harga { get; set; } 8 | public int Jumlah { get; set; } 9 | public double Total { get; set; } 10 | } 11 | 12 | class Program 13 | { 14 | static void Main() 15 | { 16 | List daftarBarang = new List(); 17 | double totalHarga = 0; 18 | int pilihan; 19 | string namaBarang; 20 | double harga; 21 | int jumlah; 22 | double uangDibayar; 23 | 24 | while (true) 25 | { 26 | Console.WriteLine("\nMenu Kasir"); 27 | Console.WriteLine("1. Tambah barang"); 28 | Console.WriteLine("2. Tampilkan rincian belanja"); 29 | Console.WriteLine("3. Bayar"); 30 | Console.WriteLine("4. Keluar"); 31 | Console.Write("Pilih menu (1/2/3/4): "); 32 | pilihan = Convert.ToInt32(Console.ReadLine()); 33 | 34 | if (pilihan == 1) 35 | { 36 | Console.Write("Masukkan nama barang: "); 37 | namaBarang = Console.ReadLine(); 38 | 39 | Console.Write("Masukkan harga barang: "); 40 | harga = Convert.ToDouble(Console.ReadLine()); 41 | 42 | Console.Write("Masukkan jumlah barang: "); 43 | jumlah = Convert.ToInt32(Console.ReadLine()); 44 | 45 | // Tambah barang 46 | Barang barang = new Barang 47 | { 48 | Nama = namaBarang, 49 | Harga = harga, 50 | Jumlah = jumlah, 51 | Total = harga * jumlah 52 | }; 53 | 54 | daftarBarang.Add(barang); 55 | totalHarga += barang.Total; 56 | 57 | Console.WriteLine($"{namaBarang} x{jumlah} ditambahkan ke daftar belanja."); 58 | } 59 | else if (pilihan == 2) 60 | { 61 | // Tampilkan rincian belanja 62 | Console.WriteLine("\n--- Rincian Belanja ---"); 63 | foreach (var barang in daftarBarang) 64 | { 65 | Console.WriteLine($"{barang.Nama} - Harga: {barang.Harga:F2} - Jumlah: {barang.Jumlah} - Total: {barang.Total:F2}"); 66 | } 67 | Console.WriteLine($"\nTotal Belanja: {totalHarga:F2}"); 68 | } 69 | else if (pilihan == 3) 70 | { 71 | // Tampilkan rincian belanja dan proses pembayaran 72 | Console.WriteLine("\n--- Rincian Belanja ---"); 73 | foreach (var barang in daftarBarang) 74 | { 75 | Console.WriteLine($"{barang.Nama} - Harga: {barang.Harga:F2} - Jumlah: {barang.Jumlah} - Total: {barang.Total:F2}"); 76 | } 77 | Console.WriteLine($"\nTotal Belanja: {totalHarga:F2}"); 78 | 79 | Console.Write("Masukkan uang yang dibayar: "); 80 | uangDibayar = Convert.ToDouble(Console.ReadLine()); 81 | 82 | if (uangDibayar >= totalHarga) 83 | { 84 | double kembalian = uangDibayar - totalHarga; 85 | Console.WriteLine($"\nTotal yang harus dibayar: {totalHarga:F2}"); 86 | Console.WriteLine($"Uang yang dibayar: {uangDibayar:F2}"); 87 | Console.WriteLine($"Kembalian: {kembalian:F2}"); 88 | } 89 | else 90 | { 91 | Console.WriteLine("\nUang yang dibayar kurang dari total belanja. Transaksi dibatalkan."); 92 | } 93 | } 94 | else if (pilihan == 4) 95 | { 96 | Console.WriteLine("Terima kasih, sampai jumpa!"); 97 | break; 98 | } 99 | else 100 | { 101 | Console.WriteLine("Pilihan tidak valid, coba lagi."); 102 | } 103 | } 104 | } 105 | } -------------------------------------------------------------------------------- /restoran.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | class Menu 5 | { 6 | public string Nama { get; set; } 7 | public int Harga { get; set; } 8 | 9 | public Menu(string nama, int harga) 10 | { 11 | Nama = nama; 12 | Harga = harga; 13 | } 14 | } 15 | 16 | class Restoran 17 | { 18 | private List menu; 19 | private List> pesanan; 20 | 21 | public Restoran() 22 | { 23 | menu = new List 24 | { 25 | new Menu("Nasi Goreng", 25000), 26 | new Menu("Mie Goreng", 20000), 27 | new Menu("Sate Ayam", 30000), 28 | new Menu("Ayam Penyet", 35000), 29 | new Menu("Es Teh", 5000), 30 | new Menu("Es Jeruk", 7000) 31 | }; 32 | pesanan = new List>(); 33 | } 34 | 35 | public void TampilkanMenu() 36 | { 37 | Console.WriteLine("\nMenu Restoran:"); 38 | for (int i = 0; i < menu.Count; i++) 39 | { 40 | Console.WriteLine($"{i + 1}. {menu[i].Nama} - Rp{menu[i].Harga}"); 41 | } 42 | } 43 | 44 | public void TambahPesanan() 45 | { 46 | TampilkanMenu(); 47 | Console.Write("\nPilih nomor menu untuk dipesan (0 untuk selesai): "); 48 | int pilihan = int.Parse(Console.ReadLine()); 49 | 50 | if (pilihan == 0) return; 51 | 52 | if (pilihan > 0 && pilihan <= menu.Count) 53 | { 54 | Console.Write($"Berapa banyak {menu[pilihan - 1].Nama} yang ingin dipesan? "); 55 | int jumlah = int.Parse(Console.ReadLine()); 56 | pesanan.Add(new Tuple(menu[pilihan - 1], jumlah)); 57 | Console.WriteLine($"{jumlah} {menu[pilihan - 1].Nama} ditambahkan ke pesanan."); 58 | } 59 | else 60 | { 61 | Console.WriteLine("Nomor menu tidak valid!"); 62 | } 63 | } 64 | 65 | public int HitungTotal() 66 | { 67 | int total = 0; 68 | foreach (var p in pesanan) 69 | { 70 | total += p.Item1.Harga * p.Item2; 71 | } 72 | return total; 73 | } 74 | 75 | public void TampilkanPesanan() 76 | { 77 | if (pesanan.Count == 0) 78 | { 79 | Console.WriteLine("\nBelum ada pesanan."); 80 | } 81 | else 82 | { 83 | Console.WriteLine("\nPesanan Anda:"); 84 | foreach (var p in pesanan) 85 | { 86 | Console.WriteLine($"{p.Item1.Nama} x {p.Item2} - Rp{p.Item1.Harga * p.Item2}"); 87 | } 88 | Console.WriteLine($"Total Harga: Rp{HitungTotal()}"); 89 | } 90 | } 91 | } 92 | 93 | class Program 94 | { 95 | static void Main() 96 | { 97 | Restoran restoran = new Restoran(); 98 | int pilihan; 99 | 100 | while (true) 101 | { 102 | Console.WriteLine("\n-- Menu Utama --"); 103 | Console.WriteLine("1. Lihat Menu"); 104 | Console.WriteLine("2. Tambah Pesanan"); 105 | Console.WriteLine("3. Tampilkan Pesanan"); 106 | Console.WriteLine("4. Hitung Total"); 107 | Console.WriteLine("5. Keluar"); 108 | 109 | Console.Write("Pilih opsi (1-5): "); 110 | pilihan = int.Parse(Console.ReadLine()); 111 | 112 | switch (pilihan) 113 | { 114 | case 1: 115 | restoran.TampilkanMenu(); 116 | break; 117 | case 2: 118 | restoran.TambahPesanan(); 119 | break; 120 | case 3: 121 | restoran.TampilkanPesanan(); 122 | break; 123 | case 4: 124 | Console.WriteLine($"Total Harga: Rp{restoran.HitungTotal()}"); 125 | break; 126 | case 5: 127 | Console.WriteLine("Terima kasih telah berkunjung!"); 128 | return; 129 | default: 130 | Console.WriteLine("Opsi tidak valid!"); 131 | break; 132 | } 133 | } 134 | } 135 | } -------------------------------------------------------------------------------- /supermarket.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | class Program 5 | { 6 | // Daftar produk dan harga 7 | struct Produk 8 | { 9 | public string Nama; 10 | public int Harga; 11 | 12 | public Produk(string nama, int harga) 13 | { 14 | Nama = nama; 15 | Harga = harga; 16 | } 17 | } 18 | 19 | // Daftar produk yang tersedia 20 | static Produk[] produk = new Produk[] 21 | { 22 | new Produk("Apel", 10000), 23 | new Produk("Pisang", 8000), 24 | new Produk("Jeruk", 12000), 25 | new Produk("Mangga", 15000), 26 | new Produk("Semangka", 20000) 27 | }; 28 | 29 | static int totalProduk = produk.Length; 30 | 31 | // Fungsi untuk menampilkan daftar produk 32 | static void TampilkanProduk() 33 | { 34 | Console.WriteLine("\nDaftar Produk Supermarket:"); 35 | for (int i = 0; i < totalProduk; i++) 36 | { 37 | Console.WriteLine($"{produk[i].Nama}: Rp {produk[i].Harga}"); 38 | } 39 | } 40 | 41 | // Fungsi untuk menambah barang ke keranjang 42 | static void TambahKeKeranjang(ref List keranjang, ref List jumlah, string produkNama, int produkJumlah) 43 | { 44 | int index = keranjang.IndexOf(produkNama); 45 | if (index >= 0) 46 | { 47 | jumlah[index] += produkJumlah; 48 | } 49 | else 50 | { 51 | keranjang.Add(produkNama); 52 | jumlah.Add(produkJumlah); 53 | } 54 | } 55 | 56 | // Fungsi untuk menghitung total belanjaan 57 | static int HitungTotal(List keranjang, List jumlah) 58 | { 59 | int total = 0; 60 | for (int i = 0; i < keranjang.Count; i++) 61 | { 62 | for (int j = 0; j < totalProduk; j++) 63 | { 64 | if (produk[j].Nama == keranjang[i]) 65 | { 66 | total += produk[j].Harga * jumlah[i]; 67 | break; 68 | } 69 | } 70 | } 71 | return total; 72 | } 73 | 74 | static void Main() 75 | { 76 | List keranjang = new List(); 77 | List jumlah = new List(); 78 | string pilihan; 79 | 80 | while (true) 81 | { 82 | TampilkanProduk(); 83 | Console.Write("\nMasukkan nama produk yang ingin dibeli (atau ketik 'selesai' untuk keluar): "); 84 | pilihan = Console.ReadLine(); 85 | 86 | if (pilihan.ToLower() == "selesai") 87 | { 88 | break; 89 | } 90 | 91 | bool ditemukan = false; 92 | for (int i = 0; i < totalProduk; i++) 93 | { 94 | if (produk[i].Nama.Equals(pilihan, StringComparison.OrdinalIgnoreCase)) 95 | { 96 | ditemukan = true; 97 | Console.Write($"Berapa banyak {pilihan} yang ingin Anda beli? "); 98 | int jumlahBarang = int.Parse(Console.ReadLine()); 99 | TambahKeKeranjang(ref keranjang, ref jumlah, produk[i].Nama, jumlahBarang); 100 | break; 101 | } 102 | } 103 | 104 | if (!ditemukan) 105 | { 106 | Console.WriteLine("Produk tidak tersedia. Silakan pilih produk yang ada."); 107 | } 108 | } 109 | 110 | // Menampilkan keranjang belanja 111 | Console.WriteLine("\nKeranjang Belanja Anda:"); 112 | int total = 0; 113 | for (int i = 0; i < keranjang.Count; i++) 114 | { 115 | for (int j = 0; j < totalProduk; j++) 116 | { 117 | if (produk[j].Nama == keranjang[i]) 118 | { 119 | int subtotal = produk[j].Harga * jumlah[i]; 120 | Console.WriteLine($"{keranjang[i]}: {jumlah[i]} x Rp {produk[j].Harga} = Rp {subtotal}"); 121 | total += subtotal; 122 | break; 123 | } 124 | } 125 | } 126 | 127 | Console.WriteLine($"\nTotal Belanja: Rp {total}"); 128 | } 129 | } -------------------------------------------------------------------------------- /barbershop.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | class Barbershop 5 | { 6 | private List antrian; // List untuk menyimpan nama pelanggan 7 | private bool buka; // Status barbershop 8 | 9 | public Barbershop() 10 | { 11 | antrian = new List(); 12 | buka = true; 13 | } 14 | 15 | // Fungsi untuk membuka Barbershop 16 | public void BukaBarbershop() 17 | { 18 | Console.WriteLine("Barbershop sedang buka, silakan masuk!"); 19 | } 20 | 21 | // Fungsi untuk menutup Barbershop 22 | public void TutupBarbershop() 23 | { 24 | buka = false; 25 | Console.WriteLine("Barbershop sudah tutup. Terima kasih sudah datang!"); 26 | } 27 | 28 | // Fungsi untuk menambah pelanggan ke dalam antrian 29 | public void TambahPelanggan(string nama) 30 | { 31 | if (buka) 32 | { 33 | if (antrian.Count < 10) // Maksimal antrian 10 pelanggan 34 | { 35 | antrian.Add(nama); 36 | Console.WriteLine($"{nama} telah masuk ke antrian."); 37 | } 38 | else 39 | { 40 | Console.WriteLine("Antrian sudah penuh!"); 41 | } 42 | } 43 | else 44 | { 45 | Console.WriteLine("Barbershop sudah tutup. Anda tidak bisa mendaftar."); 46 | } 47 | } 48 | 49 | // Fungsi untuk memproses pelanggan 50 | public void ProsesPelanggan() 51 | { 52 | if (antrian.Count > 0) 53 | { 54 | string pelanggan = antrian[0]; 55 | Console.WriteLine($"Sedang melayani {pelanggan}..."); 56 | System.Threading.Thread.Sleep(2000); // Simulasi waktu pemotongan rambut 57 | Console.WriteLine($"{pelanggan} telah selesai dilayani."); 58 | 59 | // Menghapus pelanggan dari antrian 60 | antrian.RemoveAt(0); 61 | } 62 | else 63 | { 64 | Console.WriteLine("Tidak ada pelanggan di antrian."); 65 | } 66 | } 67 | 68 | // Fungsi untuk menampilkan antrian 69 | public void TampilkanAntrian() 70 | { 71 | if (antrian.Count > 0) 72 | { 73 | Console.WriteLine("Antrian pelanggan:"); 74 | for (int i = 0; i < antrian.Count; i++) 75 | { 76 | Console.WriteLine($"{i + 1}. {antrian[i]}"); 77 | } 78 | } 79 | else 80 | { 81 | Console.WriteLine("Tidak ada pelanggan di antrian."); 82 | } 83 | } 84 | } 85 | 86 | class Program 87 | { 88 | static void Main() 89 | { 90 | Barbershop barbershop = new Barbershop(); 91 | barbershop.BukaBarbershop(); 92 | 93 | while (true) 94 | { 95 | Console.WriteLine("\n--- Menu ---"); 96 | Console.WriteLine("1. Tambah Pelanggan"); 97 | Console.WriteLine("2. Proses Pelanggan"); 98 | Console.WriteLine("3. Lihat Antrian"); 99 | Console.WriteLine("4. Tutup Barbershop"); 100 | Console.WriteLine("5. Keluar"); 101 | 102 | Console.Write("Pilih menu (1-5): "); 103 | int pilihan = int.Parse(Console.ReadLine()); 104 | 105 | if (pilihan == 1) 106 | { 107 | Console.Write("Masukkan nama pelanggan: "); 108 | string nama = Console.ReadLine(); 109 | barbershop.TambahPelanggan(nama); 110 | } 111 | else if (pilihan == 2) 112 | { 113 | barbershop.ProsesPelanggan(); 114 | } 115 | else if (pilihan == 3) 116 | { 117 | barbershop.TampilkanAntrian(); 118 | } 119 | else if (pilihan == 4) 120 | { 121 | barbershop.TutupBarbershop(); 122 | break; 123 | } 124 | else if (pilihan == 5) 125 | { 126 | Console.WriteLine("Terima kasih telah menggunakan program ini!"); 127 | break; 128 | } 129 | else 130 | { 131 | Console.WriteLine("Pilihan tidak valid, coba lagi."); 132 | } 133 | } 134 | } 135 | } -------------------------------------------------------------------------------- /barbersop.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | class Barbershop 5 | { 6 | private List antrian; // List untuk menyimpan nama pelanggan 7 | private bool buka; // Status barbershop 8 | 9 | public Barbershop() 10 | { 11 | antrian = new List(); 12 | buka = true; 13 | } 14 | 15 | // Fungsi untuk membuka Barbershop 16 | public void BukaBarbershop() 17 | { 18 | Console.WriteLine("Barbershop sedang buka, silakan masuk!"); 19 | } 20 | 21 | // Fungsi untuk menutup Barbershop 22 | public void TutupBarbershop() 23 | { 24 | buka = false; 25 | Console.WriteLine("Barbershop sudah tutup. Terima kasih sudah datang!"); 26 | } 27 | 28 | // Fungsi untuk menambah pelanggan ke dalam antrian 29 | public void TambahPelanggan(string nama) 30 | { 31 | if (buka) 32 | { 33 | if (antrian.Count < 10) // Maksimal antrian 10 pelanggan 34 | { 35 | antrian.Add(nama); 36 | Console.WriteLine($"{nama} telah masuk ke antrian."); 37 | } 38 | else 39 | { 40 | Console.WriteLine("Antrian sudah penuh!"); 41 | } 42 | } 43 | else 44 | { 45 | Console.WriteLine("Barbershop sudah tutup. Anda tidak bisa mendaftar."); 46 | } 47 | } 48 | 49 | // Fungsi untuk memproses pelanggan 50 | public void ProsesPelanggan() 51 | { 52 | if (antrian.Count > 0) 53 | { 54 | string pelanggan = antrian[0]; 55 | Console.WriteLine($"Sedang melayani {pelanggan}..."); 56 | System.Threading.Thread.Sleep(2000); // Simulasi waktu pemotongan rambut 57 | Console.WriteLine($"{pelanggan} telah selesai dilayani."); 58 | 59 | // Menghapus pelanggan dari antrian 60 | antrian.RemoveAt(0); 61 | } 62 | else 63 | { 64 | Console.WriteLine("Tidak ada pelanggan di antrian."); 65 | } 66 | } 67 | 68 | // Fungsi untuk menampilkan antrian 69 | public void TampilkanAntrian() 70 | { 71 | if (antrian.Count > 0) 72 | { 73 | Console.WriteLine("Antrian pelanggan:"); 74 | for (int i = 0; i < antrian.Count; i++) 75 | { 76 | Console.WriteLine($"{i + 1}. {antrian[i]}"); 77 | } 78 | } 79 | else 80 | { 81 | Console.WriteLine("Tidak ada pelanggan di antrian."); 82 | } 83 | } 84 | } 85 | 86 | class Program 87 | { 88 | static void Main() 89 | { 90 | Barbershop barbershop = new Barbershop(); 91 | barbershop.BukaBarbershop(); 92 | 93 | while (true) 94 | { 95 | Console.WriteLine("\n--- Menu ---"); 96 | Console.WriteLine("1. Tambah Pelanggan"); 97 | Console.WriteLine("2. Proses Pelanggan"); 98 | Console.WriteLine("3. Lihat Antrian"); 99 | Console.WriteLine("4. Tutup Barbershop"); 100 | Console.WriteLine("5. Keluar"); 101 | 102 | Console.Write("Pilih menu (1-5): "); 103 | int pilihan = int.Parse(Console.ReadLine()); 104 | 105 | if (pilihan == 1) 106 | { 107 | Console.Write("Masukkan nama pelanggan: "); 108 | string nama = Console.ReadLine(); 109 | barbershop.TambahPelanggan(nama); 110 | } 111 | else if (pilihan == 2) 112 | { 113 | barbershop.ProsesPelanggan(); 114 | } 115 | else if (pilihan == 3) 116 | { 117 | barbershop.TampilkanAntrian(); 118 | } 119 | else if (pilihan == 4) 120 | { 121 | barbershop.TutupBarbershop(); 122 | break; 123 | } 124 | else if (pilihan == 5) 125 | { 126 | Console.WriteLine("Terima kasih telah menggunakan program ini!"); 127 | break; 128 | } 129 | else 130 | { 131 | Console.WriteLine("Pilihan tidak valid, coba lagi."); 132 | } 133 | } 134 | } 135 | } -------------------------------------------------------------------------------- /kereta.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | class Kereta 5 | { 6 | public string NamaKereta { get; set; } 7 | public string Tujuan { get; set; } 8 | public string WaktuBerangkat { get; set; } 9 | public int Kapasitas { get; set; } 10 | public int Terisi { get; set; } 11 | 12 | public Kereta(string namaKereta, string tujuan, string waktuBerangkat, int kapasitas) 13 | { 14 | NamaKereta = namaKereta; 15 | Tujuan = tujuan; 16 | WaktuBerangkat = waktuBerangkat; 17 | Kapasitas = kapasitas; 18 | Terisi = 0; 19 | } 20 | 21 | public void TampilkanInfo() 22 | { 23 | Console.WriteLine($"Nama Kereta: {NamaKereta}"); 24 | Console.WriteLine($"Tujuan: {Tujuan}"); 25 | Console.WriteLine($"Waktu Berangkat: {WaktuBerangkat}"); 26 | Console.WriteLine($"Kapasitas: {Kapasitas}"); 27 | Console.WriteLine($"Terisi: {Terisi}/{Kapasitas}"); 28 | Console.WriteLine(); 29 | } 30 | 31 | public void PesanTiket(int jumlahTiket) 32 | { 33 | if (Terisi + jumlahTiket <= Kapasitas) 34 | { 35 | Terisi += jumlahTiket; 36 | Console.WriteLine($"Berhasil memesan {jumlahTiket} tiket untuk {NamaKereta}."); 37 | } 38 | else 39 | { 40 | Console.WriteLine($"Maaf, hanya tersisa {Kapasitas - Terisi} tiket untuk {NamaKereta}."); 41 | } 42 | } 43 | } 44 | 45 | class SistemKereta 46 | { 47 | private List keretaList; 48 | 49 | public SistemKereta() 50 | { 51 | keretaList = new List(); 52 | } 53 | 54 | public void TambahKereta(Kereta kereta) 55 | { 56 | keretaList.Add(kereta); 57 | } 58 | 59 | public void TampilkanJadwal() 60 | { 61 | Console.WriteLine("Jadwal Kereta:"); 62 | foreach (var kereta in keretaList) 63 | { 64 | kereta.TampilkanInfo(); 65 | } 66 | } 67 | 68 | public void PesanTiketKereta(string namaKereta, int jumlahTiket) 69 | { 70 | bool ditemukan = false; 71 | foreach (var kereta in keretaList) 72 | { 73 | if (kereta.NamaKereta == namaKereta) 74 | { 75 | kereta.PesanTiket(jumlahTiket); 76 | ditemukan = true; 77 | break; 78 | } 79 | } 80 | 81 | if (!ditemukan) 82 | { 83 | Console.WriteLine($"Kereta dengan nama {namaKereta} tidak ditemukan."); 84 | } 85 | } 86 | } 87 | 88 | class Program 89 | { 90 | static void Main() 91 | { 92 | SistemKereta sistemKereta = new SistemKereta(); 93 | 94 | // Menambahkan kereta ke sistem 95 | Kereta kereta1 = new Kereta("Ekspres Jakarta", "Bandung", "10:00", 100); 96 | Kereta kereta2 = new Kereta("Argo Bromo", "Surabaya", "15:00", 150); 97 | Kereta kereta3 = new Kereta("Kelas Ekonomi", "Yogyakarta", "12:00", 200); 98 | 99 | sistemKereta.TambahKereta(kereta1); 100 | sistemKereta.TambahKereta(kereta2); 101 | sistemKereta.TambahKereta(kereta3); 102 | 103 | int pilihan; 104 | string namaKereta; 105 | int jumlahTiket; 106 | 107 | while (true) 108 | { 109 | Console.WriteLine("\nMenu:"); 110 | Console.WriteLine("1. Tampilkan Jadwal Kereta"); 111 | Console.WriteLine("2. Pesan Tiket Kereta"); 112 | Console.WriteLine("3. Keluar"); 113 | 114 | Console.Write("Pilih menu (1/2/3): "); 115 | pilihan = int.Parse(Console.ReadLine()); 116 | 117 | if (pilihan == 1) 118 | { 119 | sistemKereta.TampilkanJadwal(); 120 | } 121 | else if (pilihan == 2) 122 | { 123 | Console.Write("Masukkan nama kereta yang ingin dipesan: "); 124 | namaKereta = Console.ReadLine(); 125 | Console.Write("Masukkan jumlah tiket yang ingin dipesan: "); 126 | jumlahTiket = int.Parse(Console.ReadLine()); 127 | sistemKereta.PesanTiketKereta(namaKereta, jumlahTiket); 128 | } 129 | else if (pilihan == 3) 130 | { 131 | Console.WriteLine("Terima kasih telah menggunakan sistem kereta."); 132 | break; 133 | } 134 | else 135 | { 136 | Console.WriteLine("Pilihan tidak valid. Silakan coba lagi."); 137 | } 138 | } 139 | } 140 | } -------------------------------------------------------------------------------- /dealerkartu(blackjacksimplified).cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | class Blackjack 5 | { 6 | // Daftar kartu dalam deck 7 | static List deck = new List { "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K", "A" }; 8 | 9 | // Fungsi untuk menghitung nilai kartu 10 | static int CardValue(string card) 11 | { 12 | if (card == "J" || card == "Q" || card == "K") 13 | { 14 | return 10; 15 | } 16 | else if (card == "A") 17 | { 18 | return 11; // Menganggap Ace = 11 untuk kesederhanaan 19 | } 20 | else 21 | { 22 | return int.Parse(card); // Kartu angka (2-10) 23 | } 24 | } 25 | 26 | // Fungsi untuk membagikan kartu secara acak 27 | static string DealCard(ref List deck) 28 | { 29 | Random rand = new Random(); 30 | int index = rand.Next(deck.Count); 31 | string card = deck[index]; 32 | deck.RemoveAt(index); // Hapus kartu yang sudah dibagikan 33 | return card; 34 | } 35 | 36 | // Fungsi untuk menghitung total nilai kartu dalam hand 37 | static int CalculateHand(List hand) 38 | { 39 | int total = 0; 40 | foreach (string card in hand) 41 | { 42 | total += CardValue(card); 43 | } 44 | return total; 45 | } 46 | 47 | // Fungsi utama untuk menjalankan permainan 48 | static void StartGame() 49 | { 50 | List deckCopy = new List(deck); // Salinan deck untuk permainan 51 | 52 | // Kartu untuk pemain dan dealer 53 | List playerHand = new List(); 54 | List dealerHand = new List(); 55 | 56 | // Membagikan dua kartu untuk pemain dan dealer 57 | playerHand.Add(DealCard(ref deckCopy)); 58 | playerHand.Add(DealCard(ref deckCopy)); 59 | dealerHand.Add(DealCard(ref deckCopy)); 60 | dealerHand.Add(DealCard(ref deckCopy)); 61 | 62 | // Menampilkan kartu awal pemain dan dealer (satu kartu dealer tersembunyi) 63 | Console.WriteLine("Kartu Anda: " + string.Join(" ", playerHand) + " dengan nilai " + CalculateHand(playerHand)); 64 | Console.WriteLine("Kartu Dealer: " + dealerHand[0] + " dan kartu tersembunyi"); 65 | 66 | // Giliran pemain 67 | while (CalculateHand(playerHand) < 21) 68 | { 69 | Console.Write("Apakah Anda ingin 'Hit' atau 'Stand'? "); 70 | string action = Console.ReadLine().ToLower(); 71 | if (action == "hit") 72 | { 73 | playerHand.Add(DealCard(ref deckCopy)); 74 | Console.WriteLine("Kartu Anda sekarang: " + string.Join(" ", playerHand) + " dengan nilai " + CalculateHand(playerHand)); 75 | } 76 | else if (action == "stand") 77 | { 78 | break; 79 | } 80 | else 81 | { 82 | Console.WriteLine("Pilihan tidak valid. Pilih 'Hit' atau 'Stand'."); 83 | } 84 | } 85 | 86 | // Jika pemain melebihi 21 87 | if (CalculateHand(playerHand) > 21) 88 | { 89 | Console.WriteLine("Nilai kartu Anda melebihi 21! Anda kalah!"); 90 | return; 91 | } 92 | 93 | // Giliran dealer (dealer akan 'hit' sampai total kartu >= 17) 94 | Console.WriteLine("Kartu Dealer sekarang: " + string.Join(" ", dealerHand) + " dengan nilai " + CalculateHand(dealerHand)); 95 | while (CalculateHand(dealerHand) < 17) 96 | { 97 | Console.WriteLine("Dealer memukul kartu..."); 98 | dealerHand.Add(DealCard(ref deckCopy)); 99 | Console.WriteLine("Kartu Dealer sekarang: " + string.Join(" ", dealerHand) + " dengan nilai " + CalculateHand(dealerHand)); 100 | } 101 | 102 | // Menentukan pemenang 103 | int playerTotal = CalculateHand(playerHand); 104 | int dealerTotal = CalculateHand(dealerHand); 105 | 106 | if (dealerTotal > 21) 107 | { 108 | Console.WriteLine("Dealer melebihi 21! Anda menang!"); 109 | } 110 | else if (playerTotal > dealerTotal) 111 | { 112 | Console.WriteLine("Anda menang!"); 113 | } 114 | else if (playerTotal < dealerTotal) 115 | { 116 | Console.WriteLine("Dealer menang!"); 117 | } 118 | else 119 | { 120 | Console.WriteLine("Hasil seri!"); 121 | } 122 | } 123 | 124 | // Fungsi utama untuk menjalankan permainan 125 | static void Main() 126 | { 127 | Console.WriteLine("Selamat datang di permainan Dealer Kartu!"); 128 | StartGame(); 129 | } 130 | } -------------------------------------------------------------------------------- /dilerkendaraan.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | class Vehicle 5 | { 6 | public string Model { get; private set; } 7 | public int Price { get; private set; } 8 | public int Stock { get; private set; } 9 | 10 | public Vehicle(string model, int price, int stock) 11 | { 12 | Model = model; 13 | Price = price; 14 | Stock = stock; 15 | } 16 | 17 | // Menampilkan informasi kendaraan 18 | public void DisplayInfo() 19 | { 20 | Console.WriteLine($"Model: {Model}, Harga: Rp{Price}, Stok: {Stock}"); 21 | } 22 | 23 | // Mengupdate stok setelah pembelian 24 | public void UpdateStock(int quantity) 25 | { 26 | Stock -= quantity; 27 | if (Stock < 0) 28 | { 29 | Stock = 0; 30 | } 31 | } 32 | 33 | // Memeriksa ketersediaan stok 34 | public bool IsAvailable(int quantity) 35 | { 36 | return Stock >= quantity; 37 | } 38 | } 39 | 40 | class VehicleDealer 41 | { 42 | private List vehicles = new List(); 43 | 44 | // Menambahkan kendaraan ke diler 45 | public void AddVehicle(string model, int price, int stock) 46 | { 47 | Vehicle vehicle = new Vehicle(model, price, stock); 48 | vehicles.Add(vehicle); 49 | } 50 | 51 | // Menampilkan semua kendaraan yang tersedia 52 | public void DisplayVehicles() 53 | { 54 | if (vehicles.Count == 0) 55 | { 56 | Console.WriteLine("Tidak ada kendaraan di diler."); 57 | return; 58 | } 59 | 60 | Console.WriteLine("\nKendaraan yang Tersedia di Diler:"); 61 | for (int i = 0; i < vehicles.Count; i++) 62 | { 63 | Console.Write($"{i + 1}. "); 64 | vehicles[i].DisplayInfo(); 65 | } 66 | } 67 | 68 | // Pembelian kendaraan 69 | public void PurchaseVehicle() 70 | { 71 | DisplayVehicles(); 72 | if (vehicles.Count == 0) return; 73 | 74 | try 75 | { 76 | Console.Write("\nPilih kendaraan (masukkan nomor): "); 77 | int choice = int.Parse(Console.ReadLine()); 78 | Console.Write("Berapa banyak yang ingin dibeli? "); 79 | int quantity = int.Parse(Console.ReadLine()); 80 | 81 | if (choice < 1 || choice > vehicles.Count) 82 | { 83 | Console.WriteLine("Pilihan tidak valid."); 84 | return; 85 | } 86 | 87 | Vehicle selectedVehicle = vehicles[choice - 1]; 88 | if (selectedVehicle.IsAvailable(quantity)) 89 | { 90 | int totalPrice = selectedVehicle.Price * quantity; 91 | Console.WriteLine($"\nPembelian Sukses! Total Harga: Rp{totalPrice}"); 92 | selectedVehicle.UpdateStock(quantity); 93 | } 94 | else 95 | { 96 | Console.WriteLine("\nStok tidak cukup."); 97 | } 98 | } 99 | catch (FormatException) 100 | { 101 | Console.WriteLine("Input tidak valid."); 102 | } 103 | } 104 | } 105 | 106 | class Program 107 | { 108 | static void Main(string[] args) 109 | { 110 | VehicleDealer dealer = new VehicleDealer(); 111 | 112 | // Menambahkan beberapa kendaraan ke diler 113 | dealer.AddVehicle("Mobil Sedan", 300000000, 10); 114 | dealer.AddVehicle("Motor Sport", 100000000, 5); 115 | dealer.AddVehicle("Mobil SUV", 500000000, 3); 116 | 117 | while (true) 118 | { 119 | Console.WriteLine("\n--- Menu Diler Kendaraan ---"); 120 | Console.WriteLine("1. Lihat kendaraan yang tersedia"); 121 | Console.WriteLine("2. Pembelian kendaraan"); 122 | Console.WriteLine("3. Keluar"); 123 | 124 | Console.Write("\nPilih menu: "); 125 | int choice; 126 | if (int.TryParse(Console.ReadLine(), out choice)) 127 | { 128 | switch (choice) 129 | { 130 | case 1: 131 | dealer.DisplayVehicles(); 132 | break; 133 | case 2: 134 | dealer.PurchaseVehicle(); 135 | break; 136 | case 3: 137 | Console.WriteLine("Terima kasih telah mengunjungi diler kami!"); 138 | return; 139 | default: 140 | Console.WriteLine("Pilihan tidak valid."); 141 | break; 142 | } 143 | } 144 | else 145 | { 146 | Console.WriteLine("Masukkan pilihan yang valid."); 147 | } 148 | } 149 | } 150 | } -------------------------------------------------------------------------------- /kafe.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | class Cafe 5 | { 6 | // Menyimpan menu dan harga 7 | private Dictionary menu; 8 | // Menyimpan pesanan dan jumlah item 9 | private Dictionary pesanan; 10 | 11 | public Cafe() 12 | { 13 | // Inisialisasi menu kafe dengan harga 14 | menu = new Dictionary 15 | { 16 | { "Kopi", 15000 }, 17 | { "Teh", 10000 }, 18 | { "Espresso", 20000 }, 19 | { "Cappuccino", 25000 }, 20 | { "Kue", 12000 } 21 | }; 22 | 23 | pesanan = new Dictionary(); 24 | } 25 | 26 | // Menampilkan menu kafe 27 | public void TampilkanMenu() 28 | { 29 | Console.WriteLine("\n--- Menu Kafe ---"); 30 | foreach (var item in menu) 31 | { 32 | Console.WriteLine($"{item.Key}: Rp {item.Value}"); 33 | } 34 | } 35 | 36 | // Menambah pesanan 37 | public void TambahPesanan() 38 | { 39 | while (true) 40 | { 41 | TampilkanMenu(); 42 | Console.Write("\nMasukkan nama item yang ingin dipesan (ketik 'selesai' untuk mengakhiri): "); 43 | string pesananItem = Console.ReadLine().Trim(); 44 | 45 | if (pesananItem.ToLower() == "selesai") 46 | { 47 | break; 48 | } 49 | 50 | if (menu.ContainsKey(pesananItem)) 51 | { 52 | Console.Write($"Berapa banyak {pesananItem} yang ingin dipesan? "); 53 | int jumlah; 54 | if (int.TryParse(Console.ReadLine(), out jumlah) && jumlah > 0) 55 | { 56 | if (pesanan.ContainsKey(pesananItem)) 57 | { 58 | pesanan[pesananItem] += jumlah; 59 | } 60 | else 61 | { 62 | pesanan[pesananItem] = jumlah; 63 | } 64 | Console.WriteLine($"{jumlah} {pesananItem} telah ditambahkan ke pesanan."); 65 | } 66 | else 67 | { 68 | Console.WriteLine("Jumlah tidak valid. Silakan coba lagi."); 69 | } 70 | } 71 | else 72 | { 73 | Console.WriteLine("Item tidak ada dalam menu. Silakan coba lagi."); 74 | } 75 | } 76 | } 77 | 78 | // Menghitung total harga pesanan 79 | public int HitungTotal() 80 | { 81 | int total = 0; 82 | foreach (var item in pesanan) 83 | { 84 | total += menu[item.Key] * item.Value; 85 | } 86 | return total; 87 | } 88 | 89 | // Menampilkan pesanan dan total harga 90 | public void TampilkanPesanan() 91 | { 92 | if (pesanan.Count == 0) 93 | { 94 | Console.WriteLine("\nTidak ada pesanan."); 95 | } 96 | else 97 | { 98 | Console.WriteLine("\n--- Pesanan Anda ---"); 99 | foreach (var item in pesanan) 100 | { 101 | Console.WriteLine($"{item.Key} x {item.Value} = Rp {menu[item.Key] * item.Value}"); 102 | } 103 | Console.WriteLine($"\nTotal yang harus dibayar: Rp {HitungTotal()}"); 104 | } 105 | } 106 | } 107 | 108 | class Program 109 | { 110 | static void Main() 111 | { 112 | Cafe cafe = new Cafe(); 113 | int pilihan; 114 | 115 | while (true) 116 | { 117 | Console.WriteLine("\n--- Selamat Datang di Kafe! ---"); 118 | Console.WriteLine("1. Lihat Menu"); 119 | Console.WriteLine("2. Tambah Pesanan"); 120 | Console.WriteLine("3. Lihat Pesanan dan Total"); 121 | Console.WriteLine("4. Keluar"); 122 | 123 | Console.Write("Pilih menu (1-4): "); 124 | if (int.TryParse(Console.ReadLine(), out pilihan)) 125 | { 126 | switch (pilihan) 127 | { 128 | case 1: 129 | cafe.TampilkanMenu(); 130 | break; 131 | case 2: 132 | cafe.TambahPesanan(); 133 | break; 134 | case 3: 135 | cafe.TampilkanPesanan(); 136 | break; 137 | case 4: 138 | Console.WriteLine("Terima kasih telah mengunjungi kafe kami. Sampai jumpa!"); 139 | return; 140 | default: 141 | Console.WriteLine("Pilihan tidak valid. Silakan coba lagi."); 142 | break; 143 | } 144 | } 145 | else 146 | { 147 | Console.WriteLine("Pilihan tidak valid. Silakan coba lagi."); 148 | } 149 | } 150 | } 151 | } -------------------------------------------------------------------------------- /warnet.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Linq; 3 | using System.Threading; 4 | 5 | class Komputer 6 | { 7 | public int Nomor { get; set; } 8 | public bool Tersedia { get; set; } 9 | public DateTime? MulaiSewa { get; set; } 10 | public double DurasiSewa { get; set; } 11 | 12 | public Komputer(int nomor) 13 | { 14 | Nomor = nomor; 15 | Tersedia = true; 16 | MulaiSewa = null; 17 | DurasiSewa = 0; 18 | } 19 | 20 | public void Sewa() 21 | { 22 | if (Tersedia) 23 | { 24 | Tersedia = false; 25 | MulaiSewa = DateTime.Now; 26 | Console.WriteLine($"Komputer {Nomor} telah disewa."); 27 | } 28 | else 29 | { 30 | Console.WriteLine($"Komputer {Nomor} sedang disewa."); 31 | } 32 | } 33 | 34 | public void SelesaiSewa() 35 | { 36 | if (!Tersedia && MulaiSewa.HasValue) 37 | { 38 | var waktuSewa = DateTime.Now - MulaiSewa.Value; 39 | DurasiSewa = waktuSewa.TotalMinutes; 40 | double biaya = DurasiSewa * 2000; // Biaya per menit misalnya 2000 IDR 41 | Tersedia = true; 42 | MulaiSewa = null; 43 | Console.WriteLine($"Komputer {Nomor} selesai disewa. Durasi: {DurasiSewa:F2} menit."); 44 | Console.WriteLine($"Biaya yang harus dibayar: Rp {biaya:F2}"); 45 | } 46 | else 47 | { 48 | Console.WriteLine($"Komputer {Nomor} belum disewa."); 49 | } 50 | } 51 | } 52 | 53 | class Warnet 54 | { 55 | private Komputer[] komputer; 56 | 57 | public Warnet(int jumlahKomputer) 58 | { 59 | komputer = new Komputer[jumlahKomputer]; 60 | for (int i = 0; i < jumlahKomputer; i++) 61 | { 62 | komputer[i] = new Komputer(i + 1); 63 | } 64 | } 65 | 66 | public void TampilkanKomputer() 67 | { 68 | Console.WriteLine("\nDaftar Komputer:"); 69 | foreach (var kom in komputer) 70 | { 71 | string status = kom.Tersedia ? "Tersedia" : "Sedang disewa"; 72 | Console.WriteLine($"Komputer {kom.Nomor}: {status}"); 73 | } 74 | } 75 | 76 | public void SewaKomputer(int nomor) 77 | { 78 | if (nomor >= 1 && nomor <= komputer.Length) 79 | { 80 | komputer[nomor - 1].Sewa(); 81 | } 82 | else 83 | { 84 | Console.WriteLine("Nomor komputer tidak valid!"); 85 | } 86 | } 87 | 88 | public void SelesaiKomputer(int nomor) 89 | { 90 | if (nomor >= 1 && nomor <= komputer.Length) 91 | { 92 | komputer[nomor - 1].SelesaiSewa(); 93 | } 94 | else 95 | { 96 | Console.WriteLine("Nomor komputer tidak valid!"); 97 | } 98 | } 99 | } 100 | 101 | class Program 102 | { 103 | static void Menu() 104 | { 105 | Warnet warnet = new Warnet(5); // Misalkan ada 5 komputer di warnet 106 | while (true) 107 | { 108 | Console.WriteLine("\n--- Menu Warnet ---"); 109 | Console.WriteLine("1. Tampilkan Daftar Komputer"); 110 | Console.WriteLine("2. Sewa Komputer"); 111 | Console.WriteLine("3. Selesai Sewa Komputer"); 112 | Console.WriteLine("4. Keluar"); 113 | Console.Write("Pilih menu: "); 114 | string pilihan = Console.ReadLine(); 115 | 116 | switch (pilihan) 117 | { 118 | case "1": 119 | warnet.TampilkanKomputer(); 120 | break; 121 | case "2": 122 | Console.Write("Masukkan nomor komputer yang ingin disewa: "); 123 | if (int.TryParse(Console.ReadLine(), out int nomorSewa)) 124 | { 125 | warnet.SewaKomputer(nomorSewa); 126 | } 127 | else 128 | { 129 | Console.WriteLine("Nomor yang dimasukkan tidak valid."); 130 | } 131 | break; 132 | case "3": 133 | Console.Write("Masukkan nomor komputer yang selesai disewa: "); 134 | if (int.TryParse(Console.ReadLine(), out int nomorSelesai)) 135 | { 136 | warnet.SelesaiKomputer(nomorSelesai); 137 | } 138 | else 139 | { 140 | Console.WriteLine("Nomor yang dimasukkan tidak valid."); 141 | } 142 | break; 143 | case "4": 144 | Console.WriteLine("Terima kasih telah menggunakan layanan warnet!"); 145 | return; 146 | default: 147 | Console.WriteLine("Pilihan tidak valid!"); 148 | break; 149 | } 150 | 151 | Thread.Sleep(1000); // Beri waktu 1 detik sebelum kembali ke menu 152 | } 153 | } 154 | 155 | static void Main(string[] args) 156 | { 157 | Menu(); 158 | } 159 | } -------------------------------------------------------------------------------- /timezonegame.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | class Program 5 | { 6 | // Struktur untuk menyimpan data pengguna 7 | public class User 8 | { 9 | public string Name { get; set; } 10 | public int Kredit { get; set; } 11 | public List Permainan { get; set; } 12 | 13 | public User(string name) 14 | { 15 | Name = name; 16 | Kredit = 0; 17 | Permainan = new List(); 18 | } 19 | } 20 | 21 | // Daftar pengguna 22 | static List users = new List(); 23 | 24 | // Fungsi untuk mendaftar pengguna baru 25 | static void RegisterUser() 26 | { 27 | Console.Write("Masukkan nama pengguna: "); 28 | string name = Console.ReadLine(); 29 | 30 | // Cek apakah pengguna sudah terdaftar 31 | foreach (var user in users) 32 | { 33 | if (user.Name == name) 34 | { 35 | Console.WriteLine($"Pengguna dengan nama {name} sudah terdaftar."); 36 | return; 37 | } 38 | } 39 | 40 | // Menambahkan pengguna baru 41 | users.Add(new User(name)); 42 | Console.WriteLine($"Selamat datang, {name}! Akun Anda telah dibuat."); 43 | } 44 | 45 | // Fungsi untuk membeli kredit 46 | static void BuyCredits(string userName) 47 | { 48 | Console.Write("Berapa banyak kredit yang ingin Anda beli? (1 kredit = 5000 IDR): "); 49 | int creditAmount = int.Parse(Console.ReadLine()); 50 | 51 | // Cari pengguna berdasarkan nama 52 | foreach (var user in users) 53 | { 54 | if (user.Name == userName) 55 | { 56 | user.Kredit += creditAmount; 57 | Console.WriteLine($"{creditAmount} kredit telah ditambahkan ke akun Anda."); 58 | return; 59 | } 60 | } 61 | 62 | Console.WriteLine("Pengguna tidak ditemukan. Silakan mendaftar terlebih dahulu."); 63 | } 64 | 65 | // Fungsi untuk bermain game 66 | static void PlayGame(string userName) 67 | { 68 | // Cari pengguna berdasarkan nama 69 | foreach (var user in users) 70 | { 71 | if (user.Name == userName) 72 | { 73 | if (user.Kredit < 1) 74 | { 75 | Console.WriteLine("Anda tidak memiliki kredit cukup untuk bermain game. Silakan beli kredit terlebih dahulu."); 76 | return; 77 | } 78 | 79 | Console.WriteLine("Pilih permainan yang ingin dimainkan:"); 80 | Console.WriteLine("1. Pac-Man (1 kredit)"); 81 | Console.WriteLine("2. Street Fighter (2 kredit)"); 82 | Console.WriteLine("3. Racing Game (3 kredit)"); 83 | 84 | int gameChoice = int.Parse(Console.ReadLine()); 85 | 86 | if (gameChoice == 1 && user.Kredit >= 1) 87 | { 88 | user.Kredit -= 1; 89 | Console.WriteLine("Anda sedang bermain Pac-Man! Semoga berhasil!"); 90 | } 91 | else if (gameChoice == 2 && user.Kredit >= 2) 92 | { 93 | user.Kredit -= 2; 94 | Console.WriteLine("Anda sedang bermain Street Fighter! Bertarunglah dengan kuat!"); 95 | } 96 | else if (gameChoice == 3 && user.Kredit >= 3) 97 | { 98 | user.Kredit -= 3; 99 | Console.WriteLine("Anda sedang bermain Racing Game! Gaspol!"); 100 | } 101 | else 102 | { 103 | Console.WriteLine("Anda tidak memiliki kredit cukup untuk memilih permainan ini."); 104 | return; 105 | } 106 | 107 | // Simulasi hasil permainan (acak) 108 | Random rand = new Random(); 109 | int result = rand.Next(0, 2); // 0 = Kalah, 1 = Menang 110 | Console.WriteLine("Memulai permainan..."); 111 | Console.WriteLine("Hasil permainan: " + (result == 1 ? "Menang" : "Kalah")); 112 | user.Permainan.Add(result == 1 ? "Menang" : "Kalah"); 113 | return; 114 | } 115 | } 116 | 117 | Console.WriteLine("Pengguna tidak ditemukan. Silakan mendaftar terlebih dahulu."); 118 | } 119 | 120 | // Fungsi untuk mengecek saldo kredit 121 | static void CheckBalance(string userName) 122 | { 123 | // Cari pengguna berdasarkan nama 124 | foreach (var user in users) 125 | { 126 | if (user.Name == userName) 127 | { 128 | Console.WriteLine($"Sisa kredit Anda: {user.Kredit} kredit."); 129 | return; 130 | } 131 | } 132 | 133 | Console.WriteLine("Pengguna tidak ditemukan. Silakan mendaftar terlebih dahulu."); 134 | } 135 | 136 | // Menu utama 137 | static void Main(string[] args) 138 | { 139 | Console.WriteLine("Selamat datang di Timezone Mall!"); 140 | 141 | while (true) 142 | { 143 | Console.WriteLine("\nMenu Utama:"); 144 | Console.WriteLine("1. Daftar pengguna baru"); 145 | Console.WriteLine("2. Beli kredit"); 146 | Console.WriteLine("3. Mainkan game"); 147 | Console.WriteLine("4. Cek saldo kredit"); 148 | Console.WriteLine("5. Keluar"); 149 | 150 | Console.Write("Pilih menu (1/2/3/4/5): "); 151 | int choice = int.Parse(Console.ReadLine()); 152 | 153 | if (choice == 1) 154 | { 155 | RegisterUser(); 156 | } 157 | else if (choice == 2) 158 | { 159 | Console.Write("Masukkan nama pengguna untuk membeli kredit: "); 160 | string userName = Console.ReadLine(); 161 | BuyCredits(userName); 162 | } 163 | else if (choice == 3) 164 | { 165 | Console.Write("Masukkan nama pengguna untuk bermain game: "); 166 | string userName = Console.ReadLine(); 167 | PlayGame(userName); 168 | } 169 | else if (choice == 4) 170 | { 171 | Console.Write("Masukkan nama pengguna untuk cek saldo: "); 172 | string userName = Console.ReadLine(); 173 | CheckBalance(userName); 174 | } 175 | else if (choice == 5) 176 | { 177 | Console.WriteLine("Terima kasih telah bermain di Timezone Mall! Sampai jumpa lagi!"); 178 | break; 179 | } 180 | else 181 | { 182 | Console.WriteLine("Pilihan tidak valid. Silakan pilih lagi."); 183 | } 184 | } 185 | } 186 | } -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Raff | C# 8 | 45 | 46 | 47 | 48 |

Kumpulan Kode C#

49 | 50 |

1. Absensi

51 |

  52 | using System;
  53 | using System.Collections.Generic;
  54 | 
  55 | class Program
  56 | {
  57 |     // Daftar nama siswa/pegawai
  58 |     static List daftarNama = new List { "Ali", "Budi", "Citra", "Dewi", "Eka" };
  59 |     
  60 |     // Menyimpan status absensi
  61 |     static Dictionary absensi = new Dictionary();
  62 | 
  63 |     // Fungsi untuk mencatat absensi
  64 |     static void CatatAbsensi()
  65 |     {
  66 |         Console.WriteLine("Daftar Nama:");
  67 |         for (int i = 0; i < daftarNama.Count; i++)
  68 |         {
  69 |             Console.WriteLine($"{i + 1}. {daftarNama[i]}");
  70 |         }
  71 | 
  72 |         foreach (var nama in daftarNama)
  73 |         {
  74 |             Console.Write($"Apakah {nama} hadir? (y/n): ");
  75 |             string status = Console.ReadLine().Trim().ToLower();
  76 | 
  77 |             if (status == "y")
  78 |             {
  79 |                 absensi[nama] = "Hadir";
  80 |             }
  81 |             else if (status == "n")
  82 |             {
  83 |                 absensi[nama] = "Tidak Hadir";
  84 |             }
  85 |             else
  86 |             {
  87 |                 absensi[nama] = "Status Tidak Valid";
  88 |             }
  89 |         }
  90 | 
  91 |         Console.WriteLine("\nAbsensi Hari Ini:");
  92 |         foreach (var entry in absensi)
  93 |         {
  94 |             Console.WriteLine($"{entry.Key}: {entry.Value}");
  95 |         }
  96 |     }
  97 | 
  98 |     static void Main()
  99 |     {
 100 |         // Menjalankan fungsi untuk mencatat absensi
 101 |         CatatAbsensi();
 102 |     }
 103 | }
 104 | 
105 | 106 |

2. Barbershop

107 |

 108 | using System;
 109 | using System.Collections.Generic;
 110 | 
 111 | class Barbershop
 112 | {
 113 |     private List antrian;  // List untuk menyimpan nama pelanggan
 114 |     private bool buka;  // Status barbershop
 115 | 
 116 |     public Barbershop()
 117 |     {
 118 |         antrian = new List();
 119 |         buka = true;
 120 |     }
 121 | 
 122 |     // Fungsi untuk membuka Barbershop
 123 |     public void BukaBarbershop()
 124 |     {
 125 |         Console.WriteLine("Barbershop sedang buka, silakan masuk!");
 126 |     }
 127 | 
 128 |     // Fungsi untuk menutup Barbershop
 129 |     public void TutupBarbershop()
 130 |     {
 131 |         buka = false;
 132 |         Console.WriteLine("Barbershop sudah tutup. Terima kasih sudah datang!");
 133 |     }
 134 | 
 135 |     // Fungsi untuk menambah pelanggan ke dalam antrian
 136 |     public void TambahPelanggan(string nama)
 137 |     {
 138 |         if (buka)
 139 |         {
 140 |             if (antrian.Count < 10)  // Maksimal antrian 10 pelanggan
 141 |             {
 142 |                 antrian.Add(nama);
 143 |                 Console.WriteLine($"{nama} telah masuk ke antrian.");
 144 |             }
 145 |             else
 146 |             {
 147 |                 Console.WriteLine("Antrian sudah penuh!");
 148 |             }
 149 |         }
 150 |         else
 151 |         {
 152 |             Console.WriteLine("Barbershop sudah tutup. Anda tidak bisa mendaftar.");
 153 |         }
 154 |     }
 155 | 
 156 |     // Fungsi untuk memproses pelanggan
 157 |     public void ProsesPelanggan()
 158 |     {
 159 |         if (antrian.Count > 0)
 160 |         {
 161 |             string pelanggan = antrian[0];
 162 |             Console.WriteLine($"Sedang melayani {pelanggan}...");
 163 |             System.Threading.Thread.Sleep(2000);  // Simulasi waktu pemotongan rambut
 164 |             Console.WriteLine($"{pelanggan} telah selesai dilayani.");
 165 | 
 166 |             // Menghapus pelanggan dari antrian
 167 |             antrian.RemoveAt(0);
 168 |         }
 169 |         else
 170 |         {
 171 |             Console.WriteLine("Tidak ada pelanggan di antrian.");
 172 |         }
 173 |     }
 174 | 
 175 |     // Fungsi untuk menampilkan antrian
 176 |     public void TampilkanAntrian()
 177 |     {
 178 |         if (antrian.Count > 0)
 179 |         {
 180 |             Console.WriteLine("Antrian pelanggan:");
 181 |             for (int i = 0; i < antrian.Count; i++)
 182 |             {
 183 |                 Console.WriteLine($"{i + 1}. {antrian[i]}");
 184 |             }
 185 |         }
 186 |         else
 187 |         {
 188 |             Console.WriteLine("Tidak ada pelanggan di antrian.");
 189 |         }
 190 |     }
 191 | }
 192 | 
 193 | class Program
 194 | {
 195 |     static void Main()
 196 |     {
 197 |         Barbershop barbershop = new Barbershop();
 198 |         barbershop.BukaBarbershop();
 199 | 
 200 |         while (true)
 201 |         {
 202 |             Console.WriteLine("\n--- Menu ---");
 203 |             Console.WriteLine("1. Tambah Pelanggan");
 204 |             Console.WriteLine("2. Proses Pelanggan");
 205 |             Console.WriteLine("3. Lihat Antrian");
 206 |             Console.WriteLine("4. Tutup Barbershop");
 207 |             Console.WriteLine("5. Keluar");
 208 | 
 209 |             Console.Write("Pilih menu (1-5): ");
 210 |             int pilihan = int.Parse(Console.ReadLine());
 211 | 
 212 |             if (pilihan == 1)
 213 |             {
 214 |                 Console.Write("Masukkan nama pelanggan: ");
 215 |                 string nama = Console.ReadLine();
 216 |                 barbershop.TambahPelanggan(nama);
 217 |             }
 218 |             else if (pilihan == 2)
 219 |             {
 220 |                 barbershop.ProsesPelanggan();
 221 |             }
 222 |             else if (pilihan == 3)
 223 |             {
 224 |                 barbershop.TampilkanAntrian();
 225 |             }
 226 |             else if (pilihan == 4)
 227 |             {
 228 |                 barbershop.TutupBarbershop();
 229 |                 break;
 230 |             }
 231 |             else if (pilihan == 5)
 232 |             {
 233 |                 Console.WriteLine("Terima kasih telah menggunakan program ini!");
 234 |                 break;
 235 |             }
 236 |             else
 237 |             {
 238 |                 Console.WriteLine("Pilihan tidak valid, coba lagi.");
 239 |             }
 240 |         }
 241 |     }
 242 | }
 243 | 
244 | 245 |

3. Bioskop

246 |

 247 | using System;
 248 | 
 249 | class Program
 250 | {
 251 |     // Menampilkan daftar film yang tersedia
 252 |     static void ShowFilms()
 253 |     {
 254 |         Console.WriteLine("Daftar Film yang Tersedia:");
 255 |         Console.WriteLine("1. Film A - Harga: Rp 50000");
 256 |         Console.WriteLine("2. Film B - Harga: Rp 60000");
 257 |         Console.WriteLine("3. Film C - Harga: Rp 70000");
 258 |         Console.WriteLine("4. Film D - Harga: Rp 55000");
 259 |     }
 260 | 
 261 |     // Memilih film yang diinginkan oleh pengguna
 262 |     static int PilihFilm()
 263 |     {
 264 |         int pilihan;
 265 |         while (true)
 266 |         {
 267 |             Console.Write("\nPilih film (1-4): ");
 268 |             if (int.TryParse(Console.ReadLine(), out pilihan) && pilihan >= 1 && pilihan <= 4)
 269 |             {
 270 |                 return pilihan;
 271 |             }
 272 |             else
 273 |             {
 274 |                 Console.WriteLine("Pilihan tidak valid, coba lagi.");
 275 |             }
 276 |         }
 277 |     }
 278 | 
 279 |     // Proses membeli tiket
 280 |     static void BeliTiket()
 281 |     {
 282 |         int pilihan, jumlahTiket, totalHarga;
 283 |         
 284 |         while (true)
 285 |         {
 286 |             ShowFilms();
 287 |             pilihan = PilihFilm();
 288 |             
 289 |             // Menghitung harga berdasarkan film yang dipilih
 290 |             switch (pilihan)
 291 |             {
 292 |                 case 1:
 293 |                     totalHarga = 50000;
 294 |                     break;
 295 |                 case 2:
 296 |                     totalHarga = 60000;
 297 |                     break;
 298 |                 case 3:
 299 |                     totalHarga = 70000;
 300 |                     break;
 301 |                 case 4:
 302 |                     totalHarga = 55000;
 303 |                     break;
 304 |                 default:
 305 |                     totalHarga = 0;
 306 |                     break;
 307 |             }
 308 | 
 309 |             // Input jumlah tiket
 310 |             Console.Write("Masukkan jumlah tiket yang ingin dibeli: ");
 311 |             while (!int.TryParse(Console.ReadLine(), out jumlahTiket) || jumlahTiket <= 0)
 312 |             {
 313 |                 Console.Write("Jumlah tiket tidak valid, coba lagi: ");
 314 |             }
 315 |             
 316 |             totalHarga *= jumlahTiket; // Menghitung total harga
 317 |             
 318 |             // Menampilkan hasil pembelian
 319 |             Console.WriteLine($"\nTiket untuk film {GetFilmName(pilihan)} ({jumlahTiket} tiket) berhasil dipesan.");
 320 |             Console.WriteLine($"Total harga: Rp {totalHarga}");
 321 | 
 322 |             // Tanya apakah ingin membeli tiket lagi
 323 |             Console.Write("\nApakah Anda ingin membeli tiket lagi? (y/t): ");
 324 |             char lagi = Char.ToLower(Console.ReadKey().KeyChar);
 325 |             Console.WriteLine();
 326 | 
 327 |             if (lagi == 't')
 328 |             {
 329 |                 Console.WriteLine("Terima kasih telah membeli tiket di bioskop kami!");
 330 |                 break;
 331 |             }
 332 |         }
 333 |     }
 334 | 
 335 |     // Mendapatkan nama film berdasarkan pilihan
 336 |     static string GetFilmName(int pilihan)
 337 |     {
 338 |         switch (pilihan)
 339 |         {
 340 |             case 1: return "Film A";
 341 |             case 2: return "Film B";
 342 |             case 3: return "Film C";
 343 |             case 4: return "Film D";
 344 |             default: return "Film Tidak Diketahui";
 345 |         }
 346 |     }
 347 | 
 348 |     // Program utama
 349 |     static void Main()
 350 |     {
 351 |         BeliTiket();
 352 |     }
 353 | }
 354 | 
355 | 356 |

4. Dealer Kartu (Black Jack Simplified)

357 |

 358 | using System;
 359 | using System.Collections.Generic;
 360 | 
 361 | class Blackjack
 362 | {
 363 |     // Daftar kartu dalam deck
 364 |     static List deck = new List { "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K", "A" };
 365 | 
 366 |     // Fungsi untuk menghitung nilai kartu
 367 |     static int CardValue(string card)
 368 |     {
 369 |         if (card == "J" || card == "Q" || card == "K")
 370 |         {
 371 |             return 10;
 372 |         }
 373 |         else if (card == "A")
 374 |         {
 375 |             return 11; // Menganggap Ace = 11 untuk kesederhanaan
 376 |         }
 377 |         else
 378 |         {
 379 |             return int.Parse(card); // Kartu angka (2-10)
 380 |         }
 381 |     }
 382 | 
 383 |     // Fungsi untuk membagikan kartu secara acak
 384 |     static string DealCard(ref List deck)
 385 |     {
 386 |         Random rand = new Random();
 387 |         int index = rand.Next(deck.Count);
 388 |         string card = deck[index];
 389 |         deck.RemoveAt(index); // Hapus kartu yang sudah dibagikan
 390 |         return card;
 391 |     }
 392 | 
 393 |     // Fungsi untuk menghitung total nilai kartu dalam hand
 394 |     static int CalculateHand(List hand)
 395 |     {
 396 |         int total = 0;
 397 |         foreach (string card in hand)
 398 |         {
 399 |             total += CardValue(card);
 400 |         }
 401 |         return total;
 402 |     }
 403 | 
 404 |     // Fungsi utama untuk menjalankan permainan
 405 |     static void StartGame()
 406 |     {
 407 |         List deckCopy = new List(deck); // Salinan deck untuk permainan
 408 | 
 409 |         // Kartu untuk pemain dan dealer
 410 |         List playerHand = new List();
 411 |         List dealerHand = new List();
 412 | 
 413 |         // Membagikan dua kartu untuk pemain dan dealer
 414 |         playerHand.Add(DealCard(ref deckCopy));
 415 |         playerHand.Add(DealCard(ref deckCopy));
 416 |         dealerHand.Add(DealCard(ref deckCopy));
 417 |         dealerHand.Add(DealCard(ref deckCopy));
 418 | 
 419 |         // Menampilkan kartu awal pemain dan dealer (satu kartu dealer tersembunyi)
 420 |         Console.WriteLine("Kartu Anda: " + string.Join(" ", playerHand) + " dengan nilai " + CalculateHand(playerHand));
 421 |         Console.WriteLine("Kartu Dealer: " + dealerHand[0] + " dan kartu tersembunyi");
 422 | 
 423 |         // Giliran pemain
 424 |         while (CalculateHand(playerHand) < 21)
 425 |         {
 426 |             Console.Write("Apakah Anda ingin 'Hit' atau 'Stand'? ");
 427 |             string action = Console.ReadLine().ToLower();
 428 |             if (action == "hit")
 429 |             {
 430 |                 playerHand.Add(DealCard(ref deckCopy));
 431 |                 Console.WriteLine("Kartu Anda sekarang: " + string.Join(" ", playerHand) + " dengan nilai " + CalculateHand(playerHand));
 432 |             }
 433 |             else if (action == "stand")
 434 |             {
 435 |                 break;
 436 |             }
 437 |             else
 438 |             {
 439 |                 Console.WriteLine("Pilihan tidak valid. Pilih 'Hit' atau 'Stand'.");
 440 |             }
 441 |         }
 442 | 
 443 |         // Jika pemain melebihi 21
 444 |         if (CalculateHand(playerHand) > 21)
 445 |         {
 446 |             Console.WriteLine("Nilai kartu Anda melebihi 21! Anda kalah!");
 447 |             return;
 448 |         }
 449 | 
 450 |         // Giliran dealer (dealer akan 'hit' sampai total kartu >= 17)
 451 |         Console.WriteLine("Kartu Dealer sekarang: " + string.Join(" ", dealerHand) + " dengan nilai " + CalculateHand(dealerHand));
 452 |         while (CalculateHand(dealerHand) < 17)
 453 |         {
 454 |             Console.WriteLine("Dealer memukul kartu...");
 455 |             dealerHand.Add(DealCard(ref deckCopy));
 456 |             Console.WriteLine("Kartu Dealer sekarang: " + string.Join(" ", dealerHand) + " dengan nilai " + CalculateHand(dealerHand));
 457 |         }
 458 | 
 459 |         // Menentukan pemenang
 460 |         int playerTotal = CalculateHand(playerHand);
 461 |         int dealerTotal = CalculateHand(dealerHand);
 462 | 
 463 |         if (dealerTotal > 21)
 464 |         {
 465 |             Console.WriteLine("Dealer melebihi 21! Anda menang!");
 466 |         }
 467 |         else if (playerTotal > dealerTotal)
 468 |         {
 469 |             Console.WriteLine("Anda menang!");
 470 |         }
 471 |         else if (playerTotal < dealerTotal)
 472 |         {
 473 |             Console.WriteLine("Dealer menang!");
 474 |         }
 475 |         else
 476 |         {
 477 |             Console.WriteLine("Hasil seri!");
 478 |         }
 479 |     }
 480 | 
 481 |     // Fungsi utama untuk menjalankan permainan
 482 |     static void Main()
 483 |     {
 484 |         Console.WriteLine("Selamat datang di permainan Dealer Kartu!");
 485 |         StartGame();
 486 |     }
 487 | }
 488 | 
489 | 490 |

5. Diler Kendaraan

491 |

 492 | using System;
 493 | using System.Collections.Generic;
 494 | 
 495 | class Vehicle
 496 | {
 497 |     public string Model { get; private set; }
 498 |     public int Price { get; private set; }
 499 |     public int Stock { get; private set; }
 500 | 
 501 |     public Vehicle(string model, int price, int stock)
 502 |     {
 503 |         Model = model;
 504 |         Price = price;
 505 |         Stock = stock;
 506 |     }
 507 | 
 508 |     // Menampilkan informasi kendaraan
 509 |     public void DisplayInfo()
 510 |     {
 511 |         Console.WriteLine($"Model: {Model}, Harga: Rp{Price}, Stok: {Stock}");
 512 |     }
 513 | 
 514 |     // Mengupdate stok setelah pembelian
 515 |     public void UpdateStock(int quantity)
 516 |     {
 517 |         Stock -= quantity;
 518 |         if (Stock < 0)
 519 |         {
 520 |             Stock = 0;
 521 |         }
 522 |     }
 523 | 
 524 |     // Memeriksa ketersediaan stok
 525 |     public bool IsAvailable(int quantity)
 526 |     {
 527 |         return Stock >= quantity;
 528 |     }
 529 | }
 530 | 
 531 | class VehicleDealer
 532 | {
 533 |     private List vehicles = new List();
 534 | 
 535 |     // Menambahkan kendaraan ke diler
 536 |     public void AddVehicle(string model, int price, int stock)
 537 |     {
 538 |         Vehicle vehicle = new Vehicle(model, price, stock);
 539 |         vehicles.Add(vehicle);
 540 |     }
 541 | 
 542 |     // Menampilkan semua kendaraan yang tersedia
 543 |     public void DisplayVehicles()
 544 |     {
 545 |         if (vehicles.Count == 0)
 546 |         {
 547 |             Console.WriteLine("Tidak ada kendaraan di diler.");
 548 |             return;
 549 |         }
 550 | 
 551 |         Console.WriteLine("\nKendaraan yang Tersedia di Diler:");
 552 |         for (int i = 0; i < vehicles.Count; i++)
 553 |         {
 554 |             Console.Write($"{i + 1}. ");
 555 |             vehicles[i].DisplayInfo();
 556 |         }
 557 |     }
 558 | 
 559 |     // Pembelian kendaraan
 560 |     public void PurchaseVehicle()
 561 |     {
 562 |         DisplayVehicles();
 563 |         if (vehicles.Count == 0) return;
 564 | 
 565 |         try
 566 |         {
 567 |             Console.Write("\nPilih kendaraan (masukkan nomor): ");
 568 |             int choice = int.Parse(Console.ReadLine());
 569 |             Console.Write("Berapa banyak yang ingin dibeli? ");
 570 |             int quantity = int.Parse(Console.ReadLine());
 571 | 
 572 |             if (choice < 1 || choice > vehicles.Count)
 573 |             {
 574 |                 Console.WriteLine("Pilihan tidak valid.");
 575 |                 return;
 576 |             }
 577 | 
 578 |             Vehicle selectedVehicle = vehicles[choice - 1];
 579 |             if (selectedVehicle.IsAvailable(quantity))
 580 |             {
 581 |                 int totalPrice = selectedVehicle.Price * quantity;
 582 |                 Console.WriteLine($"\nPembelian Sukses! Total Harga: Rp{totalPrice}");
 583 |                 selectedVehicle.UpdateStock(quantity);
 584 |             }
 585 |             else
 586 |             {
 587 |                 Console.WriteLine("\nStok tidak cukup.");
 588 |             }
 589 |         }
 590 |         catch (FormatException)
 591 |         {
 592 |             Console.WriteLine("Input tidak valid.");
 593 |         }
 594 |     }
 595 | }
 596 | 
 597 | class Program
 598 | {
 599 |     static void Main(string[] args)
 600 |     {
 601 |         VehicleDealer dealer = new VehicleDealer();
 602 | 
 603 |         // Menambahkan beberapa kendaraan ke diler
 604 |         dealer.AddVehicle("Mobil Sedan", 300000000, 10);
 605 |         dealer.AddVehicle("Motor Sport", 100000000, 5);
 606 |         dealer.AddVehicle("Mobil SUV", 500000000, 3);
 607 | 
 608 |         while (true)
 609 |         {
 610 |             Console.WriteLine("\n--- Menu Diler Kendaraan ---");
 611 |             Console.WriteLine("1. Lihat kendaraan yang tersedia");
 612 |             Console.WriteLine("2. Pembelian kendaraan");
 613 |             Console.WriteLine("3. Keluar");
 614 | 
 615 |             Console.Write("\nPilih menu: ");
 616 |             int choice;
 617 |             if (int.TryParse(Console.ReadLine(), out choice))
 618 |             {
 619 |                 switch (choice)
 620 |                 {
 621 |                     case 1:
 622 |                         dealer.DisplayVehicles();
 623 |                         break;
 624 |                     case 2:
 625 |                         dealer.PurchaseVehicle();
 626 |                         break;
 627 |                     case 3:
 628 |                         Console.WriteLine("Terima kasih telah mengunjungi diler kami!");
 629 |                         return;
 630 |                     default:
 631 |                         Console.WriteLine("Pilihan tidak valid.");
 632 |                         break;
 633 |                 }
 634 |             }
 635 |             else
 636 |             {
 637 |                 Console.WriteLine("Masukkan pilihan yang valid.");
 638 |             }
 639 |         }
 640 |     }
 641 | }
 642 | 
643 | 644 |

6. Gaji

645 |

 646 | using System;
 647 | 
 648 | class Program
 649 | {
 650 |     // Fungsi untuk menghitung gaji total
 651 |     static double HitungGaji(double gajiPokok, double tunjangan, double potongan)
 652 |     {
 653 |         return gajiPokok + tunjangan - potongan;
 654 |     }
 655 | 
 656 |     static void Main()
 657 |     {
 658 |         double gajiPokok, tunjangan, potongan, gajiTotal;
 659 | 
 660 |         // Menampilkan judul program
 661 |         Console.WriteLine("Program Perhitungan Gaji Karyawan");
 662 | 
 663 |         // Input data
 664 |         Console.Write("Masukkan gaji pokok: Rp ");
 665 |         gajiPokok = Convert.ToDouble(Console.ReadLine());
 666 | 
 667 |         Console.Write("Masukkan tunjangan: Rp ");
 668 |         tunjangan = Convert.ToDouble(Console.ReadLine());
 669 | 
 670 |         Console.Write("Masukkan potongan: Rp ");
 671 |         potongan = Convert.ToDouble(Console.ReadLine());
 672 | 
 673 |         // Menghitung gaji total
 674 |         gajiTotal = HitungGaji(gajiPokok, tunjangan, potongan);
 675 | 
 676 |         // Menampilkan hasil perhitungan
 677 |         Console.WriteLine("\nRingkasan Gaji:");
 678 |         Console.WriteLine($"Gaji Pokok: Rp {gajiPokok}");
 679 |         Console.WriteLine($"Tunjangan: Rp {tunjangan}");
 680 |         Console.WriteLine($"Potongan: Rp {potongan}");
 681 |         Console.WriteLine($"Gaji Total: Rp {gajiTotal}");
 682 |     }
 683 | }
 684 | 
685 | 686 |

7. Kafe

687 |

 688 | using System;
 689 | using System.Collections.Generic;
 690 | 
 691 | class Cafe
 692 | {
 693 |     // Menyimpan menu dan harga
 694 |     private Dictionary menu;
 695 |     // Menyimpan pesanan dan jumlah item
 696 |     private Dictionary pesanan;
 697 | 
 698 |     public Cafe()
 699 |     {
 700 |         // Inisialisasi menu kafe dengan harga
 701 |         menu = new Dictionary
 702 |         {
 703 |             { "Kopi", 15000 },
 704 |             { "Teh", 10000 },
 705 |             { "Espresso", 20000 },
 706 |             { "Cappuccino", 25000 },
 707 |             { "Kue", 12000 }
 708 |         };
 709 |         
 710 |         pesanan = new Dictionary();
 711 |     }
 712 | 
 713 |     // Menampilkan menu kafe
 714 |     public void TampilkanMenu()
 715 |     {
 716 |         Console.WriteLine("\n--- Menu Kafe ---");
 717 |         foreach (var item in menu)
 718 |         {
 719 |             Console.WriteLine($"{item.Key}: Rp {item.Value}");
 720 |         }
 721 |     }
 722 | 
 723 |     // Menambah pesanan
 724 |     public void TambahPesanan()
 725 |     {
 726 |         while (true)
 727 |         {
 728 |             TampilkanMenu();
 729 |             Console.Write("\nMasukkan nama item yang ingin dipesan (ketik 'selesai' untuk mengakhiri): ");
 730 |             string pesananItem = Console.ReadLine().Trim();
 731 | 
 732 |             if (pesananItem.ToLower() == "selesai")
 733 |             {
 734 |                 break;
 735 |             }
 736 | 
 737 |             if (menu.ContainsKey(pesananItem))
 738 |             {
 739 |                 Console.Write($"Berapa banyak {pesananItem} yang ingin dipesan? ");
 740 |                 int jumlah;
 741 |                 if (int.TryParse(Console.ReadLine(), out jumlah) && jumlah > 0)
 742 |                 {
 743 |                     if (pesanan.ContainsKey(pesananItem))
 744 |                     {
 745 |                         pesanan[pesananItem] += jumlah;
 746 |                     }
 747 |                     else
 748 |                     {
 749 |                         pesanan[pesananItem] = jumlah;
 750 |                     }
 751 |                     Console.WriteLine($"{jumlah} {pesananItem} telah ditambahkan ke pesanan.");
 752 |                 }
 753 |                 else
 754 |                 {
 755 |                     Console.WriteLine("Jumlah tidak valid. Silakan coba lagi.");
 756 |                 }
 757 |             }
 758 |             else
 759 |             {
 760 |                 Console.WriteLine("Item tidak ada dalam menu. Silakan coba lagi.");
 761 |             }
 762 |         }
 763 |     }
 764 | 
 765 |     // Menghitung total harga pesanan
 766 |     public int HitungTotal()
 767 |     {
 768 |         int total = 0;
 769 |         foreach (var item in pesanan)
 770 |         {
 771 |             total += menu[item.Key] * item.Value;
 772 |         }
 773 |         return total;
 774 |     }
 775 | 
 776 |     // Menampilkan pesanan dan total harga
 777 |     public void TampilkanPesanan()
 778 |     {
 779 |         if (pesanan.Count == 0)
 780 |         {
 781 |             Console.WriteLine("\nTidak ada pesanan.");
 782 |         }
 783 |         else
 784 |         {
 785 |             Console.WriteLine("\n--- Pesanan Anda ---");
 786 |             foreach (var item in pesanan)
 787 |             {
 788 |                 Console.WriteLine($"{item.Key} x {item.Value} = Rp {menu[item.Key] * item.Value}");
 789 |             }
 790 |             Console.WriteLine($"\nTotal yang harus dibayar: Rp {HitungTotal()}");
 791 |         }
 792 |     }
 793 | }
 794 | 
 795 | class Program
 796 | {
 797 |     static void Main()
 798 |     {
 799 |         Cafe cafe = new Cafe();
 800 |         int pilihan;
 801 | 
 802 |         while (true)
 803 |         {
 804 |             Console.WriteLine("\n--- Selamat Datang di Kafe! ---");
 805 |             Console.WriteLine("1. Lihat Menu");
 806 |             Console.WriteLine("2. Tambah Pesanan");
 807 |             Console.WriteLine("3. Lihat Pesanan dan Total");
 808 |             Console.WriteLine("4. Keluar");
 809 | 
 810 |             Console.Write("Pilih menu (1-4): ");
 811 |             if (int.TryParse(Console.ReadLine(), out pilihan))
 812 |             {
 813 |                 switch (pilihan)
 814 |                 {
 815 |                     case 1:
 816 |                         cafe.TampilkanMenu();
 817 |                         break;
 818 |                     case 2:
 819 |                         cafe.TambahPesanan();
 820 |                         break;
 821 |                     case 3:
 822 |                         cafe.TampilkanPesanan();
 823 |                         break;
 824 |                     case 4:
 825 |                         Console.WriteLine("Terima kasih telah mengunjungi kafe kami. Sampai jumpa!");
 826 |                         return;
 827 |                     default:
 828 |                         Console.WriteLine("Pilihan tidak valid. Silakan coba lagi.");
 829 |                         break;
 830 |                 }
 831 |             }
 832 |             else
 833 |             {
 834 |                 Console.WriteLine("Pilihan tidak valid. Silakan coba lagi.");
 835 |             }
 836 |         }
 837 |     }
 838 | }
 839 | 
840 | 841 |

8. Kalkulator

842 |

 843 | using System;
 844 | 
 845 | class Program
 846 | {
 847 |     // Fungsi untuk penjumlahan
 848 |     static double Tambah(double x, double y)
 849 |     {
 850 |         return x + y;
 851 |     }
 852 | 
 853 |     // Fungsi untuk pengurangan
 854 |     static double Kurang(double x, double y)
 855 |     {
 856 |         return x - y;
 857 |     }
 858 | 
 859 |     // Fungsi untuk perkalian
 860 |     static double Kali(double x, double y)
 861 |     {
 862 |         return x * y;
 863 |     }
 864 | 
 865 |     // Fungsi untuk pembagian
 866 |     static double Bagi(double x, double y)
 867 |     {
 868 |         if (y != 0)
 869 |         {
 870 |             return x / y;
 871 |         }
 872 |         else
 873 |         {
 874 |             Console.WriteLine("Tidak bisa membagi dengan nol");
 875 |             return 0;  // Mengembalikan nilai 0 jika pembagian dengan nol
 876 |         }
 877 |     }
 878 | 
 879 |     static void Main()
 880 |     {
 881 |         int pilihan;
 882 |         double num1, num2;
 883 | 
 884 |         // Menampilkan menu operasi
 885 |         Console.WriteLine("Pilih operasi:");
 886 |         Console.WriteLine("1. Tambah");
 887 |         Console.WriteLine("2. Kurang");
 888 |         Console.WriteLine("3. Kali");
 889 |         Console.WriteLine("4. Bagi");
 890 | 
 891 |         // Meminta input pilihan operasi
 892 |         Console.Write("Masukkan pilihan (1/2/3/4): ");
 893 |         pilihan = int.Parse(Console.ReadLine());
 894 | 
 895 |         // Meminta input angka
 896 |         Console.Write("Masukkan angka pertama: ");
 897 |         num1 = double.Parse(Console.ReadLine());
 898 |         Console.Write("Masukkan angka kedua: ");
 899 |         num2 = double.Parse(Console.ReadLine());
 900 | 
 901 |         // Melakukan operasi sesuai dengan pilihan pengguna
 902 |         switch (pilihan)
 903 |         {
 904 |             case 1:
 905 |                 Console.WriteLine("{0} + {1} = {2:F2}", num1, num2, Tambah(num1, num2));
 906 |                 break;
 907 |             case 2:
 908 |                 Console.WriteLine("{0} - {1} = {2:F2}", num1, num2, Kurang(num1, num2));
 909 |                 break;
 910 |             case 3:
 911 |                 Console.WriteLine("{0} * {1} = {2:F2}", num1, num2, Kali(num1, num2));
 912 |                 break;
 913 |             case 4:
 914 |                 double hasilBagi = Bagi(num1, num2);
 915 |                 if (num2 != 0)  // Mengecek apakah pembagian berhasil
 916 |                 {
 917 |                     Console.WriteLine("{0} / {1} = {2:F2}", num1, num2, hasilBagi);
 918 |                 }
 919 |                 break;
 920 |             default:
 921 |                 Console.WriteLine("Pilihan tidak valid!");
 922 |                 break;
 923 |         }
 924 |     }
 925 | }
 926 | 
927 | 928 |

9. Kasir

929 |

 930 | using System;
 931 | using System.Collections.Generic;
 932 | 
 933 | public class Barang
 934 | {
 935 |     public string Nama { get; set; }
 936 |     public double Harga { get; set; }
 937 |     public int Jumlah { get; set; }
 938 |     public double Total { get; set; }
 939 | }
 940 | 
 941 | class Program
 942 | {
 943 |     static void Main()
 944 |     {
 945 |         List daftarBarang = new List();
 946 |         double totalHarga = 0;
 947 |         int pilihan;
 948 |         string namaBarang;
 949 |         double harga;
 950 |         int jumlah;
 951 |         double uangDibayar;
 952 | 
 953 |         while (true)
 954 |         {
 955 |             Console.WriteLine("\nMenu Kasir");
 956 |             Console.WriteLine("1. Tambah barang");
 957 |             Console.WriteLine("2. Tampilkan rincian belanja");
 958 |             Console.WriteLine("3. Bayar");
 959 |             Console.WriteLine("4. Keluar");
 960 |             Console.Write("Pilih menu (1/2/3/4): ");
 961 |             pilihan = Convert.ToInt32(Console.ReadLine());
 962 | 
 963 |             if (pilihan == 1)
 964 |             {
 965 |                 Console.Write("Masukkan nama barang: ");
 966 |                 namaBarang = Console.ReadLine();
 967 | 
 968 |                 Console.Write("Masukkan harga barang: ");
 969 |                 harga = Convert.ToDouble(Console.ReadLine());
 970 | 
 971 |                 Console.Write("Masukkan jumlah barang: ");
 972 |                 jumlah = Convert.ToInt32(Console.ReadLine());
 973 | 
 974 |                 // Tambah barang
 975 |                 Barang barang = new Barang
 976 |                 {
 977 |                     Nama = namaBarang,
 978 |                     Harga = harga,
 979 |                     Jumlah = jumlah,
 980 |                     Total = harga * jumlah
 981 |                 };
 982 | 
 983 |                 daftarBarang.Add(barang);
 984 |                 totalHarga += barang.Total;
 985 | 
 986 |                 Console.WriteLine($"{namaBarang} x{jumlah} ditambahkan ke daftar belanja.");
 987 |             }
 988 |             else if (pilihan == 2)
 989 |             {
 990 |                 // Tampilkan rincian belanja
 991 |                 Console.WriteLine("\n--- Rincian Belanja ---");
 992 |                 foreach (var barang in daftarBarang)
 993 |                 {
 994 |                     Console.WriteLine($"{barang.Nama} - Harga: {barang.Harga:F2} - Jumlah: {barang.Jumlah} - Total: {barang.Total:F2}");
 995 |                 }
 996 |                 Console.WriteLine($"\nTotal Belanja: {totalHarga:F2}");
 997 |             }
 998 |             else if (pilihan == 3)
 999 |             {
1000 |                 // Tampilkan rincian belanja dan proses pembayaran
1001 |                 Console.WriteLine("\n--- Rincian Belanja ---");
1002 |                 foreach (var barang in daftarBarang)
1003 |                 {
1004 |                     Console.WriteLine($"{barang.Nama} - Harga: {barang.Harga:F2} - Jumlah: {barang.Jumlah} - Total: {barang.Total:F2}");
1005 |                 }
1006 |                 Console.WriteLine($"\nTotal Belanja: {totalHarga:F2}");
1007 | 
1008 |                 Console.Write("Masukkan uang yang dibayar: ");
1009 |                 uangDibayar = Convert.ToDouble(Console.ReadLine());
1010 | 
1011 |                 if (uangDibayar >= totalHarga)
1012 |                 {
1013 |                     double kembalian = uangDibayar - totalHarga;
1014 |                     Console.WriteLine($"\nTotal yang harus dibayar: {totalHarga:F2}");
1015 |                     Console.WriteLine($"Uang yang dibayar: {uangDibayar:F2}");
1016 |                     Console.WriteLine($"Kembalian: {kembalian:F2}");
1017 |                 }
1018 |                 else
1019 |                 {
1020 |                     Console.WriteLine("\nUang yang dibayar kurang dari total belanja. Transaksi dibatalkan.");
1021 |                 }
1022 |             }
1023 |             else if (pilihan == 4)
1024 |             {
1025 |                 Console.WriteLine("Terima kasih, sampai jumpa!");
1026 |                 break;
1027 |             }
1028 |             else
1029 |             {
1030 |                 Console.WriteLine("Pilihan tidak valid, coba lagi.");
1031 |             }
1032 |         }
1033 |     }
1034 | }
1035 | 
1036 | 1037 |

10. Kereta

1038 |

1039 |     using System;
1040 |     using System.Collections.Generic;
1041 |     
1042 |     class Kereta
1043 |     {
1044 |         public string NamaKereta { get; set; }
1045 |         public string Tujuan { get; set; }
1046 |         public string WaktuBerangkat { get; set; }
1047 |         public int Kapasitas { get; set; }
1048 |         public int Terisi { get; set; }
1049 |     
1050 |         public Kereta(string namaKereta, string tujuan, string waktuBerangkat, int kapasitas)
1051 |         {
1052 |             NamaKereta = namaKereta;
1053 |             Tujuan = tujuan;
1054 |             WaktuBerangkat = waktuBerangkat;
1055 |             Kapasitas = kapasitas;
1056 |             Terisi = 0;
1057 |         }
1058 |     
1059 |         public void TampilkanInfo()
1060 |         {
1061 |             Console.WriteLine($"Nama Kereta: {NamaKereta}");
1062 |             Console.WriteLine($"Tujuan: {Tujuan}");
1063 |             Console.WriteLine($"Waktu Berangkat: {WaktuBerangkat}");
1064 |             Console.WriteLine($"Kapasitas: {Kapasitas}");
1065 |             Console.WriteLine($"Terisi: {Terisi}/{Kapasitas}");
1066 |             Console.WriteLine();
1067 |         }
1068 |     
1069 |         public void PesanTiket(int jumlahTiket)
1070 |         {
1071 |             if (Terisi + jumlahTiket <= Kapasitas)
1072 |             {
1073 |                 Terisi += jumlahTiket;
1074 |                 Console.WriteLine($"Berhasil memesan {jumlahTiket} tiket untuk {NamaKereta}.");
1075 |             }
1076 |             else
1077 |             {
1078 |                 Console.WriteLine($"Maaf, hanya tersisa {Kapasitas - Terisi} tiket untuk {NamaKereta}.");
1079 |             }
1080 |         }
1081 |     }
1082 |     
1083 |     class SistemKereta
1084 |     {
1085 |         private List keretaList;
1086 |     
1087 |         public SistemKereta()
1088 |         {
1089 |             keretaList = new List();
1090 |         }
1091 |     
1092 |         public void TambahKereta(Kereta kereta)
1093 |         {
1094 |             keretaList.Add(kereta);
1095 |         }
1096 |     
1097 |         public void TampilkanJadwal()
1098 |         {
1099 |             Console.WriteLine("Jadwal Kereta:");
1100 |             foreach (var kereta in keretaList)
1101 |             {
1102 |                 kereta.TampilkanInfo();
1103 |             }
1104 |         }
1105 |     
1106 |         public void PesanTiketKereta(string namaKereta, int jumlahTiket)
1107 |         {
1108 |             bool ditemukan = false;
1109 |             foreach (var kereta in keretaList)
1110 |             {
1111 |                 if (kereta.NamaKereta == namaKereta)
1112 |                 {
1113 |                     kereta.PesanTiket(jumlahTiket);
1114 |                     ditemukan = true;
1115 |                     break;
1116 |                 }
1117 |             }
1118 |     
1119 |             if (!ditemukan)
1120 |             {
1121 |                 Console.WriteLine($"Kereta dengan nama {namaKereta} tidak ditemukan.");
1122 |             }
1123 |         }
1124 |     }
1125 |     
1126 |     class Program
1127 |     {
1128 |         static void Main()
1129 |         {
1130 |             SistemKereta sistemKereta = new SistemKereta();
1131 |     
1132 |             // Menambahkan kereta ke sistem
1133 |             Kereta kereta1 = new Kereta("Ekspres Jakarta", "Bandung", "10:00", 100);
1134 |             Kereta kereta2 = new Kereta("Argo Bromo", "Surabaya", "15:00", 150);
1135 |             Kereta kereta3 = new Kereta("Kelas Ekonomi", "Yogyakarta", "12:00", 200);
1136 |     
1137 |             sistemKereta.TambahKereta(kereta1);
1138 |             sistemKereta.TambahKereta(kereta2);
1139 |             sistemKereta.TambahKereta(kereta3);
1140 |     
1141 |             int pilihan;
1142 |             string namaKereta;
1143 |             int jumlahTiket;
1144 |     
1145 |             while (true)
1146 |             {
1147 |                 Console.WriteLine("\nMenu:");
1148 |                 Console.WriteLine("1. Tampilkan Jadwal Kereta");
1149 |                 Console.WriteLine("2. Pesan Tiket Kereta");
1150 |                 Console.WriteLine("3. Keluar");
1151 |     
1152 |                 Console.Write("Pilih menu (1/2/3): ");
1153 |                 pilihan = int.Parse(Console.ReadLine());
1154 |     
1155 |                 if (pilihan == 1)
1156 |                 {
1157 |                     sistemKereta.TampilkanJadwal();
1158 |                 }
1159 |                 else if (pilihan == 2)
1160 |                 {
1161 |                     Console.Write("Masukkan nama kereta yang ingin dipesan: ");
1162 |                     namaKereta = Console.ReadLine();
1163 |                     Console.Write("Masukkan jumlah tiket yang ingin dipesan: ");
1164 |                     jumlahTiket = int.Parse(Console.ReadLine());
1165 |                     sistemKereta.PesanTiketKereta(namaKereta, jumlahTiket);
1166 |                 }
1167 |                 else if (pilihan == 3)
1168 |                 {
1169 |                     Console.WriteLine("Terima kasih telah menggunakan sistem kereta.");
1170 |                     break;
1171 |                 }
1172 |                 else
1173 |                 {
1174 |                     Console.WriteLine("Pilihan tidak valid. Silakan coba lagi.");
1175 |                 }
1176 |             }
1177 |         }
1178 |     }
1179 | 
1180 | 1181 |

Mau Lebih Banyak Kode? Lihat Di Github Saya (Kode 11 - 20)

1182 |

Klik Disini 1183 | 1184 | 1205 | 1206 | 1207 | 1208 | --------------------------------------------------------------------------------