Index out of range+ - C#

Узнай цену своей работы

Формулировка задачи:

            string[] FN = new string[5] { "Иван", "Евгений", "Михаил", "Илья", "Марк" };
            string[] SN = new string[5] { "Кужелев", "Иванов", "Петров", "Сидоров", "Антонов" };
            string[] MFN = new string[2] { "Никита", "Артем" };
            string[] MSN = new string[2] { "Руденко", "Коверга" };
            string fileName = "base.xml";
            Random rnd = new Random();
            int fn, sn, mfn, msn;
            int cikl;
            cikl = rnd.Next(20, 50);
            XDocument doc = new XDocument();
            XElement[] emp = new XElement[cikl];
            for (int i = 0; i <= cikl; i++){
                fn = rnd.Next(1, 6);
                sn = rnd.Next(1, 6);
                mfn = rnd.Next(1, 3);
                msn = rnd.Next(1, 3);                
                emp[i] = new XElement("employee",
                            new XElement("fname", FN[fn]),
                            new XElement("sname", SN[sn]),
                            new XElement("mfname", MFN[mfn]),
                            new XElement("msname", MSN[msn])
                            );
            }
хочу случайным образом заполнить xml файл, но на первом же круге цикла вот тут
 emp[i] = new XElement("employee",
                            new XElement("fname", FN[fn]),
                            new XElement("sname", SN[sn]),
                            new XElement("mfname", MFN[mfn]),
                            new XElement("msname", MSN[msn])
                            );
ошибка, что индекс находится вне границ массива. Помогите, пожалуйста.

Решение задачи: «Index out of range+»

textual
Листинг программы
XDocument doc = new XDocument();
XElement root = new XElement("employers");
doc.Add(root);
XElement[] emp = new XElement[cikl];
for (int i = 0; i < cikl; i++)
{
    fn = rnd.Next(5);
    sn = rnd.Next(5);
    mfn = rnd.Next(2);
    msn = rnd.Next(2);
    emp[i] = new XElement("employee",
                new XElement("fname", FN[fn]),
                new XElement("sname", SN[sn]),
                new XElement("mfname", MFN[mfn]),
                new XElement("msname", MSN[msn])
                );
    root.Add(emp[i]);
}
doc.Save(fileName);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.154 из 5
Похожие ответы