OBJACTION
  • Start
  • Beschreibung
  • Download
  • Videos
  • Dokumentation
  • Kontakt

Aus welchen Grundbausteinen kann sich ein Algorithmus zusammensetzen?

11/12/2019

0 Kommentare

 
Sequenz – Hintereinanderausführung von Aktionen
Aktionen werden bedingungslos hintereinander ausgeführt.

Selektion
– Fallunterscheidung - Verzweigungsaktion
Abhängig davon, ob eine Bedingung wahr oder falsch ist, werden unterschiedliche Aktionsfolgen ausgeführt.

wenn
bedingung wahr ist
          dann aktionsfolge 1
          sonst aktionsfolge 2

Iteration
– Schleife - Wiederholungsaktion
Solange eine Bedingung wahr ist, werden immer die gleichen Aktionsfolgen ausgeführt.

solange
bedingung wahr ist, wiederhole
              aktionsfolge
0 Kommentare

Beispiel Algorithmus: Vereinbare Telefongespräch

11/12/2019

0 Kommentare

 
​Voraussetzung:  Adresse und der genaue Name von Frau Kaiser sind bekannt.
Bild
Zur Bearbeitung hier klicken

Für einen Algorithmus können/sollen bestimmte Voraussetzungen zutreffen.

Ein Algorithmus besteht aus einer Menge von Aktionen und einer Menge von Objekten, auf die die Aktionen angewandt werden.

Komplexe Aktionen werden in mehrere Teilaktionen zerlegt.

In bestimmten Fällen ist es notwendig, in Abhängigkeit von einer Bedingung, unterschiedliche Aktionsfolgen auszuführen.

​Ein „idealer“ Algorithmus hat einen Eingang und einen Ausgang.
0 Kommentare

Was ist ein Algorithmus?

11/12/2019

0 Kommentare

 
Ein Algorithmus ist eine eindeutige Handlungsvorschrift zur Lösung eines Problems oder einer Klasse von Problemen. Algorithmen bestehen aus endlich vielen, wohldefinierten Einzelschritten (=Aktionen).

​Damit können sie zur Ausführung in ein Computerprogramm implementiert, aber auch in menschlicher Sprache formuliert werden.

​Bei der Problemlösung wird eine bestimmte Eingabe in eine bestimmte Ausgabe überführt.

Quelle: https://de.wikipedia.org/wiki/Algorithmus
0 Kommentare

Wie kann mit Hilfe der String-Klasse ein alphanumerischer Wert (z.B. ein Familienname) überprüft werden?

11/12/2019

0 Kommentare

 
public void setFamilienname(String familienname){
        if (familienname.length()>=2){
            this.familienname=familienname;
        }
        else{
             System.err.println("Fehler: Der Familienname muß mindestens zwei Buchstaben haben – default-Wert wird gesetzt!");
             this.familienname= "Boss";           
        } 
}


Was passiert?


​Die  Methode familienname.length() (aus der String-Klasse) liefert die Anzahl der Zeichen des Parameters familienname. Die Bedingung (familienname.length()>=2) wird ausgewertet und liefert einen Wahrheitswert:
  • Falls das Ergebnis true/wahr ist, erfolgt die Wertzuweisung this.familienname=familienname.
  • Falls das Ergebnis false/falsch ist, erfolgt eine Fehlerausgabe in der Error-Stream System.err.println(“Fehler: Der Familienname muß mindestens zwei Buchstaben haben – der default-Wert wird gesetzt!“) und das Attribut wird auf den default-Wert gesetzt this.familienname=“Boss“.
0 Kommentare

Welche logischen Operatoren gibt es?

11/12/2019

0 Kommentare

 
Bild
0 Kommentare

Wie kann die Gültigkeit eines Wertes in der set-methode überprüft werden?

11/12/2019

0 Kommentare

 
​Durch Verwendung einer Fallunterscheidung (if-Anweisung).

public void setGeburtsjahr(int geburtsjahr){
   if (geburtsjahr >= 2004){
      this.geburtsjahr=geburtsjahr;
   } // ja-Zweig
   else{
     System.err.println(“Fehler: Das Geburtsjahr muss größer gleich 2004 sein – default-Wert wird gesetzt!“);
     this.geburtsjahr=2004;
   }// else nein-Zweig
}

Was passiert?

Die Bedingung (geburtsjahr>=2004) wird, abhängig vom logischen Operator >=, ausgewertet und ergibt einen Wahrheitswert:
  • Falls das Ergebnis true/wahr ist, erfolgt die Wertzuweisung this.geburtsjahr=geburtsjahr.

Falls das Ergebnis false/falsch ist, erfolgt eine Fehlerausgabe im Error-Stream System.err.println(“Fehler: Das Geburtsjahr muss größer gleich 2004 sein – der default-Wert wird gesetzt!“) und das Attribut wird auf den default-Wert gesetzt this.geburtsjahr=2004.
0 Kommentare

Warum werden in den Konstruktoren die set-Methoden aufgerufen?

11/12/2019

0 Kommentare

 
Wenn Objekte erzeugt werden, müssen sie mit gültigen Werten initialisiert werden. In den set-Methoden erhalten die Attribute durch eine Wertzuweisung ihre Werte (an einer Stelle innerhalb der Klasse).

z.B.
public void setGeburtsjahr(int geburtsjahr){
      this.geburtsjahr=geburtsjahr;  
}

​Was passiert?

Der Wert des Parameters geburtsjahr wird dem Attribut this.geburtsjahr zugewiesen. Dies wird durch den Zuweisungsoperator = erreicht.
0 Kommentare

Was sind Parameter?

11/12/2019

0 Kommentare

 
​Parameter dienen dazu, an Konstruktoren und Methoden, Werte von außerhalb mitzugeben. Abhängig von den Werten verhält sich ein Konstruktor oder eine Methode anders.
Bild
In BlueJ öffnet sich dazu ein Dialog.

Im Source-code  muss bei der Verwendung eine kompatible Variable oder ein kompatibler Wert angegeben werden.
0 Kommentare

Wie kann eine Methode verwendet werden?

11/12/2019

0 Kommentare

 
In BlueJ:
Man geht mit der Maus auf ein Objekt und drückt die rechte Maustaste. Im Context_Menü sieht man jetzt die verfügbaren Methoden (jene die public sind). In unserem Beispiel die get-/set-Methoden und die print-Methode.

​Wenn man eine Methode mit Parameter wählt, öffnet sich in BlueJ automatisch ein Dialog. Im Dialog, können für die Parameter Werte eingegeben werden, die dann in der Methode weiterverarbeitet werden.

​Durch Wahl der print-Methode kann man jetzt den Inhalt der Eigenschaften in der Konsole ausgeben. Die Konsole öffnet sich automatisch.
Bild
Im Source-code:
Innerhalb von Methoden und Konstruktoren können andere Methoden aufgerufen werden.
Der Aufruf erfolgt durch: methodenname(parameter1,parameter2, …);
z.B. Verwendung der set-Methoden.
Eine Methode mit definierten Rückgabetyp, kann überall dort verwendet werden, wo auch ein Wert des Typs stehen könnte.
z.B. Verwendung der get-Methoden.
Bild
Achtung:
Wenn man eine Methode verwenden möchte, muss sie vorhanden sein, ansonsten erhält man einen Syntaxfehler.
0 Kommentare

Wie sieht eine Methode aus?

11/12/2019

0 Kommentare

 
Bild
0 Kommentare
<<Zurück

    Autor

    vielerlei interessen, neben digitalen vor allem auch analoge.

    Archiv

    November 2019
    Dezember 2018

    Kategorien

    Alle
    Creation
    Java
    Schöpfung

    RSS-Feed

BLOG
​AGB
​Impressum
  • Start
  • Beschreibung
  • Download
  • Videos
  • Dokumentation
  • Kontakt