Определить количество членов арифметической прогрессии. Проверить код - C#
Формулировка задачи:
правильно ли написан код?
2.Определить количество членов арифметической прогрессии
s = a + (a + h) + ... + (a + nh),
сумма которых не превышает заданного числа р.
Листинг программы
- int s = 0, n = 0, m;
- const int a = 2, h = 3, p = 41;
- while (s < p)
- {
- m = a + n * h;
- s = s + m;
- n = n + 1;
- }
- //вычитается 1, прибавленная после
- //последнего изменения суммы.
- n = n - 1;
- Console.WriteLine("{0:d}", n);
- Console.ReadKey();
Решение задачи: «Определить количество членов арифметической прогрессии. Проверить код»
textual
Листинг программы
- public static void Main(string[] args)
- {
- const int a = 2, d = 3, s = 41;
- int quadraticEqu = (int) QuadraticEqu(d, 2*a - d, -2*s);
- Console.WriteLine(quadraticEqu);
- }
- private static double QuadraticEqu(double a, double b, double c)
- {
- double d = b*b - 4*a*c;
- if (d > 0)
- {
- double x = (-b + Math.Sqrt(d))/(2*a);
- return Math.Abs(x);
- }
- if (Math.Abs(d) < 10E-6)
- {
- return -b/2*a;
- }
- return 0;
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д