Fermé vs Semi-ouvert
Fait partie de la section Logique et Flux du Journey Swift de Coddy — leçon 7 sur 56.
Swift possède deux opérateurs de plage qui se ressemblent presque mais signifient des choses différentes.
a...b est l'intervalle fermé. Il inclut b :
for i in 1...3 { print(i) }
// 1
// 2
// 3a..<b est l'intervalle semi-ouvert. Il s'arrête avant b :
for i in 1..<3 { print(i) }
// 1
// 2L'intervalle semi-ouvert est le choix naturel lorsque vous avez un décompte : 0..<arr.count couvre chaque index valide du tableau. Utilisez l'intervalle fermé lorsque les deux extrémités sont des valeurs réelles qui vous importent (comme une plage de scores ou une limite de note inclusive).
Défi
FacileLisez deux entiers (deux lignes) : a et b, avec a <= b. Affichez trois lignes :
- Les valeurs dans l'intervalle fermé
a...b, jointes par,sur une ligne - Les valeurs dans l'intervalle semi-ouvert
a..<b, jointes par,(ou une ligne vide quand l'intervalle est vide) - La somme de chaque valeur dans l'intervalle fermé
Pour l'entrée 1 puis 5, la sortie est :
1,2,3,4,5
1,2,3,4
15Aide-mémoire
Opérateurs d'intervalle en Swift :
a...b— intervalle fermé, inclut à la foisaetba..<b— intervalle semi-ouvert, inclutamais s'arrête avantb
for i in 1...3 { print(i) } // 1, 2, 3
for i in 1..<3 { print(i) } // 1, 2Utilisez 0..<arr.count pour couvrir chaque index de tableau valide. Utilisez des intervalles fermés lorsque les deux extrémités sont des valeurs significatives.
Essayez vous-même
let a = Int(readLine()!)!
let b = Int(readLine()!)!
// TODO: imprimer l'intervalle fermé joint, l'intervalle semi-ouvert joint, la somme de l'intervalle fermé
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Logique et Flux
1Les chaînes de caractères en profondeur
Comptage et indicesCasse et nettoyageRecherche dans les chaînesDécoupage et jointureRemplacement de sous-chaînesRécapitulatif - Vérification du nom d'utilisateur4Ensembles
Création d'ensemblesUnion et intersectionSoustraction et différence symétriqueSous-ensemble et sur-ensembleRécapitulatif - Filtre de tags7Projet - Suivi d'habitudes
Aperçu du projetMarquer comme terminé10Projet - Moteur de quiz
Présentation du projetPoser des questions2Intervalles et Pas
Fermé vs Semi-ouvertLe PasMéthodes d'intervalleIntervalles dans un SwitchRécapitulatif - Grille de calendrier5Fonctions d'ordre supérieur, Partie 1
MapFilterReduceChaînage de map, filter, reduceRécapitulatif - Statistiques de mots