Об игре
Новости
Войти
Регистрация
Рейтинг
Форум
22:13
3535
 online
Требуется авторизация
Вы не авторизованы
   Форумы-->Форум для внеигровых тем-->
1|2

Авторпомогите заставить правильно работать программу на c++
никак не пойму в чем проблема , выдает n равное 2293560
тому кто нормально поможет в подарок чисто символические 2000-5000з
#include<iostream>
#include<conio.h>
#include<math.h>
#include<locale.h>

using namespace std;

int main()
{
setlocale(LC_ALL,"");
bool ok = true;
double a,b,c=1,y=1;
int n;
const int e=500;
cout<<"введите аргумент и точность\n";
cin>>a>>b;
for(int n=0;fabs(c)>b;n++)
{
c*=a*a /((2*n+1)*(2*n+2));
y += c;
if (n>e)
{
cout<<"ряд расходится\n";
ok = false;
break;
}
cout<<" однако"<<n;
}
if (ok)
{
cout<<"значение функции "<<y<<" для х = "<<a<<"\n вычисленно после "<<n<<" итераций";
}
getch();
return 0;
}
Молотком её!
для Timotei_:
это не гуманно )
для Timotei_:
Поддерживаю! Мне на уроках информатики мозк учитель выносит этой шнягой, а тут еще и на форуме С++
помогите заставить правильно работать программу на c++
Программу заставить правильно работать нельзя. С ней надо аккуратно (ласково).
К сожаленью я с программами на c++ не умею общаться.
в итерациях число не меняется что ли?
если n у тебя более 500 - то должна быть надпись о расхождении
откуда число то у тебя вылазит?
для Rinarizutakaari:
ага
вот я и думаю от куда , скорее всего из за свойств for и fabs
блин , у меня ж n интовый , из за этого и глючит
ну интовый, и что?
у тебя n больше 500 быть не может.
кстати объявлен 2 раза зачем то
поставил n double , выдаваемое число поменялось на 5.2837е-308
#include<iostream>
#include<conio.h>
#include<math.h>
#include<locale.h>

using namespace std;

int main()
{
setlocale(LC_ALL,"");
bool ok = true;
double a,b,c=1,y=1,n;
const int e=500;
cout<<"&#226;&#226;&#229;&#228;&#232;&#242;&#229; &#224;&#240;&#227;&#243;&#236;&#229;&#237;&#242; &#232; &#242;&#238;&#247;&#237;&#238;&#241;&#242;&#252;\n";
cin>>a>>b;
for(double n=0;fabs(c)>b;n++)
{
c*=a*a /((2*n+1)*(2*n+2));
y += c;
if (n>e)
{
cout<<"&#240;&#255;&#228; &#240;&#224;&#241;&#245;&#238;&#228;&#232;&#242;&#241;& #255;\n";
ok = false;
break;
}
cout<<" &#238;&#228;&#237;&#224;&#234;&#238;"<<n;
}
if (ok)
{
cout<<"&#231;&#237;&#224;&#247;&#229;&#237;&#232;&#2 29; &#244;&#243;&#237;&#234;&#246;&#232;&#232; "<<y<<" &#228;&#235;&#255; &#245; = "<<a<<"\n &#226;&#251;&#247;&#232;&#241;&#235;&#229;&#237;&#237;& #238; &#239;&#238;&#241;&#235;&#229; "<<n<<" &#232;&#242;&#229;&#240;&#224;&#246;&#232;&#233;";
}
getch();
return 0;
}
для Rinarizutakaari:
в смысле int n; ? просто когда не писал вылазила ошибка
lookup of `n' changed for new ISO `for' scoping
и еще
using obsolete binding at `n'
я математику уже подзабыл.
по какому принципу находится значение функции?

если n убегает за 500 - ряд расходится.
но какие ограничение на y чтобы определить что решение найдено?
for(n=0;fabs(c)>b;n++)
для _соколикс_:
Убей их всех молотком!
для aar72:
теперь выдает 0
попробуй отследить значения c и y
я помню как то в институте 9 часов экзамен по информатике сдавал. Из-за того что простейший код на сортировку пузырькем - неправильно сортировал массив. Писал его 3мя разными способами - не работает и все. Препод уже с книжки пришел набрал - не работает.

видимо отсюда и истекает индийский код типа if (1=1) {}
для Rinarizutakaari:
у меня похоже тоже самое , ладно спасибо всем за помощь
1|2
К списку тем
2007-2025, онлайн игры HeroesWM