Knobelaufgabe (Gleichung)

Übersicht Sonstiges Smalltalk

Neue Antwort erstellen

 

mister_nobody

Betreff: Knobelaufgabe (Gleichung)

BeitragDi, Okt 30, 2007 17:18
Antworten mit Zitat
Benutzer-Profile anzeigen
Moin, wir ich beschäftige mich auch außerhalb der Schule gerne mit Mathe und mein Lieblingsthema sind bisher Gleichungen (ich mag einfach dieses wunderbare rumgedenke).
Jetzt bin ich in einem Buch auf eine Aufgabe gestoßen, die ich einfach nicht gebacken kriege. Bei mir sieht das Ende immer wie folgt aus:
11x -2 = 11x -2 (is klar ne^^ - x möcht ich eigentlich schon ganz gern errechnen =) )

Hier kommt die (text)Aufgabe:

Bei einer zweistelligen Zahl unterscheiden sich die Ziffern um 2. Vertauscht man die Ziffern, so entsteht eine um 18 größere Zahl. Wie heißt die Zahl?

Auf die Lösung kommt man sehr schnell Wink
Aber ich kriegs halt nicht hin eine funktionierende Gleichung aufzustellen.
Ich poste mal die Lösung als link, so dass, wenn man draufhält, unten das Ergebnis eingeblendet wird:

Lösung

ich hoffe, die Aufgabe strengt euch genauso an wie mich, schließlich möchte ich nicht alleine mit meinem Problem dastehen^^[/url]
...biep...biep...biep...biep...biep

Noobody

BeitragDi, Okt 30, 2007 17:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Gleichungssystem:

Abs( x - y ) = 2
10x + y + 18 = 10y + x

So in den TI-89 eintippen und man hats Wink

EDIT: Funzt ja doch nicht... Mist
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun

Eingeproggt

BeitragDi, Okt 30, 2007 17:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich als Kind der Taschenrechner-Generation griff mal zu meinem TI Voyage 200 und ...

hatte probleme damit^^

bei 11*x-2=11*x-2 sagt er schlicht und einfach "true", weil man da JEDE Zahl einsetzen kann.

Und bei der Textaufgabe hab ich wohl nen Denkfehler in den Gleichungen... da sagt er nämlich "false" bzw "Argument must be a variable name", was soviel heißt wie: Ich habs falsch eingetippt Smile

Naja, fürs Kopfrechnen wär das nix für mich Smile

Edit: lol, hatte genau denselben Ansatz wie Noobody
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9

mahe

BeitragDi, Okt 30, 2007 17:55
Antworten mit Zitat
Benutzer-Profile anzeigen
Meine Gleichungen lösen sich auch in nichts auf ... Smile

y - x = 2

10x + y = 10y + x - 18
ʇɹǝıdɯnɹɹoʞ ɹnʇɐuƃıs - ǝpoɥʇǝɯ-ɹoɹɹıɯ ɹǝp uı ,ɹoɹɹǝ,

Hip Teen

BeitragDi, Okt 30, 2007 18:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Hehe, gute Aufgabe. Aber es gibt keine eindeutige Lösung, denn bei jeder Ziffernkombination, die sich um 2 unterscheidet, ist dann die Differenz 18. Aber dafür habe ich jetzt fast das ganze Blatt verschwendet, um drauf zu kommen -.-
Spruch der Woche: "Ahh, ein neues Gesicht?!" - "Nein, das hab ich schon länger"
 

Shark

BeitragDi, Okt 30, 2007 18:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Joar, wie ich die Aufgabe verstanden hab... ist es überhaupt net schwer... die Lösung müsste 13 sein!

Versuch später noch ne Gleichung auf zustellen Very Happy

Schön Tag noch.

Noobody

BeitragDi, Okt 30, 2007 18:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Es gibt genau 7 Lösungen:
Code: [AUSKLAPPEN]
13
24
35
46
57
68
79


Probierts aus, sollte gehen.
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun

Triton

BeitragDi, Okt 30, 2007 19:59
Antworten mit Zitat
Benutzer-Profile anzeigen
hm, habs zweimal versucht und kam nur auf -18 = 18 und 0=0 Smile
Coding: silizium-net.de | Portfolio: Triton.ch.vu
 

Nikonoob

BeitragDi, Okt 30, 2007 20:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Hätte nicht gedacht, dass sowas den Leuten hier solche Probleme macht...


x*10 + y = y*10 + x - 18

10x + y = 10y + x - 18

9x = 9y - 18

x = y - 2


Bedeutet, es funktioniert mit allen zweistelligen Zahlen, wo die Zehnerziffer (x) um 2 kleiner ist als die Einserziffer.

SpionAtom

BeitragDi, Okt 30, 2007 20:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Auf das Ergebnis von Nikinoob komm ich auch. Aber wer findet den größeren Zusammenhang raus. Wenn man den Ziffernunterschied von 2 auf 3 hochsetzt, ändert sich die 18 in eine 27. Aber sonst funktioniert das gleiche Spiel.
Wenn man den Ziffernunterschied von 3 auf 4 hochsetzt, kommt mit Sicherheit 36 raus.
Also immer Ziffernunterschied * 9. Tja, unser Dezimalsystem.

Edit: Habs gerade "schmierig" zusammengerechnet, ist wirklich nichts besonderes dran.

Edit: Oder schaut es euch "pseudogeometrisch" an:
Code: [AUSKLAPPEN]
   ;Zahlenfeld:
   z = 0
   For j = 0 To 9
   For i = 0 To 9
      z = z + 1
      Text 50 + i * 50, 50 + j * 50, z
   Next
   Next

Wenn ihr da das Spiegelbild sucht, müsst Ihr, jenachdem ob die erste Ziffer größer oder kleiner ist, nach unten links oder nach oben rechts im Zahlenbild wandern. Spiegelachse sind also die Schnapszahlen.
os: Windows 10 Home cpu: Intel Core i7 6700K 4.00Ghz gpu: NVIDIA GeForce GTX 1080
 

E. Urbach

ehemals "Basicprogger"

BeitragMi, Okt 31, 2007 12:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
Aber wer findet den größeren Zusammenhang raus.

Es gibt zwar einen Zusammenhang, aber die Differenz lässt sich in normalen Programmiersprachen nicht direkt mit einer Formel ausrechnen, man muss die Formel durch eine Schleife schicken. Für 2 Stellen (ggf. mit der Basis 10) sieht die Sache noch einfach aus:

Code: [AUSKLAPPEN]
x e N
b e N*
y e N
d e N
x * b + y = y * b + x - d


Gesucht: d

Code: [AUSKLAPPEN]
x * (b - 1) = y * (b - 1) - d
x * (b - 1) - y * (b - 1) = -d
y * (b - 1) - x * (b - 1) = d
(b - 1) * (y - x) = d


Was das heißt? Dass man die Zifferndifferenz mit der Basis des (Dezimal-) Systems minus 1 multiplizieren muss, um die Differenz beim Austauschen der Ziffern zu bekommen.

Code: [AUSKLAPPEN]
(10 - 1) * (2) = d
d = 18


Im Binärsystem:

Code: [AUSKLAPPEN]
d = (2 - 1) * (1)
d = 1


Ist auch logisch: Wenn die Zahlendifferenz im Binärsystem 1 ist (was ja auch die höchste mögliche Differenz darstellt), dann ist das Austauschen der Ziffern gleichwertig mit der Addition bzw. Subtraktion von 1. Beispiel:

Code: [AUSKLAPPEN]
01 -> 10 | +1
bzw.
10 -> 01 | -1


So, und jetzt nochmal mit beliebig langen Zahlen, nicht nur mit 2 Stellen Smile

Code: [AUSKLAPPEN]
531 - 135 = 396
642 - 246 = 396
753 - 357 = 396
...


Erste Vermutung bestätigt, nun zur Formel:

Code: [AUSKLAPPEN]
x e N
s e N
b e N*
d e N
n e N | n > 0
z e N | z = x[s-1] - x[s]
Summe(s = 0 | s <= n | s + 1 -> s){x[s] * b^s} = Summe(s = 0 | s <= n | s + 1 -> s){x[n-s] * b^s} - d
Kurzform:
S{x[s] * b^s} = S{x[n-s] * b^s} - d
d = S{x[n-s] * b^s} - S{x[s] * b^s}
d = S{[(z*(n-s)+1) - (z*s+1)] * b^(n-s)}


Als Funktion in C++:

Code: [AUSKLAPPEN]
int DiffSwitch(const unsigned int b, unsigned int n, const unsigned int z)
{
   --n;
   int result = 0;
   for(unsigned int i = 0; i <= n; ++i)
   {
      result += ((z*(n-i)+1) - (z*i+1)) * static_cast<int>(pow(static_cast<float>(b), static_cast<int>(n-i)));
   }
   return result;
}


Als Funktion in BB:

Code: [AUSKLAPPEN]
Function DiffSwitch(b, n, z)
   n = n - 1
   Local result = 0
   For i = 0 To n
      result = result + ((z*(n-i)+1) - (z*i+1)) * b^(n-i)
   Next
   Return result
End Function


Gesucht: d
Gegeben: b, n, z

Hier einige Beispielwerte:

Code: [AUSKLAPPEN]
f(10, 2, 2) = 18
f(10, 2, 3) = 27
f(10, 2, 4) = 36
f(10, 3, 3) = 594
f(10, 3, 2) = 396      //Basis 10, 3 Stellen, Zifferndifferenz 2


Auf Deutsch: Bei einer Zahl mit der Basis 10 mit 3 Stellen, deren Ziffern sich durch 2 Einheiten unterscheiden ist die Differenz beim Vertauschen 396.
The box said, "Requires Windows XP or better", so I installed Ubuntu | Linux is NOT Windows
Flua :: Profiler für BB und BMax :: Partikel-Engine für BMax :: Lyphia-Projekt Quellcode (BMax) :: Automatische Parallelisierung :: Meine Musik

Neue Antwort erstellen


Übersicht Sonstiges Smalltalk

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group