![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
maksimla |
![]()
Сообщение
#1
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 324 Пол: Мужской Реальное имя: maksim Репутация: ![]() ![]() ![]() |
надо написать рекурсионную функцию pow(x, n), находящюю х в n степени по формуле
![]() здесь х реальное число а n натуральное число вот написал чтото function pow (x,n:real):real; а может есть чтобы цыкл неписать какбы написать sqr(x)? и я правильно написал функцию? -------------------- Учусь первый год на программиста в колледже. Учусь на втором курсе в школе программирования при научно-исследовательском институте математики и информатики.
|
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
А тебе здесь по определению цикл не надо делать, иначе какая ж это рекурсия? Вот так попробуй:
function pow(x: real; n: integer): real;, по-моему, должно быть правильно... |
maksimla |
![]()
Сообщение
#3
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 324 Пол: Мужской Реальное имя: maksim Репутация: ![]() ![]() ![]() |
а как тогда х возводится в степень n можете обеснить
и еще все эти переходы к функции скажите -------------------- Учусь первый год на программиста в колледже. Учусь на втором курсе в школе программирования при научно-исследовательском институте математики и информатики.
|
volvo |
![]()
Сообщение
#4
|
Гость ![]() |
Смотри, вот что тут происходит. К примеру, вызываем pow(2, 5).
1. 5 > 0 ==> pow = 2 * pow(2, 4) Вот тебе и ответ: pow(2, 5) = 32 То же самое делается и при передаче отрицательного числа вторым параметром, только добавляется еще один уровень рекурсии... Попробуй нарисовать такое же дерево для pow(2, -3) самостоятельно... |
maksimla |
![]()
Сообщение
#5
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 324 Пол: Мужской Реальное имя: maksim Репутация: ![]() ![]() ![]() |
ой, я значит неправильно формулу понял и написал
вот как понял pow(2, -3)
Сообщение отредактировано: maksimla - 29.01.2009 21:54 -------------------- Учусь первый год на программиста в колледже. Учусь на втором курсе в школе программирования при научно-исследовательском институте математики и информатики.
|
volvo |
![]()
Сообщение
#6
|
Гость ![]() |
Ты забыл последний шаг: в самом конце
pow = 1 / (8) = 0.125 |
![]() ![]() |
![]() |
Текстовая версия | 18.07.2025 14:05 |