J'ai besoin d'une méthode qui renvoie l'écart-type du dernier temps d'accès dans un dossier. Voici le code:La méthode Sqrt renvoie 0
function standardDeviation {
Param(
[Parameter(Mandatory=$true)]
[String]$tPath
)
$moy = moyAge $tPath
$variance = 0
$nbFiles = 1
dir | ForEach-Object {
if (!($_.PsIsContainer)) {
$nbDays = $_.LastAccessTime
$nbDays = $nbDays.Days
$sq = $nbDays - $moy
$sq = $sq*$sq
$variance += $sq
$nbFiles++
}
}
$variance = $variance/$nbFiles
$variance = [math]::sqrt($variance)
}
Je ne sais pas pourquoi, mais il retourne toujours 0. Est-ce que quelqu'un sait pourquoi? (moyAge
fonctionne et renvoie un int (nombre de jours))
La fonction semble étrange. 'moyAge' n'est pas défini et' dir' n'est pas basé sur '$ tPath'. – vonPryz
Le paramètre était ici pour une raison, mais plus maintenant. moyAge est une fonction qui retourne un int, et cela fonctionne. – Kikopu
'[datetime]' n'a pas de propriété 'Days',' $ nbDays' est '$ null' –