Methoden zu gegebenem main herausfinden

Status
Nicht offen für weitere Antworten.
J

Juliewinters

Gast
Hallo

Ich habe 2 Übungen, bei denen ich nicht weiter komme und hoffe, hier kann mir jemand helfen.

Es geht darum, dass ein Teil des Codes gegeben ist und die Methode herausgefunden werden soll:

1. Aufgabe:
Folgender Code ist gegeben:

Code:
public static void main (String[] args)
{
    String s = Addiere(2,5);
    System.out.println(s);
}

Die Methode Addiere soll nun herausgefunden werden. Hat mir da jemand ne Lösung?


2. Aufgabe:
Folgender Code ist gegeben:

Code:
public static void main (String[] args)
{
    String s = "hello world";
    System.out.println(s);
    int i = StdInput.readInt("Zeige das Zeichen an Position: ");
    char c = returnChar(s,i);
    System.out.println("Das " +i+ ". Zeichen von \"" +s+ "\" ist \"" +c+ "\"");
}

Die Methode returnChar soll herausgefunden werden.


Wäre seeeeeehr froh, wenn mir jemand helfen kann!!!
 

Lulumann6

Aktives Mitglied
jo also ich weis die antworten :lol:
und ich würde dir auch gern helfen, wenn du mal sagen könntest wo genau es hakt.
 

Murray

Top Contributor
Bedeutet "Die Methode xxx soll herausgefunden werden", dass der Code für diese Methode angegeben werden soll? Wenn es keine weiteren Randbedingungen gibt, dann ist jede Antwort richtig. Wenn man zumindest die Randbedingung annimmt, dass der Code übersetzbar wird, dann müssen die jeweils gefragten Methoden zumindest die im Code verwendeten Signatur ( = Namen + Parameterlisten haben). Und wenn man dann noch etwas gesunden Menschenverstand dazunimmt, dann kann man davon ausgehen, dass die Methode Addiere (übrigens schlechter Stil; Methoden sollen klein geschrieben werden) wohl zwei int-Paramter erwartet, diese addiert und das Ergebnis als String zurückliefert; die Methode returnChar erwartet wohl einen String und einen int und soll - so sagt es zumindest die Ausgabe im Code - aus dem übergebenen String das Zeichen an der durch den übergebenen int bezeichneten Stelle liefern - auch eine durchaus lösbare Aufgabe, besonders, wenn man sich in der API-Doku mal java.lang.String.charAt ansieht.
 

blackMamba

Mitglied
Code:
public static int Addiere(int x, int y){
	int Ergebniss = x + y;
	return Ergebniss;
}
 
J

Juliewinters

Gast
@Lulumann6: Eben bei den Antworten hakt es ;-) Ich bin einfach nicht auf eine richtige Lösung gekommen, sprich, ich habe die Methode nicht herausfinden können. Bin kein Freund von Strings...

@Murray: Ja, die Ausgabe ist gegeben und eben das main-Programm. Die Aufgabe ist, die Methode, also den Code für die Methode herauszufinden. Übrigens, die Methode habe ich nicht benannt, war mein Lehrer ;-) und der ist eig. sehr kompetent. Klar, ist es eine lösbare Aufgabe, nur eben gerade für mich nicht... würde ja wohl sonst kaum hier fragen und ich hab es ja bereits versucht....

@blackMamba: Besten Dank. Funktioniert allerdings nicht ganz, es meldet, dass int nicht in String gewandelt werden kann. Genau da habe ich eben auch das Problem, dass das ganze über einen String läuft.. :S
 
H

Helper

Gast
public static String Addiere(int x, int y){
int summe = x + y;
return "" + summe;
}
Code:
 

Murray

Top Contributor
Damit die main-Methode übersetzbar ist, muss die Methode Addiere einen String zurückliefern. Da die Addition der beiden ints erstmal wieder einen int ergibt, brauchst Du also einen Weg, einen int in einen String zu wandeln. In der API-Dokumentation zu java.lang.Integer findest Du, was Du brauchst:
javadoc hat gesagt.:
Code:
static String toString(int i)
          Returns a String object representing the specified integer.
 

Murray

Top Contributor
Helper hat gesagt.:
Code:
   int summe = x + y; 
   return "" + summe; 
}
Das funktioniert zwar; man sollte sich das aber besser nicht angewöhnen, denn dabei macht man eine String-Konkatenation, die zwar mittlerweile vom Compiler recht gut optimiert wird, aber trotzdem zur Laufzeit einen gewissen Mehraufwand verursacht.
 
J

Juliewinters

Gast
@Helper: Besten Dank! Musste es noch ein bisschen anpassen, aber die erste Aufgabe wäre somit gelöst :-D
 
J

Juliewinters

Gast
Mein Code sieht bis jetzt so aus:

Code:
public static char returnChar(String s, int i)
	{
		s = "hello world";
		char zeichen = ???????;
		return zeichen;
		
	}

Bei den Fragenzeichen weiss ich nicht, was ich genau hinschreiben muss, zeigt bei mir alles falsch an *gg*
 
S

SlaterB

Gast
s = "hello world";
ist falsch,
der String s wird doch von außen übergeben und hat schon einen Wert

wenn du die Operation nicht kennst, die dir einen bestimmten char aus dem String gibt,
dann schaue dir am besten mal alle Operationen von String an:
http://java.sun.com/javase/6/docs/api/java/lang/String.html

insgesamt muss ich aber sagen, dass ich selten einen traurigeren Thread als diesen gesehen haben,
nicht mal zwei Zahlen addieren, keine Ahnung von nix,
uiuiui
 

Murray

Top Contributor
1. Du darfst s in der Methode nicht neu zuweisen; hier soll der übergebene Wert verwendet werden
2. Ich hatte gestern schon einen Hinweis auf die hier passende Methode aus java.lang.String gepostet -> String.charAt
 

Leroy42

Top Contributor
Murray hat gesagt.:
1. Du darfst s in der Methode nicht neu zuweisen; hier soll der übergebene Wert verwendet werden
.

Aha! Und woher hast du diese Erkenntnis? Aus der Aufgabenstellung sicher nicht! :shock:

Sorry, aber eine derartige Aufgabenstellung ist totaler Bullshit
 
H

Helper

Gast
@ Juliewinters

Code:
public static char getChar(String s, int i)
{
   char[] hilf = s.toCharArray(); 
   return hilf[i];
}
 
S

SlaterB

Gast
@Leroy42
nana, das ist doch wohl sehr deutlich aus der Aufgabe zu lesen,
wenn man nicht terroristisch annimmt, dass bei Addiere(2,5) genausogut 499 zurückgegeben werden soll,

warum diese Zweifel? ;)
 

Leroy42

Top Contributor
SlaterB hat gesagt.:
@Leroy42
nana, das ist doch wohl sehr deutlich aus der Aufgabe zu lesen,
wenn man nicht terroristisch annimmt, dass bei Addiere(2,5) genausogut 499 zurückgegeben werden soll

Und wer sagt, daß Addiere(2,5) nicht ein Drittel der Festplatte löschen,
das Internet auf den Monitor ausgeben und "42" zurückgeben soll? :shock:

Ich bleib' dabei: Eine derartige Aufgabenstellung ist Bullshit!
 
J

Juliewinters

Gast
Sorry, mein Fehler, hatte es ausprobiert und vergessen wieder zu löschen *ggg*.

also mit dem Code:
Code:
public static char returnChar(String s, int i) 
   { 
      char zeichen = s.charAt(i);
      return zeichen; 
       
   }
funktioniert es. Musste einfach noch s.charAt(i-1) anpassen, damit es nicht bei 0 beginnt zu zählen, rsp. am Ende einfach das vorangehende Zeichen nimmt.

Besten Dank an alle!!

PS: Für die Aufgabenstellung kann ich nichts. Mache eine Informatik-Lehre, aber weiss jetz nicht, ob die Aufgaben vom Lehrer selbst kommen oder von der Schule... Finde die Aufgabenstellung eigentlich noch ganz interessant.
 

Murray

Top Contributor
Leroy42 hat gesagt.:
Aha! Und woher hast du diese Erkenntnis? Aus der Aufgabenstellung sicher nicht! :shock:

In der Aufgabe war je folgender Code gegeben:
Code:
    char c = returnChar(s,i);
    System.out.println("Das " +i+ ". Zeichen von \"" +s+ "\" ist \"" +c+ "\"");

Und wie ich weiter oben geschrieben habe, muss man, um die Aufgabe lösen zu können, wohl annehmen, dass die Methode das machen soll, was in der println-Anweisung ausgesagt wird.
 

Leroy42

Top Contributor
Murray hat gesagt.:
...muss man, um die Aufgabe lösen zu können, wohl annehmen, dass die Methode das machen soll, was in der println-Anweisung ausgesagt wird.

Genau! Und eine Annahme machen zu müssen, hat in einer Programmier-Aufgabenstellung
nichts zu suchen! :noe:

Wir sind hier nicht in der Rubrik: Überlegen Sie, was sich der Autor dabei dachte...
 

Janus

Bekanntes Mitglied
wir sind hier in der rubrik "schulaufgabe" und nicht "pflichtenheft". schüler sollen etwas lernen. uneindeutige aufgaben sind ein guter weg, um schüler zum nachdenken anzuregen. es gibt für die aufgabe diverse lösungen, die alle korrekt sind. und der lehrer kann anhand der gewählten lösung und der gelieferten begründung sehr gut erkennen, welche gedankengänge der schüler verfolgt hat. möglicherweise wird es ihm auch sauer aufstossen, wenn alle seine schüler davon ausgegangen sind, dass die aufgabe eindeutig ist und nur den einen hervorheben, der tatsächlich in der methode Addiere die festplatte gelöscht hat ;)
 

Murray

Top Contributor
@Leroy:

Ich bin ganz Deiner Meinung, die Aufgabenstellung ist nicht überzeugend; ob es Juliewinters aber auf lange Sicht viel bringen würde, die Aufgabe mit "unlösbar, da nicht eindeutig definiert"zu beantworten, wage ich zu bezweifeln. Insofern halte ich es für durchaus vertretbar, solche Annahmen zu treffen; das darf man natürlich auch gern in der Lösung erwähnen.
 

Leroy42

Top Contributor
Murray hat gesagt.:
ob es Juliewinters aber auf lange Sicht viel bringen würde, die Aufgabe mit "unlösbar, da nicht eindeutig definiert"zu beantworten, wage ich zu bezweifeln.

Ich hätte das ausgefochten.

Echt schade, daß ich kein Schüler mehr bin. :(
:cool:
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
emreiu Methoden Rekursive Methoden Runter- & Hochzählen Java Basics - Anfänger-Themen 2
U Funktionale Interfaces mit mehreren abstrakten Methoden? Java Basics - Anfänger-Themen 8
MoxMorris Einige Methoden aus verschiedenen Klassen nacheinander auszuführen läuft seltsam Java Basics - Anfänger-Themen 2
J Argumente in Methoden übergeben Java Basics - Anfänger-Themen 1
XWing Methoden rückgabe Problem? Java Basics - Anfänger-Themen 6
Say Class scope und Instance scope und Getter nur selbstgeschrieben Methoden Java Basics - Anfänger-Themen 11
I Gleiche Klassen und Methoden in unterschiedlichen Projekten nutzen Java Basics - Anfänger-Themen 2
N Klassen Methoden anderer Klassen aufrufen Java Basics - Anfänger-Themen 4
Renjiroo Java Bmi Rechner mit Methoden Java Basics - Anfänger-Themen 4
frager2345 Thread - Methoden synchronized deklarieren Java Basics - Anfänger-Themen 10
M Designentscheidung von Attributen/Methoden im Falle von Vererbung Java Basics - Anfänger-Themen 8
berserkerdq2 Findet eine parallele Verarbeitung in Java bei Threads erst statt, wenn man die Methoden auch synchronized? Und wie sieht bei Conditions aus? Java Basics - Anfänger-Themen 8
Alen123 Erstes Arbeiten mit Methoden. Java Basics - Anfänger-Themen 5
berserkerdq2 Zwei Klassen Erben von der Klasse A, die eine Klasse kann ich an Methoden übergeben, die als Parameter A haben, die andere nicht? Java Basics - Anfänger-Themen 3
M Andere Methoden in anderen Klassen aufrufen Java Basics - Anfänger-Themen 11
L Methoden in anderen Klassen nutzen Java Basics - Anfänger-Themen 6
D Gerade oder ungerade Zahl mittels Methoden Java Basics - Anfänger-Themen 13
M Erklärung von Ausnahmebehandlung in Methoden Java Basics - Anfänger-Themen 13
S Methoden 2 non-static Methoden, trotzdem Fehler "non static method can not be referenced from a static context" Java Basics - Anfänger-Themen 9
L Rekursive Methoden Java Basics - Anfänger-Themen 14
X Wie erreiche ich, dass ein Robot weitere Attribute hat, die nicht materialisiert sind, sondern nur über get/ set-Methoden simuliert sind? Java Basics - Anfänger-Themen 1
C Problem mit mehreren Methoden + Scanner Java Basics - Anfänger-Themen 5
R Frage zu Methoden (Rückgabewert u. ohne.) Java Basics - Anfänger-Themen 2
W Verschiedene Methoden in einer Klasse in der Main aufrufen? Java Basics - Anfänger-Themen 8
W Methoden aufrufen - auch klassenübergreifend? Java Basics - Anfänger-Themen 9
Kotelettklopfer Methoden nicht aufrufbar Java Basics - Anfänger-Themen 34
R Schulaufgabe, Bruache Hilfe mit non-static Methoden Java Basics - Anfänger-Themen 2
S Vererbung Abstrakte Methoden: Wozu das Ganze?! Java Basics - Anfänger-Themen 7
S abstrakte methoden in subclass? Java Basics - Anfänger-Themen 7
S Methoden - Warum int wenn auch void? Java Basics - Anfänger-Themen 3
H Kann man Methoden öfter aufrufen? Java Basics - Anfänger-Themen 2
CptK Interface Functional interface mit mehreren Methoden Java Basics - Anfänger-Themen 6
P Objekt in mehreren Methoden verwenden. Java Basics - Anfänger-Themen 3
M Aufruf von statischen Methoden einer anderen Klasse Java Basics - Anfänger-Themen 15
lougoldi Verkettung von Methoden und Konstruktoren Java Basics - Anfänger-Themen 4
Zeppi OOP Methoden mit einander Verknüpfen Java Basics - Anfänger-Themen 6
A Löschen von Leerzeichen in einem char array ohne methoden Java Basics - Anfänger-Themen 6
A Parametar übergabe zwischen Methoden Java Basics - Anfänger-Themen 26
D Methoden nach einer bestimmten Reihenfolge ausführen. Java Basics - Anfänger-Themen 20
P Wie rufe ich Methoden mit einer Referenz auf eine Klasse||Objekt auf Java Basics - Anfänger-Themen 4
O Attribute die Methoden zählen Java Basics - Anfänger-Themen 5
M Bräuchte Hilfe bei diesen Methoden Java Basics - Anfänger-Themen 4
G Methoden Methoden mit versch. Datentypen Java Basics - Anfänger-Themen 1
T Ich habe eine Variabel die nicht Methoden übergreifend ist. Kann mir jemand Helfen :) Java Basics - Anfänger-Themen 5
Junger_Basileus Celsius -> Fahrenheit / Strukturierung in statischen Methoden Java Basics - Anfänger-Themen 7
J Verschachtelte Methoden Java Basics - Anfänger-Themen 9
H Methoden in anderen Methoden aufrufen Java Basics - Anfänger-Themen 6
Kawastori Hilfe bei Methoden Übung Java Basics - Anfänger-Themen 6
veryck Methoden Rekursive Methoden mit Rückgabeparameter Java Basics - Anfänger-Themen 9
C Methoden können nicht auf Instanzvariable der Klasse zugreifen Java Basics - Anfänger-Themen 3
P Methoden aufrufen - Fehler Java Basics - Anfänger-Themen 20
M konzeptuelle Frage: In welcher Klasse definiert man am Besten Methoden, die die Kommunikation mit dem User regeln? Java Basics - Anfänger-Themen 8
C eigene Methoden erstellen (Instanzmethoden) Java Basics - Anfänger-Themen 7
P Klasse hat keinen Zugriff auf getter/setter-Methoden eines Objektes Java Basics - Anfänger-Themen 9
B Methoden Methoden haben kein Zugriff auf variablen Java Basics - Anfänger-Themen 4
M Gettter/Setter Methoden Klassenfelder kapselung und zugriff? Java Basics - Anfänger-Themen 1
C Fernseher-Aufgabe (Methoden, Klassen und Objekte) Java Basics - Anfänger-Themen 63
C Taschenrechner (switch) in Taschenrechner mit Methoden umwandeln Java Basics - Anfänger-Themen 115
H Methoden in großen Klassen gruppieren oder auslagern? Java Basics - Anfänger-Themen 10
G Generics Methoden Java Basics - Anfänger-Themen 7
L Test-Methoden schreiben Java Basics - Anfänger-Themen 13
S throws bei Methoden Java Basics - Anfänger-Themen 4
L Best Practice Code Refactoring für Methoden mit fast gleicher Aufbau Java Basics - Anfänger-Themen 6
I Greedy Methode Methoden nutzen Java Basics - Anfänger-Themen 3
C Methoden-Parameter ist Interface Java Basics - Anfänger-Themen 5
A Klassen und methoden Java Basics - Anfänger-Themen 15
S Übergabe von Arrays an Methoden Java Basics - Anfänger-Themen 20
L Methoden Wie Löse ich ext Methoden Aufruf Fehler? Java Basics - Anfänger-Themen 3
A Bankweverwaltung mit Klassen und Methoden Java Basics - Anfänger-Themen 14
B Methoden Ausgeben Aufgabe Java Basics - Anfänger-Themen 15
M Aufsplitten von Methoden in andere Klassen Java Basics - Anfänger-Themen 2
T Methoden Verständnis Java Basics - Anfänger-Themen 14
M Feste Reihenfolge von dem Ablauf von Methoden Java Basics - Anfänger-Themen 7
G Java Abstrakte Methoden Java Basics - Anfänger-Themen 2
N Klassen Warum kann meine Klasse nicht auf Methoden der anderen Klasse zugreifen? Java Basics - Anfänger-Themen 6
Ich lerne Java. Methoden Mehrere Methoden mit Punkt Java Basics - Anfänger-Themen 45
Kirby.exe Methoden Aufrufe Java Basics - Anfänger-Themen 4
G Objekte in Methoden? Java Basics - Anfänger-Themen 13
W OOP Warenlager mit Array(Konstruktor, Methoden) Java Basics - Anfänger-Themen 39
B Variablen von Methoden übertragen Java Basics - Anfänger-Themen 2
M Unterklasse soll nicht alle Methoden erben Java Basics - Anfänger-Themen 3
Curtis_MC Parameter-Übergabe bei Klassen und Methoden Java Basics - Anfänger-Themen 12
H Aufruf von Methoden durch Methoden Java Basics - Anfänger-Themen 3
W Methoden Verständnisfrage Vererbung von Methoden Java Basics - Anfänger-Themen 14
H Wie kann ich durch Methoden definiren? Java Basics - Anfänger-Themen 8
D Methoden Scannervariablen in static Methoden Java Basics - Anfänger-Themen 5
P Verzweigungen und Methoden Java Basics - Anfänger-Themen 10
C Methoden/Klassen Übergabewerte Java Basics - Anfänger-Themen 8
B Methoden Mehrere ähnliche Methoden zusammenfassen Java Basics - Anfänger-Themen 24
C Java Klassen/Methoden/Übergabeparameter Java Basics - Anfänger-Themen 4
C Java Methoden "Parameter" Problem Java Basics - Anfänger-Themen 16
B Polymorphie Warum funktionieren polymorphe Referenzvariablen bei überschriebenen Methoden und bei nicht überschriebenen nicht? Java Basics - Anfänger-Themen 3
B Methoden Java Basics - Anfänger-Themen 1
T Körper Brechnung - Lokale Variablen in Methoden übergeben Java Basics - Anfänger-Themen 10
P Methoden richtig anwenden Java Basics - Anfänger-Themen 3
C Zusammenfassen von Methoden in einer Hilfsmethode Java Basics - Anfänger-Themen 19
A Methoden Serialisieren Java Basics - Anfänger-Themen 17
N JUnit und private Methoden testen. Java Basics - Anfänger-Themen 9
H Datenkapselung (get und set Methoden) Java Basics - Anfänger-Themen 2
H if bedinung in methoden umändern Java Basics - Anfänger-Themen 33

Ähnliche Java Themen

Neue Themen


Oben