Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Programmeren

[c++]echte Random waardes. En Random kleuren.

None
6 antwoorden
  • Is er een mogelijkheid om in c++ echte random waardes te maken? met Randomize en Random krijg je elke keer als je het programma opnieuw opstart weer de zelfde waardes.

    En hoe kan je in cbuilder random kleuren voor een shape krijgen? ze hebben volgens mij geen nummerieke waardes, klopt dat???
  • Je moet de random number generator 'seeden' aan het begin van je programma. Gebruik hiervoor bv de tijd.
    Door te 'seeden' zal er een 'nieuwe' rij getallen worden 'gemaakt'
    Kijk even in de help van C++ builder, ik heb deze niet bij de hand.

    Overigens: het is niet mogelijk om 'echte' random nummers te maken met alleen software.
  • Als je voor een GUI programmeert, kun je wellicht een seed uitvoeren gebaseerd op muisbewegingen van de gebruiker.

    Andreas

    "Don't try to confuse me with the facts!"
  • Hoe krijg je de waardes van de muis? want met de tijd werkt nog niet lekker…
  • [quote:b18c6e9fdb="mispunt"]Hoe krijg je de waardes van de muis? want met de tijd werkt nog niet lekker…[/quote:b18c6e9fdb]Wat werkt er niet lekker? Post even de code.
  • Onder Windows (voor andere GUI's zou ik het niet weten) met BOOL GetCursorPos(LPPOINT p)
    simpel voorbeeldje:

    [code:1:0e3f6b9039]
    POINT p;
    time_t t;
    srand((unsigned) ( GetCursorPos(&p) ? p.x * p.y : time(&t) ) );
    [/code:1:0e3f6b9039]

    Dit voorbeeldje gebruikt het product van de x- en de y-coördinaat van de huidige positie van de muis als seed. Als de huidige positie van de muis niet kan worden uitgelezen, wordt er gebruik gemaakt van de huidige tijd van de systeemklok als seed.
    Je zou trouwens ook de systeemtijd en de huidige positie van de muis kunnen combineren als seed.

    De kleuren van een shape zijn in cbuilder gewoon van het type TColor en dat zijn weer gewone 4 byte lange getallen.

    Andreas

    "Wees realistisch, eis het onmogelijke!" - Che Guevara

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.