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

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

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.11.2015, 15:59   #1
TEIROP
 
Регистрация: 24.09.2015
Сообщений: 4
По умолчанию Определить количество циклов при вычислении с точностью 0,001 суммы

Надеюсь на вашу помощь.
Изображения
Тип файла: jpg дщдф.jpg (2.8 Кб, 72 просмотров)
TEIROP вне форума Ответить с цитированием
Старый 01.11.2015, 16:08   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Попробуй взять за основу этот пример:
http://www.programmersforum.ru/showp...1&postcount=35
Только sign=-sign;можешь выкинуть и написать y+=x/fac;
Так же вместо fac*=i; напиши
Код:
fac*=i*(i+1);
А вообше не помешало бы твои пробы увидеть
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 01.11.2015, 16:30   #3
TEIROP
 
Регистрация: 24.09.2015
Сообщений: 4
По умолчанию

Что бы попробовать нужно знать,что делать,а тут такое условие,что я даже не понимаю,что от меня хотят.

А условие данной задачи подходит к моему?Просто я вообще в жтой задаче ничего не понимаю

Код:
#include <stdafx.h>
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
  
    double
     
     x=0.5,
  
     yLast=0.0,
  
     y=1.0,
  
     eps=0.0001;

    int
    
    fac=1,
    
    sign=-1,
   
    i;
   
    for(i=1;i==1 || fabs(y-yLast)>eps;i++){
       
        yLast=y;
     
        fac*=i*(i+1);
 
        x*=x;
        
        y+=sign*x/fac;
 
        y+=x/fac;
   
        printf("%d\t%5.10f\n",i,y);
    }
  
    printf("Result = \t%5.10f\n",y);
	system ("pause");
    return 0;
}

Последний раз редактировалось Stilet; 01.11.2015 в 16:36.
TEIROP вне форума Ответить с цитированием
Старый 01.11.2015, 16:36   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Посмотри пример, что я дал по ссылке. Там с комментариями. От твоей задачи тамошняя отличается только шагом операндов, а в целом все то же самое: Цикл с условием окончания, вычисление факториала и степени.
Цитата:
я вообще в жтой задаче ничего не понимаю
Ну код ты, я вижу, пристроил. Запусти - что покажет?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 01.11.2015, 16:40   #5
TEIROP
 
Регистрация: 24.09.2015
Сообщений: 4
По умолчанию

Ну ответ он показывает,просто я не знаю правильный он или нет
Изображения
Тип файла: jpg результ.jpg (16.7 Кб, 47 просмотров)
TEIROP вне форума Ответить с цитированием
Старый 01.11.2015, 16:50   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А что мешает проверить?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
При приближенном вычислении суммы ряда расчет выполнять с точностью E. Использовать цикл с предусловием и цикл с постусловием. dvpvitas Паскаль, Turbo Pascal, PascalABC.NET 0 16.06.2015 18:43
Найти сумму элементов последовательности с точностью 0,001: jager666 Паскаль, Turbo Pascal, PascalABC.NET 1 17.11.2012 13:46
Pascal ошибка при вычислении суммы ряда с заданной точностью RavenGuitarist Помощь студентам 4 23.08.2011 16:11
266. определить, как будут изменяться потери h=n∙S∙Q2если сопротивление S=0.001, а количество n будет пос Алексей91 Паскаль, Turbo Pascal, PascalABC.NET 1 16.04.2011 17:42