Jahrgangsstufe Ef - Informatik - Donnerstag, der 18. Februar 2021


Aufgaben für heute: Aufarbeitung aller vorheriger Aufgaben und Kontrolle aller Musterlösungen

Hilfen:

Arbeiten mit BlueJ

Die Musterlösung vom 09.02.2021 steht hier als fertiges BlueJ-Projekt zum Download als FunktionenUebung.zip.

  1. Rechte Maustaste auf FunktionenUebung.zip und "Ziel speichern unter" wählen.
  2. In einem beliebigen Verzeichnis auf dem PC (Annahme: C:\InfoEf) abspeichern unter dem gleichen Namen.
  3. Mit dem Datei-Explorer (oder Finder auf Mac) zum Verzeichnis C:\InfoEf wechseln.
  4. Dort liegt die Datei Funktionenuebung.zip. Mit der rechten Maustaste auf dem Dateinamen erscheint das Kontextmenü. Wähle "Alle extrahieren".
    Es erscheint: Dateien werden in diesen Ordner extrahiert: C:\InfoEf\FunktionenUebung
    Wähle "Extrahieren".
  5. Im Verzeichnis C:\InfoEf entsteht das Unterverzeichnis FunktionenUebung.
  6. Wechsle in dieses Verzeichnis mit dem Datei-Explorer.
  7. Im Verzeichnis ist die Datei package.bluej. Durch Anklicken dieser Datei müsste BlueJ starten.
  8. Jetzt kannst du die Java-Datei Schleifen_09_02_2021.java bearbeiten.
  9. Für die weitere Arbeit legst du einfach in diesem Verzeichnis mit dem Datei-Explorer eine Kopie dieser Datei an und benennst sie z. B. in Funktionsuebung_16_02_2021.java um. Wenn du dann wieder auf package.bluej klickst, siehst du die neue Datei auch im BlueJ-Fenster.

Funktionen vom 11.02.2021:

Programmierübung 1:

Eine Funktion f soll den Betrag einer Zahl berechnen. Mathematisch: f(x) = |x|. Beispiel: |5| = 5, |-13| = 13. Der Betrag ist also der (nicht-negative) Abstand der Zahl von der Null auf einem Zahlenstrahl. Formuliere den Java-Programmcode dazu.
Lösung:

public double betrag(double x)
{  if (x>0 )
        return x;
   else return -x;
}

Programmierübung 2:

Eine Funktion zweistellig soll feststellen, ob eine ganze Zahl zweistellig ist. Formuliere den Java-Programmcode dazu.
Lösung:
Eine Zahl ist zweistellig, wenn sie größer gleich 10 und kleiner als 100 ist oder wenn sie größer als -100 und kleiner gleich -10 ist.

public boolean zweistellig(int zahl)
{
 if (zahl >= 10 && zahl < 100 || zahl > -100 && zahl <= -10)
      return true;
 else return false;
}

oder kürzer:

  public boolean zweistellig(int zahl)
  {  return (zahl >= 10 && zahl < 100 || zahl > -100 && zahl <= -10); }

Programmierübung 3:

Da viele Jugendliche beim Schreiben von Texten am Satzende den Punkt weglassen, bekommt ein WhatsApp-Programmierer den Auftrag, eine Funktion zu schreiben, die an einen String einfach einen Punkt anhängt. Formuliere den Java-Programmcode dazu.
Lösung:

  public String punktAngehaengt(String satz)
  {  return satz + "."; }

Programmierübung 4:

Die neuen Methoden sollen in der Methode jetztMachMalWas() geeignet mit Beispielwerten aufgerufen werden. Formuliere den Java-Programmcode dazu und gib nur deine Ergänzungen in jetztMachMalWas() hier an.
Lösung:

// Ergaenzungen in jetztMachMalWas():
  double z = -15;
  System.out.println ("Der Betrag von "+ z + " ist " + betrag(z) + ".");

  int y = 150;
  System.out.print("Die Zahl " + y + " ist ");
  if (zweistellig(y))
       System.out.println("zweistellig.");
  else System.out.println("nicht zweistellig.");

  String test = "Ene mene miste";
  System.out.print ("Wenn man den String " + test );
  System.out.println( " an die Funktion punktAngehaengt() uebergibt, ");
  System.out.println("dann erhaelt man von der Funktion " + punktAngehaengt(test) + " zurueck.");

Dies ergibt in der Konsole die folgende Ausgabe:

Der Betrag von -15.0 ist 15.0.
Die Zahl 150 ist nicht zweistellig.
Wenn man den String Ene mene miste an die Funktion punktAngehaengt() uebergibt,
dann erhaelt man von der Funktion Ene mene miste. zurueck.