En Küçük ve En Büyük Değeri Bulma
Coddy'nin GDScript Journey'sinin Mantık ve Akış bölümünün bir parçası. Ders 50 / 78.
Dizilerin en küçük ve en büyük öğeyi döndüren min() ve max() yöntemleri vardır:
var temps := [18, 25, 9, 31, 22]
print(temps.min()) # 9
print(temps.max()) # 31Genel min() ve max() işlevleri, onlara verdiğin sayıları karşılaştırır; bu, iki veya üç değer için kullanışlıdır:
print(max(4, 12, 7)) # 12
var hp: int = min(120, 100) # 100, asla 100'ün üstüne çıkmazDizeler, Unicode kodlarına göre karakter karakter karşılaştırılır. Her büyük harf, her küçük harften önce gelir:
var words := ["kiwi", "apple", "Fig"]
print(words.min()) # Fig
print(words.max()) # kiwiAynı kural metin olarak saklanan sayılar için de geçerlidir: "9", "56" değerinden büyüktür, çünkü 9 karakteri 5 karakterinden sonra gelir. Sayıları karşılaştırmadan önce girdiyi int() ile dönüştürün.
Boş bir dizide her iki yöntem de null döndürür. En büyük değerin nerede olduğunu bulmak için onu find() metoduna aktarın: temps.find(temps.max()) sonucu 3 olur. Bir sözlük için değerlerinin en büyüğünü alın ve find_key() ile anahtarını bulun; bu yöntem, bu değere sahip ilk anahtarı döndürür:
var scores := {"Mia": 120, "Leo": 95, "Ana": 140}
var best: int = scores.values().max()
print(scores.find_key(best), " ", best) # Ana 140max() her türden bir değer döndürür; bu nedenle := yazmak yerine değişkenin türünü bildirin (var best: int).
Görev
KolayProgram iki satır okur: boşluklarla ayrılmış tam sayılar ve boşluklarla ayrılmış sözcükler. Her satırda en az bir değer bulunur.
min() ve max() ile en küçük ve en büyük sayıyı, ardından en küçük ve en büyük sözcüğü yazdırın. Sayıları metin olarak değil, sayı olarak karşılaştırın. 42 17 23 56 9 34 ve kiwi apple banana cherry date girdileri için çıktı şöyledir:
Smallest number: 9
Largest number: 56
Smallest word: apple
Largest word: kiwiKendin dene
extends Node
func _ready():
var number_texts := OS.read_string_from_stdin().split(" ", false)
var words := Array(OS.read_string_from_stdin().split(" ", false))
# Sayıları int türüne dönüştür, ardından dört sonucu yazdır
pass
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
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