.NET 4.x Как вернуться к вводу длины массива после обработки исключения IndexOutOfRangeException - C#
Формулировка задачи:
Есть фрагмент кода
Подскажите, пожалуйста, как вернуться к вводу длины массива после обработки исключения, желательно без goto. (к строке //вернуться сюды)
try
{
//вернуться сюды
Console.Write("Введите длину массива l: ");
do
{
l = int.Parse(Console.ReadLine());
Chislo(l); //проверка числа
} while (l < 1);
double[] mass = new double[l];
for (int i = 1; i <= k; i++)
{
sum += checked(i / (Math.Pow(x, i)));
mass[i - 1] += sum;
}
}
catch (IndexOutOfRangeException)
{
Console.WriteLine("Выход за пределы границы массива. Введите длину массива l.");
return;
}
Console.WriteLine("Результат:\t" + sum);Решение задачи: «.NET 4.x Как вернуться к вводу длины массива после обработки исключения IndexOutOfRangeException»
textual
Листинг программы
try
{
arrayLength:
//вернуться сюды
Console.Write("Введите длину массива l: ");
do
{
l = int.Parse(Console.ReadLine());
Chislo(l); //проверка числа
} while (l < 1);
double[] mass = new double[l];
for (int i = 1; i <= k; i++)
{
sum += checked(i / (Math.Pow(x, i)));
mass[i - 1] += sum;
}
}
catch (IndexOutOfRangeException)
{
Console.WriteLine("Выход за пределы границы массива. Введите длину массива l.");
/*перейдет в блок try */ goto arrayLength;
}
Console.WriteLine("Результат:\t" + sum);