help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: bike shifting - output decimal in percent


From: Emanuel Berg
Subject: Re: bike shifting - output decimal in percent
Date: Sun, 19 May 2019 09:35:33 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux)

>> (format "%2.2g%%" (* 100.0 foo)) => "31%"
>
> Great, thanks a lot :)

Oups, spoke (no pun intended :)) too soon.
Too much respect for Drew, I suppose ;)

But to be honest, the original program is
_much_ better. Check out the examples below:

;; secret bonus program :)
;; thanks to friend at #emacs
(defun percent-string (decimal)
  (concat
   (number-to-string
    (round (* 100 decimal)) ) "%") )
;; test: (percent-string 0.42857142857142855) ; "43%"

(defun bike-compute-step (from to)
  (percent-string
   (/ (- from to)
      from
      1.0) ))
;; test - should be 43% for
;; one 42t and one 24t chainring
;; according to an article in the spring 2019 issue
;; of "Bicycle Quarterly" (ISSN 1941-8809) -
;; (bike-compute-step 42 24) ; "43%"

;; (percent-string 0.01)  ; "1%"
;; (percent-string 0.1)   ; "10%"
;; (percent-string 1)     ; "100%
;; (percent-string 2)     ; "200%"

;; (format "%2.2g%%" (* 100.0 0.01)) ; " 1%"    (?)
;; (format "%2.2g%%" (* 100.0 0.1))  ; "10%"
;; (format "%2.2g%%" (* 100.0 1))    ; "1e+02%" (!?)
;; (format "%2.2g%%" (* 100.0 2))    ; "2e+02%" (...)


File: https://dataswamp.org/~incal/emacs-init/bike.el

-- 
underground experts united
http://user.it.uu.se/~embe8573
https://dataswamp.org/~incal




reply via email to

[Prev in Thread] Current Thread [Next in Thread]