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

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

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

не могу понять почему не работает программа - C++

09.12.2011, 15:29. Просмотров 455. Ответов 9
Метки нет (Все метки)

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 <iostream>
#include <conio.h>
#include <clocale>
#include <cmath>
using namespace std;
int main ()
{
setlocale (LC_ALL, "Russian"); 
cout <<"Функция Ln(x-1) через формулу Тейлора \n";
double x,E,step,sl,S;
int n;
cout <<"Введите x=";
cin >>x;
E=00001;
if 
(x<-1||x>=1) cout <<"Ошибка";
 
for (step=x,sl=x,n=1,S=0;abs(S)>=E;n*=2,step*=pow(x,2),sl+=step/n,S+=-sl);
 
cout<<S<<"\n";
cout<<log(1-x);
 
_getch();
return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.12.2011, 15:29
Здравствуйте! Я подобрал для вас темы с ответами на вопрос не могу понять почему не работает программа (C++):

Не могу понять почему не работает программа - C++
int f,x,a,b,c; cin&gt;&gt;x; if (x&gt;0) {f=pow(-x,4); cout&lt;&lt;f;} else {f=x+92; cout&lt;&lt;f;} if (x==0) {f=0;

Не могу понять почему программа работает не правильно! - C++
Задание: Программа находит в строке 1 символ который не входит во 2 заданную строку. Помогите исправить ошибку. ...

Не могу понять, почему программа неправильно работает! - C++
Изучаю С++ по Страуструпу Б. - Программирование. Принципы и практика использования C++. Есть задание: 9. Вычислите сумму введенных...

Не могу понять почему программа работает некорректно (односвязные списки) - C++
Построить однонаправленный список чисел. Затем исключить из него все повторы чисел, оставить каждое число в списке в единственном...

Не могу понять почему не работает (или правильно не работает) - C++
#include &lt;iostream.h&gt; #include &lt;conio.h&gt; #define N 5 #define M 3 void main() { int a; int i,j; cout&lt;&lt;&quot;nachalnya...

Не могу понять почему не работает - C++
#include &lt;iostream&gt; using namespace std; int main() { double a; double b; cout&lt;&lt;&quot;vvedite sumu deposita&quot;; cin&gt;&gt;a; ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Delpix
delpix.ru
19 / 19 / 1
Регистрация: 06.05.2011
Сообщений: 235
09.12.2011, 17:10 #2
Цитата Сообщение от ssv36rus Посмотреть сообщение
#include <iostream>
#include <conio.h>
#include <clocale>
#include <cmath>
using namespace std;
int main ()
{
setlocale (LC_ALL, "Russian");
cout <<"Функция Ln(x-1) через формулу Тейлора \n";
double x,E,step,sl,S;
int n;
cout <<"Введите x=";
cin >>x;
E=00001;
if
(x<-1||x>=1) cout <<"Ошибка";

for (step=x,sl=x,n=1,S=0;abs(S)>=E;n*=2,step*=pow(x,2),sl+=step/n,S+=-sl);

cout<<S<<"\n";
cout<<log(1-x);

_getch();
return 0;
}
Суть проблемы?
0
ssv36rus
0 / 0 / 0
Регистрация: 02.11.2011
Сообщений: 11
09.12.2011, 17:19  [ТС] #3
Delpix, смысла твоего вопроса я не понял,условие такое посчитать ln(1-x) с помошью разложения в ряд тейлора x принадлежит [-1,1);
x-само число
step - x в степени n
n-степень и число в знаменатиле
sl-это слагаемое которое получется в результате x(в степени n)/n
S-это сумма всех слагаемых в ряде,тоесть сам ответ

программа запускается ,но ответ не даёт,просто пустое поле
0
Миниатюры
не могу понять почему не работает программа  
Delpix
delpix.ru
19 / 19 / 1
Регистрация: 06.05.2011
Сообщений: 235
09.12.2011, 17:26 #4
Цитата Сообщение от ssv36rus Посмотреть сообщение
программа запускается ,но ответ не даёт,просто пустое поле
Вот что я хотел узнать
0
ssv36rus
0 / 0 / 0
Регистрация: 02.11.2011
Сообщений: 11
09.12.2011, 17:32  [ТС] #5
Delpix, понятно)))ну так есть предположения как можно исправить?а то я уже пол дня над ней сижу

Добавлено через 2 минуты
Delpix, и это как я понял его циклит,я какие то махинации проводил и он выдавал ответ,но он зацикливался
0
Delpix
delpix.ru
19 / 19 / 1
Регистрация: 06.05.2011
Сообщений: 235
09.12.2011, 17:49 #6
Цитата Сообщение от ssv36rus Посмотреть сообщение
Delpix, понятно)))ну так есть предположения как можно исправить?а то я уже пол дня над ней сижу

Добавлено через 2 минуты
Delpix, и это как я понял его циклит,я какие то махинации проводил и он выдавал ответ,но он зацикливался
Можешь дать пример правильного решение? К примеру если х=-1 чему равна S?
0
ssv36rus
0 / 0 / 0
Регистрация: 02.11.2011
Сообщений: 11
09.12.2011, 17:53  [ТС] #7
Delpix, при x = 0.2 s=-0.223...
0
Delpix
delpix.ru
19 / 19 / 1
Регистрация: 06.05.2011
Сообщений: 235
09.12.2011, 17:55 #8
Если не ошибаюсь то ответ вроде правильно выдает:

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 <iostream>
#include <clocale>
#include <cmath>
using namespace std;
int main ()
{
setlocale (LC_ALL, "Russian"); 
cout <<"Функция Ln(x-1) через формулу Тейлора \n";
double x,E,step,sl,S;
int n;
cout <<"Введите x=";
cin>>x;
E=00001;
if(x<-1||x>=1) 
cout<<"Ошибка";
for (step=x,sl=x,n=1,S=0;abs(S)>=E;n*=2);
    {
    step*=pow(x,2);
    sl+=step/n;
    S+=-sl;
    }
cout<<S<<endl;
cout<<log(1-x)<<endl;
return 0;
}
1
ssv36rus
0 / 0 / 0
Регистрация: 02.11.2011
Сообщений: 11
09.12.2011, 18:03  [ТС] #9
Delpix, спасибо вроде работает,но в чём была ошибка?
0
Delpix
delpix.ru
19 / 19 / 1
Регистрация: 06.05.2011
Сообщений: 235
09.12.2011, 18:15 #10
Походу
step*=pow(x,2);
sl+=step/n;
S+=-sl;

это операторы и они должны находится в теле цикла.

Да кстати, вот усовершенствованный вариант, теперь во время ошибки не выводятся левые числа.
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
29
30
#include <iostream>
#include <clocale>
#include <cmath>
using namespace std;
int main ()
{
setlocale (LC_ALL, "Russian"); 
cout <<"Функция Ln(x-1) через формулу Тейлора \n";
double x,E,step,sl,S;
int n;
cout <<"Введите x=";
cin>>x;
E=00001;
if(x<-1||x>=1) 
{
cout<<"Ошибка. Число должно принадлежать отрезку [-1,1)"<<endl;
}
else
{
    for (step=x,sl=x,n=1,S=0;abs(S)>=E;n*=2);
    {
    step*=pow(x,2);
    sl+=step/n;
    S+=-sl;
    cout<<S<<endl;
    cout<<log(1-x)<<endl;
    }
}
return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.12.2011, 18:15
Привет! Вот еще темы с ответами:

Не могу понять почему не работает - C++
#include &lt;iostream&gt; #include &lt;string&gt; using namespace std; const int arrSize = 15; int main() { string Phone; ...

не могу понять почему не работает - C++
Пожалуйста ,помоги,найти ошибку... услвие задачи Подсчитать количество вхождений букв и слов в тексте #include&lt;fstream.h&gt; ...

Не могу понять почему не работает - C++
#include &quot;stdio.h&quot; #include &quot;math.h&quot; #include &quot;conio.h&quot; #define E 1e-6 int main() { float x,y,a; int n; ...

Программа на С++ вылетает, не могу понять почему!? - C++
#include &lt;iostream&gt; #include &lt;stdlib.h&gt; #include &lt;stdio.h&gt; #include &lt;allegro.h&gt; #include &lt;math.h&gt; #include &lt;time.h&gt; #define W...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
09.12.2011, 18:15
Ответ Создать тему
Опции темы

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