Opgepast! Het lijkt erop dat je Dodona gebruikt binnen een andere webpagina waardoor mogelijk niet alles goed werkt. Laat dit weten aan de lesgever zodat die het probleem kan oplossen door een instelling in de leeromgeving aan te passen. Ondertussen kan je op deze link klikken om Dodona te openen in een nieuw venster.
Opgepast! De pagina kon niet volledig ingeladen worden, waarschijnlijk door een netwerkprobleem. Het kan zijn dat niet alle functionaliteit beschikbaar is. Probeer de pagina te verversen.
Csharp-oefening
RPG inventory
Meld je aan om je oplossing in te dienen en feedback te krijgen.
// RPG inventory program
using System;
using System.Collections.Generic;
class Submission
{
// -------------------------
// Subprograms
// -------------------------
static void add_item(List<string> inventory)
{
Console.WriteLine("What item are you adding to your inventory?");
string item = Console.ReadLine();
inventory.Add(item);
Console.WriteLine("Item added.");
}
static void search(List<string> inventory)
{
Console.WriteLine("What item do you want to see if you have?");
string item = Console.ReadLine();
if (inventory.Contains(item))
{
Console.WriteLine("You have the item.");
}
else
{
Console.WriteLine($"You do not have a {item}");
}
}
static void drop_item(List<string> inventory)
{
Console.WriteLine("What item do you want to drop?");
string item = Console.ReadLine();
// Check item exists
if (inventory.Contains(item))
{
inventory.Remove(item);
Console.WriteLine("Item dropped.");
}
else
{
Console.WriteLine("You do not have this item.");
}
}
static void look(List<string> inventory)
{
Console.WriteLine("Which inventory slot do you want to look at?");
int slot = Convert.ToInt32(Console.ReadLine());
if (slot < inventory.Count) {
Console.WriteLine($"You have a {inventory[slot]} in slot {slot}");
}
else
{
Console.WriteLine("Invalid slot.");
}
}
// Returns false when the player chooses to quit.
static bool choose_action(List<string> inventory)
{
Console.WriteLine($"You have {inventory.Count} items in your inventory.");
Console.WriteLine("What action do you want to take? (add/look/drop/search/quit)");
string action = Console.ReadLine();
switch (action)
{
case "add":
add_item(inventory);
break;
case "drop":
drop_item(inventory);
break;
case "look":
look(inventory);
break;
case "search":
search(inventory);
break;
case "quit":
return false;
}
Console.WriteLine();
return true;
}
// -------------------------
// Main program
// -------------------------
public static void Main(string[] args)
{
List<string> inventory = new List<string>() {"sword", "shield"};
while (choose_action(inventory)) {
}
}
}