![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
PUMA |
![]() ![]()
Сообщение
#1
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 24 Пол: Женский Реальное имя: Оля Репутация: ![]() ![]() ![]() |
Для заданных границ интегрирования a и b вычислите значение определенного интеграла следующего вида (используя рекурсию)
![]() как применить рекурсию? ![]() program r; Правильно ли я вообще решила ![]() Сообщение отредактировано: PUMA - 19.06.2010 18:23 -------------------- Никогда, никогда ни о чем не жалейте.Поздно начали вы или рано ушли.Кто-то пусть гениально играет на флейте.Но ведь песни берет он из вашей души.Никогда, никогда ни о чем не жалейте —Ни потерянных дней, ни сгоревшей любви.Пусть другой гениально играет на флейте,Но еще гениальнее слушали вы.
|
![]() ![]() |
Lapp |
![]()
Сообщение
#2
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
значение определенного интеграла следующего вида (используя рекурсию) ну и какого же вида? ![]() ![]() PUMA, ты забыла привести вид, или не смогла? Можно сделать картинкой, а можно просто от руки, типа так: [интеграл от a до b] scrt(sin (x2)) - верхние и нижние индексы есть в форме ввода, а остальное как сумеешь. Цитата как применить рекурсию? Вообще, применение рекурсии для вычисления интеграла - абсолютная нелепость. Но если надо - покажем.. Я думаю, имеется в виду рекурсивно прибавлять очередной кусочек при суммировании. То есть заменить цикл до m на рекурсию. Это медленно, требует много памяти, некрасиво, но - если такая цель, то можно.. ))Цитата Правильно ли я вообще решила Как это можно сказать, не зная, что требуется? ))![]() Приведи условие - посмотрим. Но, вообще-то, уже и так видно, что есть, что исправлять. И, пока я разглядывал твои вычисления в попытках догадаться, что же это за функция была, у меня возникли большие сомнения в том, что это может быть правильно.. Например - почему у тебя в вычислениях функции присутствуют a и b? как это вообще возможно? функция не может зависеть от пределов интегрирования. Ты уверена, что, например, не интегрируешь первообразную? )) Давай, ждем вида функции. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
PUMA |
![]()
Сообщение
#3
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 24 Пол: Женский Реальное имя: Оля Репутация: ![]() ![]() ![]() |
удалила случайно формулу
![]() Эскизы прикрепленных изображений ![]() -------------------- Никогда, никогда ни о чем не жалейте.Поздно начали вы или рано ушли.Кто-то пусть гениально играет на флейте.Но ведь песни берет он из вашей души.Никогда, никогда ни о чем не жалейте —Ни потерянных дней, ни сгоревшей любви.Пусть другой гениально играет на флейте,Но еще гениальнее слушали вы.
|
Lapp |
![]()
Сообщение
#4
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
удалила случайно формулу Что это??.. ![]() аа... ну, тогда ясно, где и зачем тут рекурсия... Добавлено через 5 мин. Но я тебя должен окончательно разочаровать: нет, твое решение неправильное, и это точно уже ((. Ты видишь, справа такой же интегральчик, как и слева? Вот отсюда и рекурсия. Погоди - а ты уверена, что тебе нужен именно определенный интеграл? -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
PUMA |
![]()
Сообщение
#5
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 24 Пол: Женский Реальное имя: Оля Репутация: ![]() ![]() ![]() |
ну в задании так написано...откуда тогда взялись a и b?
вообще не очень понимаю как и что делать надо ![]() -------------------- Никогда, никогда ни о чем не жалейте.Поздно начали вы или рано ушли.Кто-то пусть гениально играет на флейте.Но ведь песни берет он из вашей души.Никогда, никогда ни о чем не жалейте —Ни потерянных дней, ни сгоревшей любви.Пусть другой гениально играет на флейте,Но еще гениальнее слушали вы.
|
Lapp |
![]()
Сообщение
#6
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Цитата вообще не очень понимаю как и что делать надо Немудрено, я, например, тоже с трудом въезжаю.. Хорошо, давай разбираться )).![]() ну в задании так написано...откуда тогда взялись a и b? a и b - это просто параметры, входящие в функцию. И они, конечно, должны быть заданы, если в итоге требуется числовой ответ.То, что тут написано - это уже готовая формула интеграла, причем НЕопределенного (только константа у них куда-то затерялась..) То есть численное интегрирование (всякие трапеции и Симпсоны) тут не требуется. Нужно только сделать прогу для расчета по этим формулам. Стало яснее? )) или продолжить? P.S. если можно, приведи условие поточнее. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
PUMA |
![]()
Сообщение
#7
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 24 Пол: Женский Реальное имя: Оля Репутация: ![]() ![]() ![]() |
продолжить
![]() в задании только написано:Для заданных границ интегрирования a и b вычислите значение определенного интеграла следующего вида (используя рекурсию) и дана эта огроменная формула..мало того она еще с опечатками была дана ![]() Сообщение отредактировано: PUMA - 20.06.2010 11:28 -------------------- Никогда, никогда ни о чем не жалейте.Поздно начали вы или рано ушли.Кто-то пусть гениально играет на флейте.Но ведь песни берет он из вашей души.Никогда, никогда ни о чем не жалейте —Ни потерянных дней, ни сгоревшей любви.Пусть другой гениально играет на флейте,Но еще гениальнее слушали вы.
|
Lapp |
![]()
Сообщение
#8
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
продолжить С какими опечатками? ты уверена?![]() в задании только написано:Для заданных границ интегрирования a и b вычислите значение определенного интеграла следующего вида (используя рекурсию) и дана эта огроменная формула..мало того она еще с опечатками была дана ![]() Если a и b - пределы, то либо это интеграл чего-то еще, либо я персидский шах.. Вот, смотри, я наборсал тут функцию по этой формуле. В ней рекурсия есть - видишь? Функция IntPow - вспомогательная, вычисляет целую степень. Копирую сюда без отладки, извини уж.. Спрашивай, где непонятно. function IntPow(x: double; n: integer): double; что-то все же неясно с заданием.. что за опечатки были? скажи, ладно? -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
PUMA |
![]()
Сообщение
#9
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 24 Пол: Женский Реальное имя: Оля Репутация: ![]() ![]() ![]() |
1)Там где n>=2 в числителе,где синус было (a*sinx-n*b*cos bx) ,то есть не хватало в синусе буквы b
2)n=1, знак минус перед выражением 3)n=0, экспонента была в степени a*n , а не a*x вроде как все. прикреплю картинку с первоначальным видом. Эскизы прикрепленных изображений ![]() -------------------- Никогда, никогда ни о чем не жалейте.Поздно начали вы или рано ушли.Кто-то пусть гениально играет на флейте.Но ведь песни берет он из вашей души.Никогда, никогда ни о чем не жалейте —Ни потерянных дней, ни сгоревшей любви.Пусть другой гениально играет на флейте,Но еще гениальнее слушали вы.
|
Lapp |
![]()
Сообщение
#10
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
1)Там где n>=2 в числителе,где синус было (a*sinx-n*b*cos bx) ,то есть не хватало в синусе буквы b хм.. а откуда уверенность, что это опечатки? из общих соображений или есть эта формула в справочнике? Вообще, должна быть.. но я сейчас навскидку не нашел ((. Надо посерьезнее поискать.2)n=1, знак минус перед выражением 3)n=0, экспонента была в степени a*n , а не a*x вроде как все. прикреплю картинку с первоначальным видом. Буква b под синусом - это да, похоже, что должна быть. А вот про минус я как-то сомневаюсь.. Ну как, разобралась с функцией? -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
PUMA |
![]()
Сообщение
#11
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 24 Пол: Женский Реальное имя: Оля Репутация: ![]() ![]() ![]() |
из общих соображений
![]() да вроде все понятно))первое это степень считаем.ставим условие если она отрицательна.второе эт мы уже непосредственно считаем при разных значениях n. так? ![]() Сообщение отредактировано: PUMA - 20.06.2010 12:36 -------------------- Никогда, никогда ни о чем не жалейте.Поздно начали вы или рано ушли.Кто-то пусть гениально играет на флейте.Но ведь песни берет он из вашей души.Никогда, никогда ни о чем не жалейте —Ни потерянных дней, ни сгоревшей любви.Пусть другой гениально играет на флейте,Но еще гениальнее слушали вы.
|
Lapp |
![]()
Сообщение
#12
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
из общих соображений ![]() Цитата да вроде все понятно))первое это степень считаем.ставим условие если она отрицательна.второе эт мы уже непосредственно считаем при разных значениях n. так? функция для степени - чисто вспомогательная. В ней я немного лишнего наворотил.. в этой задаче n не может быть отрицательным, так что проверка и все, что внутри делается - это все лишнее, можно выбросить. Я сделал из любви к общности - понимаешь?Основное, на что тебе тут надо обратить внимание - это как работает рекурсия. Еще раз посмотри и проследи логику, чтоб никаких вопросов не оставалось неотвеченных. Я жду твоего ответа. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Lapp |
![]()
Сообщение
#13
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Есть эта формула в Википедии ))
То есть, почти такая, там нету b. Но оно вроде легко туда вводится заменой типа x=by.. или нет? тяжко шевелить извилинами в такую позднь.. ( -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
PUMA |
![]()
Сообщение
#14
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 24 Пол: Женский Реальное имя: Оля Репутация: ![]() ![]() ![]() |
function IntPow(x: double; n: integer): double; вроде как решает -------------------- Никогда, никогда ни о чем не жалейте.Поздно начали вы или рано ушли.Кто-то пусть гениально играет на флейте.Но ведь песни берет он из вашей души.Никогда, никогда ни о чем не жалейте —Ни потерянных дней, ни сгоревшей любви.Пусть другой гениально играет на флейте,Но еще гениальнее слушали вы.
|
Lapp |
![]()
Сообщение
#15
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
вроде как решает Вау! респект тебе и твоим преподпвателям: ничего лишнего, никаких идиотских CRT, и даже печать результата непосредственно из функции без всяких перекладываний - уважаю! )) Только надо бы сдвиги делать нормальные.. иначе увязнешь на второй странице кода.. Очень просто: - после begin (case, repeat, while) все сдвигаем право на 2 поз - перед end (until) - влево на 2 поз - между функциями оставляй строку (лучше две) - разделы декларвций тоже двигаем Вот, посмотри и старайся так делать function IntPow(x: double; n: integer): double; Только сейчас заметил, что ты переделала IntPow .. Ага, я ошибся.. забыл вычитать n. Нужно было вот так: function IntPow(x: double; n: integer): double;Молодец! )) Твоя функция, правда, не будет работать с отрицательными n, но оно тут и не нужно. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
PUMA |
![]()
Сообщение
#16
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 24 Пол: Женский Реальное имя: Оля Репутация: ![]() ![]() ![]() |
что то я не совсем поняла зачем вычитать при n>0
r:=r*x; Dec(n) ![]() -------------------- Никогда, никогда ни о чем не жалейте.Поздно начали вы или рано ушли.Кто-то пусть гениально играет на флейте.Но ведь песни берет он из вашей души.Никогда, никогда ни о чем не жалейте —Ни потерянных дней, ни сгоревшей любви.Пусть другой гениально играет на флейте,Но еще гениальнее слушали вы.
|
Lapp |
![]()
Сообщение
#17
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
что то я не совсем поняла зачем вычитать при n>0 r:=r*x; Dec(n) ![]() Это не при n>0, а пока n>0. Это цикл. При каждом умножении r уменьшаем n на 1. Получается как бы счетчик. Когда n обнулится - выходим из цикла. Это как бы твой for, только наоборот, сверху вниз. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
PUMA |
![]()
Сообщение
#18
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 24 Пол: Женский Реальное имя: Оля Репутация: ![]() ![]() ![]() |
Это не при n>0, а пока n>0. Это цикл. При каждом умножении r уменьшаем n на 1. Получается как бы счетчик. Когда n обнулится - выходим из цикла. Это как бы твой for, только наоборот, сверху вниз. ага,всё поняла ![]() -------------------- Никогда, никогда ни о чем не жалейте.Поздно начали вы или рано ушли.Кто-то пусть гениально играет на флейте.Но ведь песни берет он из вашей души.Никогда, никогда ни о чем не жалейте —Ни потерянных дней, ни сгоревшей любви.Пусть другой гениально играет на флейте,Но еще гениальнее слушали вы.
|
![]() ![]() |
![]() |
Текстовая версия | 20.06.2025 23:19 |