Trier et inverser
Fait partie de la section Fondamentaux du Journey GDScript de Coddy. Leçon 76 sur 92.
sort() place les éléments d’un tableau dans l’ordre croissant. Elle modifie le tableau lui-même :
var scores := [5, 1, 9, 3]
scores.sort()
print(scores)[1, 3, 5, 9]sort() ne renvoie rien, donc print(scores.sort()) est une erreur. Trie d’abord, puis affiche.
Les chaînes sont triées par ordre alphabétique, et les lettres majuscules viennent avant les minuscules : ["bob", "Cleo", "ana"] devient ["Cleo", "ana", "bob"].
reverse() inverse l’ordre actuel du tableau, sans le trier. Pour effectuer un tri par ordre décroissant, trie d’abord le tableau, puis inverse-le :
var hp := [7, 2, 9, 4]
hp.reverse()
print(hp)
hp.sort()
hp.reverse()
print(hp)[4, 9, 2, 7]
[9, 7, 4, 2]Affecter un tableau à une autre variable ne le copie pas : les deux variables utilisent alors le même tableau, et trier l’un trie l’autre. Pour conserver l’ordre d’origine, triez une copie créée avec duplicate() :
var original := [5, 3, 9]
var sorted_copy := original.duplicate()
sorted_copy.sort()
print(original, " ", sorted_copy)[5, 3, 9] [3, 5, 9]Défi
FacileLe programme lit une ligne de nombres entiers séparés par des virgules dans numbers (déjà écrit). Affiche trois lignes :
Original:et les nombres dans leur ordre d’origineAscending:et les nombres triés du plus petit au plus grandDescending:et les nombres triés du plus grand au plus petit
Pour l’entrée 5,3,9,1, la sortie est :
Original: [5, 3, 9, 1]
Ascending: [1, 3, 5, 9]
Descending: [9, 5, 3, 1]Essayez vous-même
extends Node
func _ready():
var parts := OS.read_string_from_stdin().split(",")
var numbers: Array[int] = []
for part in parts:
numbers.append(int(part))
# Écrivez votre code ci-dessous
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
4Opérateurs, partie 1
Opérateurs arithmétiquesDivision entièreOpérateur moduloRaccourcis arithmétiquesRécapitulatif – calculs simplesOpérateurs de comparaison7Entrées/sorties de base
SortieSortie avec des variablesFormatage des chaînesEntréeConversion de typeRécapitulatif - Jusqu’à 120Récapitulatif - Vrai ou faux10Fonctions
Déclarer une fonctionArgumentsValeur de retourTypes de retourRécapitulatif - Fonction SigmaRécapitulatif - Fonction de validationValeurs par défaut5Opérateurs, partie 2
Opérateurs logiques, partie 1Opérateurs logiques, partie 2Récapitulatif - Logique simpleOpérateurs logiques, partie 3Opérateur ternaire8Calculateur de partage de l’addition
Message de bienvenueSaisie des données11FizzBuzz avec une touche originale
Présentation du jeuLa fonction FizzBuzz14Tableaux : notions avancées
Découpage des tableauxOpérateurs de séquenceAppartenanceTrier et inverser3Variables, partie 2
Déclaration de typeInférence de typeConstantesRécapitulatif - Initialiser les variablesConversion de type6Prise de décision
Instruction ifIf - ElseRécapitulatif - Calculatrice simpleIf - Else imbriquésInstruction match9Boucles
Boucle forBoucle whileBreakContinueRécapitulatif - FactorielleLa fonction rangeBoucle imbriquéeRécapitulatif - Saisie dynamiqueEntraînez-vous par vous-même : Compilateur GDScript en ligne