Discover MakerZone

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

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

Solution 238649

Submitted on 1 May 2013 by Marco Castelli

Correct

74Size
Leading solution size is 51.
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
 
%%
user_solution = fileread('legendrePoly.m');
assert(isempty(strfind(user_solution,'regexp')));
assert(isempty(strfind(user_solution,'2str')));
assert(isempty(strfind(user_solution,'str2')));
assert(isempty(strfind(user_solution,'interp')));
assert(isempty(strfind(user_solution,'printf')));
assert(isempty(strfind(user_solution,'assert')));

                    
2
Pass
 
%%
n = 0;
P_correct = [1]/1;
assert(isequal(round(legendrePoly(n)*1),round(P_correct*1)));

                    
3
Pass
 
%%
n = 1;
P_correct = [1 0]/1;
assert(isequal(round(legendrePoly(n)*1),round(P_correct*1)));

                    
4
Pass
 
%%
n = 2;
P_correct = [3 0 -1]/2;
assert(isequal(round(legendrePoly(n)*2),round(P_correct*2)));

                    
5
Pass
 
%%
n = 3;
P_correct = [5 0 -3 0]/2;
assert(isequal(round(legendrePoly(n)*2),round(P_correct*2)));

                    
6
Pass
 
%%
n = 4;
P_correct = [35 0 -30 0 3]/8;
assert(isequal(round(legendrePoly(n)*8),round(P_correct*8)));

                    
7
Pass
 
%%
n = 5;
P_correct = [63 0 -70 0 15 0]/8;
assert(isequal(round(legendrePoly(n)*8),round(P_correct*8)));

                    
8
Pass
 
%%
n = 6;
P_correct = [231 0 -315 0 105 0 -5]/16;
assert(isequal(round(legendrePoly(n)*16),round(P_correct*16)));

                    
9
Pass
 
%%
n = 7;
P_correct = [429 0 -693 0 315 0 -35 0]/16;
assert(isequal(round(legendrePoly(n)*16),round(P_correct*16)));

                    
10
Pass
 
%%
n = 8;
P_correct = [6435 0 -12012 0 6930 0 -1260 0 35]/128;
assert(isequal(round(legendrePoly(n)*128),round(P_correct*128)));

                    
11
Pass
 
%%
n = 9;
P_correct = [12155 0 -25740 0 18018 0 -4620 0 315 0]/128;
assert(isequal(round(legendrePoly(n)*128),round(P_correct*128)));

                    
12
Pass
 
%%
n = 10;
P_correct = [46189 0 -109395 0 90090 0 -30030 0 3465 0 -63]/256;
assert(isequal(round(legendrePoly(n)*256),round(P_correct*256)));

                    
13
Pass
 
%%
n = 11;
P_correct = [88179 0 -230945 0 218790 0 -90090 0 15015 0 -693 0]/256;
assert(isequal(round(legendrePoly(n)*256),round(P_correct*256)));

                    
14
Pass
 
%%
n = 12;
P_correct = [676039 0 -1939938 0 2078505 0 -1021020 0 225225 0 -18018 0 231]/1024;
assert(isequal(round(legendrePoly(n)*1024),round(P_correct*1024)));

                    
15
Pass
 
%%
n = 13;
P_correct = [1300075 0 -4056234 0 4849845 0 -2771340 0 765765 0 -90090 0 3003 0]/1024;
assert(isequal(round(legendrePoly(n)*1024),round(P_correct*1024)));

                    
16
Pass
 
%%
n = 14;
P_correct = [5014575 0 -16900975 0 22309287 0 -14549535 0 4849845 0 -765765 0 45045 0 -429]/2048;
assert(isequal(round(legendrePoly(n)*2048),round(P_correct*2048)));

                    
17
Pass
 
%%
n = 15;
P_correct = [9694845 0 -35102025 0 50702925 0 -37182145 0 14549535 0 -2909907 0 255255 0 -6435 0]/2048;
assert(isequal(round(legendrePoly(n)*2048),round(P_correct*2048)));