Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- namespace ConsoleApp1;
- using System.Text;
- public class Task24
- {
- public void Run()
- {
- Console.InputEncoding = Encoding.Unicode;
- Console.OutputEncoding = Encoding.Unicode;
- int randomRangeIncludedLowBound = 5;
- int randomRangeExcludedHighBound = 10;
- Random random = new Random();
- int numbersArrayLength = 30;
- bool canExit = false;
- while ( canExit == false )
- {
- Console.Clear();
- int[] numbers = new int[numbersArrayLength];
- string displayedNumbers = string.Empty;
- int repeatCheckStartIndex = 1;
- int firstNumberIndex = 0;
- int repeatedNumber = numbers[firstNumberIndex];
- int startRepeatsCount = 1;
- int repeatsCount = startRepeatsCount;
- int maxRepeatsCount = repeatsCount;
- int repeatedSequenceStartIndex = firstNumberIndex;
- for ( int i = repeatCheckStartIndex; i < numbersArrayLength; i++ )
- {
- numbers[i] = random.Next( randomRangeIncludedLowBound, randomRangeExcludedHighBound );
- displayedNumbers = $"{displayedNumbers}{numbers[i]} ";
- if ( i == 0 )
- continue;
- var previousNumberIndex = i - 1;
- if ( numbers[i] == numbers[previousNumberIndex] )
- {
- repeatsCount++;
- }
- else
- {
- if ( repeatsCount > maxRepeatsCount )
- {
- maxRepeatsCount = repeatsCount;
- repeatedNumber = numbers[previousNumberIndex];
- repeatedSequenceStartIndex = previousNumberIndex - maxRepeatsCount;
- }
- repeatsCount = startRepeatsCount;
- }
- }
- Console.WriteLine( $"Source numbers:\n{displayedNumbers}" );
- Console.WriteLine( $"Max repeated sequence is from number {repeatedNumber}, repeats count is {maxRepeatsCount}" +
- $", sequence start index is {repeatedSequenceStartIndex}" );
- string properlyExitAnswer = "n";
- Console.WriteLine( $"Continue? Enter \'{properlyExitAnswer}\' for exit" );
- string continueAnswer = Console.ReadLine();
- canExit = string.Equals( continueAnswer, properlyExitAnswer );
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement