top of page

Auswahl zweier Matura-Teilaufgaben

 

Teilaufgabe 1

Teilaufgabe 1 ist der Aufgabenteil (B) des Thema 07: Algorithmen und Programmierung, Aufgabe 1;

Nach Eingabe des Bitmusters muss das Wort von vorne und von hinten gleichzeitig durchgesucht werden. Dabei wird die erste Stelle mit der letzten, die zweite Stelle mit der vorletzten, usw. verglichen. Sind bis einschließlich zum Vergleich mit Nummer n/2, wobei n die Länge des Bitmusters ist, alle Vergleiche positiv, so ist das angegebene Wort ein Palindrom.

 

Eine Umsetzung des Algorithmus wäre in einer beliebigen Sprache möglich. Es werden dafür nur einfach Datentypen und Arrays verwendet. Außerdem werden Schleifen, Bedingungsabfragen und Verzweigungen benötigt. Das Schreiben jenes Programmes sollte in wenigen Minuten - bei gegebener Programmiererfahrung und genau definierten Auftrag sowie Input und Output - erledigt sein.

 

Eine Lösungsskizze dafür ist: (Java Code)

 

import java.util.Scanner;

 

public class Palindrom {

public static void main(String[] args) {

System.out.println("Please provide word: ");

Scanner sc = new Scanner(System.in);

String line = sc.nextLine();

System.out.println(

     "The word " + line + " is "

     + (isPalindrom(line)?"a":"no") + " palindrom.");

}

 

public static boolean isPalindrom(String word){

char[] l = word.toCharArray();

for(int i = 0, len=l.length; i<len/2;i++){

if(l[i]!=l[len-i-1])

return false;

}

return true;

}

 

AUSGABE:

 

Please provide word: 

11111011111

The word 11111011111 is a palindrom.

 

Process finished with exit code 0

 

 

Um die Aufgabe nachzuarbeiten kann man den Quelltext von hier kopieren und im eigenen Java-Programm / Compiler ausführen. Die nötige Library "Scanner" sollte verfügbar sein.

Man kann das Beispiel abändern (und erleichtern), indem man das Bitmuster fix vorgibt.

 

Teilaufgabe 2

 

Teilaufgabe 2 ist der Aufgabenteil (A) des Thema 01: Digitalisierung und mathematisch-logische Grundlagen, Aufgabe 2;

Der Begriff "symbolisch" bedeutet hier, dass die Daten nicht als Daten selbst, sondern als eine Folge von Nullen und Einsen gespeichert wird. Der Computer merkt sich, um was es sich bei der gegebenen 0-1-Folge handelt und wie lang sie ist. Dann kann er das Medium rekonstruieren.

Beispiele für digitale Speicherung gibt es viele. Exemplarisch soll erklärt werden:

 

  • Zahl: Eine Zahl in Dezimalsystem - bis zu einer gewissen Größe - kann auf einem Computer durch umwandlung in eine Binärzahl gespeichert werden. So entspricht etwa die Dezimalzahl 1, wenn man für die Speicherung einer Zahl 16 bit verwendet, der Binärzahl 0000 0001. Die Dezimalzahl 15 entspricht somit der Binärzahl 0000 1111.

  • Text: Ein Text ist eine Folge von Zeichen, also eine Zeichenkette. Ein Zeichen wird durch Umwandlung in Binärcode zu einer 0-1-Folge. Der Computer weiß, dass es sich um ein Zeichen handelt. Es gibt sogenannte Tabellen (für Menschen) um die Umwandlung eines Zeichen in eine Binärzahl nachzuvollziehen. Der Buchstabe 'a' zum Beispiel wird am Computer als Zahl 97, als Binärzahl 0110 0001, gespeichert. Die Zeichenkette "ZIM" wäre somit 010110100100100101001101, wohl gemerkt, dass der Computer weiß, dass es sich um 3 Zeichen handelt.

  • Bilder: Bilder kann man sich als ein zweidimensionales Feld vorstellen. Zeilen entsprechen der Höhe, Spalten der Breite. Pro Eintrag des Feldes wird der Grauwert (Schwerz-Weiß-Bilder) oder die Farbwerte RGB (Farbbilder) gespeichert. Da sowohl Grauwert als auch Farben (durch RGB realisiert) als Zahl darstellen lässt, kann man nun wieder eine 0-1-Zahlenfolge verwenden. Der Computer muss nur wissen, wie groß die jeweiligen Zahlen sind - für Farb- und Grauwerte verwendet man üblicherweise Zahlen von 0 bis 255 - und wie hoch und breit das Feld ist. Damit kann es eine ordentliche Bilddarstellung gewähren.

  • Ton: Ein Ton ist nichts anderes als eine Tonhöhe zu jedem Zeitpunkt eines Intervalles. Die Digitalisierung wird durch eine Zahl gespeichert. Die zeitliche Veränderung des Tones im Intervall lässt sich durch die Abtastrate realisieren. Gewöhnlicherweise haben digitale Audio-Dateien eine Abtastrate von 44100 Hz = 44.1kHz. Der Computer speichert sich für jede dieser Abtaststellen die aktuelle Tonhöhe.

 

Verbindung zu "Computational Thinking"

Teilaufgabe 1

Da die erste Aufgabe eine Programmieraufgabe ist, findet sich natürlich sehr viel des Themas "Computational Thinking". Im wesentlichen geht es hier um das Lösen des Problems. Es wird ja sogar explizit zu Lösung mit dem PC gedrängt. Interessant wäre das ganze auch "unplugged" zu realisieren - d.h. durch einen computer-freien Algorithmus.

Außerdem werden Datenabstraktion und -organisation behandelt. Der Lernende muss die Daten selbst behandeln, speicher, verändern und auch die Abstraktion (String als Zeichenkette) kennen und verwenden.

Die Lösungsautomatisierung ist gegeben, weil anstatt das Wort selbst zu überprüfen einfach die Funktion aufgerufen werden kann. Es wird zwar nicht wirklich auf kosten-, zeit- oder platzoptimierte Programmierung bestanden, jedoch kann es sein, dass Schülerinnen und Schüler diese Optimierungen automatisch und im Zuge der Programmerstellung selbstständig und integriert durchführen.

 

Teilaufgabe 2

Problemformulierungen könnten gefunden werden. Idealerweise werden die verwendeten Informationen weiterverwendet. 

Die Daten werden lokal analysiert und organisiert - das heißt es wird geprüft welcher Datentyp vorhanden ist und welche Größe die Daten haben. Global muss das Betriebssystem nur wissen wo die Daten stehen - dies gehört zum Themenbereich "Betriebssysteme" Gleichzeitig wird algorithmisches Denken gefördert, und zwar durch die Frage: "Wie kann ich die Daten auslesen/einschreiben?". Schließlich findet sich noch der Prozess der Generalisierung und Übertragung des Problemlöseprozesses. Es werden ja von einfachen Datentypen (Zahlen) bis komplexen Datentypen (Bild, Ton) behandelt. Die Formalisierung kann noch auf Videos bzw. noch schwierigere und komplexere Datentypen erweitert werden.

 

Bezüge zum "Kompetenz-Modell" 

Teilaufgabe 1

In der Teilaufgabe 1 (Programmierung des Palindrom-Prüfer) kommen folgende Kompetenzen vor:

Hauptkategorie "Praktische Informatik"

Themenfeld "Konzepte der Informationsverarbeitung"

Handlungsdimension "Anwenden und Gestalten"

 

Hauptkategorie "Praktische Informatik"

Themenfeld "Algorithmen, Datenstrukturen und Programmierung"

Handlungsdimension "Wissen und Verstehen"

 

Hauptkategorie "Praktische Informatik"

Themenfeld "Algorithmen, Datenstrukturen und Programmierung"

Handlungsdimension "Anwenden und Gestalten"

 

Kommentar: Die Aufgabe zielt sehr einfach und klar auf die Erstellung eines Programms ab. Es kann jedoch beim ErklärenVorzeigen des Beispiel bei der Matura auch der Handlungsbereich "Wissen und Verstehen" abgefragt werden.

 

Teilaufgabe 2

In der Teilaufgabe 2 (Digitale Codes/Speicherung) kommen folgende Kompetenzen vor:

Hauptkategorie "Informatiksysteme"

Themenfeld "Technische Grundlagen und Funktionsweisen"

Handlungsdimension "Wissen und Verstehen"

 

Kommentar: Die Aufgabe zielt sehr auf Wissen und Verstehen von Funktionsweisen und technischen Grundlagen ab. Neben kleinen Umrechnungen in den Stellenwertsystemen beinhaltet die Aufgabe keinerlei Handlungsaktionen aus dem Bereich "Anwenden und Gestalten". Eher wird auf den Bereich "Reflektieren und Bewerten" fokusiert. Die Schülerin bzw. der Schüler sollte beim Erklären der Aufgabe Fragen beantworten und seine Vorgehensweise und Stellungsnahmen reflektieren können.

 

bottom of page