Hilfe für Klausur morgen

Status
Nicht offen für weitere Antworten.

Fireline

Mitglied
Hallo zusammen :) Ich bin neu hier und ich schreibe morgen eine Klausur über Javav in Informatik. Jetzt bräuchte ich Hilfe denn wir müssen ein Javaprogramm Zeile für Zeile, also Befehl für Befehl erklären und mit anderen Worten beschreiben was da bläuft. Nun haben wir noch einen Zettel bekommen zum üben wie es etwa ablaufen könnte und bei einem programm komme ich nicht wirklich voran. Könnte mir vielleicht einer das folgende Programm auf diese Weise erklären, wie gesagt einfach was die Befehle dort bewirken.

Java:
import java.io
class hanoi
{
public static void bewege (int n, char a, char b, char c)
  {
     if (n==1)
     System.out.println ("1 von "+a+" nach "+b);
     else
     {
      bewege (n-1, a, c, b);
      System.out.println(n+" von "+a+" nach"+b);
      bewege (n-1,c,b,a)
      }
};
public static void main (String args[])
{
int n=5;
bewege (n,'a','b','c');
}
Ein anderes Programm noch bei dem folgendes auftritt: (was passiert da?):
b=new double (r).intValue();

Danke
 
Zuletzt bearbeitet von einem Moderator:

eRaaaa

Top Contributor
Beim ersten kann ich leider nicht direkt Helfen, aber hier wird ein Double angelegt,
welches den Wert eines Integers (r) bekommt.

muss nicht sein. bei so einem halben ausschnitt könnte "r" auch ein string sein
"5.6"

/edit: ansonsten könnte man ja auch einfach gleich auf int casten :D
 
Zuletzt bearbeitet:

Leroy42

Top Contributor
> import java.io
Importieren der Klasse java.io

> class hanoi
Deklaration der Klasse hanoi

> public static void bewege (int n, char a, char b, char c)
Deklaration der privaten statischen Methode bewege die nichts zurückliefert
und als Parameter einen Integer und drei character bekommt

> if (n==1)
Falls n gleich 1 ist


> System.out.println ("1 von "+a+" nach "+b);
dann Ausgabe der Konkatenation von "1 von" a "nach" b

> else
sonst

> bewege (n-1, a, c, b);
rekursiver Aufruf der Methode mit den Parametern n-1, a, c und b

>System.out.println(n+" von "+a+" nach"+b);
Ausgabe der Konkatenation n "von " a " nach" b

>bewege (n-1,c,b,a)
rekursiver Aufruf der Methode mit den Parametern n-1, c, b und a

public static void main (String args[])
Deklaration der Einstiegsmethode main

>int n=5;

Deklaration der Integer-Variablen n und Initialisierung mit 5

>bewege (n,'a','b','c');
Aufruf der Methode bewege mit den Parametern n, 'a', 'b' und 'c'

b=new double (r).intValue();
Die Methode intValue() wird auf das Ergebnis von new double(r) aufgerufen und
das Ergebnis der Variablen b zugewiesen

> Danke
Bitte :D
 

Fireline

Mitglied
So hab ichs mir vorgestellt :) Danke für die kurzfristige Hilfe
Aber was ist eine Konkatenation?
Ganz besoders Zeile wie diese bereiten mir Schwierigkeiten (n+" von "+a+" nach"+b),
vielleicht stelle ich mich doof an aber das verstehe ich noch immer nicht wirklich???:L
 

Michael...

Top Contributor
So hab ichs mir vorgestellt :) Danke für die kurzfristige Hilfe
Aber was ist eine Konkatenation?
Ganz besoders Zeile wie diese bereiten mir Schwierigkeiten (n+" von "+a+" nach"+b),
vielleicht stelle ich mich doof an aber das verstehe ich noch immer nicht wirklich???:L
Konkatenation : Verknüpfung/ Zusammenführung

Der Wert von n wird mit "von" und dem Wert von a und " nach" und dem Wert von b zu einer Zeichenkette verknüpft.
Bsp n=4, a='a', b='c'
Ergebnis: "4 von a nach c"
 

Shulyn

Bekanntes Mitglied
Wenn du einen Text (String) und eine Varriable z.b ein Int zusammen ausgeben möchtest , so must du diese mit einem + "verknüpfen"

System.out.println ("1 von "

// Alles was in den " " steht ist 1 String. wenn du jetzt eine
Varriable ausgeben möchtest darf diese NICHT in den " " stehen, sonst wäre sie ein String (Text), also müssen wir sie dahinter hängen.


+ a

// Wir sagen also das wir den String UND die varriable augeben möchten. Dies kannst du jetzt so oft machen wie du willst.

+ " nach "

// hier hängst du einen weiteren String hinten dran.

+ b );

// und zum schluss noch eine varriable, sowie das ), was den auszugebeneden ausdruck einschließt.
 

eRaaaa

Top Contributor
Jetzt bringst du mich durcheinander?! :D

das ist einfach eine verkettung.

du könntest auch schreiben:

String s = "Hallo " + "das ist " + "ein doofes " + "Beispiel";

ausgabe: Hallo das ist ein doofes Beispiel

ob da nun jetzt auch variablen drin vorkommen (was eig. dann auch nur sinn macht)
ist ja dann gleich:

int a = 5;
String s = "Hallo " + "das ist " + "Beispiel " + a;

ausgabe: Hallo das ist Beispiel 5

oder besser

String s = "Hallo das ist Beispiel " + a ;

ausgabe auch: Hallo das ist Beispiel 5

:D
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Oben