Cody

Problem 1833. Usage of java.math : Add, Multiply, Pow

Solution 2549319

Submitted on 14 Jun 2020
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

Test Suite

Test Status Code Input and Output
1   Pass
x=2; y=64; % power zstr=java_math(x,y,3); assert(strcmp(zstr,'18446744073709551616'),sprintf('zstr=%s\n',zstr))

xBD1 = 2 xBD2 = 64 zstr = 18446744073709551616

2   Pass
xstr='18446744073709551615'; y=3; %Add zstr=java_math(xstr,y,1); assert(strcmp(zstr,'18446744073709551618'),sprintf('zstr=%s\n',zstr))

xBD1 = 18446744073709551615 xBD2 = 3 zstr = '18446744073709551618'

3   Fail
x=2^53; % largest eps==1 double y=2^11; %Multiply zstr=java_math(x,y,2); assert(strcmp(zstr,'18446744073709551616'),sprintf('zstr=%s\n',zstr))

xBD1 = 9007199254740992 xBD2 = 2048

Output argument "zstr" (and maybe others) not assigned during call to "java_math". Error in Test3 (line 4) zstr=java_math(x,y,2);

4   Fail
x=2^53; % largest valid double y=2^12; % Multiply zstr=java_math(x,y,2); assert(strcmp(zstr,'36893488147419103232'),sprintf('zstr=%s\n',zstr))

xBD1 = 9007199254740992 xBD2 = 4096

Output argument "zstr" (and maybe others) not assigned during call to "java_math". Error in Test4 (line 4) zstr=java_math(x,y,2);

5   Pass
x=randi(10); y=randi(100); zstr=java_math(x,y,1); assert(strcmp(zstr,num2str(x+y)),sprintf('x=%2i y=%3i x+y=%5i zstr=%s\n',x,y,x+y,zstr))

xBD1 = 8 xBD2 = 24 zstr = '32'

6   Fail
x=randi(10); y=randi(100); zstr=java_math(x,y,2); assert(strcmp(zstr,num2str(x*y)),sprintf('x=%2i y=%3i x*y=%5i zstr=%s\n',x,y,x*y,zstr))

xBD1 = 1 xBD2 = 2

Output argument "zstr" (and maybe others) not assigned during call to "java_math". Error in Test6 (line 3) zstr=java_math(x,y,2);

7   Pass
x=randi(20); y=randi(5); zstr=java_math(x,y,3); assert(strcmp(zstr,num2str(x^y)),sprintf('x=%2i y=%3i x^y=%8i zstr=%s\n',x,y,x^y,zstr))

xBD1 = 17 xBD2 = 5 zstr = 1419857