Rozsahy

Intermediate Julia

Anthony Markham

Quantitative Developer

Rozsahy – UnitRange

  • range je objekt s vlastním datovým typem.
  • Rozsah vytvoříme zadáním začátku a konce, přičemž oba jsou včetně.
my_range = 1:10  # start:stop
  • Výpis range neodhalí posloupnost hodnot uložených v objektu!
my_range = 1:10
println(my_range)
1:10
  • UnitRange je nejzákladnější typ rozsahu.
Intermediate Julia

Rozsahy – StepRange

  • Pro vytvoření StepRange zadáme hodnotu kroku, která určuje jednotlivé prvky rozsahu.
my_range = 0:10:50  # start:step:stop
  • Hodnota step určuje, jaká bude následující hodnota v rozsahu.
Intermediate Julia

Rozsahy – definice StepRange

  • Definovaný StepRange má:
    • hodnotu start rovnu jedné
    • hodnotu step rovnu 10
    • hodnotu end rovnu 50
my_range = 1:10:50
println(my_range)
1:10:50
Intermediate Julia

Rozsahy – iterace for

  • Hodnoty rozsahu rozbalíme iterací přes rozsah.
  • K tomu lze použít smyčku for, stejně jako u vektoru.
my_range = 0:10:50
for value in my_range
    println(value)
end
0
10
20
30
40
50
Intermediate Julia

Rozsahy – přístup

  • K rozsahům lze přistupovat podle prvku, stejně jako u vektorů.
  • start, step a stop slouží k získání odpovídajících hodnot rozsahu.
my_range = 0:10:50
println(my_range[2])
10
Intermediate Julia

Rozsahy – přístup

  • K rozsahům lze přistupovat podle prvku, stejně jako u vektorů.
  • start, step a stop slouží k získání odpovídajících hodnot rozsahu.
println(my_range.start)
println(my_range.step)
println(my_range.stop)
0
10
50
Intermediate Julia

Rozsahy – iterace while

  • Iterace pomocí smyčky while vyžaduje přístup k jednotlivým prvkům rozsahu.
  • Rozsahy používají notaci [] pro přístup k prvkům, stejně jako vektory.
  • Nastavujeme i = 1, protože Julia indexuje od 1, nikoli od 0!
i = 1

while i <= length(my_range)
    println(my_range[i])
    i = i + 1
end
Intermediate Julia

Rozsahy – rozbalení splat

  • Operátor splat ... slouží k rozbalení iterovatelného objektu.
my_range = 0:10:50
println([my_range...])
[0, 10, 20, 30, 40, 50]
  • Toto je pouze jeden jednoduchý příklad použití operátoru splat.
Intermediate Julia

Pojďme cvičit!

Intermediate Julia

Preparing Video For Download...