aboutsummaryrefslogtreecommitdiff
path: root/Info
diff options
context:
space:
mode:
authorFlorian Fischer <florian.fischer@muhq.space>2024-06-15 09:56:56 +0200
committerFlorian Fischer <florian.fischer@muhq.space>2024-06-15 09:58:01 +0200
commita3b0b9a7f65059fb7c348f415ded1a20086376e0 (patch)
tree3a79db4c3f761399fe4218f4bc42e2f290ee43cc /Info
parent3460ac0c43038d21ddffc9afeda3b338afc4d80a (diff)
downloadunterricht-a3b0b9a7f65059fb7c348f415ded1a20086376e0.tar.gz
unterricht-a3b0b9a7f65059fb7c348f415ded1a20086376e0.zip
add my next exam for 9B
Diffstat (limited to 'Info')
l---------Info/23_24/06/18/9B/test/Aufgaben/aepfel_fangen.png1
l---------Info/23_24/06/18/9B/test/Aufgaben/aepfel_fangen.tex1
l---------Info/23_24/06/18/9B/test/Aufgaben/schaltjahr_algo_struktogramm.tex1
l---------Info/23_24/06/18/9B/test/Aufgaben/schaltjahr_struktogramm.png1
l---------Info/23_24/06/18/9B/test/Aufgaben/schaltjahr_struktogramm_loesung.png1
l---------Info/23_24/06/18/9B/test/Aufgaben/schildkroete_in_der_wueste.png1
l---------Info/23_24/06/18/9B/test/Aufgaben/schildkroete_in_der_wueste.tex1
-rw-r--r--Info/23_24/06/18/9B/test/_test.tex35
-rw-r--r--Info/23_24/06/18/9B/test/test_lehrer.tex7
-rw-r--r--Info/23_24/06/18/9B/test/test_loesung.tex7
-rw-r--r--Info/23_24/06/18/9B/test/test_schueler.tex7
-rw-r--r--Info/9/3/Aufgaben/aepfel_fangen.pngbin0 -> 65113 bytes
-rw-r--r--Info/9/3/Aufgaben/aepfel_fangen.tex79
-rw-r--r--Info/9/3/Aufgaben/schaltjahr_algo_struktogramm.tex39
-rw-r--r--Info/9/3/Aufgaben/schaltjahr_struktogramm.pngbin0 -> 18079 bytes
-rw-r--r--Info/9/3/Aufgaben/schaltjahr_struktogramm_loesung.pngbin0 -> 115768 bytes
-rw-r--r--Info/9/3/Aufgaben/schildkroete_in_der_wueste.pngbin0 -> 27473 bytes
-rw-r--r--Info/9/3/Aufgaben/schildkroete_in_der_wueste.tex81
l---------Info/9/Leistungsnachweise/2_KA_9B_202406181
19 files changed, 263 insertions, 0 deletions
diff --git a/Info/23_24/06/18/9B/test/Aufgaben/aepfel_fangen.png b/Info/23_24/06/18/9B/test/Aufgaben/aepfel_fangen.png
new file mode 120000
index 00000000..1e3f379d
--- /dev/null
+++ b/Info/23_24/06/18/9B/test/Aufgaben/aepfel_fangen.png
@@ -0,0 +1 @@
+../../../../../../9/3/Aufgaben/aepfel_fangen.png \ No newline at end of file
diff --git a/Info/23_24/06/18/9B/test/Aufgaben/aepfel_fangen.tex b/Info/23_24/06/18/9B/test/Aufgaben/aepfel_fangen.tex
new file mode 120000
index 00000000..3b24253e
--- /dev/null
+++ b/Info/23_24/06/18/9B/test/Aufgaben/aepfel_fangen.tex
@@ -0,0 +1 @@
+../../../../../../9/3/Aufgaben/aepfel_fangen.tex \ No newline at end of file
diff --git a/Info/23_24/06/18/9B/test/Aufgaben/schaltjahr_algo_struktogramm.tex b/Info/23_24/06/18/9B/test/Aufgaben/schaltjahr_algo_struktogramm.tex
new file mode 120000
index 00000000..0ce831fe
--- /dev/null
+++ b/Info/23_24/06/18/9B/test/Aufgaben/schaltjahr_algo_struktogramm.tex
@@ -0,0 +1 @@
+../../../../../../9/3/Aufgaben/schaltjahr_algo_struktogramm.tex \ No newline at end of file
diff --git a/Info/23_24/06/18/9B/test/Aufgaben/schaltjahr_struktogramm.png b/Info/23_24/06/18/9B/test/Aufgaben/schaltjahr_struktogramm.png
new file mode 120000
index 00000000..df076e2a
--- /dev/null
+++ b/Info/23_24/06/18/9B/test/Aufgaben/schaltjahr_struktogramm.png
@@ -0,0 +1 @@
+../../../../../../9/3/Aufgaben/schaltjahr_struktogramm.png \ No newline at end of file
diff --git a/Info/23_24/06/18/9B/test/Aufgaben/schaltjahr_struktogramm_loesung.png b/Info/23_24/06/18/9B/test/Aufgaben/schaltjahr_struktogramm_loesung.png
new file mode 120000
index 00000000..d03238a3
--- /dev/null
+++ b/Info/23_24/06/18/9B/test/Aufgaben/schaltjahr_struktogramm_loesung.png
@@ -0,0 +1 @@
+../../../../../../9/3/Aufgaben/schaltjahr_struktogramm_loesung.png \ No newline at end of file
diff --git a/Info/23_24/06/18/9B/test/Aufgaben/schildkroete_in_der_wueste.png b/Info/23_24/06/18/9B/test/Aufgaben/schildkroete_in_der_wueste.png
new file mode 120000
index 00000000..8e7d1438
--- /dev/null
+++ b/Info/23_24/06/18/9B/test/Aufgaben/schildkroete_in_der_wueste.png
@@ -0,0 +1 @@
+../../../../../../9/3/Aufgaben/schildkroete_in_der_wueste.png \ No newline at end of file
diff --git a/Info/23_24/06/18/9B/test/Aufgaben/schildkroete_in_der_wueste.tex b/Info/23_24/06/18/9B/test/Aufgaben/schildkroete_in_der_wueste.tex
new file mode 120000
index 00000000..bca98b50
--- /dev/null
+++ b/Info/23_24/06/18/9B/test/Aufgaben/schildkroete_in_der_wueste.tex
@@ -0,0 +1 @@
+../../../../../../9/3/Aufgaben/schildkroete_in_der_wueste.tex \ No newline at end of file
diff --git a/Info/23_24/06/18/9B/test/_test.tex b/Info/23_24/06/18/9B/test/_test.tex
new file mode 100644
index 00000000..60c36c98
--- /dev/null
+++ b/Info/23_24/06/18/9B/test/_test.tex
@@ -0,0 +1,35 @@
+\Datum{18.06.2024}
+\TestNummer{2}
+\TestArt{Kurzarbeit}
+\Klasse{9B}
+\Fach{Informatik}
+
+\usepackage{minted}
+
+\geometry{top=20mm, bottom=20mm, headsep=5mm, footskip=10mm}
+\fancypagestyle{ErsteSeite}{%
+ \fancyhf{}%
+ \fancyhead[L]{\Schule \newline Schuljahr 2023/24}
+ \fancyhead[R]{Name: \hspace{6cm}}
+}
+
+\begin{document}
+\thispagestyle{ErsteSeite}
+\Intro
+
+% 4 BE Modellierung
+% 4 BE Variablen
+% 8 BE Spielen
+\input{Aufgaben/aepfel_fangen}
+\begin{Bearbeitung}
+\kariert[0.5cm]{38}
+\end{Bearbeitung}
+\iflehrer{}{\clearpage}
+
+%% 5 BE
+\input{Aufgaben/schildkroete_in_der_wueste}
+\iflehrer{}{\clearpage}
+
+%% 6 BE
+\input{Aufgaben/schaltjahr_algo_struktogramm}
+\end{document}
diff --git a/Info/23_24/06/18/9B/test/test_lehrer.tex b/Info/23_24/06/18/9B/test/test_lehrer.tex
new file mode 100644
index 00000000..094f5adf
--- /dev/null
+++ b/Info/23_24/06/18/9B/test/test_lehrer.tex
@@ -0,0 +1,7 @@
+\documentclass[
+lehrerversion,
+erwartungshorizont,
+sigfooter,
+]{test}
+
+\input{_test}
diff --git a/Info/23_24/06/18/9B/test/test_loesung.tex b/Info/23_24/06/18/9B/test/test_loesung.tex
new file mode 100644
index 00000000..d0bb5cf9
--- /dev/null
+++ b/Info/23_24/06/18/9B/test/test_loesung.tex
@@ -0,0 +1,7 @@
+\documentclass[
+lehrerversion,
+sigfooter,
+keinlogo,
+]{test}
+
+\input{_test}
diff --git a/Info/23_24/06/18/9B/test/test_schueler.tex b/Info/23_24/06/18/9B/test/test_schueler.tex
new file mode 100644
index 00000000..12415c38
--- /dev/null
+++ b/Info/23_24/06/18/9B/test/test_schueler.tex
@@ -0,0 +1,7 @@
+\documentclass[
+sigfooter,
+drawborder,
+twoside,
+]{test}
+
+\input{_test}
diff --git a/Info/9/3/Aufgaben/aepfel_fangen.png b/Info/9/3/Aufgaben/aepfel_fangen.png
new file mode 100644
index 00000000..8a86f990
--- /dev/null
+++ b/Info/9/3/Aufgaben/aepfel_fangen.png
Binary files differ
diff --git a/Info/9/3/Aufgaben/aepfel_fangen.tex b/Info/9/3/Aufgaben/aepfel_fangen.tex
new file mode 100644
index 00000000..e6896658
--- /dev/null
+++ b/Info/9/3/Aufgaben/aepfel_fangen.tex
@@ -0,0 +1,79 @@
+\begin{Aufg}[Äpfel fangen]
+\begin{tabular}{p{0.3\textwidth} p{0.65\textwidth}}
+\includegraphics[keepaspectratio, width=0.3\textwidth]{Aufgaben/aepfel_fangen.png} &
+\vspace{-3.5cm}Ziel des links gezeigten Spiels ist es, möglichst viele der herunterfallenden Äpfel einzusammeln, jedoch keine Spinnen.
+Dazu kann der Korb am Boden mit den Pfeiltasten nach links und rechts gesteuert werden.
+Sobald eine Spinne gesammelt wurde, endet das Spiel. \\
+\end{tabular}
+
+Die Klasse \mintinline{java}{Korb} hat folgende Methoden:
+{ \small
+\begin{itemize}[itemsep=-2pt, leftmargin=*]
+\item \mintinline{java}{bewege(String richtung)}: Erwartet als Parameter \mintinline{java}{"links"} oder \mintinline{java}{"rechts"} und versetzt den Korb entsprechend ein Stück nach links oder rechts.
+\item \mintinline{java}{pfeiltasteGedrückt(String richtung)}: Erwartet als Parameter \mintinline{java}{"links"} oder \mintinline{java}{"rechts"} und überprüft entsprechend, ob die linke bzw. die rechte Pfeiltaste gedrückt wurde. Gibt \mintinline{java}{true} oder \mintinline{java}{false} zurück.
+\item \mintinline{java}{apfelVorhanden()}: Prüft, ob der Korb einen Apfel berührt und gibt \mintinline{java}{true} oder \mintinline{java}{false} zurück. Berührte Äpfel werden entfernt.
+\item \mintinline{java}{spinneVorhanden()}: Prüft, ob der Korb ein Spinne berührt und gibt \mintinline{java}{true} oder \mintinline{java}{false} zurück.
+\end{itemize}
+}
+
+\begin{enumerate}[a), itemsep=0pt]
+\item Zeichne die Klassenkarte zu der Klasse \mintinline{java}{Korb}.
+Markiere und benenne, was jeweils in den einzelnen Bereichen der Klassenkarte steht.
+\iflehrer{}{\\[0.2cm] \kariert{17}}
+\item Erkläre unter Verwendung von Fachbegriffen, welche Schritte nötig sind, um die Anzahl der gesammelten Äpfel in der Variable \mintinline{java}{punkte} zu speichern.
+Gib den dazu benötigten Code an.
+\item Schreibe die Methode \mintinline{java}{spielen()} der Klasse \mintinline{java}{Korb}.
+In dieser soll der Korb solange gesteuert werden bis er eine Spinne berührt.
+Falls ein Apfel berührt wird, soll zudem der Punktestand um 1 erhöht werden.
+Du kannst annehmen, dass die Variable \mintinline{java}{punkte} existiert und verwendbar ist.
+Die Methode soll den erreichten Punktestand als Ergebnis zurückgeben.
+\end{enumerate}
+\end{Aufg}
+
+\begin{Lsg}
+\begin{enumerate}[a)]
+\item
+ \begin{tikzpicture}
+ \begin{class}[text width=5cm]{Korb}{0,0}
+ \operation{bewege(richtung)}
+ \operation{pfeiltasteGedrückt(richtung)}
+ \operation{spinneVorhanden()}
+ \operation{blattVorhanden()}
+ \end{class}
+ \node[right=0cm of Korb, yshift=3cm] {UML \Point}; % UML
+ \node[right=of Korb.center] {\Halfpoint}; % Methoden
+ \node[right=of Korb.center, yshift=2cm, xshift=0.25cm] {\Halfpoint}; % Klassenname
+ \node[right=of Korb.center, yshift=1.6cm] {\Halfpoint}; % Attribute
+ \draw[Triangle-] ($(Korb.east) + (0, 2.5)$) -- ($(Korb.east) + (2, 2.5)$) node[right] {Klassenname \Halfpoint};
+ \draw[Triangle-] ($(Korb.east) + (0, 2)$) -- ($(Korb.east) + (2, 2)$) node[right] {Attribute \Halfpoint};
+ \draw[Triangle-] (Korb) -- ($(Korb.east) + (2, 0)$) node[right] {Methoden \Halfpoint};
+ \end{tikzpicture}
+\item Eine Variable muss deklariert\Halfpoint werden, wobei ihr Name\Halfpoint und ihr Datentyp\Halfpoint festgelegt wird.
+ Anschließend muss die Variable noch initialisiert\Halfpoint werden, in dem ihr ein Anfangswert\Halfpoint zugewiesen wird. \\
+ \mintinline{java}{int punkte;} \Point \\
+ \mintinline{java}{punkte = 0;} \Halfpoint \\
+\item
+\begin{minted}[escapeinside=$$]{java}
+public$\Halfpoint$ int$\Halfpoint$ spielen$\Halfpoint$()$\Halfpoint$
+{
+ while$\Halfpoint$(!spinneVorhanden()$\Halfpoint$)
+ {
+ if$\Halfpoint$(apfelVorhanden()$\Halfpoint$)
+ {
+ punkte = punkte + 1;$\Point$
+ }
+
+ if$\Halfpoint$(pfeiltasteGedrückt("links")$\Halfpoint$)
+ {
+ bewege("links");$\Halfpoint$
+ }
+ else if$\Halfpoint$(pfeiltasteGedrückt("rechts")$\Halfpoint$)
+ {
+ bewege("rechts");$\Halfpoint$
+ }
+ }
+ return$\Halfpoint$ punkte;$\Halfpoint$
+}
+\end{minted}
+\end{enumerate}
+\end{Lsg}
diff --git a/Info/9/3/Aufgaben/schaltjahr_algo_struktogramm.tex b/Info/9/3/Aufgaben/schaltjahr_algo_struktogramm.tex
new file mode 100644
index 00000000..df9beba5
--- /dev/null
+++ b/Info/9/3/Aufgaben/schaltjahr_algo_struktogramm.tex
@@ -0,0 +1,39 @@
+\begin{Aufg}[Schaltjahre]
+Der folgende Algorithmus beschreibt ein Vorgehen, mit dem überprüft werden kann, ob eine bestimmte Jahreszahl ein Schaltjahr ist:
+
+{\small
+\begin{itemize}[itemsep=0pt]
+\item Ist die Jahreszahl durch 400 teilbar, dann ist es ein Schaltjahr.
+\item Ist die Jahreszahl nicht durch 400 teilbar, aber durch 100, dann ist es kein Schaltjahr.
+\item Ist die Jahreszahl nicht durch 100 teilbar, aber durch vier, dann ist es ein Schaltjahr.
+\item Ist die Jahreszahl nicht durch 4 teilbar, dann ist es kein Schaltjahr.
+\end{itemize}
+}
+
+Nenne die Kontrollstruktur, die zur Programmierung dieses Algorithmus benötigt wird.
+Vervollständige das folgende Struktogramm der Methode \mintinline{java}{schaltjahr(int jahr)}, die berechnet, ob das übergebene Jahr ein Schaltjahr ist oder nicht, und entsprechend \mintinline{java}{true} oder \mintinline{java}{false} zurückgibt.
+
+Skizziere dann im Struktogramm durch Einzeichnen des Weges den Ablauf und den Rückgabewert der Methode, wenn \mintinline{java}{schaltjahr(2023)} aufgerufen wird.
+
+\vspace{0.3cm}
+\begin{tikzpicture}
+\node {\includegraphics[keepaspectratio, width=\textwidth]{Aufgaben/schaltjahr_struktogramm.png}};
+\node at (-5.2, -1) {\mintinline{java}{return true}};
+\end{tikzpicture}
+
+\end{Aufg}
+
+\begin{Lsg}
+\includegraphics[keepaspectratio, width=\textwidth]{Aufgaben/schaltjahr_struktogramm_loesung.png}
+\BE{3} \iftoggle{erwartungshorizont}{(0.5 BE) pro Lücke}{}
+
+Kontrollstruktur: Bedingte Anweisung\Halfpoint mit Alternative oder zweiseitig bedingte Anweisung\Halfpoint
+
+\mintinline{java}{schaltjahr(2023)}: \\
+\begin{itemize}
+\item 2023 ist nicht durch 400 teilbar $\rightarrow$ Falsch. \Halfpoint
+\item 2023 ist nicht durch 100 teilbar $\rightarrow$ Falsch \Halfpoint
+\item 2023 ist nicht durch 4 teilbar $\rightarrow$ Falsch \Halfpoint $\rightarrow$ return false\Halfpoint
+\item 2023 ist kein Schaltjahr.
+\end{itemize}
+\end{Lsg}
diff --git a/Info/9/3/Aufgaben/schaltjahr_struktogramm.png b/Info/9/3/Aufgaben/schaltjahr_struktogramm.png
new file mode 100644
index 00000000..6a35b97e
--- /dev/null
+++ b/Info/9/3/Aufgaben/schaltjahr_struktogramm.png
Binary files differ
diff --git a/Info/9/3/Aufgaben/schaltjahr_struktogramm_loesung.png b/Info/9/3/Aufgaben/schaltjahr_struktogramm_loesung.png
new file mode 100644
index 00000000..c1803aa2
--- /dev/null
+++ b/Info/9/3/Aufgaben/schaltjahr_struktogramm_loesung.png
Binary files differ
diff --git a/Info/9/3/Aufgaben/schildkroete_in_der_wueste.png b/Info/9/3/Aufgaben/schildkroete_in_der_wueste.png
new file mode 100644
index 00000000..36f9ba5b
--- /dev/null
+++ b/Info/9/3/Aufgaben/schildkroete_in_der_wueste.png
Binary files differ
diff --git a/Info/9/3/Aufgaben/schildkroete_in_der_wueste.tex b/Info/9/3/Aufgaben/schildkroete_in_der_wueste.tex
new file mode 100644
index 00000000..3449e3f5
--- /dev/null
+++ b/Info/9/3/Aufgaben/schildkroete_in_der_wueste.tex
@@ -0,0 +1,81 @@
+\begin{Aufg}[Schildkröte in der Wüste]
+\vspace{-1cm}
+\begin{center}
+\includegraphics[keepaspectratio, width=0.6\textwidth]{Aufgaben/schildkroete_in_der_wueste.png}
+\end{center}
+Analysiere die folgenden Kontrollstrukturen im abgebildeten Szenario.
+Gib jeweils an, wie oft jede der Bedingungen überprüft wurde, auf welchen Feldern eine Marke gesetzt wird und auf welchem Feld die Schildkröte nach Ausführung des Programms steht.
+Zu Beginn steht die Schildkröte auf Feld 0.
+
+\begin{tabular}{l p{0.45\textwidth}}
+a) & \vspace{-0.7cm}
+\begin{minted}[fontsize=\small, baselinestretch=1.1]{java}
+while(!kaktusVorhanden("rechts"))
+{
+ setzeMarke();
+ laufe();
+}
+if(!kaktusVorhanden("links") || kaktusVorhanden("rechts"))
+{
+ laufe();
+}
+\end{minted}
+\\
+\end{tabular} \\
+\begin{tabular}{|l p{1cm} | l p{1cm} | l p{2cm} | l p{1cm}|}
+\hline
+1. Bedingung: & \solution{2\Halfpoint} &
+2. Bedingung: & \solution{1\Halfpoint} &
+Marken: & \solution{0\Halfpoint} &
+Ende: & \solution{2\Halfpoint} \\
+\hline
+\end{tabular} \\[0.5cm]
+\begin{tabular}{l p{0.41\textwidth} l p{0.45\textwidth}}
+b) & \vspace{-0.7cm}
+\begin{minted}[fontsize=\small, baselinestretch=1.1]{java}
+while(kaktusVorhanden("links"))
+{
+ if(kaktusVorhanden("rechts"))
+ {
+ setzeMarke();
+ }
+ laufe();
+}
+\end{minted}
+&
+c) & \vspace{-0.7cm}
+\begin{minted}[fontsize=\small, baselinestretch=1.1]{java}
+while(kaktusVorhanden("links"))
+{
+ while(kaktusVorhanden("rechts"))
+ {
+ laufe();
+ }
+ setzeMarke();
+ laufe();
+}
+\end{minted}
+\\
+\end{tabular} \\
+\begin{tabular}{|l p{1cm} | l p{1cm} | l p{2cm} | l p{1cm}|}
+\hline
+%\cline{2-9}
+%b) &
+1. Bedingung: & \solution{6\Halfpoint} &
+2. Bedingung: & \solution{1\Halfpoint} &
+Marken: & \solution{1,2,3\Halfpoint} &
+Ende: & \solution{5\Halfpoint} \\
+\hline
+%\cline{2-9}
+%c) &
+1. Bedingung: & \solution{4\Halfpoint} &
+2. Bedingung: & \solution{4\Halfpoint} &
+Marken: & \solution{0,4\Halfpoint} &
+Ende: & \solution{5\Halfpoint} \\
+\hline
+%\cline{2-9}
+\end{tabular}
+\end{Aufg}
+
+\begin{Lsg}
+\end{Lsg}
diff --git a/Info/9/Leistungsnachweise/2_KA_9B_20240618 b/Info/9/Leistungsnachweise/2_KA_9B_20240618
new file mode 120000
index 00000000..f608c076
--- /dev/null
+++ b/Info/9/Leistungsnachweise/2_KA_9B_20240618
@@ -0,0 +1 @@
+../../23_24/06/18/9B/test \ No newline at end of file