diff --git a/modules/variables/slides-default/.gitignore b/modules/variables/slides-default/.gitignore new file mode 100644 index 00000000..7c93b22e --- /dev/null +++ b/modules/variables/slides-default/.gitignore @@ -0,0 +1,2 @@ +notes.pdf +slides.pdf diff --git a/modules/variables/slides-default/Makefile b/modules/variables/slides-default/Makefile new file mode 100644 index 00000000..d94da0b6 --- /dev/null +++ b/modules/variables/slides-default/Makefile @@ -0,0 +1,22 @@ +.PHONY: all +all: notes.pdf slides.pdf + +LATEXFLAGS+= -shell-escape + +SRC+= preamble.tex +SRC+= abstract.tex contents.tex + +notes.pdf: notes.tex +notes.pdf: ${SRC} + +slides.pdf: slides.tex +slides.pdf: ${SRC} + + +.PHONY: clean +clean: + ${RM} notes.pdf slides.pdf + + +INCLUDE_MAKEFILES=../../..//makefiles +include ${INCLUDE_MAKEFILES}/tex.mk diff --git a/modules/variables/slides-default/abstract.tex b/modules/variables/slides-default/abstract.tex new file mode 100644 index 00000000..4012d9d3 --- /dev/null +++ b/modules/variables/slides-default/abstract.tex @@ -0,0 +1,22 @@ +% What's the problem? +% Why is it a problem? Research gap left by other approaches? +% Why is it important? Why care? +% What's the approach? How to solve the problem? +% What's the findings? How was it evaluated, what are the results, limitations, +% what remains to be done? + +% XXX Summary +\emph{Summary:} +\dots + +% XXX Motivation and intended learning outcomes +\emph{Intended learning outcomes:} +\dots + +% XXX Prerequisites +\emph{Prerequisites:} +\dots + +% XXX Reading material +\emph{Reading:} +\dots diff --git a/modules/variables/slides-default/contents.tex b/modules/variables/slides-default/contents.tex new file mode 100644 index 00000000..f0a70622 --- /dev/null +++ b/modules/variables/slides-default/contents.tex @@ -0,0 +1,34 @@ +\mode* + +\section{Fördelar med funktioner} + +\begin{frame}[fragile] + \begin{question} + \begin{itemize} + \item Vad är fördelarna med funktioner? Sant eller falskt: + \begin{enumerate} + \item<+> Det gör programmet snabbare att exekvera. + \item<+> Det gör programmet enklare att läsa. + \item<+> Det kan göra programmet kortare. + \item<+> Det underlättar en överblick över programmet. + \item<+> Det gör programmet mer användarvänligt. + \end{enumerate} + \end{itemize} + \end{question} +\end{frame} + + +\section{Defaultparametrar} + +\begin{frame}[fragile] + \begin{example} + \inputminted{python}{examples/hello.py} + \end{example} +\end{frame} + +\begin{frame}[fragile] + \begin{example} + \inputminted[firstline=7,lastline=15]{python}{examples/area.py} + \end{example} +\end{frame} + diff --git a/modules/variables/slides-default/examples/area-default.py b/modules/variables/slides-default/examples/area-default.py new file mode 100644 index 00000000..adb0a9fd --- /dev/null +++ b/modules/variables/slides-default/examples/area-default.py @@ -0,0 +1,23 @@ +"""Program som beräknar area""" + +import math + +def area_rekt(höjd, bredd): + """Beräknar arean av en rektangel.""" + return höjd * bredd + +def area_cirkel(radie, pi=3.14): + """Beräknar arean av cirkel med radien radie.""" + return radie**2 * pi + +def main(): + """Huvudprogrammet""" + r = 4 + print(f"area_cirkel({r}) = {area_cirkel(r)}") + print(f"area_cirkel({r}, {math.pi}) = {area_cirkel(r, math.pi)}") + + b = 2 + h = 3 + print(f"area_rekt({b}, {h}) = {area_rekt(b, h)}") + +main() diff --git a/modules/variables/slides-default/examples/area.py b/modules/variables/slides-default/examples/area.py new file mode 100644 index 00000000..994f36b1 --- /dev/null +++ b/modules/variables/slides-default/examples/area.py @@ -0,0 +1,20 @@ +"""Program som beräknar area""" + +def area_rekt(höjd, bredd): + """Beräknar arean av en rektangel.""" + return höjd * bredd + +def area_cirkel(radie): + """Beräknar arean av cirkel med radien radie.""" + return radie**2 * 3.14 + +def main(): + """Huvudprogrammet""" + r = 4 + print(f"area_cirkel({r}) = {area_cirkel(r)}") + + b = 2 + h = 3 + print(f"area_rekt({b}, {h}) = {area_rekt(b, h)}") + +main() diff --git a/modules/variables/slides-default/examples/hello-default.py b/modules/variables/slides-default/examples/hello-default.py new file mode 100644 index 00000000..5703423a --- /dev/null +++ b/modules/variables/slides-default/examples/hello-default.py @@ -0,0 +1,8 @@ +"""Ett program som visar defaultparametrar""" + +def hello(who="World"): + """Skriver ut 'Hello {who}!', om who inte anges används 'World'""" + print(f"Hello {who}!") + +hello() +hello("Daniel") diff --git a/modules/variables/slides-default/examples/hello.py b/modules/variables/slides-default/examples/hello.py new file mode 100644 index 00000000..4b71b02b --- /dev/null +++ b/modules/variables/slides-default/examples/hello.py @@ -0,0 +1,8 @@ +"""Ett program som visar defaultparametrar""" + +def hello(who): + """Skriver ut 'Hello {who}!', om who inte anges används 'World'""" + print(f"Hello {who}!") + +hello("World") +hello("Daniel") diff --git a/modules/variables/slides-default/notes.tex b/modules/variables/slides-default/notes.tex new file mode 100644 index 00000000..a811bab2 --- /dev/null +++ b/modules/variables/slides-default/notes.tex @@ -0,0 +1,45 @@ +\documentclass{article} + +\usepackage[hyphens]{url} +\usepackage[hidelinks]{hyperref} + +\input{preamble.tex} + +\usepackage[noamsthm,notheorems]{beamerarticle} +\setjobnamebeamerversion{slides} + +%\usepackage{authblk} +%\let\institute\affil + +\declaretheorem[numbered=unless unique,style=theorem]{theorem} +\declaretheorem[numbered=unless unique,style=definition]{definition} +\declaretheorem[numbered=unless unique,style=definition]{assumption} +\declaretheorem[numbered=unless unique,style=definition]{protocol} +\declaretheorem[numbered=unless unique,style=example]{example} +%\declaretheorem[style=definition,numbered=unless unique, +% name=Example,refname={example,examples}]{example} +\declaretheorem[numbered=unless unique,style=remark]{remark} +\declaretheorem[numbered=unless unique,style=remark]{idea} +\declaretheorem[numbered=unless unique,style=exercise]{exercise} +\declaretheorem[numbered=unless unique,style=exercise]{question} +\declaretheorem[numbered=unless unique,style=solution]{solution} + +\begin{document} +\title{% + Mer om funktioner +} +\author{Daniel Bosk} +\institute{% + KTH EECS +} + +\maketitle + +\begin{abstract} + \input{abstract.tex} +\end{abstract} + +\input{contents.tex} + +\printbibliography +\end{document} diff --git a/modules/variables/slides-default/preamble.tex b/modules/variables/slides-default/preamble.tex new file mode 100644 index 00000000..4d84267d --- /dev/null +++ b/modules/variables/slides-default/preamble.tex @@ -0,0 +1,43 @@ +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage[swedish]{babel} +\usepackage{booktabs} + +\usepackage[natbib,style=alphabetic,maxbibnames=99]{biblatex} +\addbibresource{bibliography.bib} + +\usepackage[all]{foreign} +\renewcommand{\foreignfullfont}{} +\renewcommand{\foreignabbrfont}{} + +\usepackage{newclude} +\usepackage{import} + +\usepackage[strict]{csquotes} +\usepackage[single]{acro} + +\usepackage{subcaption} + +\usepackage[noend]{algpseudocode} +\usepackage{xparse} + +\let\email\texttt + +\usepackage[outputdir=ltxobj]{minted} +\setminted{autogobble} + +\usepackage{pythontex} +\setpythontexoutputdir{.} +\setpythontexworkingdir{..} + +\usepackage{amsmath} +\usepackage{amssymb} +\usepackage{mathtools} +\usepackage{amsthm} +\usepackage{thmtools} +\usepackage[unq]{unique} +\DeclareMathOperator{\powerset}{\mathcal{P}} + +\usepackage[binary-units]{siunitx} + +\usepackage[capitalize]{cleveref} diff --git a/modules/variables/slides-default/slides.tex b/modules/variables/slides-default/slides.tex new file mode 100644 index 00000000..0e7529fc --- /dev/null +++ b/modules/variables/slides-default/slides.tex @@ -0,0 +1,118 @@ +\documentclass[ignoreframetext]{beamer} +\input{preamble.tex} + +\usetheme{Berlin} +\setbeamertemplate{footline}%{miniframes theme} +{% + \begin{beamercolorbox}[colsep=1.5pt]{upper separation line foot} + \end{beamercolorbox} + \begin{beamercolorbox}[ht=2.5ex,dp=1.125ex,% + leftskip=.3cm,rightskip=.3cm plus1fil]{author in head/foot}% + \leavevmode{\usebeamerfont{author in head/foot}\insertshortauthor}% + \hfill% + {\usebeamerfont{institute in head/foot}\usebeamercolor[fg]{institute in head/foot}\insertshortinstitute}% + \end{beamercolorbox}% + \begin{beamercolorbox}[ht=2.5ex,dp=1.125ex,% + leftskip=.3cm,rightskip=.3cm plus1fil]{title in head/foot}% + {\usebeamerfont{title in head/foot}\insertshorttitle} \hfill \insertframenumber% + \end{beamercolorbox}% + \begin{beamercolorbox}[colsep=1.5pt]{lower separation line foot} + \end{beamercolorbox} +} +\setbeamercovered{transparent} +\setbeamertemplate{bibliography item}[text] + +\AtBeginSection[]{% + \begin{frame} + \tableofcontents[currentsection] + \end{frame} +} + +\ProvideDocumentEnvironment{assumption}{o}{% + \IfValueTF{#1}{% + \begin{block}{Assumption: #1} + }{% + \begin{block}{Assumption} + } +}{% + \end{block} +} + +\ProvideDocumentEnvironment{protocol}{o}{% + \IfValueTF{#1}{% + \begin{block}{Protocol: #1} + }{% + \begin{block}{Protocol} + } +}{% + \end{block} +} + +\ProvideDocumentEnvironment{remark}{o}{% + \IfValueTF{#1}{% + \begin{alertblock}{Note: #1} + }{% + \begin{alertblock}{Note} + } +}{% + \end{alertblock} +} + +\ProvideDocumentEnvironment{idea}{o}{% + \IfValueTF{#1}{% + \begin{block}{Idea: #1} + }{% + \begin{block}{Idea} + } +}{% + \end{block} +} + +\ProvideDocumentEnvironment{question}{o}{% + \setbeamercolor{block body}{bg=orange!15,fg=black} + \setbeamercolor{block title}{bg=orange,fg=white} + \setbeamercolor{local structure}{fg=orange} + \IfValueTF{#1}{% + \begin{block}{Question: #1} + }{% + \begin{block}{Question} + } +}{% + \end{block} +} + +\ProvideDocumentEnvironment{exercise}{o}{% + \setbeamercolor{block body}{bg=yellow!10,fg=black} + \setbeamercolor{block title}{bg=yellow,fg=black} + \setbeamercolor{local structure}{fg=yellow} + \IfValueTF{#1}{% + \begin{block}{Exercise: #1} + }{% + \begin{block}{Exercise} + } +}{% + \end{block} +} + + +\begin{document} +\title{% + Mer om funktioner +} +\author{Daniel Bosk} +\institute{% + KTH EECS +} + +\begin{frame} + \maketitle +\end{frame} + +\mode +\input{contents.tex} +\mode* + +%\begin{frame}[allowframebreaks] +% \printbibliography +%\end{frame} +\end{document}