Вопрос №608 от пользователя Юрий Бацура в уроке «СИКП: Процедуры в качестве аргументов», курс «Структура и интерпретация компьютерных программ»
Добрый день! В задаче к 10 уроку получил неожиданный результат, почему-то мое решение съедает последний разряд и не проходит проверку, подскажите, пожалуйста, в чем моя ошибка. (вместо 0.24999999999999992 получаю 0.2499999999999999)
(define (inc x) (+ x 1))
(define (simpson f a b n)
(define h (/ (- b a) n))
(define k a)
(define (get_y k)
(define y (f (+ a (* k h))))
(cond ((= k 0) y)
((= k n) y)
((even? k) (* y 2))
(else (* y 4)))
)
(* h (/ (sum get_y a inc n) 3))
)
1
1
разобрался, проблема в порядке деления и умножения результата вызова sum, правильно так: (/ (* h (sum get_y a inc n)) 3)
3
Используйте Хекслет по максимуму!
- Задавайте вопросы по уроку
- Проверяйте знания в квизах
- Проходите практику прямо в браузере
- Отслеживайте свой прогресс
Зарегистрируйтесь или войдите в свой аккаунт
Рекомендуемые программы
С нуля до разработчика. Возвращаем деньги, если не удалось найти работу.





Профессия
Новый
Разработка фронтенд и бэкенд компонентов веб-приложений
1 июня
16 месяцев


