Programování v Pythonu

Podobné dokumenty
Programování v Pythonu

Programování v Pythonu

Programování v Pythonu

Programování v Pythonu

Programování v Pythonu

Programování v Pythonu

Programování v Pythonu

Programování v Pythonu

Programování v Pythonu

Programování v Pythonu

Programování v Pythonu

Programování v Pythonu

Programování v Pythonu

Programování v Pythonu

Programování v Pythonu

Další příklady. Katedra softwarového inženýrství. Katedra teoretické informatiky, Fakulta informačních technologii, ČVUT v Praze. Karel Müller, 2011

Programování v Pythonu

Konečný automat. Jan Kybic.

IB111 Základy programování Radek Pelánek

Programování v Pythonu

IB111 Úvod do programování skrze Python Přednáška 7

Programování v Pythonu

Basic256 - úvod do programování Příklady. ing. petr polách

Programování v Pythonu

Programování v Pythonu

PSK3-5. Přesměrování vstupu a výstupu. Vstup a výstup

Digitální signály a kódy

Regulární výrazy. Filtry grep, sed a awk.

Sada 1 - Základy programování

(a kryptografické odbočky) IB111 Úvod do programování skrze Python

Druhy souborů. textové. binární. nestrukturované txt strukturované - ini, xml, csv. veřejné bmp, jpg, wav proprietární docx, cdr, psd

1. Úloha - Vykládání lodí (20 bodů)

(a kryptografické odbočky) IB111 Úvod do programování skrze Python

ANOTACE K VÝUKOVÉ SADĚ

Úvod do programování. Lekce 1

SPJA, cvičení 1. ipython, python, skripty. základy syntaxe: základní datové typy, řetězce. podmínky: if-elif-else, vyhodnocení logických výrazů

Poslední aktualizace: 14. října 2011

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

Zadání soutěžních úloh

Algoritmizace a programování

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 7

UŽIVATELSKÁ PŘÍRUČKA KLÁVESNICE

Výukový materiál zpracovaný v rámci projektu. Základní škola Sokolov, Běžecká 2055 pracoviště Boženy Němcové 1784

Základní příkazy UNIXu (Linuxu)

Úvod do programování 6. hodina

ALGORITMIZACE A DATOVÉ STRUKTURY (14ASD) 1. cvičení

Regionální kolo soutěže Mladý programátor 2016, kategorie A, B

VISUAL BASIC. Práce se soubory

Použití jazyka Python pro realizaci výpočtů a aplikací

Práce s textovými proměnnými v DetStudiu

Celostátní kolo soutěže Baltík 2008, kategorie C

LinuxDays 2017 Ondřej Guth GNU grep LD 17 1 / 14

DUM 20 téma: Test dávky

Soubory. Úvod. Adresáře a cesty. Adresáře. Aktuální pracovní adresář. Petr Pošík. Katedra kybernetiky, FEL ČVUT v Praze

CO UMÍ EXCEL? CVIČEBNICE PŘÍKLADŮ PRO UČITELE. Modulární systém dalšího vzdělávání pedagogických pracovníků JmK. v přírodních vědách a informatice

1.1 Struktura programu v Pascalu Vstup a výstup Operátory a některé matematické funkce 5

- znakové konstanty v apostrofech, např. a, +, (znak mezera) - proměnná zabírá 1 byte, obsahuje kód příslušného znaku

Chyby a výjimky. Chyba. Odkud se chyby berou? Kdo chyby opravuje? Co můžete dělat jako programátor? Dvě hlavní metody práce s chybami.

Algoritmizace a programování

8. RSA, kryptografie s veřejným klíčem. doc. Ing. Róbert Lórencz, CSc.

Zobrazení dat Cíl kapitoly:

Informatika pro moderní fyziky (2) základy Ruby, zpracování textu

A. Jak náš systém pracuje s šifrováním a dešifrováním nabídek. B. Jak vytvořit veřejnou zakázku s příjmem elektronických nabídek

Zadání soutěžních úloh

Hledání v textu algoritmem Boyer Moore

TURINGOVY STROJE. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze

Lekce 2. Řetězce a práce s nimi. Vstup a výstup. C2184 Úvod do programování v Pythonu podzim 2016

Informatika Datové formáty

Metodický koncept k efektivní podpoře klíčových odborných kompetencí s využitím cizího jazyka ATCZ62 - CLIL jako výuková strategie na vysoké škole

Python profesionálně: dynamické parametry, generátory, lambda funkce... with. Dynamické parametry

AUTOMATY A GRAMATIKY. Pavel Surynek. Kontextové uzávěrové vlastnosti Turingův stroj Rekurzivně spočetné jazyky Kódování, enumerace

Úvod, terminologie. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, P edn. 1

Základy XML struktura dokumentu (včetně testových otázek)


Výjimky. Práce se soubory.

files November 20, 2018

Zobrazovač teploty, času, datumu a textů. 1. Nastavení nového datumu ( z procedury Vlož text )

Téma 2 Principy kryptografie

Andrew Kozlík KA MFF UK

Matematické základy šifrování a kódování

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 8

Programování v jazyce JavaScript

Dělba rolí. Tvorba el. dokumentace (BI-TED) Publikační proces. Motivace. 2. Oddělení formy a obsahu. Autor

Testování pamětí (Memory BIST)

Vlastní formát buňky. Vytvoření nebo odstranění vlastního formátu čísla

KONCEPT ZDRAVÉ BUDOVY

Programování v Pythonu

Ošetřování chyb v programech

C2110 Operační systém UNIX a základy programování

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

Funkce, podmíněný příkaz if-else, příkaz cyklu for

Školní kolo soutěže Baltík 2009, kategorie C

Instalace a aktivace 3E pluginů pro SketchUp 2015 Rychlý průvodce instalací a aktivací pluginů: 3E Parametrické tvary, 3E Doors&Windows a 3E Katalog.

C2110 Operační systém UNIX a základy programování

4. Teorie informace, teorie složitosti algoritmů. doc. Ing. Róbert Lórencz, CSc.

2000 zveřejnění dobové zprávy General Report on Tunny informací nedostatek k odvození konstrukce šifrátoru Lorenz cíl: odvození pravděpodobného

2000 zveřejnění dobové zprávy General Report on Tunny

Dnešní téma. Oblasti standardizace v ICT. Oblasti standardizace v ICT. Oblasti standardizace v ICT

Instalace a aktivace 3E pluginů pro SketchUp Spusťte instalátor Další >

Transkript:

ƒeské vysoké u ení technické v Praze FIT Programování v Pythonu Ji í Znamená ek P íprava studijního programu Informatika je podporována projektem nancovaným z Evropského sociálního fondu a rozpo tu hlavního m sta Prahy. Praha & EU: Investujeme do va²í budoucnosti

Příklady k procvičení Procvičování 1 1 of 6 Procvičování 1 1. Napište program pro Césarovu šifru. Tato šifra je založena na posouvání písmen o 3 pozice v abecedě (tj. a d, m p, z c). Program by měl obsahovat funkce jak pro zašifrování, tak pro dešifrování takové šifry. Tyto funkce by měly brát řetězec a vrátit jeho zašifrovanou/dešifrovanou podobu. [ ] řešení (procvicovani/caesar.1a.py) def cipher(text): """Zašifruj zadaný ASCII-text.""" key = ring[3:] + ring[:3] txt += key[ ring.index(char) ] def decipher(text): """Odšifruj zadaný ASCII-text.""" key = ring[3:] + ring[:3] txt += ring[ key.index(char) ] txt = cipher('ahoj, jak to jde? Z') print( decipher(txt) )

Příklady k procvičení Procvičování 1 2 of 6 [ ] řešení (procvicovani/caesar.1b.py) ring_len = len(ring) def cipher(text): """Zašifruj zadaný ASCII-text.""" txt += ring[ (ring.index(char) + 3) % ring_len] def decipher(text): """Odšifruj zadaný ASCII-text.""" txt += ring[ (ring.index(char) - 3) % ring_len] txt = cipher('ahoj, jak to jde? Z') print( decipher(txt) ) 2. Upravte předchozí program, aby umožňoval posouvání písmen o jiné hodnoty než 3.

Příklady k procvičení Procvičování 1 3 of 6 [ ] řešení (procvicovani/caesar.2a.py) def cipher(text, shift): """Zašifruj zadaný ASCII-text uvedeným posunem.""" key = ring[shift:] + ring[:shift] txt += key[ ring.index(char) ] def decipher(text, shift): """Odšifruj zadaný ASCII-text uvedeným posunem.""" key = ring[shift:] + ring[:shift] txt += ring[ key.index(char) ] txt = cipher('ahoj, jak to jde? Z', -1) print( decipher(txt, -1) )

Příklady k procvičení Procvičování 1 4 of 6 [ ] řešení (procvicovani/caesar.2b.py) ring_len = len(ring) def cipher(text, shift): """Zašifruj zadaný ASCII-text uvedeným posunem.""" txt += ring[ (ring.index(char) + shift) % ring_len] def decipher(text, shift): """Odšifruj zadaný ASCII-text uvedeným posunem.""" txt += ring[ (ring.index(char) - shift) % ring_len] txt = cipher('ahoj, jak to jde? Z', -1) print( decipher(txt, -1) ) 3. Napište program, který z textového souboru přečte postupně všechny řádky a pro každou vypíše součet čísel, která se na této řádce vyskytují. Na konci program navíc vypíše součet všech čísel přes celý soubor. [ ] nápověda float()

Příklady k procvičení Procvičování 1 5 of 6 [ ] řešení (procvicovani/cisla.1.py) lines = [] with open("cisla.1.txt", mode="r", encoding="utf-8") as f: lines = f.readlines() celkem = 0 for line in lines: radka = 0 for num in line.split(): radka += float(num) celkem += radka print( "{0:^6} : {1}".format(radka, line), end='' ) print(celkem) 4. Upravte předchozí program, aby fungoval i pro čísla libovolně rozházená mezi jiným textem. Přitom uvažujeme pouze samostatně stojící čísla (tj. oddělená od okolního textu mezerou). [ ] nápověda float(), ValueError [ ] řešení (procvicovani/cisla.2.py) lines = [] with open("cisla.2.txt", mode="r", encoding="utf-8") as f: lines = f.readlines() celkem = 0 for line in lines: radka = 0 for num in line.split(): try: radka += float(num) except ValueError: pass celkem += radka print( "{0:^6} : {1}".format(radka, line), end='' ) print(celkem) 5. Napište program, který přečte soubor v kódování UTF-8 a vypíše všechny znaky, které nejsou součástí ASCII-části unicodové tabulky. Každý takový znak bude vypsán pouze jednou. [ ] nápověda ord(znak) > 127

Příklady k procvičení Procvičování 1 6 of 6 [ ] řešení (procvicovani/znaky.py) text = '' with open('hasek-svejk.txt', mode='r', encoding='utf-8') as f: text = f.read() znaky = { znak for znak in text if ord(znak) > 127 } print(znaky) Autorem původního zadání u příkladů 1-3 a 5 je Bedřich Košata.