Struktogramme

Um Programmabläufe optisch übersichtlich und unabhängig von einer konkreten Programmiersprache darzustellen, hat man im Laufe der Zeit verschiedene Systeme entwickelt. Eins davon ist das Nassi-Shneidermann-Diagramm, kurz Struktogramm genannt.  Es stellt einen Ablauf als Rechteck dar, das von oben nach unten gelesen wird. Innerhalb dieses Rechteckes gibt es folgende Teilstrukturen (Einzelne Teilrechtecke können auch leer sein):

Gewöhnliche Anweisungen werden zeilenweise dargestellt:
Verzweigungen erscheinen mit einer Trichter im Kopf:
Fußgesteuerte Schleifen bekommen eine L-Form,
Bei kopfgesteuerten Schleifen steht das L auf dem Kopf:
So sieht das Struktogramm eines kompletten Programms aus:

Näheres zum Thema Struktogramme finden Sie unter  http://de.wikipedia.org/wiki/Nassi-Shneiderman-Diagramm

Eine Word-Dokumentvorlage, die mit nützlichen Makros beim Erstellen von Struktogrammen in Word hilft, finden Sie unter http://www.stricker-online.de/informatik/informatik10/Struktogramme.dot

Aufgaben:

  1. Übersetzen Sie das Programm aus dem oben abgebildeten Struktogramm in ein Java-Programm.

  2. Stellen Sie das folgende Programm in Struktogrammform dar


import java.util.*;
class Teiler {
 
public static void main(String[] args) {
   
Scanner Eingabe = new Scanner(System.in);
   
System.out.println("Teilertest\n");
   
System.out.print("Gib bitte eine natürliche Zahl ein: ");
   
int zahl=Eingabe.nextInt();
   
System.out.println("\n");
   
System.out.print("Die Teiler von "+zahl+" sind: ");
   
int teiler=0;
   
for(int t=1; t<=zahl; t++) {
     
if (zahl % t == 0) {
       
System.out.print(t+" ");
       
teiler++;
       
try {Thread.sleep(500);} catch (Exception e) {}
     
}
   
}
   
System.out.println("\n\nDeine Zahl hat "+teiler+" Teiler");
   
if (teiler==2) {
     
System.out.println("Deine Zahl ist eine Primzahl.");
   
}
 
}
}