Menu
CoddyTech

Dodawanie produktu

Część sekcji Logika i przepływ programu ścieżki GDScript w Coddy. Lekcja 72 z 78.

challenge icon

Wyzwanie

Łatwy

Dodaj polecenie add. Zachowaj wszystko, co zostało napisane w poprzednim kroku.

Wiersz taki jak add Apple 0.5 100 dodaje element Apple z ceną 0.5 i stanem magazynowym 100. Nazwy elementów składają się z jednego słowa.

Najpierw napisz funkcję add_item(inventory, item, price, stock) nad _ready():

  1. Jeśli element jest już w inventory, wypisz Error: Item 'Apple' already exists. (z nazwą elementu) i niczego nie zmieniaj
  2. W przeciwnym razie zapisz {"price": price, "stock": stock} pod nazwą elementu i wypisz Item 'Apple' added successfully.

Następnie dodaj gałąź elif dla add w pętli. Sprawdź wiersz, zanim wywołasz funkcję:

  • Jeśli wiersz nie zawiera dokładnie 4 części, wypisz Error: Use add ITEM PRICE STOCK
  • Jeśli cena nie jest liczbą lub stan magazynowy nie jest liczbą całkowitą, wypisz Error: Price and stock must be numeric.
  • W przeciwnym razie wywołaj add_item(), konwertując cenę na float, a stan magazynowy na int

Dla poleceń add Apple 0.5 100, add Banana 0.2 50, add Apple 0.6 30, show i exit wynik to:

Inventory Management System
Item 'Apple' added successfully.
Item 'Banana' added successfully.
Error: Item 'Apple' already exists.
{ "Apple": { "price": 0.5, "stock": 100 }, "Banana": { "price": 0.2, "stock": 50 } }
Goodbye!

Spróbuj swoich sił

extends Node

func _ready():
	# Inwentarz: nazwa przedmiotu -> {"price": float, "stock": int}
	var inventory := {}
	print("Inventory Management System")

	while true:
		var line := OS.read_string_from_stdin()
		var parts := line.split(" ")
		var command := parts[0]

		if command == "exit":
			print("Goodbye!")
			break
		elif command == "show":
			print(inventory)
		else:
			print("Unknown command")

Wszystkie lekcje w sekcji Logika i przepływ programu

Poćwicz samodzielnie: Kompilator GDScript online