/test/lib/numeric/number/test_number39.e
Specman e | 58 lines | 29 code | 6 blank | 23 comment | 0 complexity | c6975bf88787796edfbe6d9a4101756b MD5 | raw file
1-- This file is part of SmartEiffel The GNU Eiffel Compiler Tools and Libraries. 2-- See the Copyright notice at the end of this file. 3-- 4class TEST_NUMBER39 5 -- tests on "factorial" 6 7insert 8 EIFFELTEST_TOOLS 9 NUMBER_TOOLS 10 11create {} 12 make 13 14feature {ANY} 15 make 16 local 17 n1, n2, n3: NUMBER 18 do 19 n1 := from_integer(0) 20 assert(n1.factorial @= 1) 21 n1 := from_integer(1) 22 assert(n1.factorial @= 1) 23 n1 := from_integer(10) 24 n2 := from_string("3628800") 25 assert(n1.factorial.is_equal(n2)) 26 -- warning : very slow 27 n1 := from_integer(1000) --from_integer(Maximum_integer) ; 28 n1 := n1 @+ 1 29 n1 := n1.factorial 30 n2 := from_integer(1000) --from_integer(Maximum_integer); 31 n2 := n2.factorial 32 n3 := from_integer(1000) --from_integer(Maximum_integer); 33 n3 := n3 @+ 1 34 n2 := n2 * n3 35 assert(n2.is_equal(n1)) 36 end 37 38 39 40end -- class TEST_NUMBER39 41-- 42-- ------------------------------------------------------------------------------------------------------------------------------ 43-- Copyright notice below. Please read. 44-- 45-- SmartEiffel is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License, 46-- as published by the Free Software Foundation; either version 2, or (at your option) any later version. 47-- SmartEiffel is distributed in the hope that it will be useful but WITHOUT ANY WARRANTY; without even the implied warranty 48-- of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have 49-- received a copy of the GNU General Public License along with SmartEiffel; see the file COPYING. If not, write to the Free 50-- Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. 51-- 52-- Copyright(C) 1994-2002: INRIA - LORIA (INRIA Lorraine) - ESIAL U.H.P. - University of Nancy 1 - FRANCE 53-- Copyright(C) 2003-2006: INRIA - LORIA (INRIA Lorraine) - I.U.T. Charlemagne - University of Nancy 2 - FRANCE 54-- 55-- Authors: Dominique COLNET, Philippe RIBET, Cyril ADRIAN, Vincent CROIZIER, Frederic MERIZEN 56-- 57-- http://SmartEiffel.loria.fr - SmartEiffel@loria.fr 58-- ------------------------------------------------------------------------------------------------------------------------------