();
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 |
--------------------------------------------------------------------------------