Wstęp do Informatyki i Programowania (kierunek matematyka stosowana)



Podobne dokumenty
Python wstęp do programowania dla użytkowników WCSS

Wstęp do Informatyki i Programowania

Podstawy. Jan Koprowski Politechnika Gdańska, FTiMS Informatyka Stosowana

Podstawowe elementy języka Python III. Wykład 3. J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 50 / 277

Języki programowania C i C++ Wykład: Typy zmiennych c.d. Operatory Funkcje. dr Artur Bartoszewski - Języki C i C++, sem.

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

Podstawy i języki programowania

Podstawy programowania. 1. Operacje arytmetyczne Operacja arytmetyczna jest opisywana za pomocą znaku operacji i jednego lub dwóch wyrażeń.

Właściwości i metody obiektu Comment Właściwości

Visual Basic for Application (VBA)

Algorytmika i Programowanie VBA 1 - podstawy

Języki i metody programowania

Podstawy programowania w języku C i C++

Podstawy programowania w Pythonie

Podstawy programowania w Pythonie

Operatory. Operatory bitowe i uzupełnienie informacji o pozostałych operatorach. Programowanie Proceduralne 1

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

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

Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 7 WSTĘP DO INFORMATYKI

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

JAVA. Platforma JSE: Środowiska programistyczne dla języka Java. Wstęp do programowania w języku obiektowym. Opracował: Andrzej Nowak

PROGRAMOWANIE W PYTHONIE OD PIERWSZYCH KROKÓW

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

operator zmiany znaku operatory mnożenia, dzielenia, dzielenia modulo operatory dodawania, odejmowania

Podstawy programowania w języku C

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

Podstawy programowania C. dr. Krystyna Łapin

Programowanie C# mgr in. Dariusz Ku. p. 119A

Odczyt danych z klawiatury Operatory w Javie

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

dr inż. Jarosław Forenc

Instrukcje sterujące. Programowanie Proceduralne 1

2 Przygotował: mgr inż. Maciej Lasota

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

PROGRAMOWANIE W JĘZYKU PYTHON

Podstawy programowania. Wykład: 4. Instrukcje sterujące, operatory. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

Kurs rozszerzony języka Python

#include <stdio.h> int main( ) { int x = 10; long y = 20; double s; s = x + y; printf ( %s obliczen %d + %ld = %f, Wynik, x, y, s ); }

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

Wstęp do programowania

MATERIAŁY DO ZAJĘĆ II

ZMIENNE. Podstawy PHP

Rys.2.1. Drzewo modelu DOM [1]

Zaawansowany kurs języka Python

Programowanie I C / C++ laboratorium 02 Składnia pętli, typy zmiennych, operatory

Programowanie I C / C++ laboratorium 03 arytmetyka, operatory

METODY OPISU ALGORYTMÓW KOMPUTEROWYCH

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

Wstęp do programowania

Wstęp do programowania

Wiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java

Python. Wprowadzenie. Jolanta Bachan

Algorytmy i struktury danych

Visual Basic for Application (VBA)

Myśl w języku Python! : nauka programowania / Allen B. Downey. Gliwice, cop Spis treści

Bazy Danych i Usługi Sieciowe

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

Kierunek i poziom studiów: Matematyka, studia I stopnia (licencjackie), rok I

( wykł. dr Marek Piasecki )

Wstęp do informatyki- wykład 2

Instrukcje sterujące mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2012

Cw.12 JAVAScript w dokumentach HTML

ForPascal Interpreter języka Pascal

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

Podstawy programowania w Pythonie

Kiedy i czy konieczne?

JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.

Szablony funkcji i szablony klas

Programowanie, algorytmy i struktury danych

Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta Strona 1 z 26. Powrót. Full Screen. Zamknij.

Wykład I. Programowanie II - semestr II Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej

Programowanie C++ Wykład 2 - podstawy języka C++ dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Proste programy w C++ zadania

JAVAScript w dokumentach HTML (1)

Visual Basic for Application (VBA)

Podstawy programowania.

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

Programowanie komputerowe. Zajęcia 1

C++ wprowadzanie zmiennych

Operatory w C++ Operatory arytmetyczne. Operatory relacyjne (porównania) Operatory logiczne. + dodawanie - odejmowanie * mnożenie / dzielenie % modulo

Instrukcje warunkowe i skoku. Spotkanie 2. Wyrażenia i operatory logiczne. Instrukcje warunkowe: if else, switch.

Część 4 życie programu

Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych

Wprowadzenie do Scilab: podstawy języka Scilab

Wstęp do informatyki- wykład 5 Instrukcja selekcji if-else Operatory arytmetyczne i logiczne

Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Podstawy VBA cz. 2. Programowanie komputerowe

Język ludzki kod maszynowy

Wstęp do Informatyki i Programowania Laboratorium: Lista 1 Środowisko programowania

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

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

Wstęp do programowania. Różne różności

Informatyka 1. Wyrażenia i instrukcje, złożoność obliczeniowa

Przegląd języka Python. Łukasz Anwajler

Pytania dla języka Python

Programowanie obiektowe

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI EFEKTY KSZTAŁCENIA

1 Podstawy c++ w pigułce.

Transkrypt:

Wstęp do Informatyki i Programowania (kierunek matematyka stosowana) Jacek Cichoń Przemysław Kobylański Instytut Matematyki i Informatyki Politechnika Wrocławska Na podstawie: M.Summerfield.Python 3. Kompletne wprowadzenie do programowania. Helion, 2010. J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 1 / 231

Plan wykładu 1 Podstawowe elementy języka Python I 2 Podstawowe elementy języka Python II 3 Podstawowe elementy języka Python III 4 Algorytmy i programy 5 Poprawność algorytmu 6 Projektowanie zstępujące 7 Czasowa złożoność obliczeniowa 8 Rekurencja 9 Zasada dziel i zwyciężaj 10 Przeszukiwanie z nawrotami 11 Zaawansowane elementy języka Python I 12 Zaawansowane elementy języka Python II 13 Zaawansowane elementy języka Python III 14 Kolokwium J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 2 / 231

Literatura Lektura podstawowa 1 S. Alagić, M.A. Arbib. Projektowanie programów poprawnych i dobrze zbudowanych. WNT,Warszawa,1982. 2 D. Harel, Y. Feldman. Rzecz o istocie informatyki. WNT, Warszawa, 2008. 3 M. Summerfield. Python 3. Kompletne wprowadzenie do programowania. Helion,2010. Lektura uzupełniająca 1 A. Hunt, D. Thomas. Pragmatyczny programista. Od czeladnika do mistrza. WNT,Warszawa,2002. J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 3 / 231

Wykład 1 I J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 4 / 231

I zmienne wyrażenia instrukcja przypisania instrukcje wejścia/wyjścia instrukcja warunkowa J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 5 / 231

Zmienne >>> x = 1 >>> y = 2 >>> x 1 >>> y 2 >>> x+y 3 >>> J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 6 / 231

Zmienne >>> a = 7 a 7 J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 7 / 231

Zmienne >>> a = 7 >>> b = a a 7 b J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 8 / 231

Zmienne >>> a = 7 >>> b = a >>> a = Liberty a 7 b Liberty J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 9 / 231

Zmienne >>> x = "blue" >>> y = "green" >>> z = x >>> print(x, y, z) blue green blue >>> z = y >>> print(x, y, z) blue green green >>> x = z >>> print(x, y, z) green green green J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 10 / 231

Zmienne >>> x = blue x blue J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 11 / 231

Zmienne >>> x = blue >>> y = green x y blue green J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 12 / 231

Zmienne >>> x = blue >>> y = green >>> z = x x y blue green z J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 13 / 231

Zmienne >>> x = blue >>> y = green >>> z = x >>> z = y x y blue green z J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 14 / 231

Zmienne >>> x = blue >>> y = green >>> z = x >>> z = y >>> x = z x y blue green z J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 15 / 231

Zmienne >>> x = blue >>> y = green >>> z = x >>> z = y >>> x = z x y green z Śmieciarz (garbage-collector) J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 16 / 231

Wyrażenia Podstawowe typy: int typ całkowity float typ rzeczywisty podwójnej precyzji complex typ zespolony str łańcuch znaków >>> type(13) <class int > >>> type(3.14) <class float > >>> type(1j) <class complex > >>> type("abrakadabra") <class str > J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 17 / 231

Wyrażenia (operatory na liczbach) Działanie Opis X + Y, X - Y Dodawanie, odejmowanie X * Y, X / Y, Mnożenie, dzielenie X // Y, X % Y Dzielenie całkowite, reszta z dzielenia -X, +X Negacja, tożsamość X Y, X & Y Bitowe operacje OR i AND X ^ Y Bitowa operacja XOR X << N, X >> N Bitowe przesunięcie o N pozycji ~X Bitowa negacja X ** Y Podniesienie X do potęgi Y abs(x) Wartość bezwzględna int(x) Konwersja na liczbę całkowitą float(x) Konwersja na liczbę zmiennopozycyjną complex(x), complex(re, im) Utworzenie liczby zespolonej divmod(x, Y) Krotka (X//Y, X%Y) pow(x, Y, Z) Podnoszenie X do potęgi Y modulo Z J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 18 / 231

Wyrażenia (przykłady) >>> 2 + 2 4 >>> 10 / 3 3.3333333333333335 >>> 10 // 3 3 >>> 10 % 3 1 >>> 6 << 2 24 >>> int(" 123 ") 123 >>> complex(1) (1+0j) J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 19 / 231

Wyrażenia (operatory logiczne) Działanie Opis X if Y else Z Jeśli Y, to X (w p.p. Z) X and Y Logiczna koniunkcja X or Y Logiczna alternatywa not X Logiczna negacja X < Y, X > Y Porównanie wielkości X <= Y, X >= Y Porównanie wielkości X == Y, X!= Y Porównanie wielkości J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 20 / 231

Wyrażenia (przykłady) >>> zero, two, five = 0, 2, 5 >>> two if zero else five 5 >>> two and five 5 >>> five or zero 5 >>> not zero True >>> two < five True >>> five!= zero True J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 21 / 231

Instrukcja przypisania cel = wyrażenie cel zawiera referencję do obiektu wyrażenie zwraca obiekt J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 22 / 231

Instrukcja przypisania cel = wyrażenie cel1 = cel2 = wyrażenie cel1, cel2 = wyrażenie1, wyrażenie2 cel += wyrażenie cel1, cel2,... = iterator-tej-samej-długości (cel1, cel2,...) = iterator-tej-samej-długości [cel1, cel2,...] = iterator-tej-samej-długości cel1, *cel2 = iterator-odpowiedniej-długości J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 23 / 231

Instrukcja przypisania (przykłady) >>> x = y = 1 >>> x, y (1, 1) >>> x, y = 1, 2 >>> x, y (1, 2) >>> x += y >>> x, y (3, 2) >>> x, y, z = [1, 2, 3] >>> x, y, z (1, 2, 3) >>> x, *y = [1, 2, 3] >>> x, y (1, [2, 3]) J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 24 / 231

Instrukcje wejścia/wyjścia >>> print(2+2) 4 >>> print(1, 2, 3) 1 2 3 >>> print(1, 2, 3, sep = - ) 1-2-3 >>> print(1, 2, 3, sep = -, end = koniec ) 1-2-3koniec>>> print() >>> J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 25 / 231

Instrukcje wejścia/wyjścia >>> input("podaj napis: ") podaj napis: >>> input("podaj napis: ") podaj napis: Ala ma Asa. Ala ma Asa. >>> wiek = int(input("podaj swój wiek: ")) podaj swój wiek: 18 >>> wiek 18 J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 26 / 231

Instrukcja warunkowa if logiczne_wyrażenie1: instrukcja1 elif logiczne_wyrażenie2: instrukcja2... elif logiczne_wyrażenien: instrukcjan else: instrukcja J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 27 / 231

Instrukcja warunkowa (przykłady) if x: print("x is nonzero") if lines < 1000: print("small") elif lines < 10000: print("medium") else: print("large") J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 28 / 231

Instrukcja warunkowa (trójmian kwadratowy) from math import sqrt # potrzebny pierwiastek kwadratowy a = float(input("podaj a: ")) if a!= 0.0: b = float(input("podaj b: ")) c = float(input("podaj c: ")) delta = b*b-4.0*a*c if delta < 0.0: print("brak pierwiastków") elif delta == 0.0: print(-b/(2.0*a)) else: print((-b-sqrt(delta))/(2.0*a)) print((-b+sqrt(delta))/(2.0*a)) else: print("to nie jest trójmian kwadratowy") J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 29 / 231