iteracja w algorytmach

Rastaman697
Użytkownik
Użytkownik
Posty: 79
Rejestracja: 27 wrz 2009, o 11:26
Płeć: Mężczyzna
Lokalizacja: szczebrzeszyn
Podziękował: 5 razy

iteracja w algorytmach

Post autor: Rastaman697 »

mam do was prośbę mógłby ktoś wytłumaczyć mi na czym polega iteracja w schemacie blokowym i jak ją zastosować niby mam to w podręczniku a nic nie rozumiem z tego. jesli można prosić to aby było to przedstawione jako obraz bo po kodach c++ czy może jeszcze jakiś innych nie wiem o co chodzi. A mam mieć sprawdzian
exother
Użytkownik
Użytkownik
Posty: 97
Rejestracja: 28 wrz 2009, o 15:01
Płeć: Mężczyzna
Podziękował: 3 razy
Pomógł: 9 razy

iteracja w algorytmach

Post autor: exother »

Kod: Zaznacz cały

DOPÓKI <warunek> WYKONUJ:
działasz na zmiennej, której dotyczy <warunek>
"skaczesz" do góry
Rastaman697
Użytkownik
Użytkownik
Posty: 79
Rejestracja: 27 wrz 2009, o 11:26
Płeć: Mężczyzna
Lokalizacja: szczebrzeszyn
Podziękował: 5 razy

iteracja w algorytmach

Post autor: Rastaman697 »

tylko ja narazie nic z tego nie rozumiem jestem na poziomoe Liceum i u nas nauczyciel bardzo z materiałem skacze można poprosić aby ktoś zrobił ryzunek np. w paint i by go opisał dlaczego tak a nie inaczej
Awatar użytkownika
kadiii
Użytkownik
Użytkownik
Posty: 642
Rejestracja: 20 gru 2005, o 21:04
Płeć: Mężczyzna
Lokalizacja: Wrocław
Pomógł: 130 razy

iteracja w algorytmach

Post autor: kadiii »

Iteracja to inaczej jeden przebieg jakiegoś ciągu operacji - jeśli na schemacie blokowym wracasz do pewnego momentu to wszystkie operacje wykonane do tej pory(od punktu powrotu) nazywane są właśnie iteracją.
Przyykład, tekstowy, ale powinien starczyć:
x=0;
1.Dopóki x<2 rób:
- zwiększ x o 1
2.Zakończ
Oto krótki algorytm, przedstawiajacy nic innego jak pętlę. I teraz mamy:
1 iteracja:
x=0
0<2
x=1
2 iteracja:
x=1
1<2
x=2
3 iteracja:
x=2
2<2
Koniec

Po wykonaniu tego algorytmu można powiedzieć, że pętla wewnątrz algorytmu wykonała się po 3 iteracjach. W iteracji nr 3 został niespełniony warunek pętli(x<2).
Myślę, że takie cos powinno ci dac obraz o tym czym jest iteracja, łatwo przełożysz to na schemat blokowy.
exother
Użytkownik
Użytkownik
Posty: 97
Rejestracja: 28 wrz 2009, o 15:01
Płeć: Mężczyzna
Podziękował: 3 razy
Pomógł: 9 razy

iteracja w algorytmach

Post autor: exother »

Rastaman697 pisze:tylko ja narazie nic z tego nie rozumiem jestem na poziomoe Liceum i u nas nauczyciel bardzo z materiałem skacze można poprosić aby ktoś zrobił ryzunek np. w paint i by go opisał dlaczego tak a nie inaczej
Tu na prawdę nie ma filozofii, a nauczyciel nie skacze z materiałem.

Po prostu masz zmienną i i warunek załóżmy i<10, który oznacza dokładnie (dopóki i jest mniejsze od 10).

Więc zapis:

Kod: Zaznacz cały

int i=0;
while (i<10) {
  i++;
}
oznacza -> dopóki i jest mniejsze od 10 wykonuj i++ (czyli zwiększenie zmiennej i o 1).
Wykona się ona zatem dokładnie 10 razy, bo:

1. START 0 jest mniejsze od 10
2. i++ (1) jest mniejsze od 10
3. i++ (2) jest mniejsze od 10
4. i++ (3) jest mniejsze od 10
5. i++ (4) jest mniejsze od 10
6. i++ (5) jest mniejsze od 10
7. i++ (6) jest mniejsze od 10
8. i++ (7) jest mniejsze od 10
9. i++ (8) jest mniejsze od 10
10. i++ (9) jest mniejsze od 10
11. i++ (10) jest równe 10, więc nie jest mniejsze, więc KONIEC (operacja nie wykona się tym razem)

@up: Iteracja to też powtarzanie tej samej instrukcji w pętli.
Rastaman697
Użytkownik
Użytkownik
Posty: 79
Rejestracja: 27 wrz 2009, o 11:26
Płeć: Mężczyzna
Lokalizacja: szczebrzeszyn
Podziękował: 5 razy

iteracja w algorytmach

Post autor: Rastaman697 »

Dobra może ja zrobię tak znajdę jakieś zadanie psotaram się ję zrobić ze skanuje podam treść a wy mnie poprawicie

-- 8 gru 2009, o 21:07 --

Wprowadź algorytm obliczania sumy 5 liczb. a jeśli zadanie by brzmiało następująco" Napisz algorytm obliczania największej liczby pośród 5 liczb" znaczyło by to samo ??

-- 8 gru 2009, o 21:09 --

Awatar użytkownika
kadiii
Użytkownik
Użytkownik
Posty: 642
Rejestracja: 20 gru 2005, o 21:04
Płeć: Mężczyzna
Lokalizacja: Wrocław
Pomógł: 130 razy

iteracja w algorytmach

Post autor: kadiii »

Wprowadź algorytm obliczania sumy 5 liczb. a jeśli zadanie by brzmiało następująco" Napisz algorytm obliczania największej liczby pośród 5 liczb" znaczyło by to samo ??
NIe bo w pierwszym liczysz sume liczb a w drugim maksimum.

Co do schematu to jest prawie dobry. Dodaj zmienną na początku określająca ilość elementów(np. N) i zrób zamiast bloku "Wprowadź 5" -> "Wprowadź N" i blok "N:=5" i zmień warunek na "i<N". Ewentualnie wyrzuć w ogóle blok "Wprowadź 5", wtedy będzie ściśle z treścią czyli zawsze suma dokładnie 5. Blok "i:=i+1" postaw przed warunkiem "i<5"
Rastaman697
Użytkownik
Użytkownik
Posty: 79
Rejestracja: 27 wrz 2009, o 11:26
Płeć: Mężczyzna
Lokalizacja: szczebrzeszyn
Podziękował: 5 razy

iteracja w algorytmach

Post autor: Rastaman697 »

A mógłby ktoś mi pokazać jak wygląda schemat blokowy dp takiego zadania.
Skonstruuj schemat blokowy algorytmu sprawdzającego, czy z trzech wprowadzonych liczb naturalnych a,b,c mozna zbudować trójkąt
Awatar użytkownika
kadiii
Użytkownik
Użytkownik
Posty: 642
Rejestracja: 20 gru 2005, o 21:04
Płeć: Mężczyzna
Lokalizacja: Wrocław
Pomógł: 130 razy

iteracja w algorytmach

Post autor: kadiii »

Skorzystaj z nierówności \(\displaystyle{ |b-c|<a<b+c}\)
Masz tu 2 warunki, które musza być jednocześnie spełnione aby istniał trójkąt. Połączenie warunków zrób polskim spójikiem "i" lub matematyczną koniunkcją(iloczyn logiczny). Reszta analogicznie jak w poprzednim, tyle, że tu nie masz pętli.
Rastaman697
Użytkownik
Użytkownik
Posty: 79
Rejestracja: 27 wrz 2009, o 11:26
Płeć: Mężczyzna
Lokalizacja: szczebrzeszyn
Podziękował: 5 razy

iteracja w algorytmach

Post autor: Rastaman697 »

a mógłbyś mi powiedzieć co to jest mod i o co w nim chodzi-- 8 gru 2009, o 22:27 --a mógłbyś mi powiedzieć co to jest mod i o co w nim chodzi
Awatar użytkownika
kadiii
Użytkownik
Użytkownik
Posty: 642
Rejestracja: 20 gru 2005, o 21:04
Płeć: Mężczyzna
Lokalizacja: Wrocław
Pomógł: 130 razy

iteracja w algorytmach

Post autor: kadiii »

Rozumiem , ze to odrębne pytanie. Wspomniany mod to zapewne operator reszty z dzielenia -np. 5 mod 2 = 1 bo reszta z dzielenia 5 przez 2 to 1.
Rastaman697
Użytkownik
Użytkownik
Posty: 79
Rejestracja: 27 wrz 2009, o 11:26
Płeć: Mężczyzna
Lokalizacja: szczebrzeszyn
Podziękował: 5 razy

iteracja w algorytmach

Post autor: Rastaman697 »

kadiii pisze:Skorzystaj z nierówności \(\displaystyle{ |b-c|<a<b+c}\)
Masz tu 2 warunki, które musza być jednocześnie spełnione aby istniał trójkąt. Połączenie warunków zrób polskim spójikiem "i" lub matematyczną koniunkcją(iloczyn logiczny). Reszta analogicznie jak w poprzednim, tyle, że tu nie masz pętli.
dla mnie troche ciężko to coś pojąć
Awatar użytkownika
kadiii
Użytkownik
Użytkownik
Posty: 642
Rejestracja: 20 gru 2005, o 21:04
Płeć: Mężczyzna
Lokalizacja: Wrocław
Pomógł: 130 razy

iteracja w algorytmach

Post autor: kadiii »

1.Wczytaj a,b,c
2.Jeśli abs(b-c)<a i b+c>a to Wypisz TAK w przeciwnym przypadku Wypisz NIE
3.ZAKOŃCZ

abs - funkcja zwracająca wartość bezwzględną z argumentu (tak żeby minusa nie było)
Rastaman697
Użytkownik
Użytkownik
Posty: 79
Rejestracja: 27 wrz 2009, o 11:26
Płeć: Mężczyzna
Lokalizacja: szczebrzeszyn
Podziękował: 5 razy

iteracja w algorytmach

Post autor: Rastaman697 »

acha to czyli tylko tym i mam już z głowy taka krótsza metoda ???
matshadow
Użytkownik
Użytkownik
Posty: 941
Rejestracja: 17 gru 2007, o 21:48
Płeć: Mężczyzna
Lokalizacja: Kingdom Hearts
Podziękował: 6 razy
Pomógł: 222 razy

iteracja w algorytmach

Post autor: matshadow »

wystarczy imho samo \(\displaystyle{ a<b+c}\)
ODPOWIEDZ