![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 02.10.2011
Сообщений: 25
|
![]()
Кто-то шарит в Scheme?
А то помощь нужна,а в инете информации не найти( |
![]() |
![]() |
![]() |
#2 |
Участник клуба
Регистрация: 15.07.2008
Сообщений: 1,933
|
![]()
Как это не найти? А Вы искали? Гугл выдаёт кучу ссылок как на русском, так и на английском языках. Из популярного: SICP, HtDP (лучше второго издания, но там не совсем Scheme и не совсем о Scheme)
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 02.10.2011
Сообщений: 25
|
![]()
То что мне нужно,я не могу найти.
У меня задание: найти суму двух наименьших за значением елементов вектора ,в диапазоне(-17,23) Код HTML:
define w (vector (- (random 40) 17) (- (random 40) 17) (- (random 40) 17) )) w (cond ((and (< (vector-ref w 0) (vector-ref w 1)) (< (vector-ref w 0) (vector-ref w 2))) '1мин) ((and (< (vector-ref w 1) (vector-ref w 0)) (< (vector-ref w 1) (vector-ref w 2))) '2мин) ((and (< (vector-ref w 2) (vector-ref w 1)) (< (vector-ref w 2) (vector-ref w 0))) '3мин) (else 'равные)) |
![]() |
![]() |
![]() |
#4 |
Участник клуба
Регистрация: 15.07.2008
Сообщений: 1,933
|
![]()
Ваш код ищет значение только для трёхэлементного вектора, этого точно достаточно? Если в векторе будет больше/меньше трёх элементов, код работать не будет. Чтобы получить значение минимального элемнта, в cond вместо символов '1мин и т.д., нужно было возвращать (vector-ref w 0), (vector-ref w 1) и т.д. Также, подозреваю, что нужно было использовать какой-нибудь из методов итерации по вектору, а не тупо сравнивать вручную три его элемента, таким образом можно будет искать минимальный/максимальный элемент на векторах любого размера. Например, здесь можно использовать цикл do или рекурсию.
Код:
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 02.10.2011
Сообщений: 25
|
![]()
Понимаете,проблема в том,что у нас было всего 4 занятия...и поэтому я не сильно его знаю)
Спасибо ВАМ большое за код,но он ищет суму минимального и максимального,а мне нужно найти суму двух минимальных( |
![]() |
![]() |
![]() |
#6 |
Участник клуба
Регистрация: 15.07.2008
Сообщений: 1,933
|
![]()
Я привёл исчерпывающий, с моей точки зрения, пример прохода по вектору с поиском какого-либо элемента, непонятные конструкции подробно описаны в интернете с примерами их применения, так что Вам не должно составить труда разобраться в этой программе и изменить её под свои нужды.
Ну или можете использовать эту функцию (написана под Racket): Код:
|
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 02.10.2011
Сообщений: 25
|
![]()
Спасибо большое,я переработал немного Ваш код,и сделал)
|
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Структуры. Мова С. | Виктория Кусяк | Общие вопросы C/C++ | 2 | 22.12.2011 15:12 |
мова С. Матрица | Виктория Кусяк | Помощь студентам | 1 | 16.12.2011 17:33 |
мова С. Матрица | Виктория Кусяк | Помощь студентам | 1 | 12.12.2011 18:55 |
мова С | Виктория Кусяк | Помощь студентам | 4 | 13.11.2011 20:57 |
статья - Введение в Scheme. Часть 2. | Pblog | Обсуждение статей | 0 | 19.08.2010 14:50 |