diff --git a/02-cykly/02-cykly.tex b/02-cykly/02-cykly.tex new file mode 100644 index 0000000000000000000000000000000000000000..26cf191f3c51747713c495a1d158ddd6294e6414 --- /dev/null +++ b/02-cykly/02-cykly.tex @@ -0,0 +1,116 @@ +\documentclass{beamer} +\usepackage[utf8]{inputenc} +\usepackage[czech]{babel} +\usepackage{palatino} +\usepackage{verbatim} +\usetheme{Warsaw} +\title{Programování 1: Cykly} +\author[Martin Mareš]{Martin Mareš\\\texttt{mj@ucw.cz}} +\institute{Katedra Aplikované Matematiky\\MFF UK Praha} +\date{2019} +\begin{document} +\setbeamertemplate{navigation symbols}{} +\setbeamertemplate{footline}{} +\setbeamerfont{title page}{family=\rmfamily} + +\begin{frame} +\titlepage +\end{frame} + +% ---------------------------------------------------------------------- + +\begin{frame}{Řídicí příkazy: podmínky} + +{\bf if} {\it podmínka}{\bf :}\\ +\qquad {\it příkazy}\\ +{\bf else:}\\ +\qquad {\it příkazy} + +~ + +~ + +Pokud bychom chtěli {\it příkazy} vynechat, můžeme místo nich napsat {\bf pass}. +To je prázdný příkaz. + +\end{frame} + +% ---------------------------------------------------------------------- + +\begin{frame}{Řídicí příkazy: řetězení podmínek} + +\begin{columns}[t] + +\column{0cm} + +\column{6cm} + +Abychom nemuseli psát: + +~ + +{\bf if} {\it podmínka}{\bf :}\\ +\qquad {\it příkazy}\\ +{\bf else:}\\ +\qquad {\bf if} {\it podmínka}{\bf :}\\ +\qquad\qquad {\it příkazy}\\ +\qquad {\bf else:}\\ +\qquad\qquad {\it příkazy} + +\column{6cm} + +Existuje zkratka: + +~ + +{\bf if} {\it podmínka}{\bf :}\\ +\qquad {\it příkazy}\\ +{\bf elif} {\it podmínka}{\bf :}\\ +\qquad {\it příkazy}\\ +{\bf else:}\\ +\qquad {\it příkazy} + +\end{columns} + +\end{frame} + +% ---------------------------------------------------------------------- + +\begin{frame}{Řídicí příkazy: cykly} + +{\bf while} {\it podmínka}{\bf :}\\ +\qquad {\it příkazy} + +~ + +{\bf break} -- vyskočí z~cyklu + +~ + +{\bf continue} -- přejde na další průchod cyklem + +~ + +{\bf while True} -- nekonečný cyklus + +\end{frame} + +% ---------------------------------------------------------------------- + +\begin{frame}{Příklad: testování prvočísel} + +\verbatiminput{prvocisla-test.py} + +\end{frame} + +% ---------------------------------------------------------------------- + +\begin{frame}{Příklad: jak funguje else za cyklem} + +\verbatiminput{prvocisla-else.py} + +\end{frame} + +% ---------------------------------------------------------------------- + +\end{document} diff --git a/02-cykly/Makefile b/02-cykly/Makefile new file mode 100644 index 0000000000000000000000000000000000000000..6b500f4fe1dcac7209eb55974352913075ba801e --- /dev/null +++ b/02-cykly/Makefile @@ -0,0 +1,3 @@ +SLIDES=02-cykly.pdf + +include ../Makerules diff --git a/01-uvod/euklides-modulici.py b/02-cykly/euklides-modulici.py similarity index 100% rename from 01-uvod/euklides-modulici.py rename to 02-cykly/euklides-modulici.py diff --git a/01-uvod/euklides-odcitaci.py b/02-cykly/euklides-odcitaci.py similarity index 100% rename from 01-uvod/euklides-odcitaci.py rename to 02-cykly/euklides-odcitaci.py diff --git a/01-uvod/euklides-trikovy.py b/02-cykly/euklides-trikovy.py similarity index 100% rename from 01-uvod/euklides-trikovy.py rename to 02-cykly/euklides-trikovy.py diff --git a/02-cykly/prvocisla-else.py b/02-cykly/prvocisla-else.py new file mode 100755 index 0000000000000000000000000000000000000000..69ebdd7bdc681a0aa94850b5f76c0c8c54f54eb7 --- /dev/null +++ b/02-cykly/prvocisla-else.py @@ -0,0 +1,14 @@ +#!/usr/bin/env python3 +# Otestuje, zda číslo je prvočíslem (2. pokus) + +n = int(input()) +d = 2 + +while d < n: + if n%d == 0: + print("Číslo", n, "je dělitelné", d) + mam_delitele = True + break + d += 1 +else: + print("Číslo", n, "je prvočíslo") diff --git a/01-uvod/prvocisla-test.py b/02-cykly/prvocisla-test.py similarity index 99% rename from 01-uvod/prvocisla-test.py rename to 02-cykly/prvocisla-test.py index 77e86aa1977db5a2f28a2cea6ba45ef8dc2c8dc5..a224809b34f0418ef88ac50c7217385e02f86ff4 100755 --- a/01-uvod/prvocisla-test.py +++ b/02-cykly/prvocisla-test.py @@ -2,7 +2,6 @@ # Otestuje, zda číslo je prvočíslem n = int(input()) - d = 2 mam_delitele = False diff --git a/01-uvod/prvocisla-vypis.py b/02-cykly/prvocisla-vypis.py similarity index 100% rename from 01-uvod/prvocisla-vypis.py rename to 02-cykly/prvocisla-vypis.py