while Döngüsü
Coddy'nin Lua Journey'sinin Temeller bölümünün bir parçası. Ders 71 / 90.
Bazen, örneğin oyuncunun canları bitene kadar, kodu kaç kez tekrarlayacağınızı önceden bilmeden tekrarlamanız gerekir. while döngüsü bunun için idealdir: bir koşul true kaldığı sürece aynı kodu tekrar tekrar çalıştırır.
Bir while döngüsünün temel sözdizimi şöyledir:
while condition do
-- tekrarlanacak kod
endİşte 1'den 3'e kadar sayıları yazdıran basit bir örnek:
local count = 1
while count <= 3 do
print(count)
count = count + 1
endBu döngü, önce count <= 3 koşulunun doğru olup olmadığını kontrol ederek çalışır. Koşul doğruysa, içindeki kod çalışır; geçerli sayıyı yazdırır ve sayacı artırır. Ardından koşulu yeniden kontrol eder ve koşul yanlış olana kadar bu işlem tekrarlanır.
Görev
KolayBir oyuncunun iyileşme sürecini izlemek için while döngüsü kullanan bir sağlık izleme sistemi oluştur. Önce playerHealth adlı bir değişken oluştur ve 25 değerini ata. Ardından maxHealth adlı başka bir değişken oluştur ve 100 değerini ata.
Oyuncunun sağlığı maksimum sağlığından düşük olduğu sürece devam eden bir while döngüsü yaz. Döngünün içinde önce mevcut sağlık değerini yazdır, ardından playerHealth değerini 15 artır. Yazdırma işlemi artırmadan önce gerçekleştiğinden, yazdırılan son değer 85 olur: 15 eklendikten sonra (playerHealth değerini 100 yaptığı için) döngü koşulu yeniden kontrol edilir ve 100, maxHealth değerinden küçük olmadığından döngü 100 yazdırılmadan durur.
Beklenen çıktı:2540557085
Kendin dene
-- Oyuncunun sağlığını ve maksimum sağlığını başlangıç değerlerine ayarla
local playerHealth = 25
local maxHealth = 100
-- TODO: Kodunu buraya yaz
-- playerHealth < maxHealth olduğu sürece devam eden bir while döngüsü oluştur
-- Döngünün içinde: mevcut sağlığı yazdır, ardından playerHealth değerini 15 artırBu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temeller bölümündeki tüm dersler
4Operatörler 2 İlişkisel ve Mantıksal
Eşitlik Operatörleriİlişkisel Operatörler'and' Operatörü'or' Operatörü'not' OperatörüKısa Devre DeğerlendirmesiTruthy ve Falsy DeğerlerÖzet - Basit Mantık10Tablolar Bölüm 1: Liste Stili
Tablo Nedir?Tablo Oluşturmaİndeks ile Elemanlara Erişmeİndeks ile Elemanları DeğiştirmeUzunluk Operatörü '#'table.insert()table.remove()Özet - Parti Üyelerini Yönetme13Proje: Basit İksir Dükkanı
Proje Kurulumuİksir Ekleme2Değişkenler ve Veri Tipleri
Değişken Nedir?SayılarStringlerBooleanlar'nil' Değeritype() Fonksiyonuİsimlendirme KurallarıÖzet - Karakter Profili5Temel Çıktı
Sabitleri YazdırmaDeğişkenleri YazdırmaBirden Fazla Değer YazdırmaMetinleri ve Değişkenleri Birleştirmetostring() FonksiyonuGirdiTip DönüşümüÖzet - Durum RaporuÖzet - 120'ye Kadar8String Manipülasyonu Temelleri
string.len()string.upper & string.lowerstring.sub()string.rep()string.find()Özet - Kullanıcı Adı Biçimlendirme3Operatörler 1 Aritmetik ve Birleştirme
Aritmetik OperatörlerMod Alma OperatörüÜs Alma OperatörüString BirleştirmeOperatör ÖnceliğiÖzet - Basit Hesaplamalar6Proje: Karakter İstatistiklerini Görüntüleme
Hoş Geldiniz MesajıKarakter İstatistiklerini Tanımlama9Fonksiyon Temelleri
Fonksiyon TanımlamaFonksiyon ÇağırmaParametreli FonksiyonlarÇoklu Parametreli Fonksiyonlar'return' İfadesiÖzet - Alan Hesaplayıcı12Döngü Temelleri
while Döngüsürepeat-until DöngüsüSayısal for DöngüsüAdımlı for Döngüsü'break' İfadesiÖzet - Geri SayımKendi başına pratik yap: Online Lua derleyicisi