Cody

# Problem 45268. Restricted Multiplication v1

Solution 2877818

Submitted on 25 Aug 2020 by Alfonso Nieto-Castanon
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

This solution is outdated. To rescore this solution, sign in.

### Test Suite

Test Status Code Input and Output
1   Pass
filetext = fileread('g.m'); filetext(find(filetext == '%', 1, 'last') : end) = []; assert(isempty(strfind(filetext, '*')), 'Multiplication is forbidden.') assert(isempty(strfind(filetext, 'prod')), 'Multiplication is forbidden.') assert(isempty(strfind(filetext, 'cumprod')), 'Multiplication is forbidden.') assert(isempty(strfind(filetext, 'dot')), 'Multiplication is forbidden.') assert(isempty(strfind(filetext, 'cross')), 'Multiplication is forbidden.') assert(isempty(strfind(filetext, '\')), 'Division is forbidden.') assert(isempty(strfind(filetext, '/')), 'Division is forbidden.') assert(isempty(strfind(filetext, '+')), 'Addition is forbidden.') assert(isempty(strfind(filetext, 'sum')), 'Addition is forbidden.') assert(isempty(strfind(filetext, 'plus')), 'Addition is forbidden.') assert(isempty(strfind(filetext, '-')), 'Subtraction is forbidden.') assert(isempty(strfind(filetext, 'minus')), 'Subtraction is forbidden.') assert(isempty(strfind(filetext, 'diff')), 'Subtraction is forbidden.') assert(isempty(strfind(filetext, '^')), 'Exponeniation is forbidden.'); assert(isempty(strfind(filetext, 'log')), 'logarithms are forbidden.'); assert(isempty(strfind(filetext, 'conv')), 'Convolution is forbidden.') assert(isempty(strfind(filetext, 'corr')), 'Correlation is forbidden.') assert(isempty(strfind(filetext, 'cov')), 'Covariance is forbidden.') assert(isempty(strfind(filetext, 'std')), 'Variance is forbidden.') assert(isempty(strfind(filetext, 'poly')), 'Polynomials are forbidden.') assert(isempty(strfind(filetext, 'bit')), 'Bit manipulation is forbidden.') assert(isempty(strfind(filetext, '''')), 'String is forbidden.') assert(isempty(strfind(filetext, '"')), 'String is forbidden.') assert(isempty(strfind(filetext, 'str')), 'String is forbidden.') assert(isempty(strfind(filetext, '2')), 'Conversion is forbidden.'); assert(isempty(strfind(filetext(2 : end), 'f')), 'File handling and figures are forbidden.'); assert(isempty(strfind(filetext, '>')), 'File handling is forbidden.'); assert(isempty(strfind(filetext, 'a')), 'accumarray is forbidden.'); assert(isempty(strfind(filetext, 'e')), 'Eval is forbidden.'); assert(isempty(strfind(filetext, '!')), 'Shell commands are forbidden.'); assert(isempty(strfind(filetext, 'mlock')), 'mlock is forbidden.'); assert(isempty(strfind(filetext, 'munlock')), 'munlock is forbidden.'); assert(isempty(strfind(filetext, '@')), 'Anonymous functions are forbidden.');

2   Pass
rng(now()); x = randi(10, [2 3]); y = randi(10, [3 2]); z = x * y; assert(isequal(g(x, y), z))

3   Pass
x = magic(4); y = sqrtm(x); z = x * y; assert(isequal(g(x, y), z))

4   Pass
assert(isequal(g(1, 1), 1))

5   Pass
assert(isequal(g(10, 3), 30))

6   Pass
assert(isequal(g(-10, 0), 0))

7   Pass
assert(isequal(g(-1, -10), 10))

8   Pass
assert(isequal(g(987654, -654321), -646242752934))

9   Pass
z = -3.1 * -3.1; assert(isequal(g(-3.1, -3.1), z))

10   Pass
assert(isequal(g(1 + i, i - 1), -2))

### Community Treasure Hunt

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

Start Hunting!