Вычислить с заданной точностью ε |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Вычислить с заданной точностью ε |
marwell |
19.11.2009 21:37
Сообщение
#1
|
|||
Бывалый Группа: Пользователи Сообщений: 198 Пол: Мужской Репутация: 1 |
задали задачу может, кто сможет помочь? я написал программу
var x,y,z,i,n: integer; задание прикреплено
Эскизы прикрепленных изображений |
|||
Lapp |
20.11.2009 12:25
Сообщение
#2
|
Уникум Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
Пробовал с while,но прога вычисляет неверно Покажи вариант с while, плз.-------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Unconnected |
20.11.2009 22:11
Сообщение
#3
|
mea culpa Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: 24 |
А какие исходные данные известны, x,n и точность? Точность - это в смысле количество знаков после запятой?
-------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
marwell |
20.11.2009 23:00
Сообщение
#4
|
Бывалый Группа: Пользователи Сообщений: 198 Пол: Мужской Репутация: 1 |
Покажи вариант с while, плз.
Добавлено через 3 мин. А какие исходные данные известны, x,n и точность? Точность - это в смысле количество знаков после запятой? x и n вводятся пользователем, точность - это типа как только очередное значение слагаемого становится меньше ε, цикл останавливается и выводится сумма |
Lapp |
21.11.2009 4:03
Сообщение
#5
|
Уникум Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
marwell, тебе не нужно вводить n - оно определяется точностью. Цикл for совсем лишний. И с типами чисел ты все перепутал - как могли быть x,y,z целыми? Речь же идет о вещественных. Кроме прочего, лучше использовать double вместо real. И последнее: не нужно отдельно считать числитель и знаменатель - будет короче, проще и надежнее (меньше вероятность переполнения).
Смотри, как надо: var Что неясно - спрашивай. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
marwell |
21.11.2009 21:59
Сообщение
#6
|
Бывалый Группа: Пользователи Сообщений: 198 Пол: Мужской Репутация: 1 |
marwell, тебе не нужно вводить n - оно определяется точностью. Цикл for совсем лишний. И с типами чисел ты все перепутал - как могли быть x,y,z целыми? Речь же идет о вещественных. Кроме прочего, лучше использовать double вместо real. И последнее: не нужно отдельно считать числитель и знаменатель - будет короче, проще и надежнее (меньше вероятность переполнения). Смотри, как надо: var Что неясно - спрашивай. понятно.Но так как тема у меня циклы, то и прогу надо делать с циклами, обязательно |
Lapp |
22.11.2009 2:01
Сообщение
#7
|
Уникум Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
понятно.Но так как тема у меня циклы, то и прогу надо делать с циклами, обязательно ммм... У меня возникло смутное подозрение, что ты хочешь сказать, что эта прога без цикла. Тогда я сомневаюсь, что тебе на самом деле понятно.. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
marwell |
22.11.2009 10:01
Сообщение
#8
|
Бывалый Группа: Пользователи Сообщений: 198 Пол: Мужской Репутация: 1 |
|
Lapp |
22.11.2009 12:10
Сообщение
#9
|
Уникум Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
училка говорит,что тут нужен while я имею ввиду, что надо делать с for, а не с inc Ну, и чему верить? А теперь послушай. Задачи такого типа НИКОГДА не решаются с циклом for. Если не веришь мне, спроси свою "училку". Это во-первых. Во-вторых, никто и никогда не станет всовывать в такую программу два цикла. Поэтому, если она сказала while, то значит этот while не вместо if, а вместо for. И если она и сказала "вместо if" то имела она в виду, что условие, которое в иф - оно должно быть в вайл. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
marwell |
1.01.2010 18:04
Сообщение
#10
|
Бывалый Группа: Пользователи Сообщений: 198 Пол: Мужской Репутация: 1 |
marwell, тебе не нужно вводить n - оно определяется точностью. Цикл for совсем лишний. И с типами чисел ты все перепутал - как могли быть x,y,z целыми? Речь же идет о вещественных. Кроме прочего, лучше использовать double вместо real. И последнее: не нужно отдельно считать числитель и знаменатель - будет короче, проще и надежнее (меньше вероятность переполнения). Смотри, как надо: var Что неясно - спрашивай. я ошибаюсь, или тут в этой строчке "y:=y*2*x/i;" числитель делится на очередное число, а не на факториал? этого числа? |
volvo |
1.01.2010 18:22
Сообщение
#11
|
Гость |
Цитата я ошибаюсь, или тут в этой строчке "y:=y*2*x/i;" числитель делится на очередное число, а не на факториал? этого числа? Да, именно так и происходит, ты не ошибаешься. А теперь подумай, что произойдет, если на первой итерации поделим на 1, на второй на 2, на третьей на 3, и так далее? В итоге на что поделим? |
marwell |
1.01.2010 18:37
Сообщение
#12
|
Бывалый Группа: Пользователи Сообщений: 198 Пол: Мужской Репутация: 1 |
Да, именно так и происходит, ты не ошибаешься. А теперь подумай, что произойдет, если на первой итерации поделим на 1, на второй на 2, на третьей на 3, и так далее? В итоге на что поделим? и так далее на очередное число. Но ведь факториал это произведение, например если n=5 то 1*2*3*4*5? |
Lapp |
1.01.2010 19:05
Сообщение
#13
|
Уникум Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
и так далее на очередное число. Но ведь факториал это произведение, например если n=5 то 1*2*3*4*5? Да. Но 1/n! = 1/(1*2*3*..*n) = 1/1/2/3/../n -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
marwell |
1.01.2010 19:25
Сообщение
#14
|
Бывалый Группа: Пользователи Сообщений: 198 Пол: Мужской Репутация: 1 |
|
Lapp |
1.01.2010 19:42
Сообщение
#15
|
Уникум Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
я уже не знаю что делать училка говорит, что надо делать с while, но условие такое что пока разность между предыдущим и следующим меньше эпсилон Супер-трудно. Вычитание же проходят в академии, да?.. Вот так попробуй: var -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
marwell |
1.01.2010 20:45
Сообщение
#16
|
Бывалый Группа: Пользователи Сообщений: 198 Пол: Мужской Репутация: 1 |
Супер-трудно. Вычитание же проходят в академии, да?.. Вот так попробуй: var спасибо большое ну уж если она и это не примет, я молча врежу ей |
Текстовая версия | 29.04.2024 9:23 |