Приближенные вычисления, задача на Паскале |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Приближенные вычисления, задача на Паскале |
real888 |
Сообщение
#1
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: 0 |
Разработать алгоритм и программу вычисления приближенного значения суммы
x-1/x + (x-2)2/2x2 + (x-3)3/3x3 +… С заданной точностью Е (0,1>=E>=0.0001). Вычисления следует прекратить, когда очередной элемент ряда , включаемый в сумму не превышает точность Е. Точность Е и Х (Х-действительное число Х>0,5) уст. пользователем. Наложить верхнее ограничение на значение Х. Кто знает напишите на Паскале или помогите чем можете Это название было тоже не ахти информативным, я исправил, в следующий раз будь внимательней и прочти правила форума Спасибо в следующий раз учту Сообщение отредактировано: volvo - |
Гость |
Сообщение
#2
|
Гость |
|
klem4 |
Сообщение
#3
|
Perl. Just code it! Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
Исользуй поиск "приближенные вычисления", "приближенное вычисления фуекции"
подобные задачи решались неоднократно + FAQ : как разложить ф-ю в ряд ? Volvo Опередил ;) Сообщение отредактировано: klem4 - -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
real888 |
Сообщение
#4
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: 0 |
А вот этот знак ^ это степень?
|
klem4 |
Сообщение
#5
|
Perl. Just code it! Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
Цитата А вот этот знак ^ это степень? угу .. отвечать по форме!!! Не угу а так точно! Сообщение отредактировано: Altair - -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
real888 |
Сообщение
#6
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: 0 |
я написал так, но работает не очень, подправте если знаете
Код uses crt; var sum,x,e:real; i,j:integer; c: char; buf:array[1..2] of real; begin textcolor(red); repeat Begin {$I-} clrscr; repeat clrscr; settextbuf(input, buf); write('Vvedite chislo x ot 0.5 do 5.5 '); readln(x); until ((ioresult=0)and(x>0.5)and(x<5.5)); i:=1;sum:=0; Begin e:=(x-i)/x; for j:=1 to (i-1) do Begin e:=e*e; end; e:=e/i; sum:=sum+e; i:=i+1; end; writeln('sum= ', sum:3:3); write(#13#10); writeln('dlya vihoda najmite "N"'); writeln('dlya prodoljeniya lubaya klavisha'); c:=readkey; end; until (c=#110); end. Сообщение отредактировано: volvo - |
volvo |
Сообщение
#7
|
Гость |
Цитата работает не очень - это не определение... Что именно не работает?P.S. Теги это не для тебя? Ты избранный? |
volvo |
Сообщение
#8
|
Гость |
Подсказка:
как ты думаешь, что будет вычислено в этой части программы, при I = 3 ? e:=(x-i)/x; |
real888 |
Сообщение
#9
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: 0 |
volvo ты любишь давать намеки, если ты знаешь как исправить напиши пожалуйста
|
klem4 |
Сообщение
#10
|
Perl. Just code it! Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
Он описался немного, не при i=3, а при i=1, у тебя получается цикл
for j := 1 to 0 ... Сообщение отредактировано: klem4 - -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
volvo |
Сообщение
#11
|
Гость |
Я не люблю решать за кого-то задачу полностью !!! Подсказать, где кроется ошибка - это одно, а дать отлаженное готовое решение - СОВСЕМ другое.
klem4, давай не будем говорить от моего имени! Внимательно смотрим на приведенный фрагмент и видим, что при I = 3 получается не E^3 (как задумывалось) а E^4... Дальше объяснять? |
klem4 |
Сообщение
#12
|
Perl. Just code it! Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
Опс.. извиняюсь , тогда получается в этом месте тоже ошибка ....
i:=1; sum := 0; Begin e:=(x-i)/x; for j:=1 to (i-1) do ps теги pascоde и b лагать вместе начали ;( -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
real888 |
Сообщение
#13
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: 0 |
у меня еще вопрос. Как сделать чтобы точность Е тоже вводил пользователь
|
Ozzя |
Сообщение
#14
|
Гуру Группа: Пользователи Сообщений: 1 220 Пол: Мужской Репутация: 16 |
Код var e:real; ... WriteLn('Введите точность:'); ReadLn(e); ... Сообщение отредактировано: Ozzя - |
real888 |
Сообщение
#15
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: 0 |
да это понятно, только что с этой точностью, что без нее результат одинаковый
|
klem4 |
Сообщение
#16
|
Perl. Just code it! Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
Ну так если ты ее вводишь, то вычислять - то ее уже не надо .. а вообще если ты все правильно сделал и результат одинаковый, то это хорошо ..)
-------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
Текстовая версия | 6.05.2024 4:24 |