2
голосов
2ответов
2341 просмотров

Как решить следующее уравнение с помощью накопителя (Схема)

Я пытаюсь решить следующую проблему (есть формула, поэтому я распечатал ее и загрузил) Формула http://img248.imageshack.us/img248/6558/problemh. jpg ( http://img248.imageshack.us/img248/6558/problemh.jpgа>) Использование накопления: (define (accumulate combiner null-value term a n...

1
голосов
4ответов
1008 просмотров

Как реализовать счетчик для каждого числа внутри списка с помощью схемы?

Хорошо, я хочу подсчитать, сколько раз каждое [число] появилось в списке с помощью Scheme. Как я могу это сделать?Я также хотел бы сохранить счетчик данного числа и воссоздать новый список. Например, у меня есть следующий список ((1 2)(2 5)(5 7)(7 8)(6 8)(4 6)(3 4)(1 3)(4 8)) Я думал сн...

2
голосов
4ответов
9554 просмотров

"для каждого" или "каждого" ключевого слова в схеме

Есть ли в схеме цикл for или for each? Я искал и обнаружил, что есть ключевое слово "every", но на языке компилятора схем, который я использую, эта функция не встроена. Предполагается, что это именно то, что нужно сделать, это можно найти здесь (define (first-letters sent) (every first...

24
голосов
9ответов
7970 просмотров

Лисп как язык сценариев в приложении C ++

Привет, я рассматривал возможность добавления языка сценариев в свой фреймворк, слышал о Lisp и думал, что попробую.Есть ли виртуальная машина для Lisp, такая как Lua и Python, или я ошибаюсь?Я нашел здесь CLISP, http://clisp.cons.org/ , но не уверен, что это то, чтоИщу. Может ли кто-нибудь ...

3
голосов
1ответов
406 просмотров

Перевод функции Q и P из Little Schemer в Common Lisp?

В главе 9 Little Schemer автор представляет следующие две функции (define Q (lambda (str n) (cond ((zero? (remainder (first$ str ) n)) (Q (second$ str ) n)) (t (build (first$ str ) (lambda ( ) (Q (second$ str ) n))))))) (define P (lambda ...

0
голосов
2ответов
721 просмотров

Сбросить стандартный вывод в DrScheme?

Я могу сделать это на Java, Python, Haskell ... как это сделать в DrScheme?Обычный поиск в Google не дал ответа.

0
голосов
2ответов
379 просмотров

Компиляция файла .ss

Я слышал, что вы можете компилировать файлы .ss с DrScheme, и даже помню, как однажды делал это чтобы привести к некоторому хорошему ускорению моего кода, поскольку не нужно вводить всю отладочную информацию, необходимую для графического интерфейса.Как это сделать?

2
голосов
2ответов
1918 просмотров

схема и набор!

Как изменить значение переменной с помощью функции, использующей лямбда-параметр? Т.е.: ;;definitions (define test "fails") (define (experiment input) (set! input "works")) ;;interactions > test "fails" > (experiment test) > test "fails" Кажется, это не удается .. С уважением

5
голосов
2ответов
481 просмотров

SICP 1.31: аппроксимация числа Пи

Я работаю через SICP самостоятельно, поэтому у меня нет инструктора, чтобы спросить об этом.Предполагается, что этот код приближается к числу пи, но вместо этого всегда возвращает ноль. (define (approx-pi acc) (define (factors a) (define basic-num (if (= (mod a 2) 0) ...

9
голосов
4ответов
5283 просмотров

Схема: реализация композиции с n аргументами с использованием свертки

Я пытаюсь найти "лучшую" реализацию "compose" с несколькими аргументами в Scheme (я знаю, что это встроено в некоторые реализации, но предположим, что на данный момент я использую тот, у которого этого нет) . Для функции компоновки с двумя аргументами у меня есть следующее: (define compose...

1
голосов
1ответов
443 просмотров

Как выполнить побитовый сдвиг вправо с нулевым заполнением в схеме?

Согласно здесь , arithmetic-shiftбудет сдвигать бит влево и вправо.Правый сдвиг сохраняет знак.Есть ли какой-нибудь беззнаковый оператор сдвига вправо, который заполняет освободившиеся биты нулем вместо знакового бита?

32
голосов
3ответов
34155 просмотров

Как мне делать экспоненты в схеме?

pow, ^, ** не работают, а Scheme кажется слишком распространенным словом, чтобы можно было эффективно использовать его в Google.

2
голосов
3ответов
447 просмотров

Как проверить NaN в схеме?

Также есть место, где я мог бы найти все операции с плавающей запятой в Scheme?

5
голосов
4ответов
3848 просмотров

Почему вам нужно использовать ноль, чтобы получить правильный список в схеме?

Я понимаю, что это полный вопрос n00b, но мне любопытно, и я подумал, что могу получить здесь лучшее объяснение, чем где-либо еще.Вот список (я использую Dr. Scheme) > (list 1 2 3) (1 2 3) Что, на мой взгляд, просто сахар для этого: > (cons 1 (cons 2 (cons 3 null))) (1 2 3) Э...

1
голосов
6ответов
3489 просмотров

Как мне выполнить операцию с плавающей запятой по модулю в схеме?

% не определен.modulo работает только с целыми числами.Мне нужно что-то эквивалентное fmod в Javascript по модулю / c.

5
голосов
2ответов
2417 просмотров

Когда использовать (значения ...) (определения-значения ...) в схеме

Я прочитал документацию по таким функциям, как значения и значения-определения, которые возвращают и используют несколько значений.Я понимаю, что они делают.Мне не ясно, когда вы захотите использовать такую вещь. Когда было бы плохо / невозможно создать единый список значений и вместо этого ис...

12
голосов
2ответов
4196 просмотров

Как можно переписать «начало» в схеме?

Как объясняется в статье Wikipedia , begin в Scheme является библиотечной формойкоторый можно переписать, используя более фундаментальные формы, такие как lambda. Но как переписать begin, особенно учитывая следующее? x ===> error: undefined identifier: x (begin (define x 28) x) ===>...

1
голосов
6ответов
4173 просмотров

как преобразовать список в число в схеме?

как преобразовать (1 2 3 4) в 1234 ~

3
голосов
3ответов
2062 просмотров

Определение того, является ли число степенью двойки на схеме

Я новичок в Scheme и пытаюсь изучить его самостоятельно с нуля.Я застрял в синтаксисе этой проблемы.Я знаю, что если я хочу узнать, является ли число степенью двойки, например, в C, я бы просто сделал: return (x & (x - 1)) == 0; который вернет истину или ложь.Как мне преобразовать это...

5
голосов
1ответов
248 просмотров

Какие из требований IronScheme не удалось выполнить?

Согласно Википедии: «IronScheme, предстоящая реализация Scheme, планировала развить DLR, но решила отказаться от этой идеи, потому что ветвь DLR, которую использовал проект, рассинхронизировалась с магистралью, а также потому, что DLR, по словам разработчиков, не могподдерживают большинство треб...

4
голосов
2ответов
914 просмотров

PLT Scheme noob: логические и / или нет процедуры?

Я пытаюсь создать генератор таблицы истинности для курса цифровой электроники, потому что именно так я развлекаюсь в свободное время и не осуждаю себя. В любом случае, я подумал, что у меня будет хэш со строковым эквивалентом операторов в качестве ключей и процедур схемы, которые соответствую...

5
голосов
6ответов
3515 просмотров

Преобразование выражения схемы в строку

Учитывая выражение '(lambda (x) x) Как я могу перевести это в строку.Я думал, что символ-> строка выполнит эту работу, но это не символ. например, для макроса в строку: (to-string (lambda (x) x)) это должно вернуть>> "(lambda (x) x)" Любые идеи, ребята, спасибо

6
голосов
3ответов
6496 просмотров

Вложенные циклы и рекурсия Scheme / Lisp

Я пытаюсь решить проблему в схеме, которая требует от меня использования вложенного цикла или вложенной рекурсии. напримерУ меня есть два списка, в которых я должен проверить условие на их декартово произведение. Как лучше всего решать подобные проблемы?Есть какие-нибудь указатели на то, к...

2
голосов
1ответов
197 просмотров

Как создать пакет обучения DrScheme

Я изучаю схему PLT и хочу знать, как создать обучающий пакет для DrScheme, несколько руководств ...?Спасибо.

2
голосов
3ответов
516 просмотров

Упражнение SICP 1.16, где моя ошибка, потому что мне это кажется правильным

Я только что начал читать эту книгу ради развлечения; Хотелось бы, чтобы это было домашнее задание, но я никогда не мог позволить себе посещать Массачусетский технологический институт, да и в любом случае есть масса людей умнее меня. : p Функция fast-exp должна найти b ^ n, т.е. 4 ^ 2 = 16, 3...

4
голосов
4ответов
3317 просмотров

Рекомендации по сочетанию OpenGL / Scheme

Я хотел бы попробовать программирование OpenGL на схеме. Может ли кто-нибудь порекомендовать подходящую комбинацию компилятора схемы и библиотеки OpenGL? У меня нет оговорок, хотя было бы приятно (но не обязательно) иметь возможность создавать собственные исполняемые двоичные файлы - в о...

13
голосов
1ответов
3408 просмотров

Что делает этот код xkcd?

Сегодня на сайте xkcd следующиепоявилось как шутка в теге

9
голосов
2ответов
1119 просмотров

"разворачивать" для обыкновенной шепелявости?

Я изучил довольно много схем из SICP, но сейчас меня больше интересует обычный шепелявый.Я знаю, что fold обычного lisp - это reduce со специальными аргументами для левого или правого сворачивания, но что эквивалентно unfold?Гугл не сильно помог.На самом деле у меня такое впечатление, что развор...

2
голосов
1ответов
1499 просмотров

схема и если условие

Я не хочу ничего возвращать, например, если условие не выполняется (if x y z) поэтому, если x не выполняется, z будет выполнен, и я не хочу ничего делать в z, точно так же, как питоны "проходят"

2
голосов
5ответов
489 просмотров

получение интервала вектора

Я хочу взять интервал вектора в схеме.Я знаю, что существует процедура с именем vector->values, но похоже, что она возвращает каждый элемент отдельно, а я хочу получить результат в виде вектора.Как я могу этого добиться? > (vector->values (vector 1 2 3 4 5) 0 3) 1 2 3 пока мне ну...