Algorytmy i struktury danych

Podobne dokumenty
Algorytmy i struktury danych

Algorytmy i struktury danych

Python wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA

Podstawy Programowania ELEMENTY PROGRAMU i TYPY DANYCH

Algorytmy i struktury danych

Naukę zaczynamy od poznania interpretera. Interpreter uruchamiamy z konsoli poleceniem

Podstawy programowania w Pythonie

Algorytmy i struktury danych

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

Warsztaty dla nauczycieli

Programowanie w języku Python. Grażyna Koba

JAVASCRIPT PODSTAWY. opracowanie: by Arkadiusz Gawełek, Łódź

1 Podstawy c++ w pigułce.

Język ludzki kod maszynowy

Język programowania zbiór reguł określających, które ciągi symboli tworzą program komputerowy oraz jakie obliczenia opisuje ten program.

Odczyt danych z klawiatury Operatory w Javie

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?

Laboratorium Wstawianie skryptu na stroną: 2. Komentarze: 3. Deklaracja zmiennych

Obliczenia, zmienne. Proste działania, zmienne, rodzaje zmiennych, proste operacje i działania na zmiennych.

1 Podstawy c++ w pigułce.

C++ wprowadzanie zmiennych

Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++

JAVASCRIPT PODSTAWY. opracowanie: by Arkadiusz Gawełek, Łódź

Podstawy Programowania Podstawowa składnia języka C++

Operacje wykonywane są na operandach (argumentach operatorów). Przy operacji dodawania: argumentami operatora dodawania + są dwa operandy 2 i 5.

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

Jak napisać program obliczający pola powierzchni różnych figur płaskich?

Język skryptowy: Laboratorium 1. Wprowadzenie do języka Python

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

2. Zmienne i stałe. Przykłady Napisz program, który wypisze na ekran wynik dzielenia 281 i 117 w postaci liczby mieszanej (tj. 2 47/117).

WYRAŻENIA ALGEBRAICZNE

Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane

1. Wypisywanie danych

Wprowadzenie do Scilab: podstawy języka Scilab

Temat 1: Podstawowe pojęcia: program, kompilacja, kod

Wprowadzania liczb. Aby uniknąć wprowadzania ułamka jako daty, należy poprzedzać ułamki cyfrą 0 (zero); np.: wpisać 0 1/2

Przegląd języka Python. Łukasz Anwajler

Języki i metodyka programowania. Wprowadzenie do języka C

Algorytmika i Programowanie VBA 1 - podstawy

LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab

Typy danych, cd. Łańcuchy znaków

Podstawy JavaScript ćwiczenia

Warunki logiczne instrukcja if

Wstęp do programowania

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

Cw.12 JAVAScript w dokumentach HTML

Opis: Instrukcja warunkowa Składnia: IF [NOT] warunek [AND [NOT] warunek] [OR [NOT] warunek].

Podstawy języka C++ Maciej Trzebiński. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. Praktyki studenckie na LHC IVedycja,2016r.

Język C część 1. Sformułuj problem Zanalizuj go znajdź metodę rozwiązania (pomocny może byd algorytm) Napisz program Uruchom i przetestuj czy działa

Wstęp do programowania

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki

Podstawy programowania skrót z wykładów:

ZMIENNE. Podstawy PHP

Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 2. Karol Tarnowski A-1 p.

1 Wprowadzenie do algorytmiki

Języki programowania zasady ich tworzenia

Podstawy Informatyki sem. I 2014/2015 studia zaoczne Elektronika i Telekomunikacja!

Wstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy. Wykład 2. Karol Tarnowski A-1 p.

Informacje wstępne #include <nazwa> - derektywa procesora umożliwiająca włączenie do programu pliku o podanej nazwie. Typy danych: char, signed char

Skrypty powłoki Skrypty Najcz ciej u ywane polecenia w skryptach:

Python. Wprowadzenie. Jolanta Bachan

Rys.2.1. Drzewo modelu DOM [1]

Metody numeryczne Laboratorium 2

START. Wprowadź (v, t) S:=v*t. Wyprowadź (S) KONIEC

JAVAScript w dokumentach HTML (1)

Instrukcja standardowa Writeln

Wstęp do programowania INP003203L rok akademicki 2016/17 semestr zimowy. Laboratorium 1. Karol Tarnowski A-1 p.

Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory

Wstęp do informatyki. stęp do informatyki Polecenia (cz.2)

System operacyjny Linux

1 P roste e t ypy p d a d n a ych c - c ąg ą g d a d l a szy 2 T y T py p z ł z o ł żo ż ne e d a d n a ych c : T BLICE

Podstawy Programowania

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 4. Karol Tarnowski A-1 p.

Wykład 2 Składnia języka C# (cz. 1)

Nazwa implementacji: Nauka języka Python wyrażenia warunkowe. Autor: Piotr Fiorek. Opis implementacji: Poznanie wyrażeń warunkowych if elif - else.

Pracownia Komputerowa wykład VI

Języki i metodyka programowania. Typy, operatory, wyrażenia. Wejście i wyjście.

Informatyka- wykład. Podstawy programowania w Pythonie. dr Marcin Ziółkowski

Podstawy programowania w C++

Rys.2.1. Trzy warstwy stanowiące podstawę popularnego podejścia w zakresie budowy stron internetowych [2]

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 4 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44

Podstawy programowania w języku Visual Basic dla Aplikacji (VBA)

Podstawy programowania w języku C i C++

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ć

Przedrostkowa i przyrostkowa inkrementacja i dekrementacja

Administracja sieciowymi systemami operacyjnymi III Klasa - Linux

Zmienne, stałe i operatory

do drukowania tekstu służy funkcja echo <?php echo "hello world!";?> jeżeli użyjemy jej kilka razy: <?php

Programowanie - instrukcje sterujące

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.

Podstawowe typy zmiennych

Struktura pliku projektu Console Application

while(wyrażenie) instrukcja

Transkrypt:

Algorytmy i struktury danych 3. Elementy programu i typy danych Łódź 2018

Ćwiczenie Body Mass Index - Edytuj kod programu - Zapisz go w pliku bmi.py - Uruchom skrypt >>> Enter your name: Jacek >>> Enter your height [w cm]: 185 >>> Enter the mass of your body [w kg]: 87 2

Zmienne - Zmienne są nazwami i odnoszą się do danych zapisanych w pamięci. - Zmienne są także nazywane w Pythonie identyfikatorami. - W programie BMI.py znajduje się 5 zmiennych: YourName, var, YourHeight, YourMass, BMI 3

Nazwy zmiennych Nazwy zmiennych - mogą się składać z małych i wielkich liter alfabetu łacińskiego; podkreślnika _ oraz cyfr 0, 1,, 9; - nie mogą zaczynać się od cyfry; - nie mogą być żadnym ze słów kluczowych (keywords) Pythona and del from not while as elif global or with assert else if pass yield break except import print class exec in raise continue finally is def for lambda try return Aby łatwiej śledzić treść programu, definiuj nazwy tak, by miały znaczenie. 4

Instrukcje programu - Program jest ciągiem instrukcji. - W programie BMI.py występują dwa rodzaje instrukcji: instrukcja podstawienia i instrukcja print(). Instrukcja podstawienia: <zmienna> = <wyrażenie> Instrukcje podstawienia czyta się od prawej do lewej: 1) Oblicz wartość wyrażenia po prawej stronie. 2) Przypisz zmienną o nazwie z lewej strony do wartości strony prawej. >>> # Oblicza wartość wyrażenia po prawej stronie (-2) i przypisuje x do -2 >>> x = 10 17 + 5 Znak = w instrukcji przypisania nie jest znakiem równości. Pełni on raczej funkcję separatora zmiennej od wyrażenia. 5

Instrukcje programu Instrukcje print(): print ( <wyrażenie1>, <wyrażenie2>, ) są używane do wyświetlania wyników obliczeń za pomocą programu. >>> # Wyrażenia w cudzysłowach (tzw. łańcuchy) są wyświetlane dosłownie. >>> print ( Ala ma kota. ) >>> print ( Ala ma kota. ) >>> # print() wyprowadza wartości wyrażeń bez cudzysłowów. >>> n = 5 >>> print ( Ala ma kota oraz, n-3, psy. ) - Wydrukowane wyrażenia są oddzielone pojedynczymi spacjami. - Każda instrukcja print() wyświetla wynik w oddzielnym wierszu. 6

Instrukcje programu - Edytuj, zapisz i uruchom następujący skrypt - Zmień instrukcję print() do postaci >>> print The area of a circle with radius R is CircleArea Objaśnij rezultat tej zmiany. - Zmień argumenty wyrażenia print() by wydrukować wartość pola powierzchni z jedną cyfrą części ułamkowej. - Technicznie, print() jest wbudowaną funkcją, która jest wywoływana w celu wyświetlania wyników obliczeń. 7

Typy danych - Zmienna w Pythonie może się odnosić do danych dowolnego typu. Trzy przykłady typów danych to łańcuch (string), liczba całkowita (integer) i liczba zmiennoprzecinkowa (float). Łańcuchy są ciągami znaków wewnątrz pojedynczych lub podwójnych cudzysłowów. >>> Motto = Programowanie jest cool! >>> aquestion = Kiedy odlatuje samolot na Hawaje? Liczby całkowite to, na przykład: >>> Large_Score = 857 >>> NegativeResult = -39 Liczby zmiennoprzecinkowe posiadają część ułamkową: >>> DistanceInMeters = 857.21 >>> SmallQuantity = -0.000138 8

Wyrażenia Wyrażenie input(prompt) służy do wprowadzania danych. Wyświetla tekst zachęty (prompt) i zwraca wyrażenie wprowadzone przez użytkownika. Tekst zachęty jest wyświetlany by przypomnieć użytkownikowi, że program oczekuje na wprowadzenie danych. >>> age = input ( Enter your age: ) >>> print ( When I was, age, strange thing happened! ) 9

Wyrażenia Wyrażenia numeryczne zawierają operatory arytmetyczne,, +, -, *, /, //, **, % odpowiednio dodawania, odejmowania, mnożenia, dzielenia, dzielenia całkowitego, podnoszenia do potęgi i operacji modulo (reszta z dzielenia liczb całkowitych). Wyrażenia te są wykonywane w następującej kolejności: 1) potęgowanie, 2) mnożenie, dzielenie i modulo (od lewej do prawej), 3) dodawanie i odejmowanie (od lewej do prawej). Do zmiany kolejności obliczania wartości wyrażeń są używane nawiasy. - Wynik dzielenia całkowitego jest zaokrąglony do najbliższej mniejszej liczby całkowitej >>> 7//2 >>> -1//3 - Dzielenie całkowite liczb typu float daje wynik o wartości całkowitej, ale typu float. - Przed użyciem w wyrażeniu, zmiennym muszą być przypisane wartości. 10

Komentarze Komentarze rozpoczynają się znakiem # ( hash ). Ich tekst jest ignorowany przez interpreter. # Tekst objaśniający treść programu innym (lub programiście) Komentarze mogą być umieszczone w dowolnym miejscu programu w języku Python. Objaśniają zrozumiały dla komputera kod ludziom. Interpreter języka Python tłumaczy program na postać, która może być wykonana przez układy komputera. Po uruchomieniu konsoli Pythona, interpreter wyświetla znak zachęty (np. >>>). Oznacza to, że interpreter jest gotowy do tłumaczenia kodu, który zostanie wpisany po tym znaku. >>> print ("Witaj Kolego!") 11

Ćwiczenia 3.1. Podaj trzy nazwy identyfikatorów, które są legalne i trzy nielegalne, w sensie reguł języka Python. 3.2. Znajdź zmienne w poniższym programie. Określ typ danych, które reprezentują i wartości, do których się odnoszą. Zidentyfikuj wyrażenia oraz instrukcje przypisania. 3.3. Wyjaśnij efekty wprowadzenia następujących odpowiedzi na znak zachęty wyrażenia input(): 23, 23.5, Agata. >>> k = int(input ( Enter k: )) 12

Ćwiczenia 3.4. Określ wartość każdego z wyrażeń zapisanych w języku Python: (a) 1 + 2 * 3 4 * 5 + 6 (b) 1 + 2 ** 3 * 4-5 (c) 1 / 2 3 / 4 (d) 1 // 2 3 //4 + 5 // 6 (e) 1 + 4 2 / 2 (f) (1 + 4 2) / 2 3.5. Znajdź wartości wyjściowe zmiennych w poniższych fragmentach kodu (a) x = 10 (b) x = 10 (c)x = 10 y = 15 y = 15 y = 15 print (x, y) print (x, y) z = 20 y = x y = x x = z print (x, y) x = y z = y x = 5 print (x, y) y = x print (x, y) x = 5 print (x, y, z) print (x, y) 13

Ćwiczenia 3.6. Napisz program average.py, który oblicza i wyświetla średnią trzech liczb typu integer. Wyświetl wyniki w postaci liczb zmiennoprzecinkowych o dwóch cyfrach po separatorze części ułamkowej. Zmień liczbę wyświetlonych cyfr po kropce. Wskazówka: Użyj instrukcji print podobnej do zastosowanej w ostatnim wierszu programu BMI.py. 3.7. Zmodyfikuj skrypt average.py by napisać program rect.py, który oblicza i wyświetla wartości pola powierzchni i długości obwodu prostokąta o podanej szerokości a i wysokości b. Uruchom program dla kilku wartości wejściowych, aby go przetestować. a b 3.8. Zmodyfikuj skrypt average.py by otrzymać program cube.py, który oblicza i drukuje objętość i pole powierzchni sześcianu o podanej długości krawędzi. Uruchom program kilka razy dla różnych długości krawędzi by oszacować długość boku, dla której pole powierzchni jest (liczbowo) równe objętości. a 14 a a

Exercises 3.9. Zmodyfikuj skrypt average.py aby otrzymać program sphere.py, który oblicza i wyświetla objętość i pole powierzchni kuli o podanym promieniu. Uruchom program kilka razy dla różnych długości promienia by oszacować promień, dla którego pole powierzchni jest (liczbowo) równe objętości bryły. 3.10. Napisz skrypt, który wyświetla prostokąt jak niżej. ********** * * ********** 3.11. Posiadanie kalkulatora napiwków w telefonie komórkowym byłoby przydatne. Załóżmy, że w telefonie zainstalowano interpeter języka Python. Napisz program, by zapytać o cenę posiłku i procent napiwku. Wyświetl wartość napiwku i całkowitą sumę. 15

Podsumowanie 1) Zmienne odnoszą się do 2) poprzez instrukcje przypisania, które czytamy od prawej do lewej. 3) Jak dotąd, dane mogą być typu string, integer lub float. Typ danych przypisany zmiennej decyduje o tym, jakie operacje można na niej wykonać. 4) input() jest wyrażeniem wprowadzania danych do uruchomionego programu (w trybie konsoli języka Python). 5) Operatory arytmetyczne są używane w wyrażeniach numerycznych. Są wykonywane w określonej kolejności. Kolejność tę można zmienić za pomocą nawiasów. 6) Symbol = oznacza przypisanie, a nie matematyczny znak równości. 7) Komentarze są ignorowane przez interpreter języka Python. Skrypt programu powinien zawierać wiele komentarzy. (Dlaczego?) 16

Literatura Brian Heinold, Introduction to Programming Using Python, Mount St. Mary s University, 2012 (http://faculty.msmary.edu/heinold/python.html). Brad Dayley, Python Phrasebook: Essential Code and Commands, SAMS Publishing, 2007 (dostępne też tłumaczenie: B. Dayley, Python. Rozmówki, Helion, 2007). Mark J. Johnson, A Concise Introduction to Programming in Python, CRC Press, 2012. 17