MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

### Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

# Solution 323473

Submitted on 25 Sep 2013 by James

Correct

339Size
Leading solution size is 84.
`This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.`

### Test Suite

Test
Code Input and Output
1
Pass

```% Clean workspace
!/bin/cp string_sqrt.m safe
!/bin/rm *.*
!/bin/mv safe string_sqrt.m
% Clean user's function from some known jailbreaking mechanisms
functions={'!','feval','eval','str2func','str2num','regex','system','dos','unix','perl','assert','fopen','write','save','setenv','path','please'};
fid = fopen('string_sqrt.m');
st = char(fread(fid)');
for n = 1:numel(functions)
st = regexprep(st, functions{n}, 'error(''No fancy functions!''); %','ignorecase');
end
fclose(fid)
```
```ans =
0
```
2
Pass

```%%
assert(strcmp(string_sqrt(1000,10),'31.6227766016'))
```

3
Pass

```%%
assert(strcmp(string_sqrt(10,11),'3.16227766016'))
```

4
Pass

```%%
assert(strcmp(string_sqrt(3,100),'1.7320508075688772935274463415058723669428052538103806280558069794519330169088000370811461867572485756'))
```

5
Pass

```%%
assert(strcmp(string_sqrt(314159,314),'560.49888492306565872479934293941633491101288779142813321911971670725840486880541273457870660258696202335374555140881778649205224589390756076993240996126057385009263605818384161945745399159720436585888004381611637660905033452884843995010613320008027334007622507916692664539613518278405454926834945753785814159773889523'))
```

6
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
```
7
Pass

```%%
assert(strcmp(string_sqrt(12345,1),'111.1'))
```