46 lines
1.4 KiB
C#
46 lines
1.4 KiB
C#
using System.Text;
|
|
using Numbers.NumberFactory;
|
|
using Numbers.NumberString;
|
|
|
|
Console.OutputEncoding = Encoding.UTF8;
|
|
|
|
NumberStringRun();
|
|
Console.WriteLine(Environment.NewLine);
|
|
NumberFactoryRun();
|
|
|
|
return;
|
|
|
|
static void NumberStringRun()
|
|
{
|
|
Console.WriteLine("*** NumberString ***");
|
|
Console.WriteLine("Extract digits from strings");
|
|
Console.Write("Enter text: ");
|
|
var numberString = new NumberString(Console.ReadLine()!);
|
|
Console.Write($"Contained digits: {string.Join(" ", numberString)}");
|
|
Console.WriteLine();
|
|
Console.Write("Press any key to continue...");
|
|
Console.ReadKey();
|
|
}
|
|
|
|
static void NumberFactoryRun()
|
|
{
|
|
var evenRange = (Lower: 3, Upper: 9);
|
|
var primeRange = (Lower: 1, Upper: 15);
|
|
|
|
Console.WriteLine("*** NumberFactory ***");
|
|
|
|
var evenNumbers = Factory.Create(NumberType.Even, evenRange.Lower, evenRange.Upper);
|
|
Console.WriteLine($"Even numbers between {evenRange.Lower} and {evenRange.Upper}: " +
|
|
$"{Format(evenNumbers)}{Environment.NewLine}");
|
|
|
|
var primeNumbers = Factory.Create(NumberType.Prime, primeRange.Lower, primeRange.Upper);
|
|
Console.Write($"Prime numbers between {primeRange.Lower} and {primeRange.Upper}: " +
|
|
$"{Format(primeNumbers)}{Environment.NewLine}");
|
|
|
|
Console.Write("Press any key to exit...");
|
|
Console.ReadKey();
|
|
|
|
return;
|
|
|
|
static string Format(IEnumerable<long> numbers) => string.Join(" ", numbers);
|
|
}
|