Zuckerbaum
Cadet 2nd Year
- Registriert
- Feb. 2007
- Beiträge
- 29
Sorry vorweg - meine Frage ist wahrscheinlich etwas dämlich für geübte Programmierer:
Ich habe zu verschiedenen Problemen verschiedene Lösungsansätze programmiert und möchte nun aus Spaß den Zeitaufwand mit schlichtem "raten" vergleichen (also Bruteforce sozusagen). Folgendes Problem:
Ich habe ein Array "int array[n]" und eine Prüfroutine "bool pruef(int size, int *array_geraten, int *array_vorgabe)" welche die Einträge des Arrays eben überprüft. Dabei stammen alle Einträge des Arrays aus einem Intervall [a,b] der natürlichen Zahlen, n selbst ist ebenfalls eine natürliche Zahl (größergleich 1).
Wie bekomme ich es nun möglichst elegant hin, alle n Stellen des Arrays mit Einträgen aus [a,b] durchzuprobieren? Mir fallen da so Sachen wie rekursive Funktionen ein - aber das ist bei mir schon so lange her...
Noch interessanter wäre es, wenn man das Ratearray mit zufälligen Werten füllt - was "Raten" ja eher simulieren würde. Aber das sture durchprobieren würde mir für den Anfang auch ausreichen.
Kann mir kurz jemand helfen?
Ich habe zu verschiedenen Problemen verschiedene Lösungsansätze programmiert und möchte nun aus Spaß den Zeitaufwand mit schlichtem "raten" vergleichen (also Bruteforce sozusagen). Folgendes Problem:
Ich habe ein Array "int array[n]" und eine Prüfroutine "bool pruef(int size, int *array_geraten, int *array_vorgabe)" welche die Einträge des Arrays eben überprüft. Dabei stammen alle Einträge des Arrays aus einem Intervall [a,b] der natürlichen Zahlen, n selbst ist ebenfalls eine natürliche Zahl (größergleich 1).
Wie bekomme ich es nun möglichst elegant hin, alle n Stellen des Arrays mit Einträgen aus [a,b] durchzuprobieren? Mir fallen da so Sachen wie rekursive Funktionen ein - aber das ist bei mir schon so lange her...
Noch interessanter wäre es, wenn man das Ratearray mit zufälligen Werten füllt - was "Raten" ja eher simulieren würde. Aber das sture durchprobieren würde mir für den Anfang auch ausreichen.
Kann mir kurz jemand helfen?