![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 24.12.2008
Сообщений: 15
|
![]()
само задание такого. вводим с клавиатуры диапазон х(от начального до конечного и шаг) вводим точность и программа высчитывает сумму ряда.
ряд такой -(cумма)x^n /n я написал вот такой вот код: int main() { const int MaxIter = 500; double x, Xn, Xk, dx, eps; int n=1; char a[]="введите аргументы и точность\n"; CharToOem(a,a); cout << a; cin >> Xn >> Xk >> dx >> eps; printf("-------------------------------------\n"); printf("| X | Y | N |\n"); printf("-------------------------------------\n"); double ch, y; for (x=Xn; x<=Xk; x+=dx) { while(fabs(ch)>eps) { y+=ch; ch*=x*n/(n+1); n++; } if (n>MaxIter) { char b[]="ряд расходится/n"; CharToOem(b,b); cout << b; } printf("|%9.2lf |%9.2lf |%9.0d |\n", x, y, n-1); } getch(); return 0; } в итоге программа ввиде таблицы перечисляет только х, а сумма всегда равна нулю. помгогите пожалуйста |
![]() |
![]() |
![]() |
#2 | |
Форумчанин
Регистрация: 04.02.2011
Сообщений: 260
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 24.12.2008
Сообщений: 15
|
![]()
я переделал, но всёравно не считает сумму, тупо нуль
int main() { const int MaxIter = 500; float x, Xn, Xk, dx; float eps; float ch=Xn, y=-ch; int n=1; char a[]="Ââåäèòå àðãóìåíòû(íà÷. è êîí.), øàã è òî÷íîñòü\n"; CharToOem(a,a); cout << a; cin >> Xn >> Xk >> dx >> eps; printf("-------------------------------------\n"); printf("| X | Y | N |\n"); printf("-------------------------------------\n"); for (x=Xn; x<=Xk; x+=dx) { while(fabs(ch)>eps) { n++; ch*=x*n/(n+1); y-=ch; } if (n>MaxIter) { char b[]="Ðÿä ðàñõîäèòñÿ!/n"; CharToOem(b,b); cout << b; } printf("|%9.2lf |%9.2lf |%9.0i |\n", x, y, n); } getch(); return 0; } |
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 15.01.2010
Сообщений: 948
|
![]()
1. Перед входом в цикл while n, ch и y хорошо бы инициализировать.
2. Какие входные значения Вы задаёте? (особенно - Xn и Xk ?). 3. Не смешивайте в одной программе чисто C-шные и "плюсовые" операторы ввода-вывода. Во первых - моветон, во вторых - ошарашивающие новичка эффекты бывают. 4. Тексты программ кнопочкой <#> выделяйте, пожалуйста... Added 20:47 CET 5. Предохранитель от несходимости по MaxIter так, как Вы его запрограммировали, - до одного места... Последний раз редактировалось Vago; 30.03.2011 в 22:46. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Найти сумму ряда | evklid | Помощь студентам | 2 | 10.11.2010 17:13 |
Найти сумму ряда | 11111 | Помощь студентам | 14 | 01.11.2010 19:55 |
Найти сумму ряда | xdozorx | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 10.06.2010 11:20 |
Как найти сумму ряда? | Razin | Помощь студентам | 0 | 17.12.2009 22:30 |
Найти сумму ряда с точностью e, если дан общий член этого ряда | JiLiYa | Общие вопросы C/C++ | 2 | 18.02.2009 11:11 |