% !TeX encoding = UTF-8
% !TeX spellcheck = sl_SI
% do-vimlatex-onwrite
\documentclass[]{article}
\usepackage[utf8]{inputenc}
\usepackage{etoolbox}
\usepackage[hidelinks]{hyperref}
\usepackage{xurl} % da breaka url
\usepackage[a4paper, total={7in, 10in}]{geometry}
\usepackage{graphicx}
\usepackage{hologo}
\usepackage{amssymb}
\usepackage{calculator}
\usepackage{pgfplots}
\usepackage[inline]{enumitem}
\usepackage{siunitx}
\usepackage{multicol}
\usepackage{tabularcalc}
\usepackage{amsmath}
\usepackage{float}
\usepackage{tasks}
\usepackage{filecontents}
\usepackage{textcomp}
\usepackage{tkz-euclide}
\usepackage{dirtytalk}
\usepackage{csquotes}
\usepackage{listings}
\usepackage{datetime} % [ddMMyyyy]
\usepackage{ccicons}
\usepackage{chemformula}
\usepackage{gensymb}
\usepackage[normalem]{ulem}
\usepackage[slovene]{babel}
\usepackage{cancel}
\usepackage{tabularx}
\usepackage{xcolor}
\usepackage{colortbl}
\usepackage{exsheets}
\usepackage{harpoon}
\usepackage{readarray}
\usepackage{forloop}
\usepackage[nomessages]{fp}
\usepackage{multirow}
\newcolumntype{Y}{>{\centering\arraybackslash}X}
% \usepackage{multienum} % weird with labels
\usetikzlibrary{calc} %% not really needed............. idk.
%\usetikzlibrary{external}
% \usetkzobj{all} % tkz-euclide > 3.02 tega ne potrebuje več (:
%\tikzexternalize
\sisetup{output-decimal-marker = {,}, quotient-mode=fraction,per-mode=fraction} % per-mode=symbol
\newcommand\ddfrac[2]{\frac{\displaystyle #1}{\displaystyle #2}}
\newcommand{\functionSamples}{100} % fix to fancier value upon release, keep low during development
\newcommand{\razhroscevanje}{1}
\definecolor{codegreen}{rgb}{0,0.6,0}
\definecolor{codered}{rgb}{1,0,0}
\definecolor{codegray}{rgb}{0.5,0.5,0.5}
\definecolor{codepurple}{rgb}{0.58,0,0.82}
\definecolor{backcolour}{rgb}{0.95,0.95,0.92}
\renewcommand{\dateseparator}{. }
\settimeformat{hhmmsstime}
\lstdefinestyle{mystyle}{
backgroundcolor=\color{backcolour},
commentstyle=\color{codegreen},
keywordstyle=\color{magenta},
numberstyle=\tiny\color{codegray},
stringstyle=\color{codepurple},
basicstyle=\ttfamily\footnotesize,
breakatwhitespace=false,
breaklines=true,
captionpos=b,
keepspaces=true,
numbers=left,
numbersep=5pt,
showspaces=false,
showstringspaces=false,
showtabs=false,
tabsize=2
}
\lstset{style=mystyle}
\def\@maketitle{%
\newpage
\null
\vskip 2em%
\begin{center}%
\let \footnote \thanks
{\LARGE \@title \par}%
\vskip 1.5em%
{\large
\lineskip .5em%
\begin{tabular}[t]{c}% <------
\@author% <------ Authors
\end{tabular}\par}% <------
\vskip 1em%
{\large \@date}%
\end{center}%
\par
\vskip 1.5em}
%opening
\newcommand{\snovdn}{Potence z racionalnimi eksponenti }
\newcommand{\predmdn}{mat}
\newcommand{\predmkaj}{domace\_naloge}
\newcommand{\stevilkadn}{30}
\newcommand{\cm}[1]{\SI{#1}{\centi\meter}}
\newcommand{\kmh}[1]{\SI{#1}{\kilo\meter\per\hour}}
\makeatletter
\newcommand{\xslalph}[1]{\expandafter\@xslalph\csname c@#1\endcsname}
\newcommand{\@xslalph}[1]{%
\ifcase#1\or a\or b\or c\or \v{c}\or d\or e\or f\or g\or h\or i%
\or j\or k\or l\or m\or n\or o\or p\or r\or s\or \v{s}%
\or t\or u\or v\or z\or \v{z}
\else\@ctrerr\fi%
}
\AddEnumerateCounter{\xslalph}{\@xslalph}{m}
\makeatother
\newcommand\gauss[2]{1/(#2*sqrt(2*pi))*exp(-((x-#1)^2)/(2*#2^2))} % Gauss function, parameters mu and sigma
\newcommand*\textfrac[2]{
\frac{\text{#1}}{\text{#2}}
}
\NewTasks[counter-format=\xslalph*),label-format=\bfseries]{primerTasks}(3)
\newcommand\vektor{\overrightarrow}
\newcommand{\iic}{I\textsuperscript{2}C }
\title{%
\snovdn --- \stevilkadn. domača naloga
\\
\large Matematika, Gimnazija Bežigrad}
\author{\begin{tabular}{rl}
\textbf{Profesor:} & prof. Vilko Domajnko \\
\textbf{Avtor:} & Anton Luka Šijanec, 2. a
% \textbf{Avtor:} & Anton Luka Šijanec \\ & Member 2 \\ & Member 3
\end{tabular}}
\newcommand\hcancel[2][black]{\setbox0=\hbox{$0#2$}%
\rlap{\raisebox{.45\ht0}{\textcolor{#1}{\rule{\wd0}{1pt}}}}#2}
\everymath{\displaystyle} % https://tex.stackexchange.com/a/32847/212260
\begin{document}
\maketitle
\begin{abstract}
Ta dokument vsebuje navodila in rešitve domače naloge snovi \textit{\snovdn}pri matematiki, ki sem jih spisal sam.
Kjer je bilo potrebno izbrati neke poljubne naloge, sem jih vedno izbiral naključno.
\end{abstract}
\paragraph{Navodilo naloge} \textbf{listi}: \textit{Potence z racionalnimi eksponenti} / 1, ... 6 (povsod po en primer)
%\tableofcontents
\begin{enumerate}[label=\textbf{\arabic*.}]
\item Zapiši v obliki potence z racionalnim eksponentom:
\begin{enumerate}[label=\textbf{\xslalph*)}]
\setcounter{enumii}{3}
\item $\sqrt{a^3}\cdot\sqrt{a^5}=a^4$
\end{enumerate}
\item Zapiši v obliki potence z racionalnim eksponentom:
\begin{enumerate}[label=\textbf{\xslalph*)}]
\item $\sqrt{a\sqrt{a}}=\sqrt{a\cdot a^\frac{1}{2}}=\sqrt{a^\frac{3}{2}}=\left(a^\frac{3}{2}\right)^\frac{1}{2}=a^\frac{3}{4}$
\end{enumerate}
\item Izračunaj:
\begin{enumerate}[label=\textbf{\xslalph*)}]
\setcounter{enumii}{5}
\item
$$
\left(\sqrt[6]{9-4\sqrt{5}+\sqrt[3]{2-\sqrt{5}}}\right)\sqrt[3]{2+\sqrt{5}}
=\left(\sqrt[6]{\left(2-\sqrt{5}\right)^2}+\sqrt[3]{2+\sqrt{5}}\right)\sqrt[3]{2+\sqrt{5}}=
$$
$$
=\left(\sqrt[3]{\sqrt{5}-2}+\sqrt[3]{2-\sqrt{5}}\right)\sqrt[3]{2+\sqrt{5}}
=\sqrt[3]{\left(\sqrt{5}-2\right)\cdot\left(2+\sqrt{5}\right)}+\sqrt[3]{\left(2-\sqrt{5}\right)\cdot\left(2+\sqrt{5}\right)}=
$$
$$
=\sqrt[3]{\left(\sqrt{5}-2\right)\cdot\left(\sqrt{5}+2\right)}+\sqrt[3]{4-5}=
\sqrt[3]{5-4}+\sqrt[3]{-1}=1-1=0
$$
\end{enumerate}
\item Poenostavi in zapiši v obliki ulomka (brez negativnih eksponentov):
\begin{enumerate}[label=\textbf{\xslalph*)}]
\setcounter{enumii}{1}
\item $\left(2x^\frac{1}{5}y^\frac{4}{5}\right)^{-5}=\frac{1}{\left(2x^\frac{1}{5}y^\frac{4}{5}\right)^5}=\frac{1}{32xy^4}$
\end{enumerate}
\item Poenostavi:
\begin{enumerate}[label=\textbf{\xslalph*)}]
\setcounter{enumii}{1}
\item $\sqrt{a^3\cdot\sqrt[3]{\frac{1}{a^2}\cdot\sqrt{a}}}=\sqrt{a^3\cdot a^\frac{-1}{2}}=\sqrt{a^\frac{5}{2}}
=\left(a^\frac{5}{2}\right)^\frac{1}{2}=a^\frac{5}{4}=\sqrt[4]{a^5}=a\sqrt[4]{a}$
\end{enumerate}
\item Poenostavi:
\begin{enumerate}[label=\textbf{\xslalph*)}]
\setcounter{enumii}{1}
\item Vau, štiri korene smo spremenili v enega! Spodaj je praktična zanimivost.
$$
\sqrt[3]{\frac{x^2}{x-1}}\cdot\sqrt{\frac{\left(x-1\right)^2}{x^5}}\cdot\sqrt[6]{\frac{x^{20}}{\left(x+ 1\right)^3}}\cdot\sqrt{\frac{x+1}{x^3}}=
\sqrt[6]{\left(\frac{x^2}{x-1}\right)^2\cdot\left(\frac{\left(x-1\right)^2}{x^5}\right)^3\cdot\frac{x^{20}}{\left(x+1}\right)^3\cdot\left(\frac{x+1}{x^3}\right)^3}=
$$
$$
=\sqrt[6]{\left(\frac{x^2}{x-1}\right)^2\cdot\left(\frac{\left(x-1\right)^2}{x^5}\right)^3
\cdot\frac{x^{20}}{\left(x+1\right)^3}\cdot\left(\frac{x+1}{x^3}\right)^3}=
\sqrt[6]{\frac{x^4}{\left(x-1\right)^2}\cdot\frac{\left(x-1\right)^6}{x^{15}}
\cdot\frac{x^{20}}{\left(x+1\right)^3}\cdot\frac{\left(x+1\right)^3}{x^9}}=
$$
$$
=\sqrt[6]{\left(x-1\right)^4\cdot x^5\cdot\frac{1}{x^5}}=
\sqrt[6]{\left(x-1\right)^4}=\sqrt[3]{\left(x-1\right)^2}
$$
\paragraph{Zanimivost} Želim preveriti, kako taka optimizacija vpliva v resničnem življenju. Recimo, da se ta račun v računalniku izvede desetmilijonkrat v sklopu nekega procesa. Koliko procesorskega časa smo pridobili s tem, da smo štiri korene spremenili v enega? Kljub vsemu smo na koncu optimizacije dobili šesti koren, kar nikakor ni mačji kašelj za X86 arhitekturo. Najlažje je računalniku računati korene kvadratnih eksponentov (2, 4, 16, ...).
\lstinputlisting[language=Octave]{kompleksnost.c}
\texttt{a@upor:[0]\$ ./kompleksnost \\
neoptimizirana enacba je za 10e6 iteracij porabila 15.330899 sekund, optimizirana pa 4.157521 \\
rezultat = 278495353224.555294, rezultat2 = 278495353224.555814 \\
a@upor:[0]\$ \\}
Ojej! Mislim, da je razlika očitna. Neoptimizirana enačba je porabila 10 sekund več. Optimizacija je torej zelo pomembna. Ampak zakaj tega namesto nas ne delajo računalniki? V GNU prevajalniku C jezika sem avtomatilno optimizacijo nastavil na nivo \texttt{0}, kar pomeni, da prevajalnik ne dela optimizacij, v navodilih za uporabo pa sem, poleg drugih, zasledil še eno opcijo, \texttt{fast}. Opcija \texttt{fast} je sicer eksperimentalna in nepriporočena, vendar dela čudeže! Če program prevedem z optimizacijskim nivojem \texttt{fast}, bo računanje neoptimizirane enačbe in optimizirane trajalo približno enako dolgo.
\texttt{a@upor:[0]\$ gcc kompleksnost.c -pedantic -Wall -Wextra -g -okompleksnost -lm -Ofast \\
a@upor:[0]\$ ./kompleksnost \\
neoptimizirana enacba je za 10e6 iteracij porabila 5.326709 sekund, optimizirana pa 4.017244 \\
rezultat = 278495353224.555294, rezultat2 = 278495353224.555814 \\
a@upor:[0]\$ \\}
\end{enumerate}
\end{enumerate}
\section{Zaključek}
Ta dokument je informativne narave in se lahko še spreminja. Najnovejša različica, torej PDFji in
\hologo{LaTeX}\footnote{Za izdelavo dokumenta potrebujete \texttt{TeXLive 2020}.}
izvorna koda, zgodovina sprememb in prejšnje različice, je na voljo v mojem šolskem Git repozitoriju na
\url{https://git.sijanec.eu/sijanec/sola-gimb-2} v mapi
\href{https://git.sijanec/sola-gimb-2/src/branch/master/\predmdn/\predmkaj/\stevilkadn/}{/\predmdn/\predmkaj/\stevilkadn/}. Povezava za ogled zadnje različice tega dokumenta v PDF obliki je \url{http://razor.arnes.si/~asija3/files/sola/gimb/2/\predmdn/\predmkaj/\stevilkadn/dokument.pdf} in/ali \url{https://git.sijanec.eu/sijanec/sola-gimb-2/raw/branch/master/\predmdn/\predmkaj/\stevilkadn/dokument.pdf}.
\if\razhroscevanje1
\vfill
\section*{Razhroščevalne informacije}
Te informacije so generirane, ker je omogočeno razhroščevanje. Pred objavo dokumenta izklopite razhroščevanje. To naredite tako, da nastavite ukaz \texttt{razhroscevanje} na 0 v začetku dokumenta.
Grafi imajo natančnost \functionSamples\space točk na graf.
Konec generiranja dokumenta: \today\ ob \currenttime\footnote{To ne nakazuje dejanskega časa, ko je bil dokument napisan, temveč čas, ko je bi dokument generiran v PDF/DVI obliko. Isto velja za datum v glavi dokumenta. Če berete direktno iz LaTeX datoteke, bo to vedno današnji datum.}%\input|"date -Ins"
Dokument se je generiral R0qK1KR2 \SI{}{\second}.
\fi
% \item $$$$ aaasecgeninsaaa R0qK1KR2
\end{document}