WEBVTT 00:00:00.700 --> 00:00:03.188 Pomówmy o pętlach. Mam tu pętlę warunkową. 00:00:03.288 --> 00:00:07.408 Parę wierszy programu wystarczy, żeby tekst pokrył cały monitor. 00:00:07.508 --> 00:00:10.727 Jeśli zmodyfikuję tekst, np. go poprawię, 00:00:10.827 --> 00:00:12.051 zmieni się wszędzie. 00:00:12.151 --> 00:00:13.792 Jak to działa? 00:00:13.892 --> 00:00:16.230 Zaraz przejrzymy program, 00:00:16.329 --> 00:00:19.624 ale najpierw zastanówmy się, jak byśmy go napisali, 00:00:19.724 --> 00:00:22.623 nie wiedząc jeszcze nic o pętlach. 00:00:22.723 --> 00:00:26.617 Musielibyśmy przepisywać tekst raz po raz. 00:00:26.717 --> 00:00:30.255 Napiszemy: „text”, „message”... Wpiszę pierwszy raz. 00:00:30.355 --> 00:00:33.104 I trzeba to już tylko powtórzyć 00:00:33.204 --> 00:00:36.733 tyle razy, żeby dojść do samego dołu. 00:00:36.833 --> 00:00:40.568 Będzie dużo pracy! Bo dół jest daleko. 00:00:41.586 --> 00:00:43.885 A potem jeszcze mi powiecie: 00:00:43.985 --> 00:00:47.813 „Za duża czcionka, 70 to przesada. Ma być 60”. 00:00:47.913 --> 00:00:50.991 A przecież ten fragment też musi być mniejszy. 00:00:51.091 --> 00:00:55.100 I pozostałe też. Wszystkie. 00:00:55.200 --> 00:00:57.957 Dojście do dołu potrwa jeszcze dłużej. 00:00:58.676 --> 00:01:02.411 Jest z tym kłopot. Na szczęście mamy pętle! 00:01:02.511 --> 00:01:05.178 Od tej pory, widząc powtarzający się tekst, 00:01:05.278 --> 00:01:07.689 myślcie: „Czy możliwa jest pętla?”. 00:01:07.789 --> 00:01:10.983 Pętla pozwala powtarzać program raz po raz, 00:01:11.083 --> 00:01:12.864 z drobnymi zmianami. 00:01:13.769 --> 00:01:16.072 Napiszmy program z użyciem pętli. 00:01:16.172 --> 00:01:18.158 Zaczynamy od „while” (gdy), 00:01:18.258 --> 00:01:20.596 potem nawiasy i klamry... 00:01:20.696 --> 00:01:23.423 Ostrzeżenie jest dlatego, że nie skończyliśmy. 00:01:23.523 --> 00:01:25.588 Nie martwcie się, zniknie. 00:01:26.336 --> 00:01:30.163 Pisząc pętlę, musicie odpowiedzieć na 3 pytania. 00:01:30.882 --> 00:01:32.206 Oto one. 00:01:33.042 --> 00:01:36.595 Pierwsze brzmi: „Co chcę powtórzyć?”. 00:01:37.285 --> 00:01:41.355 Ten tekst wpisujemy w klamry. 00:01:41.455 --> 00:01:46.138 Żeby powtórzyć polecenie „text”. Wpisujemy to tutaj. 00:01:46.238 --> 00:01:51.461 Ale głupio jest ciągle powtarzać jedno polecenie. 00:01:51.561 --> 00:01:54.544 Niedobrze. Coś trzeba zmienić. 00:01:54.644 --> 00:01:57.858 Stąd pytanie 2.: „Co chcę zmieniać za każdym razem?”. 00:01:57.958 --> 00:01:59.745 Zmieniamy pozycję „y”. 00:01:59.845 --> 00:02:02.763 Ma być 60, a potem 80. 00:02:02.863 --> 00:02:05.476 Zrobimy z tego zmienną. 00:02:05.576 --> 00:02:07.640 O nazwie „y”, bo o to chodzi. 00:02:07.740 --> 00:02:10.287 Zróbmy tu zmienną. 00:02:10.387 --> 00:02:11.819 Zaczynamy od 40. 00:02:11.919 --> 00:02:14.397 Teraz musimy tylko zmieniać „y”. 00:02:14.497 --> 00:02:17.996 Tutaj napiszemy: „y = y + 20”. 00:02:18.205 --> 00:02:20.085 I „y” będzie coraz większy. 00:02:20.185 --> 00:02:23.568 Przypomnijmy sobie wykład o skrótach. 00:02:23.668 --> 00:02:25.914 Użyjmy skrótu. 00:02:26.929 --> 00:02:28.584 Fantastycznie! 00:02:28.684 --> 00:02:32.903 Pozostaje pytanie trzecie: „Jak długo będziemy to powtarzać?”. 00:02:33.003 --> 00:02:36.804 Chcemy to powtarzać długo, ale nie w nieskończoność. 00:02:36.904 --> 00:02:39.312 Bo trzeba by bardzo długo czekać 00:02:39.412 --> 00:02:42.098 i padłaby przeglądarka. A lepiej nie! 00:02:42.795 --> 00:02:47.253 Chcemy to powtarzać tylko do końca strony, zgadza się? 00:02:47.353 --> 00:02:50.597 Czyli dopóki „y” nie przekroczy 400. 00:02:50.697 --> 00:02:53.203 Wpisujemy to tutaj i już! 00:02:53.303 --> 00:02:56.471 Tekst pojawia się na całym ekranie. 00:02:56.571 --> 00:02:59.166 Ten sposób jest prostszy niż poprzedni: 00:02:59.266 --> 00:03:03.971 wtedy pisaliśmy długo, a nie doszliśmy do jednej czwartej drogi! 00:03:04.575 --> 00:03:07.036 Pozbądźmy się tego - i mamy program. 00:03:07.872 --> 00:03:10.891 Spróbujmy lepiej zrozumieć, co się dzieje. 00:03:10.991 --> 00:03:13.259 Za każdym razem wskażę wartość „y”. 00:03:13.359 --> 00:03:15.070 Napiszę „y to teraz” 00:03:15.170 --> 00:03:18.995 i dokleję wartości, żeby było je widać. 00:03:19.575 --> 00:03:22.779 Na razie wartości rosną o 20. 00:03:22.879 --> 00:03:25.844 Można to zmodyfikować w tej zmiennej. 00:03:25.944 --> 00:03:28.143 Można wpisać np. 50. 00:03:29.049 --> 00:03:31.139 I zmieniają się o 50. 00:03:31.239 --> 00:03:35.248 Pobawcie się innymi wartościami, zmieniajcie je. 00:03:35.348 --> 00:03:39.266 Zobaczcie, jak to wpływa na zakończenie programu. 00:03:40.728 --> 00:03:45.465 Łatwiej będzie to zrozumieć jako instrukcję warunkową. 00:03:45.565 --> 00:03:48.670 Mamy tu wyrażenie logiczne, uczyliśmy się o takich. 00:03:48.770 --> 00:03:54.126 Tu wpiszemy treść instrukcji: „tylko jeśli wyrażenie jest prawdziwe”. 00:03:54.226 --> 00:03:56.472 Inaczej - przeskakujemy na koniec. 00:03:56.572 --> 00:03:58.120 Ciekawe jest to, 00:03:58.220 --> 00:04:01.417 że u dołu pętli warunkowej dzieje się coś tajemniczego. 00:04:01.517 --> 00:04:04.273 Coś mówi: „wróć na początek pętli”. 00:04:05.736 --> 00:04:07.942 Tajemna instrukcja oznacza, 00:04:08.042 --> 00:04:12.139 że zamiast iść dalej, jak w instrukcji warunkowej, 00:04:12.239 --> 00:04:13.910 wykonując polecenie w pętli, 00:04:14.010 --> 00:04:17.253 cofamy się i patrzymy, czy warunek wciąż jest prawdziwy. 00:04:17.353 --> 00:04:20.341 Jeśli tak, to powtarzamy jeszcze raz. 00:04:20.442 --> 00:04:22.896 Domyślacie się, że przy drugim razie 00:04:22.996 --> 00:04:25.891 znów cofniemy się i sprawdzimy. 00:04:25.991 --> 00:04:28.608 Czy „y” nadal jest mniejszy od 279? 00:04:28.708 --> 00:04:31.464 Jeśli tak, znowu powtórzymy i sprawdzimy. 00:04:31.564 --> 00:04:34.111 Jeśli nie, wrócimy tutaj. 00:04:34.211 --> 00:04:37.733 Wreszcie pętla się skończy i program pójdzie dalej. 00:04:38.569 --> 00:04:42.470 Nauczymy się jeszcze wielu ciekawych zastosowań pętli. 00:04:42.570 --> 00:04:44.560 Na razie świetnie zaczęliście!