infoarena

infoarena - concursuri, probleme, evaluator, articole => Informatica => Subiect creat de: gheorghe corina iuliana din Mai 04, 2014, 22:41:09



Titlul: problema structuri de date si algoritmi
Scris de: gheorghe corina iuliana din Mai 04, 2014, 22:41:09
Concepeți și implementați un algoritm care folosind o coadă cu extragere aleatoare generează
numerele câștigătoare la loto astfel: se generează numerele de la 1 la 99 și se poziționează pe poziții
aleatoare în coadă și se extrag aleator cele cinci numere.
Va rog frumos daca ma puteti ajuta,raman datoare!!!!


Titlul: Răspuns: problema structuri de date si algoritmi
Scris de: gheorghe corina iuliana din Mai 07, 2014, 19:45:31
Generezi aleator cele 99 de numere si le pui in coada, apoi generezi
aleator 5 numere intre 1-99 si extragi de pe cele 5 pozitii ale cozii,
numerele memorate acolo.(am cerut o explicatie pt aceasta problema si am primit asta)


Titlul: Răspuns: problema structuri de date si algoritmi
Scris de: Adrian Budau din Mai 07, 2014, 22:55:17
Am sa iti zic cum generezi un numar. Daca nu te descurci cu restul iti sugerez sa rezolvi tipuri mai usoare de probleme.

Exista o functie in stdlib.h (sau cstdlib) numita rand. Aceasta functie rand genereaza numere intre 0 si INT_MAX care pe infoarena e 2^31 - 1, pe borland c e 2^15 - 1 iar cand lucrezi pe 64 de biti e 2^63 - 1 (toate aceste numere sunt mult mai mare decat 99).

Acum daca vrei sa generezi un numar aleator intre X si Y (inclusiv) cea mai buna solutie este sa generezi un numar random cu rand() si sa iei restul impartirii acestui numar la (Y - X + 1) la care aduni X. De ce? Pentru ca restul e intre 0 si Y - X inclusiv, daca aduni X o sa obtii un numar intre X si Y inclusiv, exact ce iti doreai.

Cod:
#include <stdlib.h>
#include <time.h>
...
...
int main() {
    srand(time(NULL));
...
   obtine cumva X si Y
...
   int numar = rand() % (Y - X + 1) + X;
...
   fa ce vrei cu numar
...
}

Acel srand(time(NULL)) e oarecum necesar ca sa obtii numere diferete de fiecare data cand iti rulezi programul.


Titlul: Răspuns: problema structuri de date si algoritmi
Scris de: gheorghe corina iuliana din Mai 09, 2014, 09:02:01
multumesc frumos am reusit
era o problenma pentru facultate si trebiua sa o predau