Przewodnik po zakresach
Część sekcji Podstawy ścieżki Rust w Coddy. Lekcja 65 z 75.
W tej lekcji dowiemy się więcej o tym, jak działa range.
Podstawowa składnia zakresu:
start..end- Tworzy zakres od start do end (bez end)start..=end- Tworzy zakres od start do end (z end)
..end- Tworzy zakres od 0 do end (bez końca)..=end- Tworzy zakres od 0 do end (z końcem)
start..- Tworzy zakres od start do nieskończoności..- Tworzy zakres od minus nieskończoności do plus nieskończoności
Odwrócony zakres przy użyciu .rev():
(0..5).rev()- 4, 3, 2, 1, 0(0..=5).rev()- 5, 4, 3, 2, 1, 0
Przeskoki krokowe przy użyciu .step_by(n):
(0..10).step_by(2)- 0, 2, 4, 6, 8(0..10).rev().step_by(2)- 9, 7, 5, 3, 1
Na przykład:
// Podstawowy zakres rosnący
for i in 0..5 { }
// Wartości: 0, 1, 2, 3, 4// Zakres domknięty
for i in 0..=5 { }
// Wartości: 0, 1, 2, 3, 4, 5// Zakres w odwrotnej kolejności
for i in (0..5).rev() { }
// Wartości: 4, 3, 2, 1, 0// Przyrost co 2
for i in (0..10).step_by(2) { }
// Wartości: 0, 2, 4, 6, 8// Połącz odwrócenie kolejności ze zmianą kroku
for i in (0..10).rev().step_by(3) { }
// Wartości: 9, 6, 3, 0Wyzwanie
ŁatwyUtwórz program, który zaczyna od dwóch tablic liczb i dla pierwszej tablicy wypisuje wszystkie liczby w odwrotnej kolejności, przeskakując co 3 po pozycjach w tablicy, a dla drugiej wypisuje wszystkie liczby podzielne przez 4 w odwrotnej kolejności. Wypisz je w następującym formacie:
Array 1: [1], [2], [3], ...
Array 2: [1], [2], [3], ...Spróbuj swoich sił
fn main() {
let numbers1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26];
let numbers2 = [17, 53, 24, 77, 84, 98, 24, 36, 89, 31, 36];
print!("Array 1: ");
// Napisz tutaj swój kod
println!();
print!("Array 2: ");
// Napisz tutaj swój kod
}Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
4Operatory, część 1
Operatory arytmetyczneOperator moduloSkrócone operacje arytmetyczneOperatory porównaniaPorównywanie ciągów znaków7Podstawowe wejście i wyjście
Wyświetlanie w konsoliOdczytywanie danych od użytkownikaPowtórka – do 120Powtórka – prawda czy fałsz5Operatory, część 2
Operatory logiczne, część 1Operatory logiczne, część 2Powtórka — prosta logikaOperatory logiczne, część 311Funkcje
Deklarowanie funkcjiParametry i argumentyWartości zwracaneWiele wartości zwracanychPowtórka – funkcja SigmaPowtórka – funkcja walidująca14Iterowanie po tablicach
Przewodnik po zakresachUlepszona pętla forPożyczanie w pętliTypowe operacje na tablicach3Zmienne – część 2
Deklarowanie typuKonwencje nazewnictwaWnioskowanie o typiePodsumowanie – inicjalizacja zmiennychRzutowanie typów9Pętle
Pętla for dla sekwencjiPętla whileInstrukcja breakInstrukcja continuePętle zagnieżdżoneEtykiety pętliPętla nieskończonaPodsumowanie — dynamiczne dane wejściowe12Podstawy tablic
Deklarowanie tablicTablica jako parametrDostęp do elementówModyfikowanie tablicPodsumowanie — czytelny wydruk tablicy15Operacje na ciągach znaków
Metody ciągów znakówMakro format!Konwersja ciągów znakówPowtórka — formatowaniePoćwicz samodzielnie: Kompilator Rust online