private bool update() { resultaatWaarden.Add(shaveOffWholeNumbers(ref tussenResultaat)); if (checkWaarden.Contains(tussenResultaat.Value)) { return(true); } checkWaarden.Add(tussenResultaat.Value); tussenResultaat.TakeReciprocal(); moveRootToTeller(ref tussenResultaat); return(false); }
public void Generate(int wortel) { checkWaarden.Clear(); resultaatWaarden.Clear(); this.wortel = wortel; tussenResultaat = initBreukOpWortelVan(wortel); eersteResultaatWaarde = shaveOffWholeNumbers(ref tussenResultaat); checkWaarden.Add(tussenResultaat.Value); tussenResultaat.TakeReciprocal(); moveRootToTeller(ref tussenResultaat); bool stop = false; while (!stop) { stop = update(); } Period = resultaatWaarden.Count; Coefficients = new int[resultaatWaarden.Count + 1]; Coefficients[0] = eersteResultaatWaarde; for (int i = 1; i < Coefficients.Length; i++) { Coefficients[i] = resultaatWaarden[i - 1]; } ShortNotation = "[" + eersteResultaatWaarde + "("; for (int i = 0; i < resultaatWaarden.Count - 1; i++) { ShortNotation += resultaatWaarden[i] + ", "; } ShortNotation += resultaatWaarden[resultaatWaarden.Count - 1] + ")]"; LongNotation = "sqrt(" + this.wortel + ") = " + this.ShortNotation + " => Period = " + this.Period; }