Четыре лямбда оператора для выполнения арифметических действий - C#

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

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

Проверьте правильно ли я сделал? И подскажите, как в Лямбда оператор впихнуть проверку деления на 0, как только не пробовал, не получалось. Спасибо. Создайте четыре лямбда оператора для выполнения арифметических действий: (Add – сложение, Sub – вычитание, Mul – умножение, Div – деление). Каждый лямбда оператор должен принимать два аргумента и возвращать результат вычисления. Лямбда оператор деления должен делать проверку деления на ноль. Написать программу, которая будет выполнять арифметические действия указанные пользователем.
Листинг программы
  1. using System;
  2. namespace Less06_task01
  3. {
  4. public delegate int MyDelegat(int a, int b);
  5. class Program
  6. {
  7. static void Main()
  8. {
  9. Console.WriteLine("Введите действие--> +,-,*,/");
  10. string a = Console.ReadLine();
  11. Console.WriteLine("Первое число -->");
  12. int x = Convert.ToInt32(Console.ReadLine());
  13. Console.WriteLine("Второе число -->");
  14. int y = Convert.ToInt32(Console.ReadLine());
  15. switch (a)
  16. {
  17. case "+": MyDelegat myDelegat = (c, b) => { return c + b; };
  18. int del = myDelegat(x, y);
  19. Console.WriteLine("Ответ:{0}",del);
  20. break;
  21. case "-": MyDelegat myDelegat1 = (c, b) => { return c - b; };
  22. int del1 = myDelegat1(x, y);
  23. Console.WriteLine("Ответ:{0}", del1);
  24. break;
  25. case "*": MyDelegat myDelegat2 = (c, b) => { return c * b; };
  26. int del2 = myDelegat2(x, y);
  27. Console.WriteLine("Ответ:{0}", del2);
  28. break;
  29. case "/": MyDelegat myDelegat3 = (c, b) => { return c / b; };
  30. int del3 = myDelegat3(x, y);
  31. Console.WriteLine("Ответ:{0}", del3);
  32. break;
  33. default: Console.WriteLine("Выберите из предложанного");
  34. break;
  35. }
  36. Console.ReadKey();
  37. }
  38. }
  39. }
Может кто подсказать?

Решение задачи: «Четыре лямбда оператора для выполнения арифметических действий»

textual
Листинг программы
  1. case "+": MyDelegat myDelegat = (c, b) => c + b;
  2.                     int del = myDelegat(x, y);
  3.                     Console.WriteLine("Ответ:{0}", del);
  4.                     break;
  5.                 case "-": MyDelegat myDelegat1 = (c, b) => c - b;
  6.                     int del1 = myDelegat1(x, y);
  7.                     Console.WriteLine("Ответ:{0}", del1);
  8.                     break;
  9.                 case "*": MyDelegat myDelegat2 = (c, b) => c * b;
  10.                     int del2 = myDelegat2(x, y);
  11.                     Console.WriteLine("Ответ:{0}", del2);
  12.                     break;
  13.                 case "/": MyDelegat myDelegat3 = (c, b) => b == 0 ? 0 : c / b;
  14.                     int del3 = myDelegat3(x, y);
  15.                     Console.WriteLine("Ответ:{0}", del3);
  16.                     break;

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


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

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

14   голосов , оценка 4.214 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы