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

pseudolosowanie

Ostatnio zmodyfikowano 2013-01-05 10:19
Autor Wiadomość
kejkun
Temat założony przez niniejszego użytkownika
pseudolosowanie
» 2013-01-03 23:30:53
C/C++
#include <iostream>
#include <iomanip>
#include <cstdlib>
#include <time.h>

using namespace std;

int main()
{
    srand( time( NULL ) );
   
    for( int i = 1; i <= 20; i++ ) cout << setw( 5 ) << rand() << endl;
   
    return 0;
}

mam pytania a propos tego kodu.
1. po co biblioteka :  #include <iomanip>
2. po co , i co robi ? setw(5)
3. srand( time( NULL ) )
czemu dokładnie to "NULL " ??
dziękuje z góry za pomoc :)
P-72880
DejaVu
» 2013-01-04 00:12:54
4. i skąd ten kod? :P
5. wywalaj pokolei 'zbędne' linijki i sprawdzaj co się dzieje :)
6. i tak samodzielnie rozwiązałeś problem :P

/edit:
Wydaje mi się, że powinieneś przeczytać kurs, aby poznać odpowiedzi na Twoje pytania, skoro kopiujesz żywcem kod i pytasz się co do czego służy.

http://edu.i-lo.tarnow.pl/inf/utils/010_2010/0213.php
P-72882
kejkun
Temat założony przez niniejszego użytkownika
» 2013-01-04 01:47:29
no właśnie czytalem ten kurs,
ale tam nie było odpowiedzi na nurtujące mnie pytania + mogłem coś nie zrozumieć, stąd dopytuję.

chyba do tego służy forum , co nie?
P-72884
DejaVu
» 2013-01-04 02:45:49
P-72885
kejkun
Temat założony przez niniejszego użytkownika
» 2013-01-04 09:27:11
to już też widziałem :)

ale zastanawia mnie dlaczego musi być akurat :


srand( time( NULL ) );

a nie np.
srand( time( now ) );
albo:
srand( time( 1 ) );


czyli zastanawia mnie co dokładniej oznacza to " null "

2.
w Twoim przykładzie , bo zakładam że Twój :
nie ma biblioteki tej, o którą pytam 
oraz nie ma "  setw(5) "
.

pytanie brzmi po co ta biblioteka, w sensie, z której jej fukcji korzystamy.
oraz czemu , po co ?

setw(5)
skoro w Twoim przykładzie tego nie ma ??
co to robi ?
P-72888
Mrovqa
» 2013-01-04 10:24:13
srand( time( NULL ) );

a nie np.
srand( time( now ) );
albo:
srand( time( 1 ) );


czyli zastanawia mnie co dokładniej oznacza to " null "
Funkcja przyjmuje adres struktury, który ma wypełnić aktualnym czasem - i tak mało kto z tego nie korzysta, a nawet jakby potrzebował pewne informacje to funkcja zwraca te informacje (typ zwracany). NULL to nic innego jak 0.
#define NULL 0
P-72889
unimator
» 2013-01-04 13:08:40

ale zastanawia mnie dlaczego musi być akurat :


srand( time( NULL ) );

a nie np.
srand( time( now ) );
albo:
srand( time( 1 ) );

Po pierwsze to nic nie musi. Wstawienie w funkcje time jakiejś innej wartości też sprawi, że losowana będzie liczba pseudolosowa (w funkcji rand()).


2.
w Twoim przykładzie , bo zakładam że Twój :
nie ma biblioteki tej, o którą pytam
oraz nie ma "  setw(5) "
.

pytanie brzmi po co ta biblioteka, w sensie, z której jej fukcji korzystamy.
oraz czemu , po co ?

setw(5)
skoro w Twoim przykładzie tego nie ma ??
co to robi ?

http://lmgtfy.com/?q=setw - komentarz chyba zbędny.
P-72890
kejkun
Temat założony przez niniejszego użytkownika
» 2013-01-04 18:08:18
"Po pierwsze to nic nie musi. Wstawienie w funkcje time jakiejś innej wartości też sprawi, że losowana będzie liczba pseudolosowa (w funkcji rand())."

w takim razie co za róznica czy jest

time ( 1 )
a np.

time ( null )
a np.
time (500)
?
P-72910
« 1 » 2
  Strona 1 z 2 Następna strona