Materiał I

Czym jest programowanie? 

Komputer jest tylko maszyną. Wielką mocą tej maszyny jest szybkość wykonywanych operacji matematycznych. Istotnym ograniczeniem jest to, że komputer nie myśli. Programowanie jest więc prowadzeniem komputera „za rączkę”, określeniem, co maszyna ma wykonać. Tak więc jest to wydanie maszynie zwykłych poleceń. 

Język programowania

Tak, komputer nie jest inteligentny. Dlatego nie domyśli się naszych intencji, nie zrozumie niuansów wypowiedzi. Można się z komputerem „dogadać” pod warunkiem, że będziemy używać zwrotów, które komputer nie tyle rozumie, co wie, jak je wykonać. Zbiorem takich zwrotów oraz reguł ich użycia nazywamy językiem programowania. 

Python

Mamy wiele języków programowania, podobnie, jak wiele jest języków, którymi posługują się ludzie między sobą. Język Python jest jednym z nich. 
Czy wiesz może, skąd wzięła się nazwa tego języka? Może Cię to zaskoczyć, ale nie chodzi o węża. 

Pierwszy program

No dobrze, ale teraz przejdźmy już do kodowania. Spróbujemy zrobić to w jak najprostszy sposób. 
Poniżej widoczne jest okno, w którym będziemy wpisywać kod i uruchamiać go. W poniższym okienku jest już napisany pierwszy program, aby go uruchomić, trzeba kliknąć w czerwony przycisk „RUN„.

Poszukaj w prawej części okienka w sekcji „Output” wyświetlonego napisu „Witaj świecie”. 

Uruchomiliśmy pierwszy program. Składa się on z pierwszego polecenia: „print” co oznacza: „wyświetl na ekranie”. 

Spróbuj zamienić treść do wyświetlenia w tym programie, zamiast „Witaj świecie” wpisz dowolny inny tekst i uruchom program. Uwaga – znaki cudzysłów są potrzebne, nie kasuj ich. Sprawdź, czy zostanie wyświetlona inna treść, zgodnie z wprowadzoną przez Ciebie zmianą. 

Składnia programu

Każdy język programowania posiada określoną gramatykę, czyli reguły tworzenia wypowiedzi. Jak widzisz powyżej, aby uzyskać efekt wyświetlenia treści, trzeba posłużyć się poleceniem „print”, a treść przeznaczona do wyświetlenia musi znaleźć się w nawiasie okrągłym pomiędzy znakami cudzysłowu. Niedochowanie tego typu reguł uniemożliwia uruchomienie programu na skutek tzw. błędu składni.

https://zpe.gov.pl/a/informatyczna-wieza-babel-czyli-o-roznych-jezykach-programowania/DUSnsGkYI

Materiał i zadanie II

Komputer to maszyna licząca 

Faktycznie, komputer potrafi tylko liczyć, ale za to robi to szybko i dosyć dobrze. 
W poniższym oknie widzimy program, który zamiast wyświetlać zadany tekst, wyświetli wynik obliczeń. Uruchom ten program. W okienku Output powinien zostać wyświetlony wynik, a nie działanie.

Zauważ, że tym razem nie wykorzystaliśmy znaków cudzysłowia. Posługujemy się nimi tylko wtedy, gdy chcemy wyświetlić tekst. Gdy chcemy operować liczbami, cudzysłów nie jest potrzebny. 

A co, jeśli będziemy chcieli połączyć tekst i wartości obliczeniowe? W jednym poleceniu „print” możemy oddzielić je przecinkiem. Uruchom poniższy program i sprawdź, czy faktycznie w polu Output zostanie wyświetlone połączenie tekstu i obliczeń. 

Zmienne

W każdym programowaniu mamy zmienne, powiedzmy że są to pudełka, do których możemy wrzucać jakieś wartości. Każde takie pudełko ma swoją nazwę, aby możliwe było odróżnienie każdego z nich. 

Do pudełka (zmiennej) możemy coś wrzucić, następnie sprawdzić, co w tym pudełku (zmiennej) się znajduje. Uruchom poniższy program. W efekcie jego działania nie zostanie wyświetlona litera a, lecz wartość, która jest przechowywana w zmiennej o nazwie a. 

Sprawdźmy działanie kolejnego programu:  

Program powinien wyświetlić opis wraz z wynikiem 6. Zauważ, że w jednym poleceniu „print” zostały połączone wartości tekstowe (opisy) oraz zmienne, pod które program podłożył ich wartości oraz wynik obliczenia.

Zadanie

Napisz program, w którym utworzysz dwie zmienne odpowiadające oznaczeniom boków prostokąta (np. a i b) oraz zmiennym tym przypiszesz długości boków (tak, jak to zrobiliśmy wyżej w przykładzie). Następnie program obliczy obwód prostokąta i wyświetli informację: „Obwód prostokąta o bokach: a=x i b=y wynosi z”. 
Oczywiście sprawdź, czy program prawidłowo działa.

Materiał i zadanie III

Komunikacja z użytkownikiem 

Program może od użytkownika przyjmować dane.

W poniższym oknie „OneCompiler” w prawej górnej części okna zatytułowanej „STDIN” wpisz swoje imię (obecnie jest wpisane imię autora materiałów). 

Uruchom program przez naciśnięcie klawisza „RUN”.

Instrukcja input, którą się posłużyliśmy, służy do odbierania wartości i przypisywania ich do wskazanej zmiennej. W powyższym programie przypisaliśmy zmiennej a wartość podaną przez użytkownika programu (wpisaną w okienku STDIN).

Teraz w polu STDIN (prawa górna część okna środowiska programowania) zostały wpisane dwie liczby: 2 i 3, każda w nowej linii oddzielonej  klawiszem Enter. Uruchom ten program.

Dwie pierwsze linie kodu odpowiadają za odebranie od użytkownika dwóch wartości i przypisanie ich do zmiennych o nazwach bok1 i bok2. 

Druga i trzecia linijka jest dla nas czymś nowym. Za pomocą takiej konstrukcji mówimy programowi, iż podane wartości ma potraktować jako liczby całkowite (int oznacza integer – z języka angielskiego: liczba całkowita).
W kolejnych dwóch liniach kodu dokonuje się wyświetlenie komentarzy oraz dokonanie obliczeń. 

Zadanie

Napisz program, który wczyta wartości dwóch zmiennych, np. bok1 i bok2 (boki prostokąta), następnie program obliczy pole i obwód tego prostokąta. W rozwiązaniu posłuż się powyżej omówionym programem, w którym duża część zadania została rozwiązana.

Oczywiście sprawdź, czy program prawidłowo działa.

Materiał i zadanie IV

Program użytkowy 

Potrafimy już napisać program, który przyjmie wartości od użytkownika, zamieni je na liczbę, wykona działania i wyświetli wynik. Nic więc nie stoi na przeszkodzie przed napisaniem programu, który będzie dla nas użyteczny. 

Wiemy, jakim problemem może być utrzymanie odpowiedniej wagi ciała. Napiszmy więc program, który pomoże nam się kontrolować i obliczy nasze BMI. Jest to stosunek wagi do wzrostu i podstawowy wzór to: waga (w kilogramach) dzielona przez wzrost do kwadratu (w metrach). 

Brzmi groźnie? Pomożemy więc.

Program przyjmie najpierw wartości dwóch zmiennych: wzrost i waga.

wzrost = input ()
waga = input()

Wartości te umieszczamy w okienku STDIN. Wzrost powinien być wyrażony w metrach, czyli podamy wartość ułamkową. W Python ułamki wpisujemy z kropką, a nie z przecinkiem. Prawidłowa wartość wpisana w okienku STDIN to 1.9, a nie 1,9.

Następnie wprowadzone wartości zamienimy na liczby. Tym razem nie będą to liczby całkowite, stąd nie użyjemy poznanego typu zmiennych integer, posłużymy się typem float().

waga=float(waga)
wzrost=float(wzrost)

W ostatniej części programu należy tylko wyświetlić efekt działania: 

print(„BMI przy wzroście = „, wzrost, ” i wadze: „, waga, „wynosi: „)
print(waga/(wzrost*wzrost))

W poniższym programie użyto komentarzy. Są to linie rozpoczynające się od znaku #, które nie są wykonywane przez program, służą tylko do umieszczania opisu kodu.

Zadanie

Napisz program, który na podstawie wczytanych wartości oznaczających wzrost i wagę obliczy współczynnik BMI. Zmodyfikuj zaprezentowane powyżej rozwiązanie w taki sposób, aby program przyjmował wzrost w centymetrach, nie metrach.

Oczywiście sprawdź, czy program prawidłowo działa.

Materiał i zadanie V

Podejmowanie decyzji 

Umiejętność podejmowania decyzji jest związana z istotami żywymi oraz inteligencją. Komputer niestety ani nie jest żywą istotą, ani nie jest inteligentną, stąd nie umie podejmować decyzji. Wprawdzie od lat prowadzone są badania nad tzw. sztuczną inteligencją, niemniej nie brakuje głosów twierdzących, że nigdy nam się nie uda wzbudzić prawdziwej, sztucznej inteligencji. 

Tak czy inaczej komputer wykonuje wcześniej zaprogramowane instrukcje, a sam żadnych decyzji nie podejmuje. 

Instrukcje warunkowe

Możemy więc komputerowi zlecić zbadanie warunków i zachowanie się odpowiednio w zależności od wyniku badania. Wykorzystamy w tym celu instrukcję if. 

a = input ()
b = input()
if(a>b):

  print(„a jest większe od b”)

Zwróć uwagę na to, że ostatnia linia jest wcięta, czyli przesunięta w prawo. Wcięcie uzyskasz używając dwóch spacji lub jeden raz wciskając klawisz na klawiaturze „TAB”. 

Uruchom program za pomocą przycisku RUN.

W efekcie działania programu zostanie wyświetlony komunikat informujący o tym, że a jest większe od b. Sprawdź co się stanie, jeśli zamienisz kolejność podanych liczb wejściowych (okienko STDIN), czyli najpierw wpisz 2, następnie 3. 

Tak, żaden zdefiniowany komunikat nie zostanie wyświetlony. 

Za pomocą instrukcji if (jeżeli) badamy, czy warunek jest spełniony. Jeżeli warunek jest spełniony, zostają wykonane linie poleceń znajdujące się pod if, ale linie te muszą być wcięte w stosunku do samego if. 

Jeżeli warunek nie jest spełniony, nic się nie wykonuje.

No właśnie, a gdybyśmy chcieli w przypadku naszego programu, aby wyświetlony został również inny komunikat, gdy warunek nie będzie spełniony? Oczywiście język Python jest na to przygotowany i możemy skorzystać z rozszerzonej instrukcji warunkowej if – else (w przeciwnym wypadku). 

Wypróbuj działanie poniższego programu.

Mamy do dyspozycji kilka znaków porównania (operatorów porównania), jest to już poznany znak większości >, można skorzystać ze znaku mniejszości < oraz równości ==. Tak, to nie błąd, aby sprawdzić, czy wartości są równe, należy użyć dwóch znaków równości. 

W poniższym programie instrukcja warunkowa bada, czy wartość zadeklarowana w pierwszej linii jest taka sama, jak odebrana wartość za pomocą instrukcji input (wartość wpisana w pole STDIN). Sprawdź, jak zachowa się program, gdy w polu STDIN wpiszesz inną wartość.

A co zrobić w sytuacji kilku warunków? Sytuacje takie często zdarzają się w codziennych sytuacjach, np. 
jeżeli będzie słońce, pójdę na plażę
w przeciwnym wypadku, ale jeśli nie będzie padał deszcz, pójdę na spacer, 
w przeciwnym wypadku pozostanę w domu.

Przeanalizujmy powyższy opis i zastanówmy się, w jakiej sytuacji zostajemy w domu.

W poniższym programie użyto analizy trzech warunków. Pierwszy warunek (linia 3 kodu) bada, czy podana liczba (a) jest większa od 2. Jeżeli nie, badana jest kolejna z możliwych sytuacji (linia 5), w której podana wartość (a) może być mniejsza od 2. Jeżeli oba warunki nie zostały spełnione, pozostaje już trzecie wyjście, podana liczba musi być równa 2.

Zauważ, że w programie użyto zapisu „elif” (5 linia kodu). Oznacza to: w przeciwnym wypadku, ale pod warunkiem, że.

Sprawdź działanie poniższego programu przy różnych wartościach zmiennej a (zmieniaj wartości w okienku STDIN).

Zadanie

Napisz program, który przyjmie od użytkownika liczbę, następnie w zależności od wartości tej liczby, wyświetli jeden z trzech komunikatów: 
podana liczba jest dodatnia,
podana liczba jest ujemna,
podana liczba to zero.

Kod programu będzie bardzo podobny do powyżej zaprezentowanego.

Oczywiście sprawdź, czy program prawidłowo działa.

Materiał i zadanie VI

Program użytkowy 

W tym kursie przygotowaliśmy już program przeznaczony do obliczania wskaźnika BMI. Przypomnijmy kod tego programu: 

Udoskonalenie

Wadą tego programu jest to, że zwraca wynik tylko w postaci liczbowej. Nie wiemy jednak, czy jest to wartość prawidłowa, czy wskazująca na nadwagę lub otyłość. Wprowadzimy więc element decyzyjności poznany w poprzednim materiale. 

Uruchom program za pomocą przycisku RUN.

W efekcie działania programu zostanie wyświetlony komunikat o niedowadze lub wadze normalnej. Nie zostanie wyświetlony komunikat w przypadku nadwagi i otyłości. Brakuje bowiem jeszcze dodatkowych warunków. 

Zadanie

Napisz program, który przyjmie od użytkownika wagę i wzrost oraz obliczy wartość wskaźnika BMI. Na podstawie tego wskaźnika wyświetli komunikat zgodnie z poniższymi zasadami: 

BMI < 18 – niedowaga
BMI <= (mniejsze lub równe) 24 – waga normalna
BMI <= 29 – nadwaga
BMI <= 39 – otyłość
BMI > 39 – poważna otyłość.

Kod programu będzie bardzo podobny do powyżej zaprezentowanego.

Oczywiście sprawdź, czy program prawidłowo działa.