Quando faccio (/ 411 125)
, non capisco in termini di decimali. Come lo faccio?Quando divido i numeri in clojure ottengo una frazione, come ottengo il decimale?
risposta
user> (float (/ 411 125))
3.288
user> (double (/ 411 125))
3.288
Come documented, la divisione intera produce numeri razionali. Prova
(/ 411.0 125)
Se si utilizza un flottante per il dividendo, si otterrà una risposta decimale.
(/ 22.0 7) -> 3.142857142857143
C'è anche la funzione (unchecked-remainder x y) disponibile.
user=> (clojure-version)
"1.4.0"
user=> (doc quot)
-------------------------
clojure.core/quot
([num div])
quot[ient] of dividing numerator by denominator.
nil
user=> (quot 411 125)
3
(float 411/125)
è un'altra variante se si è data direttamente le cifre, che è il caso se si sta semplicemente utilizzando il REPL come una calcolatrice. Sfortunatamente si tratta di alcuni caratteri più lunghi della soluzione di Jonathan Feinberg e ire_and_curses. ;)
anche questo funzionerà:
(/ 22. 7) => 3.142857142857143
Dovresti anche includere alcune spiegazioni sul perché il tuo codice funziona e cosa c'è di sbagliato nel codice originale. – vyegorov
non c'è niente di sbagliato in altre soluzioni, ma - come altre soluzioni - sto rappresentando un altro modo di pensare in doppio. per quanto riguarda il motivo per cui funziona; non sono sicuro, ma penso che il clojure l'abbia ereditato da java che accetta qualsiasi cifra con punto decimale come Double anche se è formattata con una posizione decimale zero – Samir
- 1. SQL - Come ottengo solo i numeri dopo il decimale?
- 2. Java: come ottengo la parte dopo il punto decimale?
- 3. Come ottengo i numeri di riga in PL/SQL Developer?
- 4. Come impostare il messaggio quando ottengo l'eccezione
- 5. Come divido in modo da ottenere un valore decimale?
- 6. Come ottengo il tipo di una variabile?
- 7. Dalla frazione al decimale e ritorno?
- 8. Convertire una frazione di testo in un decimale
- 9. Clojure: come ottengo un elenco di combinazioni di "coordinate"?
- 10. Come convertire un numero decimale in una frazione?
- 11. Come ottengo il contesto dall'intento?
- 12. Come ottengo una variabile in un'altra attività?
- 13. Approssimazione decimale a frazione irrazionale
- 14. In Python, come ottengo il frame corrente?
- 15. Come ottengo SocketTimeoutException
- 16. Come ottengo/utilizzo LibUUID?
- 17. Come ottengo% LocalAppData% in C#?
- 18. Come ottengo il gradiente della perdita in una variabile TensorFlow?
- 19. Come ottengo solo i video utilizzando ALAssetsLibrary
- 20. Come ottengo sal.h
- 21. In clojure, come ottengo il nome del file dello spazio dei nomi corrente?
- 22. Come semplificare una frazione
- 23. Java - Come ottengo tutti i valori selezionati da una JList?
- 24. Come ottengo il valore dall'editor ACE?
- 25. Perché ottengo un int quando indicizzo i byte?
- 26. come ottengo due highchart su una pagina?
- 27. Come ottengo l'indirizzo di una funzione?
- 28. Quando digito caratteri non ASCII usando una tastiera Windows ottengo "?"
- 29. Come ottengo il valore dall'oggetto (stdClass)?
- 30. fetch restituisce solo una riga quando ottengo dalla cache
doc non funziona per me. Ho la stessa versione del clojure. Devo importare qualcosa? – justinhj
Scusa, avrei dovuto dirlo - è una sessione REPL gestita da [leiningen] (http://leiningen.org). È * lo * strumento di gestione del progetto (e quindi della dipendenza) per i progetti Clojure. Una volta che lo fai andare, non te ne pentirai. –
Sto usando leiningen anche – justinhj