Commit Graph

97 Commits

Author SHA1 Message Date
Émilie Feral
5acafb0cdb [poincare] Cap the length of integer that are printed
Change-Id: I6d5e1f1201d1354ca48fee6f84dc0400143b7347
2017-11-23 14:52:25 +01:00
Romain Goyet
52bdf4a41f Merge branch 'cas_with_app_copy' into python_console 2017-11-21 18:44:38 +01:00
Émilie Feral
8a4af478cf [poincare] Add a constructor in Integer
Change-Id: Icf84821d1b898dbe353a2ee3cda7cfbb5c0b5468
2017-11-10 18:19:15 +01:00
Émilie Feral
045c02a213 [poincare] Fix setNegative in Integer
Change-Id: I32515c23c8897a3ce1d1cd4f238340397efc3366
2017-11-10 18:16:46 +01:00
Émilie Feral
889a0d8eb4 [poincare] Change natural comparison names in Integer
Change-Id: Ifdd4ef3991e650d601a378a9742ae2371915ce77
2017-10-31 12:02:31 +01:00
Émilie Feral
ae31a78ca6 [poincare] Integer: clean names
Change-Id: Ia6926ea8a506c91b933b6ca47dd8918217733221
2017-10-31 11:33:54 +01:00
Émilie Feral
f14b2a9e42 [poincare] Implement Factorial::immediateSimplify
Change-Id: I7bd7b3fd41421ebc8536d5dca4a261435022f7a7
2017-10-26 10:01:13 +02:00
Émilie Feral
df18bc169a [poincare] Factorize code of Integer::approximate
Change-Id: Iaa24553b2ec64868836cb006906ed85aec930d5c
2017-10-25 18:19:00 +02:00
Émilie Feral
1363c3a65f [poincare] Integer class is not an expression anymore
Change-Id: Iee1037593752a3825b8b9b58f21e296aae71e2cf
2017-10-25 18:19:00 +02:00
Émilie Feral
942862dacf [poincare] Reimplement Integer::Division non recursively
Change-Id: Ifd51a787a08aa376ce73b9574987ee358a11e1df
2017-10-25 18:18:59 +02:00
Émilie Feral
80a06054bb [poincare] Implement writeTextInBuffer for all expressions
Change-Id: I3777bd893621459dc0fb7df3cf6c0f9d20ff5c7b
2017-10-25 18:18:58 +02:00
Jacob Young
17ac54cad5 Use cmath in c++ files. 2017-10-13 18:08:15 +02:00
Jacob Young
da1e66e798 Fix #115 by fixing the math.h and cmath includes. 2017-10-13 18:08:15 +02:00
Émilie Feral
2cacda6d20 [poincare] Change isPositive method by int sign()
Change-Id: I575e7a48c4d5b82c93094f772bbafd41913646cc
2017-10-10 15:56:41 +02:00
Émilie Feral
4eca9571bc [poincare] Clean useless methods
Change-Id: I6a960c2d774cc3c67dc3dafaae28386e7b5ac288
2017-10-05 15:01:14 +02:00
Émilie Feral
4a1d064f68 [poincare] Change sorting to sort like terms together
Change-Id: I3d87d1be1c5f1985980805ce4c37b7273f978c12
2017-10-04 17:16:49 +02:00
Romain Goyet
d00948171a [poincare] Normalize Zero (Integer(-0) becomes Integer(0)) 2017-09-30 19:10:27 +02:00
Émilie Feral
9549e8ae85 [poincare] add a rule: int^int-> int or int^(-1)
Change-Id: I871c2e235debaac009c9d5e252e260ec3e0fc1d5
2017-09-29 09:50:41 +02:00
Émilie Feral
db9afebc8a [poincare] In integer, create layout for negative integers also
Change-Id: Ia0347fe1891a00f0669a8c0685af73a1b09f3e15
2017-09-28 16:17:55 +02:00
Émilie Feral
b5c06fd22b [poincare] Implement Integer::Division in Z (relative integers)
Change-Id: I72ccd4afd8188b0389b1f32863ecb1af59581c04
2017-09-28 16:17:32 +02:00
Émilie Feral
83d1179993 [poincare] Implement copy constructor and copy assignment operator of
Integer

Change-Id: Iaed652f31c3336da5471727cf4c9190bec34d51e
2017-09-27 16:13:43 +02:00
Émilie Feral
372478a142 [poincare] Parse decimal number in fraction instead of complex
Change-Id: I52dd5dff950a1adf6abfe1281079f68333be5a66
2017-09-27 12:07:50 +02:00
Émilie Feral
fabe21e6ad [poincare] Fix integer identifier
Change-Id: I11a327330bb50ddd2308c856f610a758ca4d4e32
2017-09-26 18:18:55 +02:00
Émilie Feral
483a8b1028 [poincare] Add a method to set sign on Integer
Change-Id: I88094af48775ff273eee0de198726bd91b33d5fe
2017-09-26 16:07:52 +02:00
Émilie Feral
febcea6955 [poincare] In Integer, create a static method Division returning a
struct

Change-Id: I1eb84a79c69e15cd815df87fe7b56bc7327c53be
2017-09-26 16:07:52 +02:00
Émilie Feral
59a4992a7d [poincare] Repair integer create layout
Change-Id: I05d1badc6b499b4aa4a989ddb686a88163ae6abb
2017-09-26 16:07:52 +02:00
Émilie Feral
c1a65654d7 [poincare] Clean Macro in integer
Change-Id: I0e9ebe49921269b3812e9e7a1f496465e52738aa
2017-09-25 15:04:44 +02:00
Émilie Feral
0979a26685 [poincare] Change checksum to identifier
Change-Id: I9e132ea5d731f9f3092a399c0b7fd883e3c22abd
2017-09-25 14:55:30 +02:00
Émilie Feral
ceeb43cd5f [poincare] Change comparesTo + virtual nodeCompareTo -> virtual compareTo
Change-Id: Ie54b3652ad1d5845f084b4b49ca0eb96198b853a
2017-09-25 14:54:12 +02:00
Romain Goyet
b064fabad9 [poincare] Clean the Integer class
Change-Id: I010f571b521a5c45f6131040d396dc0241517728
2017-09-25 14:24:50 +02:00
Romain Goyet
34c51ed239 [poincare] Clean Expression::isCommutative 2017-09-25 14:06:45 +02:00
Émilie Feral
590f15da65 [poincare] Add implementation of type and value selector
Change-Id: I79cf70e40a3b7415bdb54123cc1b3a7e03273504
2017-09-25 10:31:57 +02:00
Émilie Feral
23629b0939 [poincare] Restructuration of poincare (no duplication of children
storage)

Change-Id: Ia10c3cc83e10d238750c6954b7c093d26b762c94
2017-09-21 13:49:06 +02:00
Émilie Feral
d3a2109b5f [poincare] Change binary_operation -> n_ary_operation and add an order
on expressions

Change-Id: Ia881728ef965eb1f7ff9449d14253ea347fdeed7
2017-09-21 11:18:03 +02:00
Émilie Feral
82e212e771 [poincare] Template for double
Change-Id: I7404bd5cefc9ef78a5dbd572c3874a557cded28e
2017-08-16 09:55:29 +02:00
Émilie Feral
1964d61fdc [libaxx] add cmath and use cmath instead of math.h when required
Change-Id: Id839b17d33c69e2e002f370e553ff35246a1bc90
2017-08-16 09:55:29 +02:00
Émilie Feral
f73ddcd08f [poincare] Evaluation return numerical matrix
Change-Id: I58dbc93ad22a086580a77318b2524db9c70e47d2
2017-08-03 13:47:11 +02:00
Émilie Feral
8035efb52f [poincare] When an integer is too big to be approximate by a float,
return INFINITY

Change-Id: I6be4847b6ac5ebd8974005b1ab16625670301562
2017-04-06 11:11:34 +02:00
Émilie Feral
4cc200cab3 [poincare] Do no overflow stack by trying to display very very long
integers

Change-Id: I21ce03bb65b70e1b6c5771ef8bdb02b78aa4cfa5
2017-04-06 10:39:29 +02:00
Émilie Feral
a019289a6a [poincare] Implement complex format
Change-Id: I98731b356cce0ae3107fd0a660697241210692ae
2017-03-07 15:53:05 +01:00
Émilie Feral
dc7a629dfa [poincare] Replace complex constructors by named constructors
Change-Id: I6aad82edfb1bd243c4537a48888655608b90eeb5
2017-02-20 09:39:25 +01:00
Émilie Feral
e5e9f7cc41 [poincare][apps] Make preferences a const object accessible from
anywhere (poincare and apps)

Change-Id: I49cc6bf940d1efeb6b153daac949ffcb23999a8d
2017-02-20 09:39:24 +01:00
Émilie Feral
b79bcfb9dc [poincare] Change name DisplayMode -> FloatDisplayMode
Change-Id: I7754b4a5ac96c3f3564749749b49130ddf357e20
2017-02-17 16:35:07 +01:00
Émilie Feral
69e46f4958 [poincare] Namespace Poincare
Change-Id: I51a84fa7978ba16f128cfe1d32c390970f2037e8
2017-02-13 17:15:06 +01:00
Émilie Feral
676bd46f33 [poincare] Expand numbers to complex numbers
Change-Id: I2e7cf5240e184da45b656ee4f121ad76aabfd1c7
2017-02-13 17:15:03 +01:00
Émilie Feral
42e4cf408d [poincare] Enbale to evaluate expression in degrees or radian
Change-Id: I8b08e7fa93431817559a594a1ea03d4414f0c830
2017-02-06 16:30:48 +01:00
Émilie Feral
e951140298 [poincare] Change method createLayout() to createLayout(DisplayMode)
Change-Id: Ifb1027d38b53a50a0ada80e11b68d44e72ac9099
2017-01-31 10:36:13 +01:00
Émilie Feral
93d272486f Clean warnings
Change-Id: I79a3a97c5c118c9d6e1436e51b45cb51fee3c21f
2017-01-30 15:30:58 +01:00
Romain Goyet
5963345981 [poincare] NULL-termination and Integer parsing
Discard non-10 base handling for now

Change-Id: I487e85a169c7ae5780c83b0bcf3c40bd3daac0fe
2016-12-21 10:13:06 +01:00
Émilie Feral
a07a59efe9 [poincare] Factorise the method evaluate
Change-Id: Ief252568e8d232fc4606e8c86b5e3f9b4c076955
2016-12-09 11:01:39 +01:00