private static void Main(string[] args) { using (StreamReader reader = File.OpenText(args[0])) while (!reader.EndOfStream) { string line = reader.ReadLine(); if (null == line) { continue; } // do something with line ISelfDescribingFinder finder = new SimpleSelfDescribingNumberfinder(); Console.WriteLine(finder.Test(ulong.Parse(line)) ? 1 : 0); } }
public void PerformanceTest(long n) { ISelfDescribingFinder finderLinear = new LinearSelfDescribingNumberFinder(); ISelfDescribingFinder finderSimple = new SimpleSelfDescribingNumberfinder(); var swSimple = new Stopwatch(); var swLinear = new Stopwatch(); finderLinear.Test(n); finderSimple.Test(n); swSimple.Start(); finderSimple.Test(n); swSimple.Stop(); swLinear.Start(); finderLinear.Test(n); swLinear.Stop(); Assert.IsTrue(swLinear.Elapsed < swSimple.Elapsed, "The simple implementation is faster. wtf?"); }
public void ValidTestForSelfDescribingNumber(long n) { ISelfDescribingFinder finder = new SimpleSelfDescribingNumberfinder(); Assert.IsTrue(finder.Test(n), "Not a self describing number."); }
public void InvalidTestForSelfDescribingNumber(long n) { ISelfDescribingFinder finder = new SimpleSelfDescribingNumberfinder(); Assert.IsFalse(finder.Test(n), "A self describing number was passed to me, a negative test."); }