Я включил свой черновик исходного кода ниже. Буду признателен за любую информацию о том, что я делаю неправильно. Я не уверен, что мой синтаксис правильный ... Кроме того, я нашел пример на Cramster; но я не уверен, что в примере реализован «индекс» в соответствии с указаниями (пожалуйста, укажите это, если я ошибаюсь в этом) инструкциями. Я также думаю, что цикл «for» является довольно повторяющимся, поскольку создается впечатление, что он устанавливает то же самое, что должен установить нижний индекс ... Этот код является ответом на следующее присваивание:
"Напишите программу, в которой вы объявляете массив из пяти целых чисел и сохраняете пять значений в
массив. Напишите блок try, в который вы помещаете цикл, который пытается получить доступ к каждому
элемент массива, увеличивая индекс от 0 до 10. Создайте блок catch, который
ловит возможное IndexOutOfRangeException; в пределах блока отобразите «Сейчас»
Вы зашли слишком далеко. »на экране. Сохраните файл как GoTooFar.cs. "
Microsoft® Visual C # ® 2008, Введение в объектно-ориентированное программирование, 3e, Джойс Фаррелл
Мой исходный код с ошибками:
using System;
namespace Further
{
public class GoTooFar
{
public static void Main()
{
private static int[] fiveIntArray = {1, 2, 3, 4, 5};
//private static int CUTOFF = 11;
int subscript;
int rate;
try
{
//bool further;
//public static int DetermineArray(int further)
for(int x = 0; x < 10; x++)
if(further < 11)
throw new IndexOutofRangeException("Now you've gone too far.");
subscript = 0;
else
subscript = 10;
rate = fiveIntArray[subscript];
return rate;
}
catch(IndexOutOfRangeException e)
{
throw;
Console.WriteLine(e.StackTrace);
//Console.WriteLine("Now you've gone too far.");
//return e;
}
}
}
}
// Пример, который я нашел на Cramster.com:
using System;
namespace Console2
{
class Class1
{
static void Main(string[] args)
{
int[] numbers = new int[5] {1, 2, 3, 4, 5};
try
{
for(int i=0;i<10;i++)
if(i>5)
throw new IndexOutOfRangeException("Now you’ve gone too far.");
}
catch(IndexOutOfRangeException e)
{
throw;
}
}//end ma...
}
}