7.1.Цикл while
Вычислить значение суммы членов бесконечного ряда с заданной точностью Е с использованием инструкции цикла while. На печать вывести значение суммы и число членов ряда, вошедших в сумму. Проект – консольное приложение.
Пример. Вычислить значение суммы членов бесконечного ряда
при x = 0.1 с точностью до члена ряда с модулем, меньшим E=0.00001.
Для вычисления очередного члена ряда будем использовать рекуррентное соотношение, связывающее его с предыдущим членом a(n+1) = q*a(n). Применение рекуррентных формул позволяет избежать вычисления факториала и возведения в произвольную степень. Рекуррентный коэффициент q найдем из выражений для текущего и следующего членов ряда
Деля второе выражение на первое, получим
Значение начального члена ряда задаем до цикла путем прямого присваивания (номер начального члена n в разных вариантах равен 0 или 1, правильное значение определяется по формуле текущего члена). В нашем задании n=0, a=x.
Листинг программы
using System;
namespace ConsoleWhile
{
class Program
{
static void Main()
{
double a=0, e=0.00001, q=0, s=0, x=0.1;
int n = 0;
a = x; // Инициализация цикла
s = a;
while (Math.Abs(a) > e) // Цикл
{
q = -x * x / (2 * n + 2) / (2 * n + 3);
a *= q;
s += a;
n++;
}
Console.WriteLine();
Console.WriteLine("Результат");
Console.WriteLine();
Console.WriteLine("Сумма s=" + Convert.ToString(s));
Console.WriteLine("Число членов ряда n=" + Convert.ToString(n));
Console.WriteLine();
Console.WriteLine("Нажмите любую клавишу");
Console.ReadKey(); // Пауза
}
}
}
Консоль перед закрытием программы:
- 1.Иср Visual c#. Первые программы
- 1.1.Основы иср
- 2.Численные типы в языке c#
- 3.Строковые и символьные типы в языке c#
- 3.1.Взаимные преобразования
- 3.2.Стандартное форматирование
- 3.3.Нестандартное форматирование
- 4.Тип DateTime в языке c#
- 4.1.Консольное приложение
- 4.2.Windows Forms приложение
- 5.Линейные структуры
- 6.Ветвления
- 6.1.Ветвление if; else
- 6.2.Выбор switch; case
- 7.Циклы с неизвестным числом повторений
- 7.1.Цикл while
- 7.2.Цикл do…while
- 8.Циклы с заданным числом повторений
- 8.1.Команда Goto и метки
- 8.2.Цикл for
- 8.3.Вложенные циклы for
- 8.4.Команда break
- 8.5.Команда continue
- 9.Логические операции
- 10.Массивы
- 10.1.Одномерный массив
- 10.2.Матрица
- 11.Файлы
- 12.Подпрограммы
- 13.Операции со строками
- 13.1.Сравнение строк
- 13.2.Объединение строк
- 13.3.Разбиение строк
- 14.Исключения
- 14.1.Операции с вещественными числами
- 14.2.Операции с целыми числами
- 15.Работы с классами и объектами
- 16.Использование командной строки при запуске программ
- 17.Отладка и тестирование в с#
- 18.Многопоточные приложения
- 19.Работа с папками
- 20.Многооконные приложения
- 21.Компонент ProgressBar
- 22.Списки
- 23.Таблицы
- 24.Графика. Рисуем функции
- 24.1.Текст и график функции в форме
- 24.2.Компонент Chart
- 25.Графика, рисование фигур
- 26.Графика, растровые изображения
- 27.Графика, анимация
- 28.Приложения
- 28.1.Класс System.Math
- 28.2.Класс System.Console
- 28.3.Класс System.String