Ürün Ekle
Coddy'nin GDScript Journey'sinin Mantık ve Akış bölümünün bir parçası. Ders 72 / 78.
Görev
Kolayadd komutunu ekle. Önceki adımda yazdığın her şeyi koru.
add Apple 0.5 100 gibi bir satır, Apple öğesini 0.5 fiyatıyla ve 100 stok miktarıyla ekler. Öğe adları tek kelimeden oluşur.
Önce _ready() fonksiyonunun üstüne add_item(inventory, item, price, stock) fonksiyonunu yaz:
- Öğe zaten
inventoryiçindeyseError: Item 'Apple' already exists.yazdır (öğe adıyla birlikte) ve hiçbir şeyi değiştirme - Aksi takdirde,
{"price": price, "stock": stock}değerini öğe adının altında sakla veItem 'Apple' added successfully.yazdır
Ardından döngüye add için bir elif dalı ekle. Fonksiyonu çağırmadan önce satırı kontrol et:
- Satır tam olarak
4parçadan oluşmuyorsaError: Use add ITEM PRICE STOCKyazdır - Fiyat bir sayı değilse veya stok bir tam sayı değilse
Error: Price and stock must be numeric.yazdır - Aksi takdirde, fiyatı
floattürüne ve stoğuinttürüne dönüştürerekadd_item()fonksiyonunu çağır
add Apple 0.5 100, add Banana 0.2 50, add Apple 0.6 30, show ve exit komutları için çıktı şöyledir:
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!Kendin dene
extends Node
func _ready():
# Envanter: ürün adı -> {"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")
Mantık ve Akış bölümündeki tüm dersler
1String’leri Derinlemesine İnceleme
String MetotlarıString’lerde AramaDeğiştirme ve KırpmaBölme ve BirleştirmeTekrar: Kullanıcı Adı Kontrolü4Sözlükler Bölüm 2
İç İçe SözlüklerSözlük DizileriSözlükleri BirleştirmeSözlükleri KopyalamaTekrar - Frekans Sayacı10İleri Düzey Fonksiyonlar
Birden Fazla Değer DöndürmeLambda Fonksiyonları Bölüm 1Lambda Fonksiyonları Bölüm 2Tekrar - Lambda ile SıralamaÖzyinelemeli Fonksiyonlar Bölüm 1Özyinelemeli Fonksiyonlar Bölüm 2Tekrar - İç İçe Dizilerin Toplamı13Envanter Yönetim Sistemi
Projeye Genel BakışÜrün Ekle2İleri Düzey Karar Verme
Değişkenlerle EşleştirmeEşleştirme KoşullarıDizi KalıplarıSözlük KalıplarıÜyelik KontrolleriÖzet - Komut Ayrıştırıcı5Rehber Uygulaması
Menüyü GörüntüleKişi Ekle8Öğrenci Kayıt Yöneticisi
Proje Genel BakışıÖğrenci Ekle11Üst Düzey Fonksiyonlar
map Metodufilter Metodureduce Metoduany ve allTekrar - E-posta DoğrulayıcıTekrar - Sayı İşleyici3Çok Boyutlu Diziler
2B Dizilere Giriş2B Dizi Elemanlarına Erişim2B Dizilerle İç İçe DöngülerTekrar - 2B DizilerDüzensiz DizilerYaygın 2B Dizi ÖrüntüleriTekrar - Oyun Tahtası6Sözlüklerle Kümeler
Küme Nedir?Küme Olarak SözlükEkleme ve SilmeBirleşim ve KesişimKüme FarkıTekrar: Yinelenenleri Silme9Gelişmiş Veri Toplama
Değerleri ToplamaEn Küçük ve En Büyük Değeri BulmaÖzel SıralamaÖzet - Sözlük SıralayıcıKendi başına pratik yap: Online GDScript derleyicisi