static void Main() { // Zufallszahlengenerator erstelltn RandomNumberGenerator numberGenerator = new RandomNumberGenerator(250); // Beobachter erstellen BaseObserver baseObserver = new BaseObserver(numberGenerator, 10); StatisticsObserver statisticsObserver = new StatisticsObserver(numberGenerator, 20); RangeObserver rangeObserver = new RangeObserver(numberGenerator, 5, 200, 300); QuickTippObserver quickTippObserver = new QuickTippObserver(numberGenerator); // Nummerngenerierung starten numberGenerator.StartNumberGeneration(); // Resultat ausgeben Console.WriteLine("\n--------------------RESULT-----------------------"); Console.ForegroundColor = ConsoleColor.DarkGreen; Console.WriteLine(statisticsObserver.ToString()); Console.WriteLine(rangeObserver.ToString()); Console.WriteLine(quickTippObserver.ToString()); Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("-------------------------------------------------\n"); Console.Write("Bitte drücken Sie Enter ..."); Console.ReadLine(); }
/// <summary> /// Print result line /// </summary> /// <param name="stat"></param> /// <param name="range"></param> /// <param name="quick"></param> private static void PrintResult(StatisticsObserver stat, RangeObserver range, QuickTippObserver quick) { Console.WriteLine("---------------------------------------- Result -------------------------------------------------"); Console.WriteLine(); Console.WriteLine($">> StatisticsObserver: Received {stat.CountOfNumbersReceived:D5} numbers ===> Min='{stat.Min}', Max='{stat.Max}', Sum='{stat.Sum}', Avg='{stat.Avg}'."); Console.WriteLine($">> RangeObserver: Received {range.CountOfNumbersReceived:D5} numbers ===> There where '{range.NumbersInRange}' numbers between '{range.LowerRange}' and '{range.UpperRange}'."); Console.WriteLine($">> QuickTippObserver: Received {quick.CountOfNumbersReceived:D5} numbers ===> Quick-Tipp is {quick.QuickTippNumbers[0]}, {quick.QuickTippNumbers[1]}, {quick.QuickTippNumbers[2]}, {quick.QuickTippNumbers[3]}, {quick.QuickTippNumbers[4]}, {quick.QuickTippNumbers[5]}."); Console.WriteLine(); Console.WriteLine("---------------------------------------------------------------------------------------------------"); }
public void RangeObserver_ConstructorNegativeNumberOfHitsToWaitFor_ShouldThrowArgumentException() { //Arrange RandomNumberGenerator numberGenerator = new RandomNumberGenerator(0, SEED); //Act RangeObserver statisticsObserver = new RangeObserver(numberGenerator, -2, 15, 10); //Assert Assert.Fail("ArgumentException was expected!"); }
public void RangeObserver_ConstructorWithBiggerLowerRangeThanHigherRange_ShouldThrowArgumentException() { //Arrange RandomNumberGenerator numberGenerator = new RandomNumberGenerator(0, SEED); //Act RangeObserver statisticsObserver = new RangeObserver(numberGenerator, 5, 15, 10); //Assert Assert.Fail("ArgumentException was expected!"); }
public void RangeObserver_EvaluateCountOfNumbersReceivedToGet50HitsWithin200And300_ShouldBe69() { //Arrange RandomNumberGenerator numberGenerator = new RandomNumberGenerator(0, SEED); RangeObserver rangeObserver = new RangeObserver(numberGenerator, 5, 200, 300); numberGenerator.StartNumberGeneration(); //Act int actualCountOfNumbersReceived = rangeObserver.CountOfNumbersReceived; //Assert Assert.AreEqual(69, actualCountOfNumbersReceived); }
static void Main() { // Zufallszahlengenerator erstelltn RandomNumberGenerator numberGenerator = new RandomNumberGenerator(250); // Beobachter erstellen BaseObserver baseObserver = new BaseObserver(numberGenerator, 10); StatisticsObserver statisticsObserver = new StatisticsObserver(numberGenerator, 20); RangeObserver rangeObserver = new RangeObserver(numberGenerator, 5, 200, 300); QuickTippObserver quickTippObserver = new QuickTippObserver(numberGenerator); // Nummerngenerierung starten // Resultat ausgeben throw new NotImplementedException(); }
static void Main() { Console.WriteLine(); // Zufallszahlengenerator erstellen RandomNumberGenerator numberGenerator = new RandomNumberGenerator(250); StatisticsObserver statisticsObserver = new StatisticsObserver(numberGenerator, 20); RangeObserver rangeObserver = new RangeObserver(numberGenerator, 5, 200, 300); QuickTippObserver quickTippObserver = new QuickTippObserver(numberGenerator); // Nummerngenerierung starten // Resultat ausgeben numberGenerator.StartNumberGeneration(); Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine($"{statisticsObserver.ToString()}"); Console.ResetColor(); }
static void Main() { // Zufallszahlengenerator erstelltn RandomNumberGenerator numberGenerator = new RandomNumberGenerator(250); // Beobachter erstellen BaseObserver baseObserver = new BaseObserver(numberGenerator, 10); StatisticsObserver statisticsObserver = new StatisticsObserver(numberGenerator, 20); RangeObserver rangeObserver = new RangeObserver(numberGenerator, 5, 200, 300); QuickTippObserver quickTippObserver = new QuickTippObserver(numberGenerator); // Nummerngenerierung starten // Resultat ausgeben numberGenerator.StartNumberGeneration(); Console.WriteLine(statisticsObserver.ToString()); }
static void Main() { // Zufallszahlengenerator erstelltn RandomNumberGenerator numberGenerator = new RandomNumberGenerator(250); // Beobachter erstellen BaseObserver baseObserver = new BaseObserver(numberGenerator, 10); StatisticsObserver statisticsObserver = new StatisticsObserver(numberGenerator, 20); RangeObserver rangeObserver = new RangeObserver(numberGenerator, 5, 200, 300); QuickTippObserver quickTippObserver = new QuickTippObserver(numberGenerator); Console.WriteLine("----------Result------------"); Console.WriteLine($"{statisticsObserver.GetType().Name}: Received {statisticsObserver.CountOfNumbersReceived} numbers => Min='{statisticsObserver.Min}', Max='{statisticsObserver.Max}', Sum='{statisticsObserver.Sum}', Avg='{statisticsObserver.Avg}'."); Console.WriteLine($"{rangeObserver.GetType().Name}: Received {rangeObserver.CountOfNumbersReceived} numbers => There were '{rangeObserver.NumbersInRange}' numbers between '{rangeObserver.LowerRange}' and '{rangeObserver.UpperRange}'."); Console.WriteLine($"{quickTippObserver.GetType().Name}: Received {quickTippObserver.CountOfNumbersReceived} numbers => Quick-Tipp is {quickTippObserver.ToString()}."); Console.WriteLine("Drücken Sie eine beliebige Taste . . ."); Console.ReadKey();; }
protected override IDisposable SubscribeCore(IObserver <int> observer, IDisposable cancel) { observer = new RangeObserver(observer, cancel); return(scheduler.Schedule((Action self) => { if (i < count) { int v = start + i; observer.OnNext(v); i++; self(); } else { observer.OnCompleted(); } })); }
static void Main() { // Zufallszahlengenerator erstelltn RandomNumberGenerator numberGenerator = new RandomNumberGenerator(250); // Beobachter erstellen BaseObserver baseObserver = new BaseObserver(numberGenerator, 10); StatisticsObserver statisticsObserver = new StatisticsObserver(numberGenerator, 20); RangeObserver rangeObserver = new RangeObserver(numberGenerator, 5, 200, 300); QuickTippObserver quickTippObserver = new QuickTippObserver(numberGenerator); // Nummerngenerierung starten numberGenerator.StartNumberGeneration(); // Resultat ausgeben Console.WriteLine("------------------------------------------------------ RESULT --------------------------------------------------------\n"); Console.WriteLine($"{statisticsObserver.GetType().Name}: Received {statisticsObserver.CountOfNumbersReceived} numbers => Min='{statisticsObserver.Min}', Max='{statisticsObserver.Max}', Sum='{statisticsObserver.Sum}', Avg='{statisticsObserver.Avg}'."); Console.WriteLine($"{rangeObserver.GetType().Name}: Received {rangeObserver.CountOfNumbersReceived} numbers => There were '{rangeObserver.NumbersInRange}' numbers between '{rangeObserver.LowerRange}' and '{rangeObserver.UpperRange}'."); Console.WriteLine($"{quickTippObserver.GetType().Name}: Received {quickTippObserver.CountOfNumbersReceived} numbers => Quick-Tipp is {quickTippObserver.ConvertTippToString()}."); Console.WriteLine("------------------------------------------------------------------------------------------------------------------------\n"); Console.WriteLine("Press any key..."); Console.ReadKey(); }
static void Main() { // Zufallszahlengenerator erstelltn RandomNumberGenerator numberGenerator = new RandomNumberGenerator(250); // Beobachter erstellen BaseObserver baseObserver = new BaseObserver(numberGenerator, 10); StatisticsObserver statisticsObserver = new StatisticsObserver(numberGenerator, 20); RangeObserver rangeObserver = new RangeObserver(numberGenerator, 5, 200, 300); QuickTippObserver quickTippObserver = new QuickTippObserver(numberGenerator); // Nummerngenerierung starten numberGenerator.StartNumberGeneration(); // Resultat ausgeben Console.WriteLine("\n\n------------------------------------------- RESULT ---------------------------------------------\n"); Console.WriteLine(statisticsObserver.PrintResult()); Console.WriteLine(rangeObserver.PrintResult()); Console.WriteLine(quickTippObserver.PrintResult()); Console.WriteLine("\n--------------------------------------------------------------------------------------------------"); Console.WriteLine("Drücken Sie eine beliebige Taste..."); Console.ReadKey(); //Console.WriteLine($" >> {statisticsObserver.GetType().Name+":",-20} Received {statisticsObserver.CountOfNumbersReceived:D5} numbers ===> Min='{statisticsObserver.Min}', Max='{statisticsObserver.Max}', Sum='{statisticsObserver.Sum}', Avg='{statisticsObserver.Avg}'."); //Console.WriteLine($" >> {rangeObserver.GetType().Name+":",-20} Received {rangeObserver.CountOfNumbersReceived:D5} numbers ===> There were '{rangeObserver.NumbersInRange}' numbers between '{rangeObserver.LowerRange}' and '{rangeObserver.UpperRange}'"); //Console.WriteLine($" >> {quickTippObserver.GetType().Name+":",-20} Received {quickTippObserver.CountOfNumbersReceived:D5} numbers ===> Quick-Tip is {quickTippObserver.QuickTippNumbers[0]}, {quickTippObserver.QuickTippNumbers[1]}, {quickTippObserver.QuickTippNumbers[2]}, {quickTippObserver.QuickTippNumbers[3]}, {quickTippObserver.QuickTippNumbers[4]}, {quickTippObserver.QuickTippNumbers[5]}."); //Console.ReadKey(); // Resultat ausgeben }
static void Main() { // Zufallszahlengenerator erstelltn RandomNumberGenerator numberGenerator = new RandomNumberGenerator(250); // Beobachter erstellen BaseObserver baseObserver = new BaseObserver(numberGenerator, 10); StatisticsObserver statisticsObserver = new StatisticsObserver(numberGenerator, 20); RangeObserver rangeObserver = new RangeObserver(numberGenerator, 5, 200, 300); QuickTippObserver quickTippObserver = new QuickTippObserver(numberGenerator); numberGenerator.StartNumberGeneration(); // Nummerngenerierung starten // Resultat ausgeben Console.WriteLine("----------Result------------"); Console.WriteLine(statisticsObserver.GetInfo()); Console.WriteLine(rangeObserver.GetInfo()); Console.WriteLine(quickTippObserver.GetInfo()); Console.WriteLine("----------------------------"); Console.WriteLine("Drücken Sie eine beliebige Taste . . ."); Console.ReadKey(); }
static void Main() { // Zufallszahlengenerator erstelltn RandomNumberGenerator numberGenerator = new RandomNumberGenerator(250); // Beobachter erstellen BaseObserver baseObserver = new BaseObserver(numberGenerator, 10); StatisticsObserver statisticsObserver = new StatisticsObserver(numberGenerator, 20); RangeObserver rangeObserver = new RangeObserver(numberGenerator, 5, 200, 300); QuickTippObserver quickTippObserver = new QuickTippObserver(numberGenerator); // Nummerngenerierung starten numberGenerator.StartNumberGeneration(); int[] tipps = quickTippObserver.QuickTippNumbers.OrderBy(_ => _).ToArray(); // Resultat ausgeben Console.WriteLine("--------------------------------------- Result -----------------------------------------------"); Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine($"{nameof(StatisticsObserver)}: Recevied {statisticsObserver.CountOfNumbersReceived:D5} numbers ===> {nameof(statisticsObserver.Min)}: '{statisticsObserver.Min}', {nameof(statisticsObserver.Max)}: '{statisticsObserver.Max}', {nameof(statisticsObserver.Sum)}: '{statisticsObserver.Sum}', {nameof(statisticsObserver.Avg)}: '{statisticsObserver.Avg}'"); Console.WriteLine($"{nameof(RangeObserver)}: Recevied {rangeObserver.CountOfNumbersReceived:D5} numbers ===> There were '{rangeObserver.NumbersInRange}' numbers between '{rangeObserver.LowerRange}' and '{rangeObserver.UpperRange}'."); Console.WriteLine($"{nameof(QuickTippObserver)}: Recevied {quickTippObserver.CountOfNumbersReceived:D5} numbers ===> Quick-Tipp is {tipps[0]} {tipps[1]} {tipps[2]} {tipps[3]} {tipps[4]} {tipps[5]}."); Console.ResetColor(); }
static void Main() { // Zufallszahlengenerator erstelltn RandomNumberGenerator numberGenerator = new RandomNumberGenerator(250); // Beobachter erstellen BaseObserver baseObserver = new BaseObserver(numberGenerator, 10); StatisticsObserver statisticsObserver = new StatisticsObserver(numberGenerator, 20); RangeObserver rangeObserver = new RangeObserver(numberGenerator, 5, 200, 300); QuickTippObserver quickTippObserver = new QuickTippObserver(numberGenerator); // Nummerngenerierung starten numberGenerator.StartNumberGeneration(); // Resultat ausgeben Console.WriteLine("\n-------------------------------Result-------------------------------"); Console.WriteLine($" >> {statisticsObserver.GetType().Name}: Recieved {statisticsObserver.CountOfNumbersReceived} numbers " + $"==> Min = '{statisticsObserver.Min}', Max = '{statisticsObserver.Max}', Sum = '{statisticsObserver.Sum}' Avg = '{statisticsObserver.Avg}'."); Console.WriteLine(rangeObserver.ToString()); Console.WriteLine(quickTippObserver.ToString()); Console.WriteLine("--------------------------------------------------------------------"); Console.ReadKey(); }