Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.02.2013, 21:10   #1
Anikol
Новичок
Джуниор
 
Регистрация: 13.02.2013
Сообщений: 1
По умолчанию Вычислить сумму ряда, используя циклы while и do while. С#

Вычислить сумму ряда (на картинке), используя циклы while и do while (то есть разработать два консольных приложения для решения задачи своего варианта: одно с помощью цикла while, другое - do ... while.).
Слагаемые, по модулю меньше E, не учитывать. Вычисление слагаемых
выполнять, используя рекурсивные отношения. Наработки мои, но тут много чего не правильно) так как в C# я не силен.

Код:
namespace Z2
{
class Program
{
static long Fact(int n) //рекурсивный метод вычисление факториала
{
if (n == 0 || n == 1)
return 1; //нерекурсивная ветвь
else return n * Fact(n - 1); //шаг рекурсии - повторный вызов метода с другим параметром
}
static void Main()
{

string buf;
int i = 1;
int i1 = 0;// объявляем счётчик для рекуррентного соотношения
double summa = 0, a = 0, summa1 = 0;

Console.WriteLine("Введите число X: ");
buf = Console.ReadLine();
double x = Double.Parse(buf);

Console.WriteLine("Введите точность: ");
buf = Console.ReadLine();
double e = Double.Parse(buf);

a = Math.Pow(-1,i)*((Math.Pow(x,2*i)/Fact(i)));

while (a >= e)
{
summa = summa + a;
a = -1*a * (x * x) / (i + 1);
i++;
}

double a1 = Math.Pow(-1, i1) * ((Math.Pow(x, 2 * i1) / Fact(i1)));

do // Использование цикла do while
{
summa1 = summa1 + a1;
a1 = -1*a1 * (x * x) / (i1 + 1); // Вычисление слагаемого данного ряда
i1++;
}
while (a >= e);

if (Math.Abs(x) < 10) Console.WriteLine("Сумма ряда равна: {0:0.000} , {1:0.000} ", summa, summa1);
else Console.WriteLine("Сумма ряда не посчитана, т.к. значение X, не соответствует условию |X|<1 ");


}
}
}
Изображения
Тип файла: jpg 10.jpg (5.0 Кб, 136 просмотров)

Последний раз редактировалось Anikol; 13.02.2013 в 21:14.
Anikol вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Используя рекуррентную формулу, вычислить сумму ряда!! Lenochka058 Помощь студентам 3 15.09.2010 20:45
Вычислить , используя циклы while и repeat. Knubbe Помощь студентам 1 20.12.2009 19:46
Вычислить , используя циклы while и repeat Knubbe Помощь студентам 0 18.12.2009 05:44