Obliczanie łącznej wartości zapasów
Część sekcji Podstawy ścieżki Lua w Coddy. Lekcja 80 z 90.
Wyzwanie
ŁatwyTeraz użyj następującego ekwipunku (możesz zastąpić nim obecny):
local inventory = {
{name = "Health Potion", price = 15, stock = 8},
{name = "Mana Potion", price = 12, stock = 5},
{name = "Strength Potion", price = 25, stock = 3},
{name = "Speed Potion", price = 18, stock = 2}
}
Twoim celem jest obliczenie łącznej wartości w złocie wszystkich mikstur znajdujących się w ekwipunku.
Oto co należy zrobić, krok po kroku:
1. Utwórz zmienną o nazwie totalValue i przypisz jej wartość 0. Dzięki temu będziesz śledzić sumę podczas przechodzenia przez kolejne mikstury.
2. Użyj numerycznej pętli for, aby przejść przez każdy element w tabeli inventory. Dla każdej mikstury pomnóż jej price przez jej stock, aby obliczyć jej wartość. Dodaj tę liczbę do totalValue.
3. Po pętli wyświetl wynik w następujący sposób:
Total inventory value: 291 goldUżyj konkatenacji ciągów znaków (..), aby połączyć tekst z wartością totalValue.
Spróbuj swoich sił
-- Create the initial inventory with health potion
inventory = {
{name = "Health Potion", price = 15, stock = 8}
}
-- Create mana potion
manaPotion = {name = "Mana Potion", price = 12, stock = 5}
-- Add mana potion to inventory
table.insert(inventory, manaPotion)
-- Display all potions in inventory
for i = 1, #inventory do
print(inventory[i].name .. ": " .. inventory[i].price .. " gold")
endWszystkie lekcje w sekcji Podstawy
4Operatory 2: relacyjne i logiczne
Operatory równościOperatory relacyjneOperator „and”Operator „or”Operator „not”Ewaluacja z krótkim spięciemWartości prawdziwe i fałszywePodsumowanie – prosta logika7Podstawy logiki warunkowej
Instrukcja if-thenInstrukcja if-then-elseInstrukcja elseifPowtórzenie — skrzynia skarbów10Tabele, część 1: styl listy
Czym jest tabela?Tworzenie tabeliDostęp do elementów według indeksuModyfikowanie elementów według indeksuOperator długości '#'table.insert()table.remove()Powtórzenie — zarządzanie członkami drużyny13Projekt: Prosty sklep z eliksirami
Konfiguracja projektuDodawanie eliksiru2Zmienne i typy danych
Czym jest zmienna?LiczbyŁańcuchy znakówWartości logiczneWartość „nil”Funkcja type()Konwencje nazewnictwaPowtórzenie — profil postaci5Podstawowe wyjście
Wyświetlanie literałówWyświetlanie zmiennychWyświetlanie wielu wartościŁączenie ciągów znaków i zmiennychFunkcja tostring()Dane wejścioweRzutowanie typówPowtórka — raport o statusiePowtórka — do 1208Podstawy manipulacji ciągami znaków
string.len()string.upper i string.lowerstring.sub()string.rep()string.find()Podsumowanie – formatuj nazwę użytkownika3Operatory 1: Arytmetyka i konkatenacja
Operatory arytmetyczneOperator moduloOperator potęgowaniaŁączenie ciągów znakówKolejność wykonywania operatorówPowtórka – proste obliczenia6Projekt: wyświetlanie statystyk postaci
Wiadomość powitalnaDeklarowanie statystyk postaci9Podstawy funkcji
Deklarowanie funkcjiWywoływanie funkcjiFunkcje z parametramiFunkcje z wieloma parametramiInstrukcja „return”Powtórzenie — kalkulator polaPoćwicz samodzielnie: Kompilator Lua online