Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Waveox
1 / 1 / 0
Регистрация: 26.10.2011
Сообщений: 6
#1

C цикл с while - C++

26.10.2011, 14:21. Просмотров 547. Ответов 5
Метки нет (Все метки)

Доброго времени суток, уважаемые форумчане.
Прошу, Вашей, помощи в написании программы следующего содержания :

Вводится точность e. Вычислить сумму ряда (см. прил.). Вычисления продолжать до тех пор, пока очередное слагаемое не станет меньше e.

На сколько хватило моей соображалки, сумму ряда я могу взять из последнией части уравнения, так же я должен задать условие |x|>0. Более того, на вводе данных я задаю не только точность, но и пременную х для нахождения суммы ряда. В любом случае это только мои предположения, на деле я слабо представляю как написать программу с такого рода заданием, ибо аналогов в интернете нет, да и примеров на лекциях нам не показывали. Расчитываю на вашу помощь.

П.С. - программирование в большенстве своём происходит на C, с синтаксисом языка С++ ещё не знаком, хоть исходкики у нас и .срр.
Миниатюры
C цикл с while  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.10.2011, 14:21     C цикл с while
Посмотрите здесь:

Создать программу по всем 3 видам циклов...цикл с параметром,цикл с условием,цикл,и цикл с предусловием... - Turbo Pascal
Найти сумму чисел 1 в квадрате до 10 c квадрате...операцию возведению в степень не использовать учесть особенности получения квадратного...

Как реализовать бесконечный цикл While, но чтобы этот цикл не грузил процессор? - Visual C++
Допустим есть цикл: while (1) { ... } Как сделать так, чтобы бесконечный цикл не грузил процессор. Избавиться от...

Написать в турбо паскале, Цикл с параметром, Цикл, с постусловием, и с предусловием пожалуйста - Turbo Pascal

Цикл: Как грамотно организовать цикл с получением количества верных и неверных ответов? - VBA
Доброго времени суток, товарищи. Вот есть у меня два рандомно генерируемых числа, проверка произведения которых проверяется вводом ответа...

.NET 3.x Почему если условие входа в цикл не выполняется, функция заново входит в цикл - C#
Сам код: private void traverse_node(TreeControlItem node) { TreeControlItem childNode = default(TreeControlItem);...

Как переделать программу, чтобы внешний цикл был repeat.until, а цикл for вложенным? Паскаль - Pascal ABC
const x = 0.29; var y, sv, sz, fact, st: real; i, j, zn: integer; begin sz := 0; writeln('cycles for and while');

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kazak
3034 / 2355 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
26.10.2011, 14:43     C цикл с while #2
Цитата Сообщение от Waveox Посмотреть сообщение
ибо аналогов в интернете нет
эт громко сказано, на этом самом форуме точно есть реализация именно этой формулы, причем не одна.
Waveox
1 / 1 / 0
Регистрация: 26.10.2011
Сообщений: 6
26.10.2011, 17:29  [ТС]     C цикл с while #3
Прошу прощения, но найти данную формулу мне не удалось ни только на этом форуме, а в принципе. Или искал не достаточно, или мои познавательные способности слишком низки. Не составит ли, Вам, труда дать ссылку на тему(-ы) этого задания? Буду премного благодарен.

Добавлено через 23 минуты
Цитата Сообщение от Waveox Посмотреть сообщение
Прошу прощения, но найти данную формулу мне не удалось ни только на этом форуме, а в принципе. Или искал не достаточно, или мои познавательные способности слишком низки. Не составит ли, Вам, труда дать ссылку на тему(-ы) этого задания? Буду премного благодарен.
В конце концов аналоги решения подобных функций я нашёл, но мне откровенно говоря они ни капли не помолги решить поставленную задачу. Так что помощь по коду ещё требеутся, помогите пожалуйста. ^_^

Добавлено через 1 час 31 минуту
Я бы даже не отказался от программы, которая считает сумму ряда выглядевшего как 1+2+3....
Просто план к действию уже примерно есть
Нужно:
1) Спросить у пользователя x.
2) Если |x|<=1, объяснить пользователю, что он слишком много хочет.
3) Спросить у пользователя e
4) Начать складывать слагаемые из правой части равенства нарастающим итогом.
5) При этом, как только очередное слагаемое окажется меньше e по модулю, прервать сложение и выдать пользователю сумму.

Есть даже условие точности:

n-ный член S(x, n) = 2/((2n+1)*x^(2n+1)), при n=0,1,2,...

А реализовать программу всёравно не могу, понятия не имею как это всё написать на си.
kazak
3034 / 2355 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
26.10.2011, 23:44     C цикл с while #4
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <stdio.h>
#include <math.h>
 
int main()
{
   double sum = 0., x, e, term;
   int n = 1;
   
   printf("Введите значение аргумента x: ");
   scanf("%f", &x);
   if (fabs(x) <= 1.0)
   {
      printf("x должен быть |x| > 1\n");
      return 1;
   }
   printf("Введите точность e:");
   scanf("%f", &e);
   term = 1/x;
   while (fabs(term) > e)
   {
      sum += term;
      term *= (2*n - 1)/(x*x*(2*n + 1));
      n++;
   }
   sum *= 2;
   printf("Значение функции - %f\n", sum);
   return 0;
}
Это через рекурентную формулу, если требуется аналитический вид, то строку
C
1
term *= (2*n - 1)/(x*x*(2*n + 1));
замени на
C
1
term = 1/((2*n + 1)*pow(x, (double)(2*n + 1)));
Waveox
1 / 1 / 0
Регистрация: 26.10.2011
Сообщений: 6
27.10.2011, 00:50  [ТС]     C цикл с while #5
Спасибо за труды, разве что я уже сам к вечеру написал программу, получилось что-то вроде этого.

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <stdio.h>
#include <conio.h>
#include <math.h> 
 
int main()
{
int n=0;
 float e,x,i, sum=0;
 printf("Insert accuracy\n");
    scanf("%f", &e);
 printf("Insert x-value\n");
 scanf("%f", &x);
        if (abs(x)>1)
        {
            i = 2/((2*n+1)*pow(x,(2*n+1)));
            while (i>e) {
               sum+=i;  
               n++;
               i = 2/((2*n+1)*pow(x,(2*n+1))); }
           printf ("Result is %f",sum);
        } else printf("Incorrect number");
 
 getch();
 return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.10.2011, 01:24     C цикл с while
Еще ссылки по теме:

Нормально ли для системы один и тот же цикл запускать цикл 20 раз в секунду с итерацией до 1000 - Delphi
Нормально ли для системы один и тот же цикл запускать цикл 20 раз в секунду с итерацией до 1000? Или это большая перегрузка для...

Цикл: цикл for вообще никак не воспринимается транслятором - C++
Пишу программу, которая производит различные действия с одномерным массивом. Возникла следующая проблема: цикл for вообще никак не...

Помогите заменить цикл forech на простой цикл for - C#
Помогите пожалуйста, срочно. foreach (char xx in strX) { tmp = xx; m--; }...

Итерационный цикл и цикл с известным числом повторения - Pascal
5.12-интерационный цикл 4.9-цикл с известным числом повторений

Почему цикл на при 1 уходит в бесконечный цикл? - C++
#define _CRT_SECURE_NO_WARNINGS #include &lt;iostream&gt; #include &lt;stdio.h&gt; #include &lt;string.h&gt; int main() { int x=0, y=0,...

Одномерный массив(ЦИКЛ-ПОКА или ЦИКЛ-ДО) - Pascal ABC
Несколько школьников выстроились в шеренгу. Для каждого школьника известен день его рождения. Требуется определить, является ли...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
kazak
3034 / 2355 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
27.10.2011, 01:24     C цикл с while #6
abs работает с целыми числами, для вещественных есть функция fabs
Yandex
Объявления
27.10.2011, 01:24     C цикл с while
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru