Помогите сделать код поиска фильмов универсальнее - C#
Формулировка задачи:
Помогите, пожалуйста, сделать эту часть кода универсальнее. Фильмы везде разные. Если понадобится, могу скинуть весь код
static void finalAnswer1(string answer1, string answer2, string answer3,Collection<string> nameFilms, Collection<string> descFilms, Collection <string> mood, string answer6)
{
if (answer1 + answer2+ answer6 +answer3 == mood[0])
{
Console.WriteLine("Посмотрите " + nameFilms[0] + "! " + descFilms[0]);
}
if (answer1 + answer2 + answer6 + answer3 == mood[1])
{
Console.WriteLine("Посмотрите " + nameFilms[1] + "! " + descFilms[1]);
}
if (answer1 == "весёлое" & answer2 == "кино" & answer3 == "драма")
{
Console.WriteLine("По вашему запросу ничего не найдено");
return;
}
if (answer1 + answer2 + answer6 + answer3 == mood[2])
{
Console.WriteLine("Посмотрите " + nameFilms[2] + "! " + descFilms[2]);
}
if (answer1 + answer2 + answer6 + answer3 == mood[3])
{
Console.WriteLine("Посмотрите " + nameFilms[3] + "!" + descFilms[3]);
}
if (answer1 == "воодушевленное" & answer2 == "кино" & answer3 == "ужасы")
Console.WriteLine("По вашему запросу ничего не найдено");
if (answer1 + answer2 + answer6 + answer3 == mood[4])
Console.WriteLine("Посмотрите " + nameFilms[4] + "!" + descFilms[4]);
if (answer1 + answer2 + answer6 + answer3 == mood[5])
Console.WriteLine("Посмотрите " + nameFilms[5] + "!" + descFilms[5]);
if (answer1 + answer2 + answer6 + answer3 == mood[6])
Console.WriteLine("Посмотрите " + nameFilms[6] + "!" + descFilms[6]);
if (answer1 + answer2 + answer6 + answer3 == mood[7])
Console.WriteLine("Посмотрите " + nameFilms[7] + "!" + descFilms[7]);
if (answer1 + answer2 + answer6 + answer3 == mood[8])
Console.WriteLine("Посмотрите " + nameFilms[8] + "!" + descFilms[8]);
if (answer1 + answer2 + answer6 + answer3 == mood[9])
Console.WriteLine("Посмотрите " + nameFilms[9] + "!" + descFilms[9]);
if (answer1 + answer2 + answer6 + answer3 == mood[10])
Console.WriteLine("Посмотрите " + nameFilms[10] + "!" + descFilms[10]);
if (answer1 == "мрачное" & answer2 == "кино" & answer3 == "комедия")
{
Console.WriteLine("По вашему запросу ничего не найдено");
return;
}
if (answer1 + answer2 + answer6 + answer3 == mood[11])
Console.WriteLine("Посмотрите " + nameFilms[11] + "! " + descFilms[11]);
if (answer1 + answer2 + answer6 + answer3 == mood[12])
Console.WriteLine("Посмотрите " + nameFilms[12] + "! " + descFilms[12]);
if (answer1 + answer2 + answer6 + answer3 == mood[13])
Console.WriteLine("Посмотрите " + nameFilms[13] + "! " + descFilms[13]);
if (answer1 + answer2 + answer6 + answer3 == mood[14])
Console.WriteLine("Посмотрите " + nameFilms[14] + "! " + descFilms[14]);
if (answer1 == "грустное" & answer2 == "кино" & answer3 == "комедия")
{
Console.WriteLine("По вашему запросу ничего не найдено");
return;
}
if (answer1 == "грустное" & answer2 == "кино" & answer3 == "фэнтези")
{
Console.WriteLine("По вашему запросу ничего не найдено");
return;
}Решение задачи: «Помогите сделать код поиска фильмов универсальнее»
textual
Листинг программы
class Program
{
private static string[] _moodChoise = new string[] { "весёлое", "воодушевленное", "мрачное", "грустное" };
private static string[] _entertChoise = new string[] { "музыка", "кино" };
static void Main(string[] args)
{
var choise = GetChoise("Какое ваше настроение?", _moodChoise);
if (choise > 0)
{
Console.WriteLine("Ваше настроение {0}",_moodChoise[choise] );
}
else
{
Console.WriteLine("Неверный выбор");
}
choise = GetChoise("Вы хотели бы послушать музыку или посмотреть кино?", _entertChoise);
if (choise > 0)
{
Console.WriteLine("Вы хотите {0}", _entertChoise[choise]);
}
else
{
Console.WriteLine("Неверный выбор");
}
Console.ReadLine();
}
static int GetChoise(string invitation, string[] choises)
{
StringBuilder sb = new StringBuilder();
for (var i = 0; i < choises.Length; i++)
sb.AppendFormat("{0}-{1}, ", i + 1, choises[i]);
sb.Remove(sb.Length - 2, 2);
Console.WriteLine("{0} ({1})", invitation, sb.ToString());
int result;
//Если введено не число
if (!int.TryParse(Console.ReadLine(), out result)) return -1;
//Если введённое число выходит за пределы диапазона
if (result < 0 || result > choises.Length)
return -1;
//Выбраный вариант
return result - 1;
}
}