02. SoftUni Course Planning
Дава ми два run time errors, но не разбирам защо ето кода https://pastebin.com/eNAxXwjE
77/100
Дава ми два run time errors, но не разбирам защо ето кода https://pastebin.com/eNAxXwjE
77/100
Здравей,
поправих грешките ти и съм ти сменил изцяло кода при случай на Swap
ето поправеният ти код:
using System;
using System.Collections.Generic;
using System.Linq;
namespace _02._Problem
{
class Program
{
static void Main()
{
var lessons = Console.ReadLine()
.Split(", ", StringSplitOptions.RemoveEmptyEntries)
.ToList();
while (true)
{
var command = Console.ReadLine().Split(':', StringSplitOptions.RemoveEmptyEntries).ToArray();
var command1 = command[0];
if (command1 == "course start")
{
break;
}
if (command1 == "Add")
{
if (!lessons.Contains(command[1]))
{
lessons.Add(command[1]);
}
}
else if (command1 == "Insert")
{
if (!lessons.Contains(command[1]))
{
if (Convert.ToInt32(command[2]) < lessons.Count &&
Convert.ToInt32(command[2]) >= 0)
{
lessons.Insert(Convert.ToInt32(command[2]), command[1]);
}
}
}
else if (command1 == "Remove")
{
lessons.Remove(command[1]);
lessons.Remove($"{command[1]}-Exercise");
}
else if (command1 == "Swap")
{
string lessonTitle1 = command[1];
string lessonTitle2 = command[2];
int index1 = lessons.IndexOf(lessonTitle1);
int index2 = lessons.IndexOf(lessonTitle2);
if (index1 != -1 && index2 != -1)
{
lessons[index1] = lessonTitle2;
lessons[index2] = lessonTitle1;
if (index1 + 1 < lessons.Count && lessons[index1 + 1] == $"{lessonTitle1}-Exercise")
{
lessons.RemoveAt(index1 + 1);
index1 = lessons.IndexOf(lessonTitle1);
lessons.Insert(index1 + 1, $"{lessonTitle1}-Exercise");
}
if (index2 + 1 < lessons.Count && lessons[index2 + 1] == $"{lessonTitle2}-Exercise")
{
lessons.RemoveAt(index2 + 1);
index2 = lessons.IndexOf(lessonTitle2);
lessons.Insert(index2 + 1, $"{lessonTitle2}-Exercise");
}
}
}
else if (command1 == "Exercise")
{
int index = lessons.IndexOf(command[1]);
if (lessons.Contains(command[1]) && !lessons.Contains($"{command[1]}-Exercise"))
{
lessons.Insert(index + 1, $"{command[1]}-Exercise");
}
else if (!lessons.Contains(command[1]))
{
lessons.Add(command[1]);
lessons.Add($"{command[1]}-Exercise");
}
}
}
for (int i = 0; i < lessons.Count; i++)
{
Console.WriteLine($"{i + 1}.{lessons[i]}");
}
}
}
}