using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace DraftForLab2
{
    class Program
    {
        static void DoBlock_1()
        {
        	Console.Write("Введіть кількість елементів n: ");
            int n = int.Parse(Console.ReadLine());
 
            if (n <= 0)
            {
                Console.WriteLine("Кількість елементів має бути більше 0!");
                return;
            }
 
            Console.Write("Введіть елемент 1: ");
            int minValue = int.Parse(Console.ReadLine());
            int minIndex = 1;
 
            for (int i = 2; i <= n; i++)
            {
                Console.Write($"Введіть елемент {i}: ");
                int current = int.Parse(Console.ReadLine());
 
                if (current < minValue)
                {
                    minValue = current;
                    minIndex = i;
                }
            }
 
            Console.WriteLine($"Номер мінімального елементу: {minIndex}");
            Console.WriteLine($"Значення мінімального елементу: {minValue}");
        }
 
        static void DoBlock_2()
        {
        	Console.WriteLine("Вводьте цілі числа. Для завершення введіть 0:");
 
            int count = 0;
            int current;
            int position = 0;
 
            while (true)
            {
                position++;
                Console.Write($"Введіть число {position} (або 0 для завершення): ");
                current = int.Parse(Console.ReadLine());
 
                if (current == 0)
                {
                    break;
                }
 
                if (current % 2 == 0)
                {
                    count++;
                }
            }
 
            Console.WriteLine($"Кількість парних елементів: {count}");
        }
 
        static void DoBlock_3()
        {
        	Console.Write("Введіть значення X: ");
            double x = double.Parse(Console.ReadLine());
 
            Console.Write("Введіть кількість доданків n: ");
            int n = int.Parse(Console.ReadLine());
 
            if (n <= 0)
            {
                Console.WriteLine("Кількість доданків має бути більше 0!");
                return;
            }
 
            double sum = 0;
            double xPower = x;
 
            int i = 1;
            do
            {
                sum += Math.Sin(xPower);
                Console.WriteLine($"Доданок {i}: sin({xPower:F4}) = {Math.Sin(xPower):F6}");
                xPower *= x;
                i++;
            } while (i <= n);
 
            Console.WriteLine($"\nСума S = {sum:F6}");
        }
 
        static void Main(string[] args)
        {
            int choice;
            do
            {
                Console.WriteLine("Для виконання блоку 1 (варіант 8) введіть 1");
                Console.WriteLine("Для виконання блоку 2 (варіант 30) введіть 2");
                Console.WriteLine("Для виконання блоку 3 (варіант 39) введіть 3");
                Console.WriteLine("Для виходу з програми введіть 0");
                choice = int.Parse(Console.ReadLine());
                switch (choice)
                {
                    case 1:
                        Console.WriteLine("Виконую блок 1");
                        DoBlock_1();
                        break;
                    case 2:
                        Console.WriteLine("Виконую блок 2");
                        DoBlock_2();
                        break;
                    case 3:
                        Console.WriteLine("Виконую блок 3");
                        DoBlock_3();
                        break;
                    case 0:
                        Console.WriteLine("Зараз завершимо, тільки натисніть будь ласка ще раз Enter");
                        Console.ReadLine();
                        break;
                    default:
                        Console.WriteLine("Команда ``{0}'' не розпізнана. Зробіть, будь ласка, вибір із 1, 2, 3, 0.", choice);
                        break;
                }
            } while (choice != 0);
        }
    }
}