Процедуры. Вычислить величину Z, которая равняется сумме минимальных элементов массивов - C#
Формулировка задачи:
Заданы два массива - Х(10) и Y(12). Вычислить величину Z, которая равняется сумме минимальных элементов массивов, разделенной на двойное произведение индексов минимальных элементов. Вывести минимальные элементы, их индексы и значения величины Z.
Решение задачи: «Процедуры. Вычислить величину Z, которая равняется сумме минимальных элементов массивов»
textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Int32[] m1 = new Int32[10];
Int32[] m2 = new Int32[10];
Console.WriteLine("Введите элементы 1-го массива:");
for (int i = 0; i < m1.Length; i++)
{
Console.Write("[{0,2}] = ", (i + 1));
m1[i] = Convert.ToInt32(Console.ReadLine());
}
Console.WriteLine("Введите элементы 2-го массива:");
for (int i = 0; i < m2.Length; i++)
{
Console.Write("[{0,2}] = ", (i + 1));
m2[i] = Convert.ToInt32(Console.ReadLine());
}
Z(m1, m2);
Console.ReadKey();
}
//Статический метод, не возвращающий результата, а просто выполняющий весь расчёт и выводящий результат на экран
public static void Z(Int32[] mas1, Int32[] mas2)
{
Int32 min1 = mas1[0];
Int32 min2 = mas2[0];
Int32 i1 = new Int32();
Int32 i2 = new Int32();
for (int i = 1; i < mas1.Length; i++)
{
if (min1 > mas1[i])
{
i1 = i;
min1 = mas1[i];
}
}
for (int i = 1; i < mas1.Length; i++)
{
if (min2 > mas2[i])
{
i2 = i;
min2 = mas2[i];
}
}
long Zres = new long();
Zres += min1;
Zres += min2;
Console.WriteLine("Минимальный элемент 1-го массива = " + min1.ToString() + " [" + i1.ToString() + "]");
Console.WriteLine("Минимальный элемент 2-го массива = " + min2.ToString() + " [" + i2.ToString() + "]");
try
{
Zres /= ((i1 * i2) * 2);
}
catch (DivideByZeroException error) { Console.WriteLine(error.Message.ToString()); }
Console.WriteLine("Результат = " + Zres.ToString());
}
}
}