Krótko o Python`ie 1 ”Witaj Świecie” w świecie Python`a
Transkrypt
Krótko o Python`ie 1 ”Witaj Świecie” w świecie Python`a
Laboratorium ”Robotyki mobilnej” 1 1 Piotr Kowalski Paweł Musialik 17 kwietnia 2011 Krótko o Python’ie Python jest jezykiem: 1. interpretowanym, 2. dynamicznym, 3. ogólnego przeznaczenia / między platformowym, 4. wspiera kilka paradygmatów programownia: jest imperatywny, zorientowany obiektowo oraz w mniejszym stopniu funkcyjny, oraz 5. modnym. 1 ”Witaj Świecie” w świecie Python’a Inaczej niż zwykle podczas nauki nowego języka programowania, nie zaczniemy od wydrukowania na ekranie pojedynczego ”Hello World!”. Byłoby to za proste. Zadanie 1. Wczytaj kolejno swoje nazwisko oraz imię przypisując je do zmiennych, 2. wyświetl napis ”Witaj <imie> <nazwisko>". Przykład działania programu Podaj swoje nazwisko: Kowalski Podaj swoje imie: Piotr Witaj Piotr Kowalski Referencje 1. wejście/wyjście w języku Python http://en.wikibooks.org/wiki/Python_Programming/ Input_and_output 2. zmienne w języku Python oraz napisy http://en.wikibooks.org/wiki/Python_Programming/ Variables_and_Strings 1 Na podstawie kursów MIT OCW http://ocw.mit.edu 1 2 Liczby pierwsze Często spotykanym zadaniem obliczeniowym jest wygnerowanie potencjalnej odpowiedzi oraz sprawdzenie jej pod względem poprawności. Zastosuj tą technikę. Zadanie Napisz program znajdujący n-tą (np. 1000-czną) liczbę pierwszą. Do tego celu możesz wykorzystać poniższe wskazówki: 1. zainicjuj zmienne, 2. wygneruj wszystkie nieparzyste liczby całkowite > 1 – będą to potencjalne liczby pierwsze, 3. dla każdej wygenerowanej liczby sprawdź czy liczba dzieli się przez liczbę większą od 1 bez reszty – do tego celu możesz wykorzystać dzielenie modulo a%b. 4. jeśli liczba kandydująca jest liczbą pierwszą wydrukuj jakąś informację na ekranie i zmodyfikuj odpowiednie zmienne (stan), 5. zakończ obliczenia po osiągnięciu odpowiedniego warunku wykonania pętli. Referencje 1. 1000 pierwszych liczb pierwszych http://primes.utm.edu/lists/small/1000.txt. 2. Lista http://en.wikibooks.org/wiki/Python_Programming/Lists. 3. Pętle i warunki: • http://en.wikibooks.org/wiki/Python_Programming/Decision_Control" • http://en.wikibooks.org/wiki/Python_Programming/Conditional_Statements • http://en.wikibooks.org/wiki/Python_Programming/Loops 3 Wszechobecny ciąg liczb Fibonacci’ego Przypomnienie – ciąg fibonacciego to ciąg zdefiniowany następująca dla n ∈ N: fib(n) = 0 1 fib(n) gdy n = 0 gdy n = 1 w p.p. Zadanie Napisz procedury obliczające n-ty wyraz ciągu Fibonacciego: 1. rekurencyjnie – ładny zapis, formalny, zgodny z definicją, bardzo wolny, 2. iteracyjny – szybki 3. przetestuj je. 2 (1) Referencje 1. Funkcje i procedury http://en.wikibooks.org/wiki/Python_Programming/Functions. 4 Wczytywanie liczb z ekranu Często zdarza się, że program, który napisaliśmy musi działać pomimo błędów użytkownika. Np. czasami musimy zadbać aby wartość podana przez użytkownika programu była typu całkowitego. Jak to zrobić skoro nie ma typów? Zadanie Napisz procedurę sprawdzającą czy podana przez użytkownika wartość jest typu całkowitego. Jeżeli tak to zwraca True jeżeli nie to False. Referencje 1. Wyjątki i ich przechwytywanie: http://en.wikibooks.org/wiki/Python_Programming/ Exceptions. 3