Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- namespace Problem_01
- {
- using System;
- using System.Collections.Generic;
- using System.IO;
- using System.Linq;
- public class StartUp
- {
- public static void Main()
- {
- //Извикваме функцията за прочитане на масива
- int[] inputArray = ReadArray();
- //Извикваме функцията за проверка дали масива е сортиран
- IsSorted(inputArray);
- //Извикваме функцията за броене на тройки елементи в масива
- Doubles(inputArray);
- }
- //функция за прочитане на масива
- private static int[] ReadArray()
- {
- //Прочитаме името на файла от конзолата
- string fileName = Console.ReadLine();
- //Прочитаме и записваме съдържанието на файла в стринг
- string input = File.ReadAllText(fileName);
- //Разделяме елементите по интервал, парсваме ги към int и записваме в масив
- int[] arr = input.Split(' ').Select(int.Parse).ToArray();
- //Връщаме масива от цели числа
- return arr;
- }
- //функнция за проверка дали е сортиран масива
- private static void IsSorted(int[] arr)
- {
- bool sorted = false;
- //обхождаме масива и срявняваме дали всеки елемент е по-малък от предходния
- for (int i = 1; i < arr.Length; i++)
- {
- //Проверка дали сегашният елемент е по-малък от предходния
- if (!(arr[i] <= arr[i - 1]))
- {
- //Ако не е по-малък
- sorted = false;
- break;
- }
- else
- {
- //Ако е по-малък
- sorted = true;
- }
- }
- if (sorted)
- //ако е сортиран
- {
- Console.WriteLine("Масива е сортиран във низходящ ред");
- }
- else
- //ако не е сортиран
- {
- Console.WriteLine("Масива не е сортиран");
- }
- }
- //функция за проверка дали има тройки елементи в масива
- private static void Doubles(int[] arr)
- {
- //Променлива в която ще държим броя на тройките
- int threesCount = 0;
- //Речник в който ще държим броя на всяко число в масива
- Dictionary<int, int> threes = new Dictionary<int, int>();
- //Обикаляме масива и записваме в речника колко пъти се среща всяко число
- foreach (var number in arr)
- {
- if (!threes.ContainsKey(number))
- {
- threes.Add(number, 0);
- }
- threes[number]++;
- }
- //Обикаляме речника и търсим числа които се срещат три пъти;
- foreach (var number in threes)
- {
- if (number.Value == 3)
- {
- //За всяка тройка увеличаваме брояча със едно
- threesCount++;
- }
- }
- //Принтираме броя на тройките в масива
- Console.WriteLine("Тройките в масива са: " + threesCount);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement