Seite 1 von 1

Rätsel mit Geschichte geht weiter

Verfasst: 11.09.2010, 16:39
von Terep
Nach dem gestrigen Abendessen bin ich ein anderer Mensch. Ich habe jetzt Ziele. Genauer gesagt: Ein Ziel.

Sie war fantastisch, geistreich und es war so, wie es sein sollte. Alles war gut. Sie will mich wiedersehen und gab mir Ihren Umschlag mit Ihrer Telefonnummer.

Das Seminar war zu Ende. Zu Hause griff ich ans Telefon, öffnete den Umschlag und entnahm die Telefonnummer.
Oh, da war keine Telefonnummer sondern ein Zettel auf dem stand, dass sie mich zu einem candle-light dinner einlädt.
Ich soll mit dem Rückruf nicht lange warten und zusagen.
Ach ja, Du weißt ja jetzt, dass ich kleine Spiele mag. Meine Telefonnummer ist 4-stellig. Ich weiß jetzt, dass Du sehr intelligent und einfühlsam bist. Bitte enttäusche mich nicht. Ich glaube an Deine Intuition, denn das Schicksal will es so. Denn wenn Du meine Zimmernummer noch hast, weißt Du meine Telefonnummer zu ergründen.

Nachwort:
Das erste Rätsel wurde nach Minuten gelöst. Ich glaube kaum, dass es wieder so schnell gehen wird. Denkt daran, ein Rätsel ist manchmal vage formuliert. Manchmal auch sehr vage.

Viel Spaß dabei.

Terep

Re: Rätsel mit Geschichte geht weiter

Verfasst: 11.09.2010, 17:56
von eXile
Da die Telefonnummer mit 4 Stellen insbesondere nur endlich lang ist, können wir einfach an alle möglichen Telefonnummern jede Menge Cold-Calls schicken, insbesondere parallel, da die meisten dieser Nummern wohl nicht vergeben werden. Lösungsverfahren: Brute Force.

Re: Rätsel mit Geschichte geht weiter

Verfasst: 11.09.2010, 20:58
von Terep
eXile hat geschrieben:Da die Telefonnummer mit 4 Stellen insbesondere nur endlich lang ist, können wir einfach an alle möglichen Telefonnummern jede Menge Cold-Calls schicken, insbesondere parallel, da die meisten dieser Nummern wohl nicht vergeben werden. Lösungsverfahren: Brute Force.
Nein, gehe einfach davon aus, dass Du nicht die Zeit hast, dieses zu tun.

Interessant ist es für mich insofern, dass ich den letzten Satz im Nachwort nicht mitgepostet habe. Beim Eintippen habe ich ihn verworfen. Diesen Satz werde ich jetzt doch nachtragen (plus der Definition):

Ich bezweifle sehr, dass hier die brute force Methode hilft, eher brainstorming.

Die Brute-Force-Methode (engl. für „Methode der rohen Gewalt“), auch Exhaustionsmethode (von lat. exhaurire = ausschöpfen), ist eine Lösungsmethode für Probleme, die auf dem Ausprobieren aller (oder zumindest vieler) möglichen Fälle beruht.

Terep

Re: Rätsel mit Geschichte geht weiter

Verfasst: 11.09.2010, 21:02
von Aramis
Die fuer mich einfachste Variante ware, dass die Telefonnummer gleich der Zimmernummer ist. Eine 4-stellige Telefonnummer kann ja auch ein paar Nullen vorne haben, nicht? Es ist ja per-Definition keine Zahl, sondern eine Folge von Ziffern.

Rätselergänzung

Verfasst: 12.09.2010, 05:28
von Terep
Die Nacht war fürchterlich. Wie betäubt lag ich im Bett. Unfair, bei der ersten Aufgabe gab es Infos ohne Ende. Und jetzt?
Nur ein Zettel auf dem das mit der 4stelligen Telefonnummer stand, keine Karten, keine Skizze. Das kann nicht sein. Ich weiß, sie wollte den Abend mit mir verbringen. Ich schlief traumlos ein. Wohl doch nicht ganz traumlos, denn auf einmal war ich hellwach. Ein Blick auf die Uhr bestätigte das. Spät eingeschlafen, dafür früh wachgeworden. Aber es war ok. Denn ich war mir jetzt sicher. Die Rückseite vom Zettel! Also aufstehen und nachsehen. Tatsächlich auf der Rückseite war etwas Quellcode. Sofort erkannte ich, dass er nicht vollständig war. Nun, das war eine Herausforderung wie ich sie mag. Was für ein tolles Mädchen.

Die Rückseite:

Code: Alles auswählen

 
#include<iostream>
using namespace std;

int main ()
{
    int z;
    cout << "\n\nMit welcher Zahl versuchen? ";
    cin >> z;
    int **const w = new int*[z];
    for (int y = 0; y < z; y++)
    {
	w[y] = new int [z];
    }
    int x = 1, u=(z+1)/2; // Startposition
    for (int v = 1; v <=z*z; v++)
    {
	w[x-1][u-1] = v;
	if ( v % z == 0) x++;
	else
	{
	    x = (x==1) ? z  : x-1;
	    u = (u==z) ? 1 : u+1;
	}
    }

    for (x = 0; x < z; x++)
    {
	for (u=0; u< z; u++)
	    // cout << ? << " ";   // ersetze das ?
	cout << endl;
    }
    //  cout << "\n\n Ergebnis = " << ((?)/2) <<"\n\n"; // ersetze das ?
// loeschen der Matrix
    for (x=0; x<z; x++)
    {
	delete []w[x];
    }
    delete []w;
    
    return 0;
}
Terep