![]() |
|
|
![]()
|
|
| KL1CK3R |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 16.6.2011 Репутация: нет Всего: нет |
вот текст программы для нахождения суммы (один символ цифры воспринимается как одно число, тоесть рядом стоящие 4 и 5 это не 45(сорок пять),а 4 и 5).
(defun isnum(x) (if (null (position x '(\0 \1 \2 \3 \4 \5 \6 \7 \8 \9))) 0 (- (ascii x) 48)) ) (defun atomnum(x) (let ((num 0) (atm NIL)) (dolist (atm x num) (setq num (+ (isnum (car atm)) num)) ) ) ) (defun listnum(x) (let ((num 0) (atm NIL)) (dolist (atm x num) (setq num (+ (atomnum (unpack atm)) num)) ) ) ) (load common) (print (listnum (read))) Подскажите как сделать для нахождения произведения!Пробовал менять плюсы на умножение,не помогло, в результате пишет ноль. Помню както надо результату единицу присвоить, тогда,возможно, нуля не будет. Кто знает решение проблемы отпишитесь! Добавлено через 2 минуты и 46 секунд результат нахождения суммы выглядит так : при вводе такой строки (asda24 dfs44fd 34) будет результат 21 |
|||
|
||||
| k0rvin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 Репутация: нет Всего: 5 |
наверное потому что x * 0 = 0 -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
|||
|
||||
| KL1CK3R |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 16.6.2011 Репутация: нет Всего: нет |
k0rvin, подскажите пожалуйста, в чём может быть проблема,я меняю num 1 ,но оно некорректно считает. Считает нормально если записать так : (5 6 9 4 8 3). А если так: (sdfs34 sd34fd 67), то уже не верно выходит. Подскажите плз,очень надо
|
|||
|
||||
![]()
|
| Правила форума LISP | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Void. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | LISP | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |