Cody

# Problem 44372. Polarisation

Solution 1415701

Submitted on 13 Jan 2018 by Danuanping
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 = 5; y_correct = 0.5; assert(abs(polarised(x)-y_correct) < 1e-10)

l = 1 y = 0.5000

2   Pass
x = 180; y_correct = 0.5; assert(abs(polarised(x)-y_correct) < 1e-10)

l = 1 y = 0.5000

3   Pass
x = 365; y_correct = 0.5; assert(abs(polarised(x)-y_correct) < 1e-10)

l = 1 y = 0.5000

4   Pass
x = [91, 1]; y_correct = 0; assert(abs(polarised(x)-y_correct) < 1e-10)

l = 2 y = 0.5000 y = 1.8747e-33

5   Pass
a = randi([-360, 360]); b = 90*(1+2*randi([-3, 3])); x = [a, a+b]; y_correct = 0; assert(abs(polarised(x)-y_correct) < 1e-10)

l = 2 y = 0.5000 y = 9.1860e-32

6   Pass
a = randi([-360, 360]); b = 90*(1+2*randi([-3, 3])); x = [a, a+b]; y_correct = 0; assert(abs(polarised(x)-y_correct) < 1e-10)

l = 2 y = 0.5000 y = 1.6872e-32

7   Pass
x = [0, 22.5]; y_correct = 0.85355339059/2; assert(abs(polarised(x)-y_correct) < 1e-10)

l = 2 y = 0.5000 y = 0.4268

8   Pass
x = [0, -45]; y_correct = 0.25; assert(abs(polarised(x)-y_correct) < 1e-10)

l = 2 y = 0.5000 y = 0.2500

9   Pass
x = [5, 140]; y_correct = 0.25; assert(abs(polarised(x)-y_correct) < 1e-10)

l = 2 y = 0.5000 y = 0.2500

10   Pass
x = 5 + (1:5)*22.5; y_correct = 0.53079004294/2; assert(abs(polarised(x)-y_correct) < 1e-10)

l = 5 y = 0.5000 y = 0.4268 y = 0.3643 y = 0.3109 y = 0.2654

### Community Treasure Hunt

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

Start Hunting!