• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

[C++] konstanten zufälligen wert zuweisen

Status
Für weitere Antworten geschlossen.
E

easydll

Guest
hey, ich bin neu in c++, hab vor 3 tagen oder so mit angefangen, bin noch am rumexperimentiern......

Ich wollte einfach mal den stoff aus den erten paar Kapiteln, die ich bisher durchgearbeitet habe zusammenfügen, also
vergleichsoperatoren, if bedingungen..... des standart anfangszeug eben, dazu wollt ich ein proggi schreiben, wo man eine zahl eraten muss, die man eingibt und das programm den eingegebenen wert mit dem der konstante vergleicht.

damit es ned langweilig wird und es immer die selbe zahl ist, dachte ich, es ist nur sinnvoll, wenn jedesmal der konsztante ein neuer wert zugewiesen wird.

Ich konnte im google dazu nix finden, also dachte ich mir, ich frag mal hier nach.
Am besten wäre es, wenn man noch den zahlenraum begrenzen könnte, in der ein zufälliger wert gesucht wird.

Danke schonmal im voraus
 
Werbung:
na, wenn ich des probiere kommt immer folgende fehlermeldung:
"random" identifier was not found.......
was mach ich da falsch?
wenn ich mich einfach nur blöd anstelle, verzeiht mir, bin noch anfänger:lol:

EDIT
habs mal mit dem hier probiert:
Zufallszahlen ? - Informatik - ChemieOnline Forum

nur kommt jetzt bei mir beim initialisieren folgender fehler:
redifinition, previous definition was a function.
das war aber direkt beim initialisieren.......
 
Zuletzt bearbeitet von einem Moderator:
Werbung:
na, wenn ich desprobiere kommt immer folgende fehlermeldung:

"random" identifier was not found.......

was mach ich da falsch?

wenn ich mich einfach nur blöd antele, verzeiht mir, bin noch anfänger:lol:
Deine Rechtschreibung könntest du aber verbessern, es gibt hier einen sogenannten Edit-Button... :roll:

Code:
#include <stdlib.h> // für srand() und rand()
#include <time.h> // für time()

int main()
{
   srand((unsigned)time(NULL)); // Random-Generator initialisieren....
   int r = rand() %21;
}
 
okay, vielen Dank dafür.

Jetzt noch eine kleine Sachen, es begrenzt die Zahl nicht richtig, sindim moment so im 5-stelligen bereich, ich brauche aber nur zahlen, die bis 49 gehen....

und eig will ich ja nicht, dass die zahl ausgegeben wird, es soll nur der konstante zugewiesen werden, wird ein "zahlen erate programm"
die konstante soll dann mit der eingabe abgeglichen werden.

PS: Die rechtschreibung war ja echt fürchterlich:neutral:, normalerweise achte ich auch drauf, dass es halbwegs in Ordnung ist.Habe es mal editiert.:mrgreen:
 
Hab ich irgendwo eine Ausgabe gemacht?
Code:
#include <stdlib.h> // für srand() und rand()
#include <time.h> // für time()
#include <iostream>

int main()
{
   srand((unsigned)time(NULL)); // Random-Generator initialisieren....
   int r = rand()%49 +1;
   int eingabe;
   std::cout << "Gib eine Zahl zwischen 1 und 49 ein:" << std::endl;
   std::cin >> eingabe;
   std::cout << "Du warst " << std::abs(r-eingabe) << "Stellen von der Zahl entfernt."<< std::endl;
}
 
Werbung:
Also, danke, der code funktioniert super, werde ihn noch umstrukturieren, aber eine echt gute basis.

irgendwie wurde vorher die zahl ausgegeben, jetzt hab ichs nochmal probiert, jetzt gehts, ohne dass sie ausgegeben wird.

werde noch was mit if-bedingungen machen, mit verschiedenen Sätzen, wenn die zahl stimmt, oder eben nicht.

und dann, wenn sie nicht richtig war, kann man hilfe anfordern, zb beispiel, ob die gesuchte zahl größer oder keiner als die eingegebene ist,oder eben wie du es gemacht hast, mit abstand der eingegebenen zur gesuchten zahl.

Vielen Dank nochmal!!!!!
 
Übrigends sind das keine Konstanten ;) .. sonst könnteste ihnen nicht dynamisch/zufällig werte zuweisen.
Das sind (stinknormale) Variablen.

lg,
n1ob
 
Übrigends sind das keine Konstanten ;) .. sonst könnteste ihnen nicht dynamisch/zufällig werte zuweisen.
Das sind (stinknormale) Variablen.
So wie er es programmiert hat stimmt das, aber generell kannst du einer Konstante bei der Initialisierung einen zufälligen Wert zuweisen.

z.B.:
PHP:
#include <iostream>
#include <cstdlib>
#include <ctime>

using namespace std;

void test_const() {
        const int i = rand() % 5;

        // do sth. with i
}

int main (int argc, char** argv) {
        srand(time(NULL));

        test_const();
}
N43
 
Werbung:
Status
Für weitere Antworten geschlossen.
Zurück
Oben