[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/lisp/calc/calc-alg.el
From: |
Jay Belanger |
Subject: |
[Emacs-diffs] Changes to emacs/lisp/calc/calc-alg.el |
Date: |
Thu, 27 Oct 2005 23:52:38 -0400 |
Index: emacs/lisp/calc/calc-alg.el
diff -c emacs/lisp/calc/calc-alg.el:1.15 emacs/lisp/calc/calc-alg.el:1.16
*** emacs/lisp/calc/calc-alg.el:1.15 Thu Jul 14 19:31:12 2005
--- emacs/lisp/calc/calc-alg.el Fri Oct 28 03:52:38 2005
***************
*** 91,96 ****
--- 91,122 ----
(calc-top-n 1))
(and n (list (prefix-numeric-value n)))))))
+ ;;; Write out powers (a*b*...)^n as a*b*...*a*b*...
+ (defun calcFunc-writeoutpower (expr)
+ (math-normalize (math-map-tree 'math-write-out-power expr)))
+
+ (defun math-write-out-power (expr)
+ (if (eq (car-safe expr) '^)
+ (let ((a (nth 1 expr))
+ (n (nth 2 expr))
+ (prod (nth 1 expr))
+ (i 1))
+ (if (and (integerp n)
+ (> n 0))
+ (progn
+ (while (< i n)
+ (setq prod (math-mul prod a))
+ (setq i (1+ i)))
+ prod)
+ expr))
+ expr))
+
+ (defun calc-writeoutpower ()
+ (interactive)
+ (calc-slow-wrapper
+ (calc-enter-result 1 "expp"
+ (calcFunc-writeoutpower (calc-top-n 1)))))
+
(defun calc-collect (&optional var)
(interactive "sCollect terms involving: ")
(calc-slow-wrapper
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] Changes to emacs/lisp/calc/calc-alg.el,
Jay Belanger <=