Убрать однотипные и повторяющиеся участки кода - C#

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

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

Листинг программы
  1. static void fns(int val)
  2. {
  3. int a = 0, b = 0, c = 0;
  4. if (val > 0)
  5. {
  6. a++;
  7. b++;
  8. }
  9. else if (val < 0)
  10. {
  11. a++;
  12. b++;
  13. c++;
  14. }
  15. else
  16. {
  17. c++;
  18. }
  19. }
это только пример, что пришло в голову да бы продемонстрировать суть вопроса, как видите в if есть повторяющийся код, в частности:
Листинг программы
  1. a++;
  2. b++;
можно как-нибудь сделать, что бы не дублировать каждый раз?

PS

создание именно отдельного метода, делающего эту грязную работу не подойдет, уж проще дублировать.

Решение задачи: «Убрать однотипные и повторяющиеся участки кода»

textual
Листинг программы
  1. WebClient wc = new WebClient();
  2. string html = null;
  3.  
  4. do {
  5.    
  6.     try
  7.     {
  8.         html = DownloadString(uri);
  9.         if(/* тут проверяется html и если... */) // допустим тот или не тот код
  10.         {
  11.             // тут выполняется несколько действий
  12.             // из которых 2 будут выполнятся во всех условиях дальше КРОМЕ ОДНОГО, в том числе и в catch
  13.             break;
  14.         }
  15.         else
  16.         {
  17.             continue;
  18.         }
  19.     }
  20.     catch (WebException ex)
  21.     {
  22.         if(/* если ex что то там, тогда.. */) // допустим был сайт недоступен или же мы получили 404
  23.         {
  24.             // тут выполняется несколько действий включая те 2, что описаны выше
  25.             continue;
  26.         }
  27.         else
  28.         {
  29.             // тут выполняется несколько действий включая те 2, что описаны выше
  30.             break;
  31.         }
  32.     }
  33.  
  34. } while(/* какое то условие */);

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


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

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

6   голосов , оценка 4.333 из 5

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

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

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