Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Guillaume CLOCHARD
Ragnulf
Commits
e70b3e30
Commit
e70b3e30
authored
Jan 13, 2016
by
Tom MARRUCCI
Browse files
Dernier changement
parent
ff720219
Changes
3
Hide whitespace changes
Inline
Side-by-side
algo.py
View file @
e70b3e30
...
...
@@ -33,7 +33,7 @@ from sys import argv
from
Cube
import
Cube
from
lire_entree
import
lecture_cube
from
utils
import
croix_valide
,
ftl_valide
,
cfop_valide
from
stats
import
moyenne
,
ecart_type
#
from stats import moyenne,
ecart_type
from
utils
import
croix_valide
,
ftl_valide
,
cfop_valide
,
replace_sublist
SHORTCUTS
=
"shortcuts.json"
...
...
courbe.py
View file @
e70b3e30
import
matplotlib.pyplot
as
plt
from
Cube
import
*
from
algo
import
algo_cfop
import
json
from
lire_entree
import
lecture_cube
from
stats
import
moyenne
from
algo
import
*
JEU_TEST
=
'tests/samples/sample-600.json'
...
...
stats.py
View file @
e70b3e30
import
json
from
math
import
sqrt
,
fabs
from
Cube
import
*
from
lire_entree
import
lecture_cube
from
algo
import
algo_cfop
import
statistics
def
moyenne
(
liste
):
moyenne
=
0
for
i
in
liste
:
moyenne
+=
i
return
moyenne
/
len
(
liste
)
def
moyenne
(
liste
):
moyenne
=
0
for
i
in
liste
:
moyenne
+=
i
return
moyenne
/
len
(
liste
)
def
variance
(
liste
):
variance
=
0
moy
=
moyenne
(
liste
)
for
i
in
liste
:
variance
+=
(
i
-
moy
)
*
(
i
-
moy
)
return
variance
/
len
(
liste
)
variance
=
0
moy
=
moyenne
(
liste
)
for
i
in
liste
:
variance
+=
(
i
-
moy
)
*
(
i
-
moy
)
return
variance
/
len
(
liste
)
def
ecart_type
(
liste
):
return
sqrt
(
variance
(
liste
))
return
sqrt
(
variance
(
liste
))
def
ecart_moyen
(
liste
):
ecart_moyen
=
0
moy
=
moyenne
(
liste
)
for
i
in
liste
:
ecart_moyen
+=
fabs
(
i
-
moy
)
return
ecart_moyen
/
len
(
liste
)
ecart_moyen
=
0
moy
=
moyenne
(
liste
)
for
i
in
liste
:
ecart_moyen
+=
fabs
(
i
-
moy
)
return
ecart_moyen
/
len
(
liste
)
def
mediane
(
liste
):
liste
.
sort
()
if
len
(
liste
)
%
2
==
0
:
return
moyenne
([
liste
[
int
((
len
(
liste
)
/
2
)
-
1
)],
liste
[
int
(
len
(
liste
)
/
2
)]])
else
:
return
liste
[
int
(
len
(
liste
)
/
2
).
__round__
(
2
)]
def
getOccurencesTests
(
jeu_test
):
with
open
(
jeu_test
)
as
data_file
:
#on parse le jeu de test JSON
data
=
json
.
load
(
data_file
)
tests
=
data
[
"cubes"
]
listeNbMouvements
=
[]
# dictionnaire pour stocké en clé : nbMouvement et en valeur : Occurence sur les n tests
for
test
in
tests
:
# on parcours tout les cubes
b
,
c
=
lecture_cube
(
test
)
c
,
mouv
=
algo_cfop
(
c
)
# on fais l'algo
if
len
(
mouv
)
not
in
listeNbMouvements
:
listeNbMouvements
.
append
(
len
(
mouv
))
return
listeNbMouvements
listeNbMouvements
=
getOccurencesTests
(
'tests/samples/sample-600.json'
)
print
(
"Nombre de mouvement minimum : "
+
str
(
min
(
listeNbMouvements
)))
print
(
"Nombre de mouvement maximum : "
+
str
(
max
(
listeNbMouvements
)))
print
(
"Moyenne : "
+
str
(
moyenne
(
listeNbMouvements
)))
print
(
"Médiane : "
+
str
(
mediane
(
listeNbMouvements
)))
print
(
"Écart-type : "
+
str
(
ecart_type
(
listeNbMouvements
)))
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment