There has to be a better way
This one works on matlab but not here
function a = checkerboard(n)
theta=pi/2:pi/2:n*pi/2;
a = (sin(theta)'*sin(theta))+cos(theta)'*cos(theta);
end
hey mec.The function you which you have created gives negative one's(data type double) in the upper triangular and lower triangular part whereas the output should be all positive so first convert to data type integer using int function then convert to one's and zero's using logical.
Test | Status | Code Input and Output |
---|---|---|
1 | Pass |
%%
n = 5;
a = [1 0 1 0 1;
0 1 0 1 0;
1 0 1 0 1;
0 1 0 1 0;
1 0 1 0 1];
assert(isequal(a,checkerboard(n)))
|
2 | Pass |
%%
n = 4;
a = [1 0 1 0;
0 1 0 1;
1 0 1 0;
0 1 0 1];
assert(isequal(a,checkerboard(n)))
|
3 | Pass |
%%
n = 7;
a = [1 0 1 0 1 0 1
0 1 0 1 0 1 0
1 0 1 0 1 0 1
0 1 0 1 0 1 0
1 0 1 0 1 0 1
0 1 0 1 0 1 0
1 0 1 0 1 0 1];
assert(isequal(a,checkerboard(n)))
|
707 Solvers
given 3 sides, find area of this triangle
680 Solvers
Number of digits in an integer
336 Solvers
452 Solvers
Number of Even Elements in Fibonacci Sequence
665 Solvers
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!