[ Pobierz całość w formacie PDF ]
.W ćwiczeniu 3.20 byłobowiem i++ = 150.W pierwszym przypadku sprawdzalimywarunek, czy pętla ma być dalej wykonywana, w drugim sprawdzamy, czy pętla masię zakończyć.Na to zakończenie pozwala nowa instrukcja break.Po jejnapotkaniu następuje przerwanie wykonywanie pętli, niezależnie od stanuzmiennej sterujšcej (w naszym przypadku i).Drugš instrukcjš pozwalajšcš na modyfikację zachowania pętli jest continue.Pojej napotkaniu następuje przerwanie bieżšcej iteracji i rozpoczęcie kolejnej.Mówišc prociej następuje przeskok na poczštek pętli.Ćwiczenie 3.23.Wywietl na ekranie wszystkie liczby pomiędzy 1 a 1 000 podzielne przez 2(rysunek 3.10).Skorzystaj z pętli for i instrukcji continue.Rysunek 3.10.Efektdziałania skryptu wypisujšcego liczby podzielne przez dwaOczywicie do realizacji zadania z ćwiczenia 3.22 nie jest konieczna instrukcjicontinue.Wystarczy skorzystać tylko z instrukcji if.Sama pętla wyglšdałabywtedy następujšco:for (var i = 1; iOczywicie raz stworzonš funkcję możemy wywoływać dowolnš iloć razy.Nic niestoi też na przeszkodzie, aby dodać element interaktywnoci, stosujšcwspomnianš wczeniej instrukcję prompt().Wystarczy zmienić linię:wyswietl_powitanie ("Marcin")na:wyswietl_powitanie (prompt ("Podaj swoje imie: ",""));Skrypt poprosi wtedy użytkownika o podanie imienia, a następnie wywietli je naekranie.Jak widać, na licie parametrów funkcji może się znaleć wywołanie innejfunkcji, pod warunkiem, że zwróci ona jaki wynik.W jaki sposób zmusić funkcjędo zwrotu wyniku? Należy użyć instrukcji return.Ćwiczenie 4.3.Napisz funkcję obliczajšcš drugš potęgę liczby podanej jako argument.Wywołajjš w skrypcie umożliwiajšcym użytkownikowi podanie dowolnej liczby.Wynikdziałania wywietl na ekranie.RekurencjaRekurencja jest to wywoływanie funkcji przez samš siebie.Choć brzmi to możedziwnie, taka możliwoć ułatwia rozwišzywanie niektórych problemów.Prostymprzykładem może być zmodyfikowanie funkcji druga_potega() w taki sposób, abymożna było podnosić liczby do dowolnej całkowitej nieujemnej potęgi.Napoczštku jednak napiszmy nierekurencyjnš wersję takiej funkcji.Ćwiczenie 4.4.Napisz funkcję podnoszšcš liczbę do zadanej potęgi.Wywołaj funkcję wprzykładowym skrypcie.Jak zatem będzie wyglšdać rekurencyjna wersja funkcji potega()?Ćwiczenie 4.5.Napisz rekurencyjnš wersję funkcji podnoszšcej liczbę do zadanej potęgi.Wywołaj funkcję w przykładowym skrypcie.Zapis ten wydaje się być prostszy i bardziej czytelny niż ten z poprzedniegoćwiczenia.Funkcja wywołuje samš siebie, za każdym razem zmniejszajšc wartoćdo_potegi o jeden.Trwa to tak długo, aż do_potegi stanie się zerem.Dalejrozpoczynajš się powroty z funkcji.Po pierwszym powrocie jest to 1, po drugim1 razy liczba, po trzecim 1 razy liczba razy liczba itd.Ostatecznieotrzymujemy liczbę podniesionš do zadanej potęgi.Postarajmy się wykonać jeszcze jeden przykład.Niech będzie to rekurencyjnawersja funkcji silnia.Już sama definicja silni jest rekurencyjna.Przypomnijmy: 0! = 1, 1! = 1, n! = n* (n 1)!.Czyli np.4! = 1*2*3*4 = 24.Ćwiczenie 4.6.Stwórz skrypt obliczajšcy silnię liczby podanej przez użytkownika.Posłuż sięrekurencyjnš wersjš funkcji silnia.Używajšc funkcji rekurencyjnych należy pamiętać, aby zawsze umiecić warunekwyjcia z rekurencji.Inaczej funkcja taka będzie wywoływać sama siebie bezkońca.W przypadku klasycznych języków programowania spowoduje to zawszeprzepełnienie stosu programu i tym samym jego awarie.Co się stanie wprzypadku gdy JavaScript zależy od implementacji mechanizmów bezpieczeństwa wprzeglšdarkach?Ćwiczenie 4.7.Sprawdzić efekt wykonania nieskończonej funkcji rekurencyjnej w różnychprzeglšdarkach
[ Pobierz całość w formacie PDF ]
Darmowy hosting zapewnia PRV.PL