Определить количество членов арифметической прогрессии. Проверить код - C#

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

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

правильно ли написан код? 2.Определить количество членов арифметической прогрессии s = a + (a + h) + ... + (a + nh), сумма которых не превышает заданного числа р.
Листинг программы
  1. int s = 0, n = 0, m;
  2. const int a = 2, h = 3, p = 41;
  3. while (s < p)
  4. {
  5. m = a + n * h;
  6. s = s + m;
  7. n = n + 1;
  8. }
  9. //вычитается 1, прибавленная после
  10. //последнего изменения суммы.
  11. n = n - 1;
  12. Console.WriteLine("{0:d}", n);
  13. Console.ReadKey();

Решение задачи: «Определить количество членов арифметической прогрессии. Проверить код»

textual
Листинг программы
  1.         public static void Main(string[] args)
  2.         {
  3.             const int a = 2, d = 3, s = 41;
  4.  
  5.             int quadraticEqu = (int) QuadraticEqu(d, 2*a - d, -2*s);
  6.  
  7.             Console.WriteLine(quadraticEqu);
  8.         }
  9.  
  10.         private static double QuadraticEqu(double a, double b, double c)
  11.         {
  12.             double d = b*b - 4*a*c;
  13.  
  14.             if (d > 0)
  15.             {
  16.                 double x = (-b + Math.Sqrt(d))/(2*a);
  17.  
  18.                 return Math.Abs(x);
  19.             }
  20.            
  21.             if (Math.Abs(d) < 10E-6)
  22.             {
  23.                 return -b/2*a;
  24.             }
  25.  
  26.             return 0;
  27.         }

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


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

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

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

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

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

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