Wstęp do programowania
|
|
- Alicja Gabriela Michalik
- 6 lat temu
- Przeglądów:
Transkrypt
1 Wstęp do programowania Wykład 7 Funkcje Janusz Szwabiński Plan wykładu: Zastosowania funkcji Funkcje wbudowane Funkcje biblioteczne Funkcje użytkownika Zastosowania funkcji Z punktu widzenia programowania funkcje to nazwane sekwencje instrukcji. Tworzymy je z następujących powodów: nadawanie nazw pewnym sekwencjom instrukcji może uczynić kod bardziej czytelnym i skrócić czas usuwania błędów dzięki funkcjom kod źródłowy programu jest z reguły krótszy, ponieważ eliminują one potrzebę powtarzania tych samych sekwencji poleceń program jest łatwiejszy w utrzymaniu ponieważ dana sekwencja wprowadzana jest tylko raz, w definicji funkcji, ewentualnych zmian dokonujemy tylko w jednym miejscu podzielenie programu na części o dobrze zdefiniowanych funkcjonalnościach powoduje, że możemy każdą część debuggować z osobna dobrze zaprojektowane funkcje mogą być używane ponownie przez inne programy Funkcje wbudowane Interpreter Pythona oferuje pewną liczbę funkcji wbudowanych, czyli zawsze dostępnych dla programisty. Część z nich stosowaliśmy już na poprzednich wykładach intuicyjnie, bez wnikania w ich naturę. Z innych będziemy korzystać niezmiernie rzadko lub wcale (przynajmniej w ramach tego wykładu). Pełną listę tych funkcji można znaleźć pod adresem ( Polecenia wykorzystywane do konwersji typów to właśnie przykład funkcji wbudowanych, z których już korzystaliśmy: In [1]: int('32') Out[1]: 32
2 In [2]: int('hello') ValueError Traceback (most recent ca ll last) <ipython-input-2-3f8bc6d8fcab> in <module>() ----> 1 int('hello') ValueError: invalid literal for int() with base 10: 'Hello' In [3]: int(-2.3) Out[3]: -2 In [4]: float(32) Out[4]: 32.0 In [5]: str(32) Out[5]: '32' Funkcje do tworzenia typów złożonych również należą do tej grupy: In [6]: dict(a=1,b=2,c=3) Out[6]: {'a': 1, 'b': 2, 'c': 3} In [7]: list('anyway') Out[7]: ['a', 'n', 'y', 'w', 'a', 'y'] Do dyspozycji mamy kilka funkcji matematycznych:
3 In [8]: abs(-1) Out[8]: 1 In [9]: round(2.3) Out[9]: 2 In [10]: pow(2,3) Out[10]: 8 In [11]: oct(15) Out[11]: '0o17' In [12]: bin(3) Out[12]: '0b11' In [13]: hex(255) Out[13]: '0xff' Przy pomocy funkcji wbudowanych wczytujemy również dane z klawiatury: In [14]: s = input('--->') --->python In [15]: print(s) python
4 In [16]: l = input('podaj liczbę: ') Podaj liczbę: 4 In [22]: l** TypeError Traceback (most recent ca ll last) <ipython-input-22-0c bb4> in <module>() ----> 1 l**2 TypeError: unsupported operand type(s) for ** or pow(): 'str' and 'int' In [23]: type(l) Out[23]: str In [18]: int(l)**2 Out[18]: 16 Ogólnie rzec biorąc, funkcja oczekuje podania na wejściu argumentu lub listy argumentów i produkuje jakiś wynik na wyjściu (w dalszej części wykładu omówimy kilka wyjątków). Wynik ten możemy przypisać zmiennej, lub bezpośrednio wyprowadzić na ekran. Funkcje biblioteczne Instalując dystrybucję Pythona, instalujemy również jego bibilotekę standardową, która zawiera bardzo dużo modułów z funkcjami rozszerzającymi podstawowe możliwości języka. Pełna dokumentacja biblioteki znajduje się pod adresem ( Aby skorzystać z funkcji zdefiniowanej w bibliotece standardowej (i nie będącej funkcją wbudowaną), musimy załadować moduł, w którym jest ona zdefiniowana. Najbezpieczniejszy sposób zaimportowania definicji (o tym więcej w dalszej części kursu) ma składnię import nazwa_modułu Na przykład, jeśli chcemy korzystać z funkcji matematycznych, importujemy moduł mathz biblioteki standardowej:
5 In [24]: import math W wyniku wykonania tego polecenia interpreter tworzy obiekt modułu o nazwie math In [25]: print(math) <module 'math' (built-in)> Moduł zawiera szereg definicji. Aby je przeglądnąć, możemy wywołać na nim funkcję dir:
6 In [26]: dir(math)
7 Out[26]: [' doc ', ' loader ', ' name ', ' package ', ' spec ', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign', 'cos', 'cosh', 'degrees', 'e', 'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'hypot', 'isfinite', 'isinf', 'isnan', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'log2', 'modf', 'pi', 'pow', 'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'trunc']
8 Dostęp do poszczególnych funkcji i stałych odbywa się w następujący sposób: nazwa_modułu.nazwa_funkcji In [27]: angle = math.pi In [28]: math.sin(math.pi/2) Out[28]: 1.0 Argumentem funkcji (ogólnie, nie tylko matematycznej) może być wyrażenie, w skład którego wchodzą inne funkcje:
9 In [29]: p = '3.14' math.sin(p) TypeError Traceback (most recent ca ll last) <ipython-input a> in <module>() 1 p = '3.14' ----> 2 math.sin(p) TypeError: a float is required In [30]: math.sin(float(p)) Out[30]: In [31]: math.sin(math.acos(0.0)) Out[31]: 1.0 Funkcje użytkownika Do tej pory rozważaliśmy jedynie gotowe funkcje, albo wbudowane w interpreter, albo zawarte w bibliotece standardowej. Python oczywiście oferuje nam również możliwość definiowania własnych funkcji. Składnia takiej definicji jest następująca: def nazwa_funckji(arg1,arg2,arg3,...): <instrukcje> return wynik Słowo kluczowe defwprowadza definicję funkcji. Po nim następuje nazwa funkcji oraz lista parametrów formalnych otoczonych nawiasami okrągłymi. Parametry formalne to po prostu argumenty funkcji. Może ich być dowolna liczba, również 0. Pierwszy wiersz definicji kończy się dwukropkiem, o którym wiemy już, że otwiera blok zawierający sekwencję instrukcji. Wszystkie polecenia w tym bloku powinny być wcięte w stosunku do słowa kluczowego def. Kolejne słowo kluczowe, returnzwraca wynik działania funkcji i przekazuje kontrolę do części programu, z poziomu którego funkcja zostanie później wywołana. Jeżeli efektem działania funkcji ma być np. wypisanie czegoś na ekranie, zamiast wyliczenia konkretnego wyniku, wiersz zawierający returnmożemy pominąć. Funkcja zwróci wówczas wartość specjalną None.
10 Definiowanie funkcji Rozważmy przykład: In [32]: def print_lyrics(): print("jak człowiek wierzy w siebie,") print("to cała reszta to betka,") print("nie ma takiej rury na świecie,") print("której nie można odetkać") W wyniku wykonania definicji tworzony jest obiekt funkcji o odpowiedniej nazwie: In [33]: print(print_lyrics) <function print_lyrics at 0x7ffbd835d158> In [34]: type(print_lyrics) Out[34]: function Funkcje zdefiniowane przez użytkownika wywołujemy tak samo, jak funkcje wbudowane: In [35]: print_lyrics() Jak człowiek wierzy w siebie, to cała reszta to betka, nie ma takiej rury na świecie, której nie można odetkać In [36]: test = print_lyrics() Jak człowiek wierzy w siebie, to cała reszta to betka, nie ma takiej rury na świecie, której nie można odetkać In [37]: print(test) None Raz zdefiniowana funkcja może zostać wykorzystana w innych definicjach:
11 In [38]: def repeat_lyrics(n): for i in range(n): print_lyrics() print("****") Nowa funkcja oczekuje jednego argumentu, dlatego wywołanie jej bez argumentów spowoduje błąd: In [39]: repeat_lyrics() TypeError Traceback (most recent ca ll last) <ipython-input-39-cd0a4288b2d7> in <module>() ----> 1 repeat_lyrics() TypeError: repeat_lyrics() missing 1 required positional argument: 'n' Natomiast wywołanie funkcji z odpowiednim argumentem zadziała w oczekiwany sposób: In [40]: repeat_lyrics(3) Jak człowiek wierzy w siebie, to cała reszta to betka, nie ma takiej rury na świecie, której nie można odetkać **** Jak człowiek wierzy w siebie, to cała reszta to betka, nie ma takiej rury na świecie, której nie można odetkać **** Jak człowiek wierzy w siebie, to cała reszta to betka, nie ma takiej rury na świecie, której nie można odetkać **** Dzięki własnościom Pythona proste funkcje potrafią być bardzo uniwersalne. Rozważmy np. funkcję, która dodaje do siebie dwa argumenty: In [41]: def dodaj(x,y): a = x + y return a Funkcja ta zadziała dla liczb całkowitych, rzeczywistych, zespolonych, łańcuchów znaków i list:
12 In [42]: print(dodaj(2,7)) #całkowite print(dodaj(3.14,7.2)) #rzeczywiste print(dodaj(1+1j,2+3j)) #zespolone print(dodaj('burczy','mucha')) #napisy print(dodaj([1,2],[3,4])) #listy (3+4j) burczymucha [1, 2, 3, 4] Oczywiście, wszystkiego ze sobą nie doda: In [43]: print(dodaj('abc',1)) TypeError Traceback (most recent ca ll last) <ipython-input bce1fea> in <module>() ----> 1 print(dodaj('abc',1)) <ipython-input a25a78b> in dodaj(x, y) 1 def dodaj(x,y): ----> 2 a = x + y 3 return a TypeError: Can't convert 'int' object to str implicitly Nazwy funkcji i zmienne Powyżej widzieliśmy już, że funkcjom zdefiniowanym w Pythonie odpowiadają obiekty określonego typu. Obiekty te możemy przypisywać innym zmiennym: In [44]: fun = dodaj print(fun) <function dodaj at 0x7ffbd835dd08> In [45]: fun(1,2) Out[45]: 3 Argumenty i parametry Wewnątrz funkcji, argumenty jej wywołania są przypisane do zmiennych nazywanych parametrami. Parametry są zmiennymi lokalnymi, tzn. istnieją tylko wewnątrz bloku definiowanego przez funkcję:
13 In [46]: def concat(text1,text2): txt = text1 + text2 print(txt) In [47]: concat("nad naszą wsią ","przeleciał meteoryt.") Nad naszą wsią przeleciał meteoryt. Po zakończeniu działania funkcji wszystkie zmienne, które zostały zdefiniowane w jej ciele, zostają zniszczone. Dlatego próba odwołania do nich generuje błąd: In [48]: print(txt) NameError Traceback (most recent ca ll last) <ipython-input-48-54ac9f963c34> in <module>() ----> 1 print(txt) NameError: name 'txt' is not defined Przez referencję czy przez wartość? W dokumentacji Pythona możemy przeczytać ( ( functions)), że przekazywanie argumentów odbywa się zawsze przez wartość, przy czym ta wartość jest zawsze referencją do obiektu, a nie wartością tego obiektu. W praktyce oznacza to, że w przypadku niezmiennych typów danych funkcje w Pythonie działają tak, jakby ich argumenty przekazywane były przez wartość, natomiast w przypadku typów zmiennych na ogół jak przez referencję. Jako pierwszy przykład rozważymy funkcję, która zwiększa wartość argumentu o 1: In [49]: def add_1(number): number = number + 1 print("wartość wewnątrz funkcji: ", number) return number In [50]: number = 10 print("wartość przed wykonaniem funkcji: ", number) add_1(number) print("wartość po wykonaniu funkcji: ", number) Wartość przed wykonaniem funkcji: 10 Wartość wewnątrz funkcji: 11 Wartość po wykonaniu funkcji: 10
14 Wynik ten zrozumiemy, jeżeli przypomnimy sobie, jak działa Python wiersz number = number + 1 nie zmienia wartości obiektu, do którego odnosi się zmienna number, a tworzy nowy obiekt o wartości number + 1i następnie przypisuje mu etykietę number. Ponieważ wewnątrz funkcji ta zmienna ma charakter lokalny, wskazuje ona na inny obiekt, niż zmienna o tej samej nazwie zdefiniowana poza ciałem funkcji. Sytuacja będzie wyglądać trochę inaczej dla funkcji, której argumentem jest lista: In [51]: def changeme(mylist): mylist.append([1,2,3,4]) print("wartość wewnątrz funkcji: ", mylist) In [52]: lista = [10,20,30] print ("Wartość przed wykonaniem funkcji: ", lista) changeme(lista) print ("Wartość po wykonaniu funkcji: ", lista) Wartość przed wykonaniem funkcji: [10, 20, 30] Wartość wewnątrz funkcji: [10, 20, 30, [1, 2, 3, 4]] Wartość po wykonaniu funkcji: [10, 20, 30, [1, 2, 3, 4]] W tym wypadku oryginał również uległ zmianie, tzn. wynik jest taki, jak w przypadku przekazywania wartości przez referencję w przypadku tradycyjnych języków programowania. Jednak również w przypadku list (ogólniej zmiennych typów danych) możliwe jest zdefiniowanie funkcji, która zachowuje się tak, jakby argument przekazywany był przez wartość: In [53]: def changeme2(mylist): mylist = mylist[:] mylist.append([1,2,3,4]) print("wartość wewnątrz funkcji: ", mylist) In [54]: lista = [10,20,30] print("wartość przed wykonaniem funkcji: ", lista) changeme2(lista) print("wartość po wykonaniu funkcji: ", lista) Wartość przed wykonaniem funkcji: [10, 20, 30] Wartość wewnątrz funkcji: [10, 20, 30, [1, 2, 3, 4]] Wartość po wykonaniu funkcji: [10, 20, 30] Różnica w porównaniu z poprzednim przykładem jest taka, że teraz wewnątrz funkcji stworzyliśmy nowy obiekt w pamięci, a następnie przypisaliśmy mu lokalną nazwę mylist. Po zakończeniu funkcji nazwa ta przestała istnieć, i Python wrócił do nazwy globalnej mylist, która wskazuje na inny obiekt w pamięci.
15 Domyślne wartości argumentów Python wspiera kilka mechanizmów pozwalających na wywoływanie funkcji ze zmienną liczbą argumentów. Jednym z nich jest możliwość określenia wartości jednego lub większej liczby argumentów na liście argumentów formalnych: In [55]: def wypisz(wiadomosc, powtorz=1): print(wiadomosc*powtorz) In [56]: wypisz('zbliża się') Zbliża się In [57]: wypisz('sesja ',3) Sesja Sesja Sesja Wartość domyślna ustalana jest w momencie definiowania funkcji: In [58]: i = 5 def f(arg=i): print(arg) i = 6 f() 5 Uwaga! Wartość domyślna jest ustalana tylko raz. Ma to pewne konsekwencje w sytuacji, w której argumentem domyślnym jest obiekt, który może być zmieniany. Dla przykładu, następująca funkcja zapamiętuje argumenty jej wywołań: In [59]: def f(a, L=[]): L.append(a) return L In [60]: print(f(1)) print(f(2)) print(f(3)) [1] [1, 2] [1, 2, 3] Jeżeli jest to działanie niepożądane, musimy zmodyfikować nieco definicję funkcji:
16 In [61]: def f(a,l=none): if L is None: L = [] L.append(a) return L In [62]: print(f(1)) print(f(2)) print(f(3)) [1] [2] [3] Argumenty kluczowe Inna możliwość to użycie argumentów kluczowych w formie klucz=wartość: In [63]: def papuga(napiecie, stan='racja', akcja='voom', typ='norwegian Blue'): print("-- Ta papuga nie zrobiłaby", akcja, ',') print("jeśli przyłożysz do niej", napiecie, "woltów.") print("-- Śliczne upierzenie, ten", typ) print("-- Tak,", stan, "!") Taką funkcję możemy wywołać na kilka sposobów: In [64]: papuga(1000) -- Ta papuga nie zrobiłaby voom, jeśli przyłożysz do niej 1000 woltów. -- Śliczne upierzenie, ten Norwegian Blue -- Tak, racja! In [65]: papuga(akcja = 'VOOOOOM', napiecie = ) -- Ta papuga nie zrobiłaby VOOOOOM, jeśli przyłożysz do niej woltów. -- Śliczne upierzenie, ten Norwegian Blue -- Tak, racja! In [66]: papuga('tysiąc', stan = 'już wącha kwiatki od spodu') -- Ta papuga nie zrobiłaby voom, jeśli przyłożysz do niej tysiąc woltów. -- Śliczne upierzenie, ten Norwegian Blue -- Tak, już wącha kwiatki od spodu!
17 Jednak nie wszystkie wywołania będą prawidłowe: In [67]: papuga() #brakuje wymaganego argumentu niekluczowego (napiecie) TypeError Traceback (most recent ca ll last) <ipython-input ee02938> in <module>() ----> 1 papuga() #brakuje wymaganego argumentu niekluczowego (napie cie) TypeError: papuga() missing 1 required positional argument: 'napiec ie' In [68]: papuga(napiecie=5.0,'trup') #niekluczowy argument za kluczowym File "<ipython-input-68-5bc21b90ed2e>", line 1 papuga(napiecie=5.0,'trup') #niekluczowy argument za kluczowym ^ SyntaxError: non-keyword arg after keyword arg In [69]: papuga(110,napiecie=220) #zduplikowana wartość parametru TypeError Traceback (most recent ca ll last) <ipython-input-69-b77f6d85e7e8> in <module>() ----> 1 papuga(110,napiecie=220) #zduplikowana wartość parametru TypeError: papuga() got multiple values for argument 'napiecie' In [70]: papuga(aktor="john Cleese") #nieznany klucz TypeError Traceback (most recent ca ll last) <ipython-input-70-80b90f873433> in <module>() ----> 1 papuga(aktor="john Cleese") #nieznany klucz TypeError: papuga() got an unexpected keyword argument 'aktor' W ogólności lista parametrów wywołania musi mieć jakiś argument pozycyjny, po którym następuje jakikolwiek argument kluczowy, gdzie klucze wybrane są z listy parametrów formalnych (w definicji funkcji). Nie jest ważne, czy parametr formalny ma wartość domyślną, czy też nie. Żaden z argumentów nie może otrzymać wartości więcej niż jeden raz nazwy parametrów formalnych odpowiadające argumentom pozycyjnym w wywołaniu nie mogą być w nim użyte jako kluczowe:
18 In [71]: def fun(a): pass In [72]: fun(0,a=0) TypeError Traceback (most recent ca ll last) <ipython-input-72-8b4daa4ef384> in <module>() ----> 1 fun(0,a=0) TypeError: fun() got multiple values for argument 'a' Lista dowolnych argumentów Gdy na liście parametrów pojawi się argument *nazwa, w momencie wywołania stanie się on krotką zawierającą wszystkie argumenty pozycyjne (niekluczowe) wymienione w wywołaniu funkcji za parametrami formalnymi: In [73]: def calkowite_wydatki(*wydatki): return sum(wydatki) In [74]: calkowite_wydatki(1,2,3,4) Out[74]: 10 In [75]: calkowite_wydatki(1,2,3,4,5,6,7,8,9,10) Out[75]: 55 Jeszcze jeden przykład: In [76]: def sklep_z_serami(rodzaj, *argumenty): print("-- Czy macie", rodzaj, '?') print("-- Przykro mi,", rodzaj, "właśnie się skończył.") for arg in argumenty: print(arg)
19 In [77]: sklep_z_serami('limburger', "Jest bardzo dojrzały, proszę pana.", "Jest naprawdę bardzo, BARDZO dojrzały, proszę pana.") -- Czy macie Limburger? -- Przykro mi, Limburger właśnie się skończył. Jest bardzo dojrzały, proszę pana. Jest naprawdę bardzo, BARDZO dojrzały, proszę pana. Podobnie, jeśli na liście parametrów formalnych pojawi się **nazwa, to przy wywołaniu funkcji przypisywany jest mu słownik zawierający wszystkie klucze, które nie odpowiadają nazwom parametrów formalnych: In [78]: def slownik(**wpisy): return wpisy In [79]: tel = slownik(yoda=1111, Chewie=2222, Darth=6666) print(tel) {'Darth': 6666, 'Chewie': 2222, 'Yoda': 1111} I jeszcze jeden przykład: In [80]: def sklep_z_serami(rodzaj, *argumenty, **klucze): print("-- Czy macie", rodzaj, '?') print("-- Przykro mi,", rodzaj, "właśnie się skończył.") for arg in argumenty: print(arg) print('-'*40) for kl in klucze.keys(): print(kl, ':', klucze[kl]) In [81]: sklep_z_serami('limburger', "Jest bardzo dojrzały, proszę pana.", "Jest naprawdę bardzo, BARDZO dojrzały, proszę pana.", klient='john Cleese', wlasciciel='michael Palin', skecz='skecz ze sklepem z serami') -- Czy macie Limburger? -- Przykro mi, Limburger właśnie się skończył. Jest bardzo dojrzały, proszę pana. Jest naprawdę bardzo, BARDZO dojrzały, proszę pana skecz : Skecz ze sklepem z serami wlasciciel : Michael Palin klient : John Cleese
20 Formy lambda Formy lambda to zapożyczenie z języków funkcjonalnych. To małe, anonimowe (nienazwane) funkcje, które mogą zostać użyte we wszystkich miejscach, w których wymagane są obiekty funkcji. Składniowo ograniczone są do pojedynczego wyrażenia: In [82]: def dodawacz(n): return lambda x:x+n In [83]: f = dodawacz(42) In [84]: print(f(0)) print(f(10)) In [85]: g = dodawacz(3.14) In [86]: print(g(1)) print(g(10)) Inny przykład: In [87]: pary = [(1,'jeden'),(2,'dwa'),(3,'trzy'),(4,'cztery')] In [88]: pary.sort(key=lambda para: para[1]) In [89]: print(pary) [(4, 'cztery'), (2, 'dwa'), (1, 'jeden'), (3, 'trzy')] Jeszcze inny przykład:
21 In [90]: def sq(x): return x**2 liczby = [1,2,3,4,5,6,7,8] list(map(sq,liczby)) Out[90]: [1, 4, 9, 16, 25, 36, 49, 64] In [91]: liczby = [1,2,3,4,5,6,7,8] list(map(lambda x: x**2,liczby)) Out[91]: [1, 4, 9, 16, 25, 36, 49, 64]
Spis treści. Funkcje. 1 Funkcje 1.1 Zadanie Zadanie Zadanie Zadanie Zadanie Zadanie Zadanie 7
Spis treści 1 Funkcje 1.1 Zadanie 1 1.2 Zadanie 2 1.3 Zadanie 3 1.4 Zadanie 4 1.5 Zadanie 5 1.6 Zadanie 6 1.7 Zadanie 7 Funkcje Przy programowaniu często zdarza się, że pewne czynności chcemy wykonywać
Podstawy programowania w Pythonie
Podstawy programowania w Pythonie Wykład 6 dr Andrzej Zbrzezny Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie 21 listopada 2012 dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania
Wstęp do Pythona. Janusz Szwabiński. Python w obliczeniach numerycznych (C) 2005 Janusz Szwabiński p.1/36
Wstęp do Pythona Janusz Szwabiński szwabin@ift.uni.wroc.pl Python w obliczeniach numerycznych (C) 2005 Janusz Szwabiński p.1/36 Wstęp do Pythona Zasoby w sieci Python jako zaawansowany kalkulator Pierwszy
Zaawansowany kurs języka Python
Wykład 1. 4 października 2013 Plan wykładu 1 2 3 4 Typy proste Kolekcje Instrukcje w języku (przypomnienie) Wykładowca: Termin wykładu: piątek, 10:15 12:00, sala 119 Strona wykładu http://www.ii.uni.wroc.pl/
Język Python (2) Język Python (2) 1/36
Język Python (2) Język Python (2) 1/36 Język Python (2) 2/36 Podstawy funkcji Pojęcia podstawowe Instrukcja def tworzy obiekt funkcji i przypisuje go do nazwy Instrukcja return przekazuje obiekt wynikowy
Języki programowania wysokiego poziomu. PHP cz.2.
Języki programowania wysokiego poziomu PHP cz.2. Instrukcje strukturalne PHP Instrukcje strukturalne Instrukcja grupująca (blok instrukcji) Instrukcja warunkowa, if-else Instrukcja wyboru, switch-case
C++ Przeładowanie operatorów i wzorce w klasach
C++ i wzorce w klasach Andrzej Przybyszewski numer albumu: 89810 14 listopada 2009 Ogólnie Przeładowanie (przeciążanie) operatorów polega na nadaniu im nowych funkcji. Przeładowanie operatora dokonuje
Kurs rozszerzony języka Python
Wykład 1. 6 października 2017 Plan wykładu 1 2 3 4 Plan wykładu 1 2 3 4 Wykładowca: Termin wykładu: piątek, 10:15 12:00, sala 119 Strona wykładu http://www.ii.uni.wroc.pl/ marcinm/dyd/python Materiały
Język skryptowy: Laboratorium 1. Wprowadzenie do języka Python
Język skryptowy: Laboratorium 1. Wprowadzenie do języka Python Język PYTHON Podstawowe informacje Python to język skryptowy, interpretowany - co oznacza, że piszemy skrypt, a następnie wykonujemy go za
Spis treści. Dekoratory. 1 Dekoratory 1.1 Zadanie Zadanie Zadanie Zadanie 4
Spis treści 1 Dekoratory 1.1 Zadanie 1 1.2 Zadanie 2 1.3 Zadanie 3 1.4 Zadanie 4 Dekoratory Dekoratory w Pythonie służą do zastępowania zdefiniowanych przez nas funkcji przez funkcje (lub inne obiekty)
JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.
IŚ ćw.8 JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania. Skrypty JavaScript są zagnieżdżane w dokumentach HTML. Skrypt JavaScript
Python. Wprowadzenie. Jolanta Bachan
Python Wprowadzenie Jolanta Bachan Zainstaluj i przetestuj Pythona https://www.python.org/downloads/ print 'Hello world!' operatory numeryczne: + - * / // % ** operatory porównania: ==!= > < >=
rozdział 4: ZMIENNE I INSTRUKCJE
rozdział 4: ZMIENNE I INSTRUKCJE ostatnia modyfikacja: 04.12.18 definicja: zmienna to nazwany kontener służący do przechowywania danych na razie skupimy się na zmiennych przechowujących dane liczbowe i
Język programowania zbiór reguł określających, które ciągi symboli tworzą program komputerowy oraz jakie obliczenia opisuje ten program.
PYTHON Język programowania zbiór reguł określających, które ciągi symboli tworzą program komputerowy oraz jakie obliczenia opisuje ten program. Aby program napisany w danym języku mógł być wykonany, niezbędne
Listy, krotki, słowniki, funkcje
Listy, krotki, słowniki, funkcje Listy Lista jest najbardziej elastycznym typem obiektu uporządkowanej kolekcji. Może zawierać różne typy danych - liczby, łańcuchy znaków, a nawet inne listy. Tworzy się
Podstawy bioinformatyki 2017/18
JEZYK PROGRAMOWANIA PYTHON: FUNKCJE, SŁOWNIKI E. Dyguda-Kazimierowicz 1 Definiowanie i korzystanie z funkcji Funkcje pozwalają na wyodrębnienie często powtarzanych działań, dzięki czemu struktura kodu
Nazwa implementacji: Nauka języka Python wyrażenia warunkowe. Autor: Piotr Fiorek. Opis implementacji: Poznanie wyrażeń warunkowych if elif - else.
Nazwa implementacji: Nauka języka Python wyrażenia warunkowe Autor: Piotr Fiorek Opis implementacji: Poznanie wyrażeń warunkowych if elif - else. Nasz kalkulator umie już liczyć, ale potrafi przeprowadzać
Funkcje. czyli jak programować proceduralne. Programowanie Proceduralne 1
Funkcje czyli jak programować proceduralne. Programowanie Proceduralne 1 Struktura programu w C # include / Dyrektywy p r e p r o c e s o r a / #define PI 3.1415 float g =. 5 ; / Zmienne
Warsztaty dla nauczycieli
WPROWADZENIE Wyprowadzanie danych: Wyprowadzanie na ekran komunikatów i wyników umożliwia instrukcja wyjścia funkcja print(). Argumentami funkcji (podanymi w nawiasach) mogą być teksty, wyrażenia arytmetyczne
Python wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA
Python wprowadzenie Warszawa, 24 marca 2017 Python to język: nowoczesny łatwy w użyciu silny można pisać aplikacje Obiektowy klejący może być zintegrowany z innymi językami np. C, C++, Java działający
znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.
Część XVI C++ Funkcje Jeśli nasz program rozrósł się już do kilkudziesięciu linijek, warto pomyśleć o jego podziale na mniejsze części. Poznajmy więc funkcje. Szybko się przekonamy, że funkcja to bardzo
JAVAScript w dokumentach HTML (1)
JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania. Skrypty JavaScript mogą być zagnieżdżane w dokumentach HTML. Instrukcje JavaScript
Język Python. Język Python 1/35
Język Python Język Python 1/35 Język Python 2/35 Wstęp Uruchamianie interpretera python Skrypty wykonywalne #!/usr/bin/python #!/usr/bin/env python lub #!/usr/bin/python3 #!/usr/bin/env python3 chmod +x
wykład III uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C - zarządzanie pamięcią, struktury,
, Programowanie, uzupełnienie notatek: dr Jerzy Białkowski , 1 2 3 4 , Wczytywanie liczb , Wczytywanie liczb 1 #include 2 #include < s t d l i b. h> 3 4 int main ( ) { 5 int rozmiar, numer
Podstawy programowania w Pythonie
Podstawy programowania w Pythonie Wykład 9 dr Andrzej Zbrzezny Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie 12 grudnia 2012 dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania
Wstęp do programowania
Wstęp do programowania Funkcje Paweł Daniluk Wydział Fizyki Jesień 2013 P. Daniluk(Wydział Fizyki) WP w. V Jesień 2013 1 / 32 Funkcje Funkcje w matematyce f : D W D dziedzina W zbiór wartości Funkcja może
Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja
Przykład 1: Funkcja jest obiektem, przypisanie funkcji o nazwie function() do zmiennej o nazwie funkcja1
Rachunek Prawdopodobieństwa i Statystyka lab 3. Kaja Gutowska (Kaja.Gutowska@cs.put.poznan.pl) 1. Funkcje: - Funkcje nie powinny korzystać ze zmiennych globalnych. - Funkcje powinny być możliwie krótkie.
Funkcje są prawdopodobnie najważniejszą częścią każdego poważnego programu (w każdym języku programowania).
Funkcje w Pythonie Funkcje to części programu wielokrotnego użytku. Pozwalają nam nadad nazwę blokowi wyrażeo, a następnie uruchamiad ten blok używając tej nazwy gdziekolwiek w programie, dowolną ilośd
JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 6
JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM Wykład 6 1 SPECYFIKATOR static Specyfikator static: Specyfikator ten powoduje, że zmienna lokalna definiowana w obrębie danej funkcji nie jest niszczona
Programowanie i projektowanie obiektowe
Programowanie i projektowanie obiektowe Obiekty i klasy w Pythonie Paweł Daniluk Wydział Fizyki Jesień 2013 P. Daniluk (Wydział Fizyki) PO w. III Jesień 2013 1 / 23 Klasy i obiekty Klasy w implementacji
Zmienne, stałe i operatory
Zmienne, stałe i operatory Przemysław Gawroński D-10, p. 234 Wykład 2 4 marca 2019 (Wykład 2) Zmienne, stałe i operatory 4 marca 2019 1 / 21 Outline 1 Zmienne 2 Stałe 3 Operatory (Wykład 2) Zmienne, stałe
Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?
Część XVIII C++ Funkcje Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Umiemy już podzielić nasz
Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane
Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane Stałe Oprócz zmiennych w programie mamy też stałe, które jak sama nazwa mówi, zachowują swoją wartość przez cały czas działania programu. Można
Podstawy Pythona. Krzysztof Gdawiec. Instytut Informatyki Uniwersytet Śląski
Podstawy Pythona Krzysztof Gdawiec Instytut Informatyki Uniwersytet Śląski Słownik jest typem mutowalnym. Każdy element to para: klucz wartość. W celu stworzenia słownika pary klucz wartość umieszczamy
Liczby losowe i pętla while w języku Python
Liczby losowe i pętla while w języku Python Mateusz Miotk 17 stycznia 2017 Instytut Informatyki UG 1 Generowanie liczb losowych Na ogół programy są spójne i prowadzą do przewidywanych wyników. Czasem jednak
Funkcje. czyli jak programować proceduralne. Programowanie Proceduralne 1
Funkcje czyli jak programować proceduralne. Programowanie Proceduralne 1 Struktura programu w C # include # define PI 3. 1415 float g =. 5 ; float kwadrat ( float x ) { return x x ; } int
Informatyka- wykład. Podstawy programowania w Pythonie. dr Marcin Ziółkowski
Informatyka- wykład Podstawy programowania w Pythonie dr Marcin Ziółkowski Instytut Matematyki i Informatyki Akademia im. Jana Długosza w Częstochowie 23 listopada 2015 r. JĘZYK PYTHON Język Python jest
Informacje ogólne. Karol Trybulec p-programowanie.pl 1. 2 // cialo klasy. class osoba { string imie; string nazwisko; int wiek; int wzrost;
Klasy w C++ są bardzo ważnym narzędziem w rękach programisty. Klasy są fundamentem programowania obiektowego. Z pomocą klas będziesz mógł tworzyć lepszy kod, a co najważniejsze będzie on bardzo dobrze
Informatyka I: Instrukcja 4.2
Informatyka I: Instrukcja 4.2 1 Wskaźniki i referencje - bezboleśnie Nauczyliśmy się do tej pory, że funkcje w języku C mogą zwracać wartość. Co jednak, gdybyśmy chcieli napisać funkcję, która rozwiąże
Podstawowe wyrażenia matematyczne
Lech Sławik Podstawy Maximy 3 Wyrażenia matematyczne.wxmx 1 / 7 Podstawowe wyrażenia matematyczne 1 Nazwy Nazwy (zmiennych, stałych, funkcji itp.) w Maximie mogą zawierać małe i duże litery alfabetu łacińskiego,
Programowanie w języku Python. Grażyna Koba
Programowanie w języku Python Grażyna Koba Kilka definicji Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i
Programowanie obiektowe
Programowanie obiektowe Język programowania Ruby Marcin Młotkowski 12 kwietnia 2018 Plan wykładu 1 Wstęp 2 Typy numeryczne Łańcuchy znaków (klasa String) Przedziały Tablice i tablice asocjacyjne Nazwy
Kurs rozszerzony języka Python
Wykład 2. 13 października 2017 Plan wykładu Klasy i obiekty 1 Klasy i obiekty 2 3 4 Plan wykładu Klasy i obiekty 1 Klasy i obiekty 2 3 4 Deklaracja klasy Klasy i obiekty Przykłady class Figura: Pierwsza
Dekoratora używa się wstawiając linijkę zaczynającą się przed definicją dekorowanego obiektu (klasy czy funkcji).
Dekoratory są w miarę ezoteryczną cechą Pythona w przeciwieństwie do funkcji, klas czy iteratorów nie są powszechną cechą języków programowania. Niemniej, warto je omówić mimo wszystko, gdyż są niezwykle
Wstęp do programowania
Wstęp do programowania Programowanie funkcyjne Paweł Daniluk Wydział Fizyki Jesień 2013 P. Daniluk(Wydział Fizyki) WP w. XIV Jesień 2013 1 / 25 Paradygmaty programowania Programowanie imperatywne Program
Języki skryptowe Python
Języki skryptowe Python Wykład 3 Zmienne, wyrażenia, instrukcje Janusz Szwabiński Plan wykładu: Wartości i ich typy Zmienne Instrukcje warunkowe Łańcuchy znaków Pętle Wartości i ich typy Wartości (liczby
JAVAScript w dokumentach HTML - przypomnienie
Programowanie obiektowe ćw.1 JAVAScript w dokumentach HTML - przypomnienie JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania. Skrypty JavaScript są zagnieżdżane w
Podstawy Programowania Podstawowa składnia języka C++
Podstawy Programowania Podstawowa składnia języka C++ Katedra Analizy Nieliniowej, WMiI UŁ Łódź, 3 października 2013 r. Szablon programu w C++ Najprostszy program w C++ ma postać: #include #include
Wykład 5: Klasy cz. 3
Programowanie obiektowe Wykład 5: cz. 3 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD - podstawy Konstruktor i destruktor (część I) 2 Konstruktor i destruktor KONSTRUKTOR Dla przykładu
Python wstęp do programowania dla użytkowników WCSS
Python wstęp do programowania dla użytkowników WCSS Dr inż. Krzysztof Berezowski Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej Wprowadzenie CHARAKTERYSTYKA JĘZYKA Filozofia języka
Programowanie i projektowanie obiektowe
Programowanie i projektowanie obiektowe Metaprogramowanie (w Pythonie) Paweł Daniluk Wydział Fizyki Jesień 2016 P. Daniluk(Wydział Fizyki) PO w. XI Jesień 2016 1 / 32 Wstęp ideologiczny Języki programowania
Programowanie w SQL procedury i funkcje. UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika
Programowanie w SQL procedury i funkcje UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika 1. Funkcje o wartościach skalarnych ang. scalar valued
Tablice, funkcje - wprowadzenie
Tablice, funkcje - wprowadzenie Przemysław Gawroński D-10, p. 234 Wykład 5 25 marca 2019 (Wykład 5) Tablice, funkcje - wprowadzenie 25 marca 2019 1 / 12 Outline 1 Tablice jednowymiarowe 2 Funkcje (Wykład
Wykład 8: klasy cz. 4
Programowanie obiektowe Wykład 8: klasy cz. 4 Dynamiczne tworzenie obiektów klas Składniki statyczne klas Konstruktor i destruktory c.d. 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD
Środowisko programisty
Środowisko programisty 1/34 Środowisko programisty Język Python cz. 1 dr inż. Grzegorz Michalski 24 marca 2014 Środowisko programisty 2/34 Wstęp Uruchamianie interpretera python Wykonywalne skrypty #!/usr/bin/python
Programowanie w C++ Wykład 3. Katarzyna Grzelak. 12 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 35
Programowanie w C++ Wykład 3 Katarzyna Grzelak 12 marca 2018 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 35 Zakres ważności obiektów K.Grzelak (Wykład 1) Programowanie w C++ 2 / 35 Zakres ważności obiektów
Podstawy programowania skrót z wykładów:
Podstawy programowania skrót z wykładów: // komentarz jednowierszowy. /* */ komentarz wielowierszowy. # include dyrektywa preprocesora, załączająca biblioteki (pliki nagłówkowe). using namespace
Wstęp do programowania
wykład 8 Agata Półrola Wydział Matematyki i Informatyki UŁ semestr zimowy 2018/2019 Podprogramy Czasami wygodnie jest wyodrębnić jakiś fragment programu jako pewną odrębną całość umożliwiają to podprogramy.
Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 6. Karol Tarnowski A-1 p.
Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy Wykład 6 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Funkcje w języku C Zasięg zmiennych Przekazywanie
Cw.12 JAVAScript w dokumentach HTML
Cw.12 JAVAScript w dokumentach HTML Wstawienie skryptu do dokumentu HTML JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.skrypty Java- Script mogą być zagnieżdżane
Skrypty i funkcje Zapisywane są w m-plikach Wywoływane są przez nazwę m-pliku, w którym są zapisane (bez rozszerzenia) M-pliki mogą zawierać
MatLab część III 1 Skrypty i funkcje Zapisywane są w m-plikach Wywoływane są przez nazwę m-pliku, w którym są zapisane (bez rozszerzenia) M-pliki mogą zawierać komentarze poprzedzone znakiem % Skrypty
Podstawy Programowania C++
Wykład 3 - podstawowe konstrukcje Instytut Automatyki i Robotyki Warszawa, 2014 Wstęp Plan wykładu Struktura programu, instrukcja przypisania, podstawowe typy danych, zapis i odczyt danych, wyrażenia:
Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w
Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w obrębie skryptu. Wyrażenia include() i require() są niemal
Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)
Uwagi dotyczące notacji kodu! Wyrazy drukiem prostym -- słowami języka VBA. Wyrazy drukiem pochyłym -- inne fragmenty kodu. Wyrazy w [nawiasach kwadratowych] opcjonalne fragmenty kodu (mogą być, ale nie
Język C++ zajęcia nr 2
Język C++ zajęcia nr 2 Inicjalizacja Definiowanie obiektu może być połączone z nadaniem mu wartości początkowej za pomocą inicjalizatora, który umieszczany jest po deklaratorze obiektu. W języku C++ inicjalizator
Typy danych, cd. Łańcuchy znaków
Typy danych, cd. Łańcuchy znaków Typ danych string, jest rozumiany jako łańcuch znaków - liter, cyfr i symboli. Stringi definiuje się w podwójnych lub pojedyńczych cudzysłowach. typ_ kawy = " latte " typ_herbaty
Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki
Informatyka I Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2019 1 Plan wykładu
2 Przygotował: mgr inż. Maciej Lasota
Laboratorium nr 2 1/7 Język C Instrukcja laboratoryjna Temat: Wprowadzenie do języka C 2 Przygotował: mgr inż. Maciej Lasota 1) Wprowadzenie do języka C. Język C jest językiem programowania ogólnego zastosowania
1. Pierwszy program. Kompilator ignoruje komentarze; zadaniem komentarza jest bowiem wyjaśnienie programu człowiekowi.
1. Pierwszy program // mój pierwszy program w C++ #include using namespace std; cout
Wstęp do programowania
Wstęp do programowania Podstawowe konstrukcje programistyczne Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk (Wydział Fizyki) WP w. II Jesień 2014 1 / 38 Przypomnienie Programowanie imperatywne Program
Program 6. Program wykorzystujący strukturę osoba o polach: imię, nazwisko, wiek. W programie wykorzystane są dwie funkcje:
Program 6 Program wykorzystujący strukturę osoba o polach: imię, nazwisko, wiek. W programie wykorzystane są dwie funkcje: Funkcja pobierz_osobe wczytuje dane osoby podanej jako argument. Funkcja wypisz_osobe
Podstawy programowania: Python. Wprowadzenie. Jolanta Bachan
Podstawy programowania: Python Wprowadzenie Jolanta Bachan Informacje do kontaktu email: jolabachan@gmail.com strona internetowa: http://bachan.speechlabs.pl/ dyżury w sali 312aB środa, 9:30-10:00 czwartek,
Administracja i programowanie pod Microsoft SQL Server 2000
Administracja i programowanie pod Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 3 Podstawy programowania w T-SQL Zmienne i operatory Instrukcje sterujące Komunikaty Format daty
Rozdział 4 KLASY, OBIEKTY, METODY
Rozdział 4 KLASY, OBIEKTY, METODY Java jest językiem w pełni zorientowanym obiektowo. Wszystkie elementy opisujące dane, za wyjątkiem zmiennych prostych są obiektami. Sam program też jest obiektem pewnej
Podstawy programowania C. dr. Krystyna Łapin http://www.mif.vu.lt/~moroz/c/
Podstawy programowania C dr. Krystyna Łapin http://www.mif.vu.lt/~moroz/c/ Tematy Struktura programu w C Typy danych Operacje Instrukcja grupująca Instrukcja przypisania Instrukcja warunkowa Struktura
do MATLABa podstawowe operacje na macierzach WYKŁAD Piotr Ciskowski
Wprowadzenie do MATLABa podstawowe operacje na macierzach WYKŁAD Piotr Ciskowski M A T L A B : Computation Visualization Programming easy to use environment MATLAB = matrix laboratory podstawowa jednostka
Wstęp do Programowania, laboratorium 02
Wstęp do Programowania, laboratorium 02 Zadanie 1. Napisać program pobierający dwie liczby całkowite i wypisujący na ekran największą z nich. Zadanie 2. Napisać program pobierający trzy liczby całkowite
Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie.
Część XXII C++ w Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie. Ćwiczenie 1 1. Utwórz nowy projekt w Dev C++ i zapisz go na
Pakiety podprogramów Dynamiczny SQL
Pakiety podprogramów Dynamiczny SQL Pakiety podprogramów, specyfikacja i ciało pakietu, zmienne i kursory pakietowe, pseudoinstrukcje (dyrektywy kompilatora), dynamiczny SQL 1 Pakiety Pakiet (ang. package)
METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02
METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE Wykład 02 NAJPROSTSZY PROGRAM /* (Prawie) najprostszy przykład programu w C */ /*==================*/ /* Między tymi znaczkami można pisać, co się
PARADYGMATY PROGRAMOWANIA Wykład 4
PARADYGMATY PROGRAMOWANIA Wykład 4 Metody wirtualne i polimorfizm Metoda wirualna - metoda używana w identyczny sposób w całej hierarchii klas. Wybór funkcji, którą należy wykonać po wywołaniu metody wirtualnej
Część 4 życie programu
1. Struktura programu c++ Ogólna struktura programu w C++ składa się z kilku części: część 1 część 2 część 3 część 4 #include int main(int argc, char *argv[]) /* instrukcje funkcji main */ Część
Kurs języka Python. Wykład 11. Marcin Młotkowski. 4 stycznia Kontrola poprawności podczas biegu programu. 2 Testowanie oprogramowania
Wykład 11. 4 stycznia 2010 1 Kontrola poprawności podczas biegu programu 2 3 4 Asercje Asercja to formuła logiczna; Asercji używa się do kontrolowania czy np. wartość zmiennej ma odpowiedni typ lub mieści
Definicje wyższego poziomu
Definicje wyższego poziomu Interpreter Scheme-a nie będzie narzekad w przypadku wystąpienia niezdefionowanej zmiennej w ciele wyrażenia lambda dopóki nie będzie zastosowana Przykład braku informacji o
Wstęp do Informatyki dla bioinformatyków
Wstęp do Informatyki dla bioinformatyków Wykład 12 - Programowanie w BASHu Trochę bardziej zaawansowane Bartek Wilczyński 25.1.2016 Organizacyjne Bardzo proszę o wypełnienie ankiet w USOS Szczególnie zależy
Wstęp do Informatyki i Programowania Laboratorium: Lista 0 Środowisko programowania
Wstęp do Informatyki i Programowania Laboratorium: Lista 0 Środowisko programowania Przemysław Kobylański Wprowadzenie Każdy program w C musi zawierać przynajmniej funkcję o nazwie main(): Aby możliwe
C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów
Operatory są elementami języka C++. Istnieje zasada, że z elementami języka, takimi jak np. słowa kluczowe, nie można dokonywać żadnych zmian, przeciążeń, itp. PRZECIĄŻANIE OPERATORÓW Ale dla operatorów
Programowanie w Ruby
Programowanie w Ruby Wykład 3 Marcin Młotkowski 22 października 2018 Plan wykładu 1 2 3 4 5 Marcin Młotkowski Programowanie w Ruby 70 / 432 Z poprzedniego wykładu String to ciąg bajtów zwykle reprezentujących
Python wstęp. Michał Bereta www.michalbereta.pl
Python wstęp Michał Bereta www.michalbereta.pl Wprowadzenie... 1 Źródła wiedzy... 1 Uruchomienie interpretera Pythona... 2 Python jako kalkulator użycie interaktyne... 2 Uruchamianie skryptów z plików...
Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu
Programowanie strukturalne Opis ogólny programu w Turbo Pascalu STRUKTURA PROGRAMU W TURBO PASCALU Program nazwa; } nagłówek programu uses nazwy modułów; } blok deklaracji modułów const } blok deklaracji
Podstawy programowania w Pythonie
Podstawy programowania w Pythonie Wykład 4 dr Andrzej Zbrzezny Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie 24 października 2012 dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania
Python jest interpreterem poleceń. Mamy dwie możliwości wydawania owych poleceń:
W pierwszym kroku nauczymy się uruchamiać w Pythonie tradycyjny* program ". Dzięki temu nauczysz się pisać w języku Python, a także zapisywać i uruchamiać swoje pythonowe programy. *Jest taka tradycja,
Programowanie strukturalne i obiektowe. Funkcje
Funkcje Często w programach spotykamy się z sytuacją, kiedy chcemy wykonać określoną czynność kilka razy np. dodać dwie liczby w trzech miejscach w programie. Oczywiście moglibyśmy to zrobić pisząc trzy
Elementy języka Scheme
Elementy języka Scheme Historia języka Lisp Historia języka Lisp Wyrażenia i ewaluacja wyrażeń Identyfikatory i wyrażenie let Wyrażenia lambda Definicje globalne Wyrażenia warunkowe Przypisanie Kontynuacje
Języki i metody programowania
Języki i metody programowania Wykład 4 dr hab. Bożena Woźna-Szcześniak bwozna@gmail.com Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie hab. Andrzeja Zbrzezngo Podstawy języka Python
System operacyjny Linux
Paweł Rajba pawel.rajba@continet.pl http://kursy24.eu/ Zawartość modułu 6 Język bash Pierwszy skrypt Rozwinięcia parametryczne Bloki instrukcji Dwa przydatne polecenia Tablice Sprawdzanie warunków Instrukcje
Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska
Instytut Mechaniki i Inżynierii Obliczeniowej www.imio.polsl.pl fb.com/imiopolsl @imiopolsl Wydział Mechaniczny Technologiczny Politechnika Śląska Języki programowania z programowaniem obiektowym Laboratorium
7. Pętle for. Przykłady
. Pętle for Przykłady.1. Bez użycia pętli while ani rekurencji, napisz program, który wypisze na ekran kolejne liczby naturalne od 0 do pewnego danego n. 5 int n; 6 cin >> n; 8 for (int i = 0; i