Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Losowanie bez powtórzeń: Rozdział 21. Program działa jak trzeba, ale mam wątpliwości czy jest dobrze napisany?

Ostatnio zmodyfikowano 2014-10-28 15:54
Autor Wiadomość
joinzbozin
Temat założony przez niniejszego użytkownika
Losowanie bez powtórzeń: Rozdział 21. Program działa jak trzeba, ale mam wątpliwości czy jest dobrze napisany?
» 2014-10-27 22:43:27
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;


void wczytajLiczby(int ile, int tablica[])
{

    for( int indeks = 0; indeks < ile; indeks++)
    {
    cin>>tablica[indeks];
    }
}
void losowanie(int ile, int tablica[])
{
    int liczby[7];
    int licznik=0;
    srand(time(NULL));
    do
    {
        int losowana=(rand()%100);
        liczby[licznik]=losowana;
        if (tablica[licznik]==losowana||losowana!=liczby[licznik])
            {
            cout<<losowana<<endl;
            licznik++;}
    }while(licznik<ile);
}

int main()
{
    int tablica[10];
    wczytajLiczby(10,tablica);
    losowanie(8,tablica);
    return 0;
}
P-119554
Rashmistrz
» 2014-10-28 15:54:38
mam wątpliwości czy jest dobrze napisany?
Z pewnością tak, bo byś nie wstawiał
go tu nie mając wątpliwości. O_o

Program źle działa...
Zawsze losuje pierwsze osiem podanych liczb.

Przenieś
srand( time( NULL ) );
 
na początek maina z tamtej funkcji.


EDIT:
Popraw funkcję losowanie,
bo to w niej jest problem.

P-119576
« 1 »
  Strona 1 z 1