Cody

Problem 1891. High Precision Square Root (Inspired by Project Euler 80)

Solution 1845558

Submitted on 11 Jun 2019 by William
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
assert(strcmp(string_sqrt(1000,10),'31.6227766016'))

2   Pass
assert(strcmp(string_sqrt(10,11),'3.16227766016'))

3   Pass
assert(strcmp(string_sqrt(3,100),'1.7320508075688772935274463415058723669428052538103806280558069794519330169088000370811461867572485756'))

4   Pass
assert(strcmp(string_sqrt(314159,314),'560.49888492306565872479934293941633491101288779142813321911971670725840486880541273457870660258696202335374555140881778649205224589390756076993240996126057385009263605818384161945745399159720436585888004381611637660905033452884843995010613320008027334007622507916692664539613518278405454926834945753785814159773889523'))

5   Pass
a=2:50; a(sqrt(a)==floor(sqrt(a)))=[]; na=numel(a); b=zeros(na,100); for flag=1:na temp=string_sqrt(a(flag),101); t2=regexprep(temp,'\.','')-'0'; b(flag,:)=t2(1:100); end y_correct=sum(sum(b)) assert(isequal(19543,y_correct))

y_correct = 19543

6   Pass
assert(strcmp(string_sqrt(12345,1),'111.1'))

Suggested Problems

More from this Author80

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!