IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

 
 Ответить  Открыть новую тему 
> Дано действительные числа х и натуральное n=5..10. Вычислить функции
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 7
Пол: Мужской

Репутация: -  0  +


Всем приветик! Помогите пожалуйста решить, все в одном проекте надо сделать:
Дано действительные числа х и натуральное n=5..10. Вычислить функции

Сообщение отредактировано: Luna -


Эскизы прикрепленных изображений
Прикрепленное изображение
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(Luna @ 28.10.2010 20:30) *
Дано действительные числа х и натуральное n=5..10. Вычислить функции
Непонятно.
Что значит n=5..10 ?
В суммах n изменяется от 0 или 1 до бесконечности.
Luna, будь добр, уточни условие, пожалуйста.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3





Группа: Пользователи
Сообщений: 7
Пол: Мужской

Репутация: -  0  +


Цитата(Lapp @ 29.10.2010 4:04) *

Непонятно.
Что значит n=5..10 ?
В суммах n изменяется от 0 или 1 до бесконечности.


n это верхняя граница, ее нужно самому задавать в пределах от 5 до 10, а нижняя 0 или 1
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(Luna @ 30.10.2010 15:16) *
n это верхняя граница, ее нужно самому задавать в пределах от 5 до 10, а нижняя 0 или 1
n - это верхняя граница чего? n?
Будь добр, пиши условие нормально. А то понимать, что у тебя n это верхняя граница n - это для нормального ума непросто..


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5





Группа: Пользователи
Сообщений: 7
Пол: Мужской

Репутация: -  0  +


Цитата(Lapp @ 30.10.2010 14:33) *

n - это верхняя граница чего? n?
Будь добр, пиши условие нормально. А то понимать, что у тебя n это верхняя граница n - это для нормального ума непросто..


Ну по смыслу выходит так, сам долго пытался понять. Нужно просто заменить переменную и все
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6





Группа: Пользователи
Сообщений: 7
Пол: Мужской

Репутация: -  0  +


Вот, есть готовая прога, все что нужно в ней. Но, проблема с третьим примером SIN X, считает немного не верно.. Выдает не совсем верный ответ при n=5 и х=0,05. Ответ получается такой: 5,32720741873556E-5
Подскажите как исправить.
p.s. чтобы программу запустить надо везде ввести данные в n и x

Сообщение отредактировано: Luna -


Прикрепленные файлы
Прикрепленный файл  1.rar ( 192.3 килобайт ) Кол-во скачиваний: 111
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +



for i:= 2 to strtoint(edit7.Text) do
fact:=fact*(2*i-1);


Эта строчка не считает факториал.

for i:= 2 to strtoint(edit7.Text) do
fact:=fact*(2*i-1)*(2*i-2);


Проверь.

Кстати, x^n не надо каждый раз считать заново. Лучше завести отдельную переменную, назвать её xn, инициализировать как икс и умножать при каждой итерации (кроме первой) на x*x.
И икс тоже лучше сразу отдельно запомнить, а не писать каждый раз StrToFloat...


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гость






Luna, ну ведь столько раз уже жевано - пережевано, как считается сумма ряда - нет, опять надо сделать неправильно! Повторяю еще раз: НАЧИНАЕТСЯ вычисление суммы ряда с нахождения, что надо сделать с n-ым членом ряда, чтобы он превратился в (n+1)-ый член ряда. Как это делается? Очень просто: делим An+1 на An. В твоем конкретном случае для синусов:

(-1)(n+1)-1*X2(n+1)-1 / (2(n+1) - 1)! делим на (-1)n-1*X2n-1 / (2n - 1)!

Путем несложных преобразований получаем, что частное равно - X2/(2n * (2n+1))

То есть, чтобы получить из ЛЮБОГО члена последовательности следующий, надо домножить его на то, что написано красным цветом. И все, первый элемент равен Х, как получить следующие - известно, никаких тебе экспонент, никаких возведений в степень, никаких вычислений факториалов, просто один цикл, получай следующий элемент и считай сумму.

Цитата
Выдает не совсем верный ответ при n=5 и х=0,05. Ответ получается такой: 5,32720741873556E-5
Сказал "А", говори и "Б". В смысле, КАКОЙ должен быть по-твоему ответ?
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9





Группа: Пользователи
Сообщений: 7
Пол: Мужской

Репутация: -  0  +


Цитата(TarasBer @ 2.11.2010 17:54) *


for i:= 2 to strtoint(edit7.Text) do
fact:=fact*(2*i-1);


Эта строчка не считает факториал.

for i:= 2 to strtoint(edit7.Text) do
fact:=fact*(2*i-1)*(2*i-2);


Проверь.

Нет, все равно не то. Понимаете, итог не должен быть отрицательным.. и не должен быть не понятный конец
( -1,38131925934753E-7 ), должно быть обычое положительное число, там что то к примеру 1,323489214

Сообщение отредактировано: Luna -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


Цитата
и не должен быть не понятный конец

действительно... непонятный какой-то. четкого хэппи-энда нет (типа: "И жили они долго и счастливо")...

Luna, почитай про форматы представления чисел, тогда поймешь, что значит такая запись.
И почему он, кстати, не должен быть отрицательным?



--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


> И почему он, кстати, не должен быть отрицательным?

> при n=5 и х=0,05

Должно получиться

m0 = 0.05
m0-m0**3/(1*2*3)+m0**5/(1*2*3*4*5)-m0**7/(1*2*3*4*5*6*7)+m0**9/(1*2*3*4*5*6*7*8*9) = 0.04997916927067833


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #12





Группа: Пользователи
Сообщений: 7
Пол: Мужской

Репутация: -  0  +


Цитата(TarasBer @ 3.11.2010 10:10) *

> И почему он, кстати, не должен быть отрицательным?

> при n=5 и х=0,05

Должно получиться

m0 = 0.05
m0-m0**3/(1*2*3)+m0**5/(1*2*3*4*5)-m0**7/(1*2*3*4*5*6*7)+m0**9/(1*2*3*4*5*6*7*8*9) = 0.04997916927067833


а теперь не подскажете что нужно сделать чтоб так у меня в программе считало? smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #13


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Цитата(Luna)

а теперь не подскажете что нужно сделать чтоб так у меня в программе считало?


Ну вот же, написано:

Цитата(volvo)

И все, первый элемент равен Х, как получить следующие


Цитата(volvo)

надо домножить его на



Цитата(volvo)

X2/(2n * (2n+1))


Цитата(volvo)

просто один цикл, получай следующий элемент и считай сумму.


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #14





Группа: Пользователи
Сообщений: 7
Пол: Мужской

Репутация: -  0  +


не ну понятно, а что и где в коде то дописать, изменить? Я в программировании то как то не силен(


Сообщение отредактировано: Luna -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #15


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(Luna @ 7.11.2010 23:54) *
что и где в коде то дописать, изменить? Я в программировании то как то не силен(

Достали уже просьбами изменить им чужой код, чтоб им сдать! Ты поройся в форуме, посмотри, сколько я уже ругался с такими. Пойми - никому тут НЕ НУЖНО, чтоб ты СДАЛ. Нам тут ЛУЧШЕ, чтоб ты ЗАВАЛИЛ, если все равно не хочешь учитья. Вот дай мне хоть одну нормальную причину, почему я тебе должен помогать обманывать препа и всех остальных. Кому от этого станет лучше? Ты понял меня, неуч??

Вот если ты придешь и скажешь: хочу научиться. Дашь одну задачу (а не список из д.з.). Покажешь, как ты сам пытался ее сделать - пусть всего два оператора, и те неправильно. ВОт тогда я урву пару часов от своего сна, чтоб помочь челу, который ХОЧЕТ НАУЧИТЬСЯ. Будет диалог, и я сделаю максимум, чтоб ты понял.

А так - я и пальцем не пошевелю. Вали отсюда и не отравляй атмосферу.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 1.11.2020 2:37
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name