Mencari Nilai Minimum dan Maksimum
Termasuk bagian Logika dan Alur dalam perjalanan GDScript di Coddy. Pelajaran 50 dari 78.
array memiliki method min() dan max(), yang mengembalikan elemen terkecil dan terbesar:
var temps := [18, 25, 9, 31, 22]
print(temps.min()) # 9
print(temps.max()) # 31Fungsi global min() dan max() membandingkan angka yang kamu berikan, yang berguna untuk dua atau tiga nilai:
print(max(4, 12, 7)) # 12
var hp: int = min(120, 100) # 100, tidak pernah melebihi 100string dibandingkan karakter demi karakter berdasarkan kode Unicode-nya. Setiap huruf kapital berada sebelum setiap huruf kecil:
var words := ["kiwi", "apple", "Fig"]
print(words.min()) # Fig
print(words.max()) # kiwiAturan yang sama berlaku untuk angka yang disimpan sebagai teks: "9" lebih besar daripada "56", karena karakter 9 muncul setelah 5. Konversi input dengan int() sebelum membandingkan angka.
Pada array kosong, kedua method mengembalikan null. Untuk menemukan di mana nilai terbesar berada, berikan nilai itu ke find(): temps.find(temps.max()) menghasilkan 3. Untuk dictionary, ambil nilai terbesar dari nilai-nilainya, lalu cari key-nya dengan find_key(), yang mengembalikan key pertama dengan nilai tersebut:
var scores := {"Mia": 120, "Leo": 95, "Ana": 140}
var best: int = scores.values().max()
print(scores.find_key(best), " ", best) # Ana 140max() mengembalikan nilai dengan tipe apa pun, jadi nyatakan tipe variabelnya (var best: int), bukan menulis :=.
Tantangan
MudahProgram membaca dua baris: bilangan bulat yang dipisahkan oleh spasi, dan kata-kata yang dipisahkan oleh spasi. Setiap baris memiliki setidaknya satu nilai.
Cetak angka terkecil dan terbesar, lalu kata terkecil dan terbesar, dengan min() dan max(). Bandingkan angka sebagai angka, bukan sebagai teks. Untuk input 42 17 23 56 9 34 dan kiwi apple banana cherry date, outputnya adalah:
Smallest number: 9
Largest number: 56
Smallest word: apple
Largest word: kiwiCoba sendiri
extends Node
func _ready():
var number_texts := OS.read_string_from_stdin().split(" ", false)
var words := Array(OS.read_string_from_stdin().split(" ", false))
# Ubah angka-angka menjadi int, lalu cetak keempat hasilnya
pass
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Logika dan Alur
1Mendalami String
Method untuk StringMencari dalam StringMengganti dan Menghapus SpasiMemisahkan dan MenggabungkanUlasan: Memeriksa Nama Pengguna4Dictionary Bagian 2
Dictionary BersarangArray berisi DictionaryMenggabungkan DictionaryMenyalin DictionaryRangkuman: Penghitung Frekuensi10Fungsi Lanjutan
Mengembalikan Beberapa NilaiFungsi Lambda Bagian 1Fungsi Lambda Bagian 2Ringkasan: Mengurutkan dengan LambdaFungsi Rekursif Bagian 1Fungsi Rekursif Bagian 2Ringkasan: Menjumlahkan array Bersarang13Sistem Manajemen Inventaris
Ikhtisar ProyekTambahkan Barang2Pengambilan Keputusan Lanjutan
Pencocokan dengan VariabelGuard pada MatchPola arrayPola dictionaryPemeriksaan KeanggotaanUlasan: Parser Perintah5Aplikasi Buku Kontak
Tampilkan MenuTambah Kontak8Pengelola Data Siswa
Gambaran Umum ProyekTambah Siswa11Fungsi Tingkat Tinggi
Method mapMethod filterMethod reduceany dan allUlasan: Validator EmailUlasan: Pemroses Angka3Array Multidimensi
Dasar-Dasar Array 2DMengakses Elemen Array 2DNested Loop dengan Array 2DRangkuman: Array 2DArray Tidak BeraturanPola Umum Array 2DRangkuman: Papan Permainan6Set dengan Dictionary
Apa Itu Set?Dictionary sebagai SetMenambahkan dan MenghapusUnion dan IntersectionSelisih SetRangkuman: Menghapus Duplikat9Agregasi Data Lanjutan
Menjumlahkan NilaiMencari Nilai Minimum dan MaksimumPengurutan KustomUlasan: Pengurut dictionaryLatihan sendiri: Compiler GDScript online