C# Найти первый из номеров K, для которых выполняется условие

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

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

Ввести вещественное число e > 0. Последовательность вещественных чисел AK определяется следующим образом: A1=1, A2=2, AK=(AK–2 + 2·AK–1)/3, K = 3, 4, … . Найти первый из номеров K, для котороых выполняется условие |AK – AK–1| < e, и вывести этот номер, а также числа AK–1 и AK. Выполнить надо тремя циклами:For, while,dowhile!! Решите плисс очень как надо срочно!!! заранее спс!

Решение задачи: «C# Найти первый из номеров K, для которых выполняется условие»

textual
Листинг программы
        static IEnumerable<double> Sequence(double e)
        {
            var a_k2 = 1F;
            var a_k1 = 2F;
            
            yield return a_k2;
            yield return a_k1;
 
            while (true)
            {
                var a_k = (a_k2 + 2 * a_k1) / 3;
 
                a_k2 = a_k1;
                a_k1 = a_k;           
 
                yield return a_k;
            }
        }
 
var e = 1.0;
 
            var sequence = Sequence(e);
 
            var a_k1 = sequence.First();
            var k = 2;
            foreach (var a_k in sequence.Skip(1))
            {
                var state = Math.Abs(a_k - a_k1) < e;
 
                if (state)
                {
                    Console.WriteLine("K = {0}, A_{K-1} = {1}, A_{K} = {2}", k, a_k1, a_k);
                }
                     
                k++;
            }

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


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

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

11   голосов , оценка 3.455 из 5
Похожие ответы