diff options
Diffstat (limited to 'aied2018/presentation/motivation.tex')
-rw-r--r-- | aied2018/presentation/motivation.tex | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/aied2018/presentation/motivation.tex b/aied2018/presentation/motivation.tex new file mode 100644 index 0000000..785bd6e --- /dev/null +++ b/aied2018/presentation/motivation.tex @@ -0,0 +1,26 @@ + What is wrong with the following program that prints all divisors? + \begin{columns} + \begin{column}{0.50\textwidth} +\begin{Verbatim} + \textbf{def} divisors(n): + \textbf{for} d \textbf{in} range(1, \red{n}): + \textbf{if} n % d == 0: + \textbf{print}(d) +\end{Verbatim} + \end{column} + \begin{column} {0.50\textwidth} + Answer: \texttt{range(1,n)} generates values up to \texttt{n-1}, so \texttt{n} is not printed. Instead, \texttt{range(1,n+1)} is better. + \end{column} + \end{columns} + + \vspace{2cm} + Teachers can often spot such erroneous patterns without test cases. Can we represent their knowledge and use it to: + \begin{itemize} + \item generate automatic feedback in tutoring systems or + \item find programs with similar approach / error? + \end{itemize} + Two research questions arise: + \begin{itemize} + \item RQ1: How can we encode patterns in programs? + \item RQ2: How can we automatically extract relevant patterns from student solutions? + \end{itemize}
\ No newline at end of file |