Registriert seit: 14.09.2015
Version(en): 2013
14.11.2016, 22:26
(Dieser Beitrag wurde zuletzt bearbeitet: 14.11.2016, 23:15 von xlsxvba.)
Guten Abend zusammen,
ich bin gerade auf eine Idee gekommen, die mich jetzt gepackt hat - ich sie aber nicht lösen kann :D
Angenommen ich habe eine Gleichung mit 2 bis 5 Zahlen und einem gegebenem Ergebnis, wobei allerdings die vier Grundrechenoperationen (plus minus mal geteilt) zwischen den Zahlen fehlen.
Also bspw.: 2 _ 3 _ 4 _ 5 = 19
Lösung: 2 + 3 * 4 +5 = 19
Habt ihr adhoc eine Idee, wie man dies mit einer Formel oder besser mit VBA lösen könnte?
Ich dachte da entweder an eine komplette Eingabeabfrage von wegen "Wie viele Zahlen?" "Zahlen angeben" "Ergebnis angeben!"
Oder an 4 Zeilen, in denen man die Zahlen einträgt (je nachdem, wieviele Zahlen gegeben sind):
1: Zahl1 _ Zahl2 = Erg
2: Zahl1 _ Zahl2 _ Zahl3 = Erg
3: Zahl1 _ Zahl2 _ Zahl3 _ Zahl4 = Erg
4: Zahl1 _ Zahl2 _ Zahl3 _ Zahl 4 _ Zahl 5 = Erg , wobei _ eine gesuchte Rechenoperation
hinzukommend wüsste ich zB. auch nicht wie man die Rechenregel Punkt-vor-Strich berücksichtigen könnte?
Ich wäre euch sehr dankbar, falls ihr mir da weiterhelfen könntet!
Beste Grüße,
Herbert
Registriert seit: 10.04.2014
Version(en): 2007, Office 365
14.11.2016, 22:59
(Dieser Beitrag wurde zuletzt bearbeitet: 14.11.2016, 22:59 von coemm.)
(14.11.2016, 22:26)xlsxvba schrieb: Also bspw.: 2 _ 3 _ 4 _ 5 = 25
Lösung: 2 + 3 * 4 +5 = 25
Hallo Herbert,
2+3*4+5=19 und nicht 25
richtig wäre: 2+3+4*5
Außerdem gibt es teilweise mehr als eine Lösung
z.B ergibt auch
2-3+4*5 auch 19
Gruß Conny :)
_______________________________________________________________
Die Summe der Intelligenz auf unserem Planeten ist konstant, aber die Bevölkerung wächst!
Registriert seit: 14.09.2015
Version(en): 2013
Hallo Conny,
na da geht's ja schon direkt los :D
Habe erst noch groß von Punkt vor Strich geschrieben und dann das. (Hatte erst überall "+" stehen und dachte das ist zu einfach und habe das Ergebnis nicht angepasst :21: )
Also du hast natürlich Recht:
Also bspw.: 2 _ 3 _ 4 _ 5 = 19
Lösung 1: 2 + 3 * 4 +5 = 19 UND in diesem Fall Lösung 2: 2 - 3 + 4 * 5 = 19
Dann müsste das auch berücksichtigt werden.
Eine Idee zu Berechnung hast du aber nicht zufällig?
VG
Registriert seit: 06.12.2015
Version(en): 2016
Hallo,
die einzige Idee, die mir einfällt, ist "brut force", wie hacker das sagen würden. Einfach alle Möglichkeiten ausprobieren.
mfg
Registriert seit: 14.09.2015
Version(en): 2013
Hallo,
so in die Richtung geht es bestimmt.
Fängt man mit 2 Zahlen an, gibt es 4 Möglichkeiten: +-*/
Sind es 3 Zahlen, gibt es 4 x 4 = 16 Möglichkeiten, oder?
++,+-,+*,+/
-+,--,-*,-/
*+,*-,**,*/
/+,/-,/*,//
müssten man das irgendwie in eine Schleife verpacken, die das durchgeht?
Schwieriger wird es bestimmt bei 5 oder 6 Zahlen und Punktrechnung muss priorisiert werden.
Ideas welcome :)
Danke & VG
Registriert seit: 06.12.2015
Version(en): 2016
Hallo,
nicht so ganz: da es vier Grundrecharten gibt, ergeben 2 Zahlen 4 Möglichkeiten, 3 Zahlen 16 usw.
Programmiert werden könnte das mit
Code:
GR = Array("+", "-", "*", "/")
und die Formel zuerst als String zusammensetzen und dann mit "Evaluate" auswerten.
mfg
Registriert seit: 30.05.2016
Version(en): 2013
Hallo,
bis zu wie viele Zahlen brauchst du das denn ? Gibt es eine maximale Anzahl ?
Registriert seit: 30.05.2016
Version(en): 2013
Hallo,
hier eine umständliche Zwischenlösung, aber vielleicht kann man ja darauf aufbauen :)
Rechenoptionen.xlsx (Größe: 12,54 KB / Downloads: 5)
Folgende(r) 1 Nutzer sagt Danke an Luffy für diesen Beitrag:1 Nutzer sagt Danke an Luffy für diesen Beitrag 28
• xlsxvba
Registriert seit: 13.04.2014
Version(en): 365
Hallo,
dann würde ich doch eher das vorschlagen:
Rechenoptionen.xlsm (Größe: 13,67 KB / Downloads: 8)
Gruß
Edgar
Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Registriert seit: 14.09.2015
Version(en): 2013
15.11.2016, 12:58
(Dieser Beitrag wurde zuletzt bearbeitet: 15.11.2016, 12:58 von xlsxvba.)
Moin zusammen,
Danke für eure starken Ideen und Lösungen!
Insbesondere Danke an BoskoBiati!!
Ich bin ein bisschen platt :D wie kannst du mal eben schnell sowas bauen?? Respekt!!
Ich muss erstmal einen Tag frei nehmen, um deine Formeln zu verstehen ;)
Die Datei ist ja eine xlsm nur enthält sie keine Makros bei mir? Die Funktion "rechne" ist mit =AUSWERTEN(Tabelle1!$C4) hinterlegt ... die Formel "Auswerten" gibt es bei mir aber nicht. Könntest du mir noch kurz erklären wie das genau funktioniert?
Also besten Dank nochmal bis hierhin!
// PS @ Luffy: 5 Zahlen sind schon top. Luxus wäre natürlich variabel