Cześć, mam pytanie co oznacza iteracja z określoną i nieokreśloną liczbą powtórzeń? O co z tym chodzi?
Najlepiej jakbys podal pelna tresc zadania. Mozna zgadywac, ze chodzi o ograniczoną lub nie liczbę powtórek :)
Szczerze to nie jest treść zadania tylko prezentacja na ten temat. Mam do zrobienia prezentacja na temat nadany w tytule czyli ,,Pojęcie iteracji z określoną i nieokreśloną liczbą powtórzeń", nie mam pojęcia o czym napisać.
Dosłownie — to, czy jest z góry zadana liczba powtórzeń, czy nie. :P Czyli różnica pomiędzy for (;;;)
i jakimś brake
iem w ciele pętli (nieokreślona liczba powtórzeń), a for (unsigned int i = 0; i < 10; ++i)
, gdzie samo i
się już w ciele pętli nie zmienia.
Nie mam pojęcia, co więcej o tym można napisać…
Hm.
Moze zaprezentuj rozne podejscia do iteracji na bazie roznych jezykow programowania? Przykładowo w Rust jest mozliwosc osiagniecia tego samego efektu na rozne sposoby. I tak wyrzucenie 10 cyfr mozna zrobic za pomoca loop{}
:
let mut counter = 0;
loop {
counter += 1
println!("{}", counter);
if counter == 10 {
break;
}
}
Lub for x in x--y
:
for counte in 0..10 {
println!("CounterB: {}", counte);
}
Sam jezyk dostarcza jeszcze sporo dodatkowych iteracji np. taka, ktora konsumuje elementy i nie sa one pozniej dostepne:
let it = vec![0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
for n in it.into_iter() {
println!("Consumed: {}", n);
}
// Elementy z 'it' w tym miejscu nie sa juz dostepne
// println!("{:?}", it);
Lub wersja przez "pozyczenie":
let mut it = vec![0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
for n in it.iter_mut() {
println!("Consumed: {}", n);
}
// Tutaj nadal masz dostep do elementow
println!("{:?}", ti);
Tak samo w Go konstrukcyjnie mozna uzyc klasycznego
for i := 0; i < 10; i++ {
fmt.Println(i)
}
Lub range
:
for x, y := range collection {
fmt.Println(x, y)
}
I tak dalej, i tak dalej. Wszystkie jezyki oferuja podobne rozwiaazania ale niektore z nich dzialaja w nieco inny sposob. A najprosciej dopytac zlecajacego prezentacje ;-)