Rechnen in Java mit Äpfel und Birnen?

3 Antworten

Was hast Du denn vor?
Jede Programmiersprache rechnet mit Variablen und Zahlen.

Wenn es dir um die Variablen geht und Du einfach eine Formel mit verschiedenen Werten ausrechnen können willst, dann ist jede Programmiersprache von Grund auf dafür gemacht, das abbilden zu können: Eine Methode mit zwei Variablen, die damit irgendetwas rechnet.

Wenn Du die Gleichung aber umstellen willst, ohne die Variablen aufzulösen, dann gibt's dafür nichts und Du musst es selber entwickeln. Und das dürfte ziemlich aufwändig sein, immerhin musst Du zuerst die Gleichung interpretieren und anschließend diverse Umstellungs-Regeln implementieren.


Padder2001 
Fragesteller
 05.03.2022, 15:57

ok, habe ich vielleicht nicht erwähnt. Guter Einwand. Beim erweiterten euklid. Alg. benötigt man am Ende eine Gleichung der Form: 1 = x * Äpfel + y * Birnen. Damit ich diese Form bekomme, darf ich ja nicht meine Äpfel und Birnen mit was anderem verrechnen.

0
Palladin007  05.03.2022, 16:01
@Padder2001

Wie gesagt, Java kennt nur Zahlen und Zahlen kann man beliebig (im Wertebereich) zusammen rechnen. Wenn dir das nicht gefällt, musst Du die Berechnung manuell entwickeln.

0

Das kannst du in Java nicht direkt so abbilden.

Du musst zuerst auf Mathematischen Wege deine Gleichung so umformen, dass diese rein nummerisch darstellbar ist.

Also wenn du hast in einem Korb sind Früchte davon sind 4 Äpfel und 4 Birnen, dann ist dein Korb in Java nicht eine Variable vom Typ int sondern eben ein Objekt mit:

class Korb
{
  public int aepfel = 0;
  public int birnen = 0;
}

Wenn du jetzt 3 Äpfel da rein legst sagst du eben:

Korb obstkorb = new Korb();
obstkorb.aepfel += 3;

Wenn du ein Gleichungssystem hast kannst du das am Ende auch nur so nummerisch lösen. Java unterscheidet hier nicht zwischen Äpfel und Birnen sondern das musst du als Programmierer machen.

so wie bei deiner Kopfrechnung. Benutze für Äpfel und Birnen andere Variablen. Die Addition mit den Äpfeln hat dann mit der bei den Birnen nichts zu tun, die müssen nacheinander ausgeführt werden.