Помогите сделать код поиска фильмов универсальнее - 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; } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д