-
Notifications
You must be signed in to change notification settings - Fork 0
/
secteur.cs
71 lines (62 loc) · 1.98 KB
/
secteur.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
using System;
namespace refactoring
{
public class Secteur{
Random rand = new Random();
/*
* generer un PRNG entre Min & Max
* generer un secteur
* generer un crash
* generer un arret au stand
*/
/**
* nombre generer de maniere pseudo aleatoire
* ATTENTION : il faut utiliser une seed sur rand() prealablement pour eviter que
* les voitures sortent toujours les memes nombres au meme moment
*
* @param int min
* @param int max
* NB : min doit etre plus grand que max
*
* @return int le nombre aleatoire
*/
public int my_rand(int min, int max){
int c = rand.Next(max-min+1)+min;//creation du nombre aleatoire
return c;
}
public int secteur(int taille1, int taille2, int chance){
int temp = 0;
if(!crash(chance)){//si il n'y a pas de crash
temp = my_rand(taille1, taille2);//Generation du nombre aleatoire
return temp;
}
return temp;//si il y a un crash
}
/** permet de savoir si la voiture c'est crashee
*
* @param int chance la probabilite d'avoir un crash
* return true si il est plus petit que 49 sinon false
*
* @return bool retourne true si il y a crash, sinon false
*/
public bool crash(int chance){//methode pour determiner si il y a un crash
if(my_rand(1,1000000) <= chance){
return true;
}
return false;
}
/** permet de savoir si la voiture doit aller au stand
*
* @param int chance la probabilite d'avoir un crash
*
* @return bool retourne true si il y a crash, sinon false
*
*/
public bool stand(){//passage au stand
if(my_rand(1,20) <= 2){
return true;
}
return false;
}
}
}