Fragen zu Feldern

Fragen zu Feldern javafrage Sat, 11/24/2018 - 13:52

1. Felder, Schleifen, Referenzen

1. Felder, Schleifen, Referenzen

Schreiben Sie eine Methode welche alle Werte eines Felds verdreifacht. Schreiben Sie den Quellcode in den freien Platz der vorgegebenen Methode dreifach(int[] a) der Klasse Feld1.

  • Verdreifachen Sie alle Werte des Feldes a welches als Eingabeparameter übergeben wird
  • Nicht notwendig:
    • Überprüfung auf Überlauf des Wertebereichs von int der einzelnen Feldelemente
    • Typprüfungen für a (a sei eine Nullreferenz oder ein Feld von int)
  • Für volle Punktzahl notwendig:
    • Prüfen, dass die übergebene Variable a nicht eine Nullreferenz ist
    • Verdreifachen aller Werte eines beliebig langen Feldes a
    • Die Feldgrenzen sollen nicht unter- oder überlaufen werden

Gegeben ist das folgende Javaprogramm:

public class Feld1 {
   public static void dreifach(int[] a) {
      // Hier Lösung einfügen
  } // Ende der Methode. Kein Rückgabewert notwendig
} // Ende der Klasse Feld1
Niveau 1
Schwierigkeitsgrad mittel
Zeit 9 Minuten

Die Antwort ist bei der nächsten Frage zu finden (URL rechts unten)

javafrage Wed, 10/24/2012 - 18:48

2. Parameterübergaben und Rückgaben von Werten

2. Parameterübergaben und Rückgaben von Werten

Bei der Methode malDrei(int b) geht das Ergebnis nach dem Verlassen des Methodenrumpf verloren.
Warum geht dieses Ergebnis verloren, aber das Ergebnis der Methode dreifach(int[] a) kann noch vom Aufrufer nach Beenden der Methode verwendet werden?

Geben Sie eine kurze Erklärung der beiden unterschiedlichen Situationen.

public class Feld1 {
   public static void dreifach(int[] a) {
      if (a != null) {
for (int i = 0; i<a.length; i++) {
a[i] = 3 * a[i];
}
} } // Ende der Methode. Kein Rückgabewert notwendig public static void malDrei(int b) {int c=3*b;} } // Ende der Klasse Feld1
Niveau 1
Schwierigkeitsgrad mittel
Zeit 4 Minuten

Die Antwort ist bei der nächsten Frage zu finden (URL rechts unten)

Antwort zu Frage 1 : Felder, Schleifen, Referenzen

public class Feld1 {
   public static void dreifach(int[] a) {
      if (a != null) {
for (int i = 0; i<a.length; i++) {
a[i] = 3 * a[i];
}
}
} // Ende der Methode. Kein Rückgabewert notwendig } // Ende der Klasse Feld1
javafrage Thu, 10/25/2012 - 14:21

3. Implementieren eines Felds (Array)

3. Implementieren eines Felds (Array)

Vervollständigen Sie die weiter unten aufgeführte Vorlage einer Klasse Feld.

1. Deklarieren sie ein öffentliches Attribut der Klasse Feld mit

  • dem Namen f
  • dem Typ eines Feldes von 32 Bit Ganzzahlen
  • initialisieren Sie das Attribut mit einer aufzählenden Belegung für 10 Feldelemente
  • belegen Sie die Position 0 des Feldes mit dem Wert 9, die Position 1 mit dem Wert 8, die Position 2 mit dem Wert 7 usw.

2. Implementieren Sie eine Methode mit dem Namen verdoppeln

  • die Methode verdoppeln soll nur von Unterklassen aufgerufen werden können (1 Minute)
  • die Methode hat keine Eingabe oder Ausgabeparameter (1 Minute)
  • alle Elemente des Feldes f sollen im Wert verdoppelt werden (2 Minuten)
  • die Methode soll für beliebig lange Felder funktionieren (1 Minute)
  • wählen Sie eine Schleife und die benötigten Zählvariablen (2 Minuten)
public class Feld {
  // Ab hier implementieren

}// Ende der Klasse Feld

Die Antwort ist bei der nächsten Frage zu finden (URL rechts unten)

Niveau 1
Schwierigkeitsgrad mittel
Zeit 3+7 Minuten

Die Antwort ist bei der nächsten Frage zu finden (URL rechts unten)

Antwort zu Frage 2 : Parameterübergaben und Rückgaben von Werten

Bei der Methode dreifach() wird eine Referenz auf ein Feld int[], welches auf dem Heap liegt, übergeben. Das Feld ist solange benutzbar, solange es Referenzen darauf gibt.
Die Methode malDrei() hat einen Basistypen int als Übergabeparameter. Er wird beim Aufruf kopiert und ist nur innerhalb des Methodenblocks gültig. Die Variable b wird am Ende des Methodenblocks gelöscht und ist nicht mehr benutzbar. 

javafrage Fri, 09/06/2013 - 08:41

4. Felder aufzählend initialisieren und benutzen

4. Felder aufzählend initialisieren und benutzen

Vervollständigen Sie die weiter unten aufgeführte Vorlage einer Klasse Prim.

Deklarieren sie ein privates, statisches Attribut der Klasse Prim zur Verwaltung der ersten fünf Primzahlen in aufsteigender Folge. (2 Minuten)
2 ist die erste Primzahl!

  • Initialisieren Sie das Attribut mit dem Feld mit einer aufzählenden Belegung (1 Minute)
  • das Feld soll nicht veränderbar sein (1Minute)
  • an der ersten Stelle soll die 2 im Feld gespeichert sein
  • Implementieren Sie den Rumpf der Methode auslesen()
    • sie liest die n'te Primzahl aus dem Feld aus.
    • Beim Aufruf von 1 gibt erste Primzahl aus.
    • Beim Aufruf von 2 die zweite usw.
    • Sie müssen nicht die Feldgrenzen überprüfen.
    public class Prim {
       // Hier das Feldattribut deklarieren
    
   
    }// Ende der Klasse Prim
 
Niveau 1
Schwierigkeitsgrad mittel
Zeit 7 Minuten (4+3)

Die Antwort ist bei der nächsten Frage zu finden (URL rechts unten)

Antwort zu Frage 3 : Implementieren eines Felds (Array)

public class Feld {
  // Ab hier implementieren
  public int[] f = {9,8,7,6,5,4,3,2,1,0};
   
  protected void verdoppeln() {
     for (int i=0;i<f.length;i++) {
         f[i]=2*f[i];
     }
   } 

}// Ende der Klasse Feld

javafrage Sun, 09/21/2014 - 15:46

Anonymous (not verified)

Wed, 12/17/2014 - 16:35

if (MAX_PASSAGIERE Ist das nicht falsch? Eigentlich müsste es doch "MaxPassagiere größer gleich Passagiere + n" sein oder?

Sarah, Fabien, Nike, Christian, Nurbanu, Stefanie, Robin

Stefan Schneider

Wed, 12/17/2014 - 19:49

In reply to by Anonymous (not verified)

Wurde verbessert. Danke.

5. Zweidimensionales Feld implementieren

5. Zweidimensionales Feld implementieren

Es soll eine Methode

public static int anzahlZellen(int[][] meinFeld) 

implementiert werden. Diese Methode zählt die Zellen eines zweidimensionalen Felds.

 

  1. Welche Sonderfälle können bei einem Zeiger wie meinFeld bei zweidimensionalen Feldern auftreten? (2 Min.)
  2. Skizzieren Sie textuell was in der oben genannten Methode programmiert werden muss. ( 4 Min.)
Niveau 1
Schwierigkeitsgrad mittel
Zeit 2+4 Minuten

Die Antwort ist bei der nächsten Frage zu finden (URL rechts unten)

Antwort zu Frage 4 : Felder aufzählend initialisieren und benutzen

public class Prim {
    // Hier das Feldattribut deklarieren
    private static final int[] feld = {2,3,5,7,11}; 
    public static int auslesen (int pos) {
       return feld[pos-1];
    }
}// Ende der Klasse Prim
javafrage Sun, 08/16/2015 - 15:56

6. Aufzählendes Initialisieren von Feldern

6. Aufzählendes Initialisieren von Feldern

Vervollständigen Sie den unten aufgeführten Code in dem Sie das gegebene Feld von Zweierpotenzen mit den ersten vier Zweierpotenzen (1, 2, 4, 8) aufzählend initialisieren.

int[] zweierpotenzen
Niveau 1
Schwierigkeitsgrad mittel
Zeit 3 Minuten

Die Antwort ist bei der nächsten Frage zu finden (URL rechts unten)

Antwort zu Frage 5.: Zweidimensionales Feld implementieren

Sonderfälle

  • Der Zeiger ist leer (null)
  • Das Feld ist kürzer als gedacht oder leer.

Vorgehen

  • Prüfe ob ein Nullzeiger vorliegt. Gib 0 als Ergebnis aus falls ein Nullzeiger vorliegt und beende das Programm
  • Bestimme die Länge des Feldes der ersten Dimension
  • Führe die folgenden Operationen für alle Feldelemente der ersten Dimension durch.
    • Die einzelnen Elemente der ersten Dimension werden „zweite Dimension“ genannt:
    • Ein Zeiger der zweiten Dimension zeigt auf null
      • Ja: Setze die Länge des Feldes auf Null
      • Nein: Bestimme die Länge der Felder der zweiten Dimension
    • Addiere das Ergebnis der Felder der zweiten Dimension zum Gesamtergebnis
  • Gibt das Gesamtergebnis zurück
javafrage Sun, 08/16/2015 - 18:23

7. Speicherbereich für Felder

7. Speicherbereich für Felder

In welchem Speicherbereich werden Felder verwaltet (1 Min.) und warum (2 Min.)?

Niveau 1
Schwierigkeitsgrad mittel
Zeit 3 Minuten

Die Antwort ist bei der nächsten Frage zu finden (URL rechts unten)

Antwort zu Frage 6 : Aufzählendes Initialisieren von Feldern

int[] zweierpotenzen = {1,2,4,8};
javafrage Sun, 08/16/2015 - 18:29

8. Felder (Implementieren)

8. Felder (Implementieren)

Schreiben Sie eine öffentliche Klassenmethode erzeugeFibonacciFeld, der als Parameter eine Ganzzahl größer 2 übergeben wird.

Diese Ganzzahl legt fest, wie groß das Ganzzahlen-Feld sein soll, das in der Methode zuerst eingerichtet und dann mit den Werten der Fibonacci-Folge gefüllt werden soll. Bei einem Übergabeparameter n soll das Feld von der Position 0 bis n mit den Elementen der Fibonaccifolge gefüllt sein

Definition der Fibonacci-Folge

Jeder Wert der Fibonacci-Folge besteht aus der Summe der beiden vorgehenden Werte.Für die ersten beiden Zahlen sind die Werte 0 und 1 vorgegeben. Das bedeutet:

  • f0 = 0 ;
  • f1 = 1;
  • f2 = 1;
  • f3 = 2;
  • f4 = 3;
  • f5 = 5,

oder als Formel
fn = fn-1 + fn-2  für n>= 2

Hinweis für die Methode:

  • Es wird kein Wert zurückgeben;
  • das Fibonacci-Feld wird lokal in der Methode deklariert;
  • Es findet keine Überprüfung auf Unterlauf des Parameter(<2) statt; Es findet keine Überprüfung auf potentiellen Überlauf des Wertebereichs bei der Berechnung der Fibonacciwerte statt.
Niveau 1
Schwierigkeitsgrad mittel
Zeit

12 Minuten

Die Antwort ist bei der nächsten Frage zu finden (URL rechts unten)

Antwort zu Frage 7 : Speicherbereich von Feldern

Felder werden im Freispeicher (Heap) angelegt, da Sie unterschiedlich groß sein können.

javafrage Sat, 12/31/2011 - 14:12

9. Felder in Parameterlisten

9. Felder in Parameterlisten

Implementieren sie den Kopf einer Methode die beliebig viele Namen Ihrer Haustiere annehmen kann. Vervollständigen Sie den Methodenkopf. Drucken Sie in der Methode alle Namen der Tiere auf die Konsole:

public static void meineLieblinge ( /* ? */)
{ // Hier implementieren

}
Niveau 1
Schwierigkeitsgrad mittel
Zeit

5 Minuten

Die Antwort ist bei der nächsten Frage zu finden (URL rechts unten)

Antwort zu Frage 8: Felder (Implementieren)

public void erzeugeFibonacciFeld(int k) {
   int [] fib=new int[k+1];
   fib[0] = 0;
   fib[1] = 1;
   for (int i=2; i<= k; i++)
      fib[i] = fib[i-1]+fib[i-2];
}

Antwort zu Frage 9: Felder in Parameterlisten

public static void meineTiere (String … tiernamen   )
{ // Hier implementieren
   for ( String t : tierNamen) System.out.println("Haustier: " +t);
}
javafrage Tue, 05/11/2021 - 10:37