WEBVTT 00:00:02.596 --> 00:00:08.219 Mamy różne części mowy, np. rzeczownik, przymiotnik, przyimek i czasownik. 00:00:08.319 --> 00:00:12.051 Obowiązują zasady ich łączenia. 00:00:12.151 --> 00:00:15.537 Gdybym powiedziała np. „Pies... 00:00:15.637 --> 00:00:19.249 książki… mój… je”, 00:00:19.349 --> 00:00:21.757 spytalibyście: „Co to znaczy?”. 00:00:21.857 --> 00:00:23.846 Może nie zdawaliście sobie sprawy, 00:00:23.946 --> 00:00:28.490 ale nie ustawia się dwóch rzeczowników przed przymiotnikiem i czasownikiem. 00:00:28.590 --> 00:00:30.559 Gdybym zmieniła kolejność: 00:00:30.659 --> 00:00:36.441 „Mój pies je książki”, zrozumielibyście doskonale. 00:00:37.035 --> 00:00:40.044 Mogłabym zamienić czasownik „je” na inny, 00:00:40.588 --> 00:00:44.584 np. „rzuca”. Miałoby to sens gramatyczny, 00:00:44.684 --> 00:00:47.699 choć trudno sobie wyobrazić psa rzucającego książkę. 00:00:47.799 --> 00:00:51.661 W programowaniu zamiast części mowy mamy typy danych. 00:00:51.761 --> 00:00:54.089 Jeden już widzieliście: liczby. 00:00:54.189 --> 00:00:56.587 Używamy ich w programach do rysowania. 00:00:56.687 --> 00:01:01.002 I tak, jak w języku, czasami użycie liczby ma sens, a czasami nie. 00:01:01.102 --> 00:01:05.549 Gdybym w funkcji tła wpisała „100 minus”, 00:01:06.153 --> 00:01:08.382 to obok powinna znaleźć się liczba 00:01:08.482 --> 00:01:13.166 lub coś, co da liczbę, np. „14 + 15”. 00:01:14.280 --> 00:01:16.344 A gdybym wklepała „100” i spację, 00:01:16.444 --> 00:01:20.573 nie mogłabym po tym dać liczby, 00:01:20.673 --> 00:01:22.988 bo „100 spacja 10” nic nie znaczy. 00:01:23.798 --> 00:01:27.639 W programowaniu mamy też typ logiczny, inaczej boolowski. 00:01:27.739 --> 00:01:33.228 Nazywa się „boolowski”, bo wymyślił go George Boole. 00:01:34.412 --> 00:01:37.404 Liczby mają mnóstwo różnych wartości, 00:01:37.504 --> 00:01:41.935 a dane logiczne tylko dwie: prawdę lub fałsz. 00:01:42.771 --> 00:01:46.987 Gdy je wpisuję, robią się niebieskie. To wyjątkowe, świetne słowa! 00:01:47.087 --> 00:01:50.553 Używaliście już danych logicznych, choć może nieświadomie, 00:01:50.653 --> 00:01:53.389 w instrukcjach warunkowych. Powtórzmy. 00:01:53.489 --> 00:01:55.844 Zrobię zmienną „liczba”... 00:01:55.944 --> 00:01:59.118 i przypiszę jej liczbę: 40. 00:01:59.218 --> 00:02:02.601 Napiszę instrukcję warunkową: „Jeśli liczba 00:02:02.701 --> 00:02:05.318 jest mniejsza od 50, 00:02:06.304 --> 00:02:09.845 to narysuję pierwszą elipsę”. 00:02:10.479 --> 00:02:12.759 Skopiuję to do instrukcji 00:02:12.859 --> 00:02:15.025 i przesunę tabulatorem. 00:02:17.113 --> 00:02:21.162 Instrukcja mówi: „Jeśli liczba jest mniejsza od 50” (a jest!), 00:02:21.262 --> 00:02:22.895 to narysujemy górną elipsę”. 00:02:22.995 --> 00:02:26.935 Jeśli wpiszę liczbę większą od 50, górna elipsa zniknie. 00:02:28.219 --> 00:02:32.601 To coś w nawiasie - to wyrażenie logiczne. 00:02:32.701 --> 00:02:34.952 Wyrażeniem matematycznym jest to, 00:02:35.052 --> 00:02:39.783 co przybiera wartość liczby, np. 3 plus 2 plus 4 razy 8. 00:02:40.357 --> 00:02:43.700 A wyrażenie logiczne przybiera wartość logiczną. 00:02:43.800 --> 00:02:46.655 Czy coś jest wyrażeniem logicznym, 00:02:46.755 --> 00:02:50.039 sprawdzimy, dopisując „czy?” i czytając to pytająco. 00:02:50.139 --> 00:02:53.801 Gdy można odpowiedzieć „tak lub nie” - wyrażenie jest logiczne. 00:02:53.901 --> 00:02:56.866 Tu spytamy: „Czy liczba jest mniejsza od 50?”. 00:02:56.966 --> 00:03:00.419 Jest. I mamy wyrażenie logiczne. 00:03:00.519 --> 00:03:03.623 A gdybym miała np. „4 + 4” 00:03:03.863 --> 00:03:07.331 i spróbowała spytać: „Czy 4 + 4?”... 00:03:07.431 --> 00:03:10.411 Nie. To nie jest wyrażenie logiczne. 00:03:10.511 --> 00:03:14.010 Wróćmy do instrukcji. W nawiasie mogę wpisać wszystko, 00:03:14.110 --> 00:03:17.299 byle były to dane logiczne lub wyrażenie logiczne. 00:03:17.399 --> 00:03:20.991 Mogę napisać: „Jeśli to prawda...” i pojawi się elipsa, 00:03:21.091 --> 00:03:24.405 albo „Jeśli fałsz” - i elipsy nie będzie. 00:03:24.505 --> 00:03:28.375 Mogłabym wpisać np.: „jeśli 3 jest mniejsze od 4”. 00:03:28.475 --> 00:03:31.440 To zawsze prawdziwe stwierdzenie logiczne. 00:03:31.540 --> 00:03:34.227 Nie ma sensu pisać - elipsa będzie zawsze. 00:03:34.327 --> 00:03:37.919 A „3 większe od 4” zawsze będzie fałszem. 00:03:38.019 --> 00:03:40.659 Mogę przypisywać dane logiczne zmiennym: 00:03:40.759 --> 00:03:42.609 zrobię nową zmienną, 00:03:42.709 --> 00:03:47.416 nazwę ją „Winston jest fajny” 00:03:48.227 --> 00:03:51.433 i przypiszę jej wartość logiczną - prawdę lub fałsz. 00:03:51.533 --> 00:03:54.150 Prawdę, bo Winston fajny jest! 00:03:54.250 --> 00:03:56.820 Gdy ta zmienna ma wartość logiczną, 00:03:56.920 --> 00:04:00.558 mogę ją skopiować i wkleić do instrukcji warunkowej. 00:04:02.619 --> 00:04:06.944 Pojawia się elipsa, bo wartość „Winston jest fajny” to „prawda”. 00:04:07.044 --> 00:04:11.263 Mogłabym to też zastąpić wyrażeniem logicznym, 00:04:11.363 --> 00:04:13.910 np. „2 mniejsze od 4”. 00:04:15.233 --> 00:04:18.298 Pisząc zmienną dla wartości logicznej, 00:04:18.398 --> 00:04:21.363 zawrzyjcie w nazwie warunek jej prawdziwości. 00:04:21.463 --> 00:04:24.051 Aby sprawdzić, czy wybraliśmy dobrą nazwę, 00:04:24.151 --> 00:04:27.470 zobaczmy, czy miałaby sens w instrukcji warunkowej. 00:04:27.570 --> 00:04:30.605 Zostawmy „Winston jest fajny”; wiemy, że to prawda. 00:04:30.705 --> 00:04:33.879 Weźmy zmienną „babeczki”. 00:04:33.979 --> 00:04:37.176 No dobrze. „Jeśli babeczki”. Hmmm... 00:04:37.276 --> 00:04:41.240 Nic to nie mówi. Zła nazwa zmiennej. 00:04:41.340 --> 00:04:45.071 Ale gdybym napisała: „Jeśli babeczki się pieką”... 00:04:45.171 --> 00:04:48.899 wiedzielibyśmy, że gdy ta zmienna jest prawdziwa, 00:04:48.999 --> 00:04:50.644 to babeczki się pieką. 00:04:50.744 --> 00:04:53.958 Nie pytajcie, jakie babeczki. To nieistotne. 00:04:54.058 --> 00:04:58.074 Wróćmy do „Jeśli liczba jest mniejsza od 50”. 00:04:58.771 --> 00:04:59.828 Super! 00:05:00.258 --> 00:05:02.277 Poznajmy inne wyrażenia logiczne. 00:05:02.377 --> 00:05:05.481 Widzieliście już „mniejsze niż” i „większe niż”. 00:05:05.581 --> 00:05:08.686 Można też sprawdzić, czy coś jest „mniejsze lub równe”. 00:05:08.786 --> 00:05:12.726 Spróbujmy: „Jeśli liczba jest mniejsza lub równa 48”. 00:05:12.826 --> 00:05:15.025 Możemy też powiedzieć: 00:05:15.125 --> 00:05:19.297 „Jeśli liczba jest większa lub równa 48”. 00:05:20.481 --> 00:05:23.546 Jeśli tak, pojawi się prawa górna elipsa. 00:05:25.218 --> 00:05:26.727 Wcięcie. 00:05:27.262 --> 00:05:31.514 A chcąc sprawdzić, czy dwie rzeczy są sobie równe, powiecie: 00:05:31.614 --> 00:05:36.875 „Jeśli liczba”... i trzy znaki równości, 48. 00:05:39.206 --> 00:05:43.910 Takich znaków równości używacie w matematyce, tylko że tu są trzy. 00:05:44.514 --> 00:05:46.070 Myślicie, że to przesada? 00:05:46.170 --> 00:05:52.177 A gdy chcemy sprawdzić, czy dwie rzeczy są sobie nierówne, 00:05:52.277 --> 00:05:57.447 piszecie „Jeśli liczba”, wykrzyknik, dwa znaki równości i 48. 00:05:59.421 --> 00:06:02.626 I narysujemy ostatnią elipsę. 00:06:03.677 --> 00:06:07.850 Wróćmy do początku. Nasza liczba to 48. 00:06:07.950 --> 00:06:11.751 Jest mniejsza lub równa 48, mamy więc lewą górną elipsę. 00:06:11.851 --> 00:06:14.444 Jest też większa lub równa 48. 00:06:14.544 --> 00:06:16.333 I równa 48! 00:06:16.433 --> 00:06:21.225 Ale nie jest nierówna 48, dlatego brakuje prawej dolnej elipsy. 00:06:21.325 --> 00:06:25.544 Zmieniając liczby, zobaczycie, które elipsy się pojawiają. 00:06:26.867 --> 00:06:29.445 Już wiecie, jak działają wyrażenia logiczne. 00:06:29.545 --> 00:06:33.386 Tak jak wyrażenia matematyczne, mogą być bardzo skomplikowane. 00:06:33.486 --> 00:06:35.621 O tym pomówimy kiedy indziej.