Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Hi möchte einen Bruchrechner programmieren. Ich hab bei BlueJ wenn ich ein Objekt erzeugen will immer den Fehler: int cannot be Converted into Bruch wenn ich z.B (3,4) oder eine Zahl hinschreibe.
Code:
public class Bruch
{
public int zaehler;
public int nenner;
public int zaehler1;
public int nenner1;
public Bruch(int zaehler, int nenner) //konstruktor
{
this.zaehler=zaehler;
this.nenner=nenner;
}
public String Brueche(){
return this.zaehler+"/"+this.nenner;
}
public Bruch add(Bruch b)
{
zaehler=zaehler*b.nenner+nenner*b.zaehler;
nenner=nenner*b.nenner;
return new Bruch(this.zaehler, this.nenner);
}
public Bruch mul(Bruch b)
{
zaehler= zaehler*b.zaehler;
nenner= nenner*b.zaehler;
return new Bruch(zaehler,nenner);
}
}
ich suche schon 2 Stunden nach einer Lösung..
muss ich da public void...eingeben damit das funktioniert?
Hi möchte einen Bruchrechner programmieren. Ich hab bei BlueJ wenn ich ein Objekt erzeugen will immer den Fehler: int cannot be Converted into Bruch wenn ich z.B (3,4) oder eine Zahl hinschreibe.
Code:
public class Bruch
{
public int zaehler;
public int nenner;
public int zaehler1;
public int nenner1;
public Bruch(int zaehler, int nenner) //konstruktor
{
this.zaehler=zaehler;
this.nenner=nenner;
}
public String Brueche(){
return this.zaehler+"/"+this.nenner;
}
public Bruch add(Bruch b)
{
zaehler=zaehler*b.nenner+nenner*b.zaehler;
nenner=nenner*b.nenner;
return new Bruch(this.zaehler, this.nenner);
}
public Bruch mul(Bruch b)
{
zaehler= zaehler*b.zaehler;
nenner= nenner*b.zaehler;
return new Bruch(zaehler,nenner);
}
}
ich suche schon 2 Stunden nach einer Lösung..
muss ich da public void...eingeben damit das funktioniert?
Habe ich dich richtig verstanden, dass immer ein Fehler auftritt, wenn du eine Kommazahl eingibst?
Falls ja, darfst du keinen Integer verwenden. Ein Integer ist immer eine Ganzzahl, möchtest du mit Kommazahlen rechnen musst du stattdessen einen Double verwenden, dieser ist für Kommazahlen gedacht.
da gibts wenn man auf das Objekt bei Blue J rechts klickt, einen Methodenaufruf Bruch add(Bruch b) wenn ich da egal ob 3/4 oder (3,4) oder eine Zahl 3 hinschreibe kommt immer der Fehler. Ich kann da einfach nichts eingeben bzw. weiß nicht was ich da eingeben kann. Der Bruch soll dann mit dem Anfangsbruch addiert werden
da gibts wenn man auf das Objekt bei Blue J rechts klickt, einen Methodenaufruf Bruch add(Bruch b) wenn ich da egal ob 3/4 oder (3,4) oder eine Zahl 3 hinschreibe kommt immer der Fehler. Ich kann da einfach nichts eingeben bzw. weiß nicht was ich da eingeben kann. Der Bruch soll dann mit dem Anfangsbruch addiert werden
Ah, das ist BlueJ spezifisch. Sorry, das kenne ich überhaupt nicht. Eine Vermutung wäre, dass du an dieser Stelle etwas für "b" eingeben sollst und "b" ist vom Typ Bruch. Das würde zur Fehlermeldung passen. Wie du allerdings an dieser Stelle eine Instanz von Bruch eingeben kannst, kann ich dir leider nicht sagen. Vielleicht "Bruch(3,4)"????
ich klicke zuerst auf den Button newBruch(int Zähler, int Nenner) dann kommen zwei Eingabefelder und dort gebe ich den den Zähler und Nenner ein z.b 3 und 4 quasi 3/4.
wenn ich dann addieren will kommt dann bei Bruch add(Bruch B) nur ein Eingabefeld und egal was ich dort eingebe, es kommt immer ein Fehler
ich klicke zuerst auf den Button newBruch(int Zähler, int Nenner) dann kommen zwei Eingabefelder und dort gebe ich den den Zähler und Nenner ein z.b 3 und 4 quasi 3/4.
wenn ich dann addieren will kommt dann bei Bruch add(Bruch B) nur ein Eingabefeld und egal was ich dort eingebe, es kommt immer ein Fehler
Ah, das ist BlueJ spezifisch. Sorry, das kenne ich überhaupt nicht. Eine Vermutung wäre, dass du an dieser Stelle etwas für "b" eingeben sollst und "b" ist vom Typ Bruch. Das würde zur Fehlermeldung passen. Wie du allerdings an dieser Stelle eine Instanz von Bruch eingeben kannst, kann ich dir leider nicht sagen. Vielleicht "Bruch(3,4)"????
Ich denke immernoch das du es als Double definieren musst, da ja als Ergebnis mit hoher Wahrscheinlichkeit eine Kommazahl entsteht, und Integer + Kommazahl passt eben nicht zusammen.