Für Vorlesungen, bitte die Webseite verwenden. https://flavigny.de/lecture
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

76 行
1.8KB

  1. \documentclass[uebung]{../../../lecture}
  2. \usepackage{listings}
  3. \title{Übungsblatt 6}
  4. \author{Samuel Weidemaier, Christian Merten}
  5. \usepackage{xcolor}
  6. \lstdefinestyle{mystyle}{
  7. commentstyle=\color{gray},
  8. keywordstyle=\color{blue},
  9. numberstyle=\tiny\color{gray},
  10. stringstyle=\color{black},
  11. basicstyle=\ttfamily\footnotesize,
  12. breakatwhitespace=false,
  13. breaklines=true,
  14. captionpos=b,
  15. keepspaces=true,
  16. numbers=left,
  17. numbersep=5pt,
  18. showspaces=false,
  19. showstringspaces=false,
  20. showtabs=false,
  21. tabsize=2
  22. }
  23. \lstset{style=mystyle}
  24. \begin{document}
  25. \punkte
  26. \begin{aufgabe}
  27. siehe Blatt.
  28. \end{aufgabe}
  29. \begin{aufgabe} Primfaktorzerlegung
  30. \begin{lstlisting}[language=C++, title=Primfaktorzerlegung, captionpos=b]
  31. #include "cpp_headers/fcpp.hh"
  32. int main() {
  33. int n = enter_int("Please enter a natural number: ");
  34. // search smallest factor, start with smallest possible: 2
  35. int k=2;
  36. // go until sqrt(n)
  37. while (k <= sqrt(n)) {
  38. // k is factor of n
  39. if (n % k == 0) {
  40. // print out the factor k
  41. print(k);
  42. // reset n to the quotient
  43. n = n / k;
  44. // restart at k=2
  45. k = 2;
  46. } else {
  47. // if k is not a factor, check next one
  48. k++;
  49. }
  50. }
  51. // n is the last prime factor of the original input number
  52. print(n);
  53. }
  54. \end{lstlisting}
  55. Die algorithmische Komplexität des Programms für $n$ Primzahl ist $\sqrt{n}$, da die Schleife
  56. für Primzahlen bis $\sqrt{n} $ durchlaufen wird.
  57. \end{aufgabe}
  58. \begin{aufgabe}
  59. siehe \textit{taschenrechner.cpp}
  60. \end{aufgabe}
  61. \end{document}