I did not bother to name this...

From Jittery Teal, 1 Month ago, written in Plain Text, viewed 28 times.
URL http://codebin.org/view/31171422 Embed
Download Paste or View Raw
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace Resistors
  8. {
  9.     public class Program
  10.     {
  11.         public static bool CheckRes(double N, int[] resistants, int i = 0)
  12.         {
  13.             if (N < -0.000000000000001 || i > resistants.Length - 1)
  14.             {
  15.                 return false;
  16.             }
  17.             if (N < 0.0000000001 && N > -0.000000001)
  18.             {
  19.                 return true;
  20.             }
  21.             if (i == resistants.Length - 1)
  22.             {
  23.                 if (CheckRes(N - resistants[i], resistants, i++)) return true;
  24.                 else return false;
  25.             }
  26.             double par = Math.Round((resistants[i + 1] * resistants[i]) / (double)(resistants[i + 1] + resistants[i]), 1);
  27.             double seq = resistants[i + 1] + resistants[i];
  28.             double id = resistants[i];
  29.             return CheckRes(N - id, resistants, i++) || CheckRes(N - seq, resistants, i++) ||
  30.                     CheckRes(N - par, resistants, i++);
  31.         }
  32.  
  33.  
  34.         static void Main(string[] args)
  35.         {
  36.             Console.WriteLine("Введите кол-во сопротивлений, а затем сами сопротивления");
  37.             int n = Int32.Parse(Console.ReadLine());
  38.             int[] mas = new int[n];
  39.             for (int i = 0; i < n; i++)
  40.             {
  41.                 mas[i] = Int32.Parse(Console.ReadLine());
  42.             }
  43.             Console.WriteLine("Какую сумму нужно набрать? Внимание: вводите число double");
  44.             double N = double.Parse(Console.ReadLine());
  45.            
  46.             Console.WriteLine(CheckRes(N, mas));
  47.             Console.ReadKey();
  48.         }
  49.     }
  50. }
  51.  

Reply to "I did not bother to name this..."

Here you can reply to the paste above