private static double I(double[][] matrix_pxandy) { var px = Lab1.Px(matrix_pxandy); Lab1.H(px, out var Hx); var py = Lab1.Py(matrix_pxandy); Lab1.H(py, out var Hy); var hXandY = Lab1.HXandY(matrix_pxandy); var res = Hx + Hy - hXandY; Console.WriteLine("I(X;Y) = " + Hx + " + " + Hy + " - " + hXandY + " = " + res); return(res); }
private static double RelativeDifference(List <Symbol> coded, int wordLength) { PullLists(coded, out var pi, out var li); var l = AverageLength(pi, li) / wordLength; Lab1.H(pi, out var entr); var res = ((l - entr) / entr) * 100.0; Console.WriteLine("((" + Math.Round(l, 3) + "-" + Math.Round(entr, 3) + ")/" + entr + ")*100%=" + Math.Round(res, 3) + "%"); return(res); }