Ошибка в лямбде "Not all code paths return a value in lambda expression of type" - C#
Формулировка задачи:
Добрый день ! При компиляции выдаётся такая ошибка: Not all code paths return a value in lambda expression of type
Я не знаю, как её исправить. Помогите, пожалуйста.
delegate bool BoolPassword(string s1, string s2); delegate bool Captha(string s1, string s2);
static void Main(string[] args) { Console.Write("Enter password "); string password1 = Console.ReadLine(); Console.Write("Repeat password "); string password2 = Console.ReadLine(); BoolPassword bp = (s1, s2) => s1 == s2; if (bp(password1, password2)) { Random rand = new Random(); string resCaptha = ""; for (int i = 0; i < 10; i++) resCaptha += (char)rand.Next(0, 100); Console.WriteLine("Enter code " + resCaptha); string resCode = Console.ReadLine(); Captha cp = (s1, s2) => // Здесь ошибка { if (s1 == s2) Console.WriteLine("Ok"); else Console.WriteLine("fail"); }; cp(resCaptha, resCode); } else Console.WriteLine("Fail"); }
Решение задачи: «Ошибка в лямбде "Not all code paths return a value in lambda expression of type"»
textual
Листинг программы
delegate bool BoolPassword(string s1, string s2); delegate bool Captha(string s1, string s2); class Program { static void Main(string[] args) { Console.Write("Enter password "); string password1 = Console.ReadLine(); Console.Write("Repeat password "); string password2 = Console.ReadLine(); BoolPassword bp = (s1, s2) => s1 == s2; if (bp(password1, password2)) { Random rand = new Random(); string resCaptha = ""; for (int i = 0; i < 10; i++) resCaptha += (char)rand.Next(0, 100); Console.WriteLine("Enter code " + resCaptha); string resCode = Console.ReadLine(); Captha cp = (s1, s2) => // Здесь ошибка { if (s1 == s2) { Console.WriteLine("Ok"); return true; } Console.WriteLine("fail"); return false; }; cp(resCaptha, resCode); } else Console.WriteLine("Fail"); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д