Вставить 0 после элементов, которые будут делителями для суммы его первого, второго и последнего элементов - C#
Формулировка задачи:
Условие: Вставить 0 после элементов, которые будут делителями для суммы его первого, второго и последнего элементов(элементы рассматривать по модулю). Тестовый пример 2 3 4 5 -1 -2 -3 -4. Результат: Сумма первого, второго и последнего 9, Результат вывода: 2 3 0 4 5 -1 0 -2 -3 0 -4
Решение задачи: «Вставить 0 после элементов, которые будут делителями для суммы его первого, второго и последнего элементов»
textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Введите (через пробел) исходный набор целых чисел: ");
string [] inString = Console.ReadLine().Split();
string outString=" ";
int[] numbers = new int[inString.Length];
for (int i = 0; i <= numbers.Length-1; i++)
{
if (!int.TryParse(inString[i], out numbers[i]))
{
Console.WriteLine("Неверный тип входных данных!");
Console.WriteLine("Нажмите любую клавишу для завершения работы программы");
Console.ReadKey();
Environment.Exit(1);
}
if (numbers[i]==0)
{
Console.WriteLine("Ноль нельзя вводить в качестве исходных данных!");
Console.WriteLine("Нажмите любую клавишу для завершения работы программы");
Console.ReadKey();
Environment.Exit(1);
}
}
int sum = Math.Abs(numbers[0]) + Math.Abs(numbers[1]) + Math.Abs(numbers[numbers.Length - 1]);
for (int i = 0; i <= numbers.Length - 1; i++)
{
outString=outString+inString[i]+" ";
//if (numbers[i] == 0) continue;
if (sum % numbers[i]==0)
{
outString = outString + "0 ";
}
}
Console.WriteLine();
Console.WriteLine("Результат работы программы: {0}", outString.Trim());
Console.WriteLine();
Console.WriteLine("Нажмите любую клавишу для завершения работы программы");
Console.ReadKey();
}
}
}