Switch Case Construction Code help
24 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
(Ajay deleted the question, so I (MF) am restoring it.)
I am trying to create a function that takes a cell array containing strings as an input. The string can be triangle, square, pentagon, hexagon, heptagon, octagon, nonagon, or decagon. The output is the sum of the interior angles of the requested shape. If the input is not valid, the code should return a 0. The input should be able to handle cell arrays containing multiple strings and output the corresponding angles as a vector.
I thought I got it, but then I found out I am required to use "switch case" construction, which I have no idea how to do. I tried solving it twice, and both times i got errors. Here are the 2 codes I worked out: What am I doing wrong? I tried reading on switch case construction, and I don't get what's wrong with either code?!
switch InteriorAngle(input)
case 'triangle'
disp ('180')
case 'square'
disp ('360');
case 'pentagon'
disp ('540');
case 'hexagon'
disp ('720');
case 'heptagon'
disp ('900');
case 'octagon'
disp ('1080');
case 'nonagon'
disp ('1260');
case 'decagon'
disp ('1440');
otherwise
disp ('0');
end
CODE 2
function output = InteriorAngle(input)
n=input('s')
switch InteriorAngle
case ('triangle')
n=3;
sum=(n-3).*(180)
case ('square')
n=4;
dispsum=(n-3).*(180)
case('pentagon')
n=5;
sum=(n-3).*(180)
case ('hexagon')
n=6;
sum=(n-3).*(180)
otherwise
disp ('0')
end
4 Commenti
Matt Fig
il 8 Ott 2012
Ajay is particularly bad about this. I personally will be restoring what I can of his old questions and ignoring further questions from Ajay....
Matt Fig
il 9 Ott 2012
Saved from google cache:
I am trying to create a function that takes a cell array containing strings as an input. The string can be triangle, square, pentagon, hexagon, heptagon, octagon, nonagon, or decagon. The output is the sum of the interior angles of the requested shape. If the input is not valid, the code should return a 0. The input should be able to handle cell arrays containing multiple strings and output the corresponding angles as a vector.
I thought I got it, but then I found out I am required to use "switch case" construction, which I have no idea how to do. I tried solving it twice, and both times i got errors. Here are the 2 codes I worked out: What am I doing wrong? I tried reading on switch case construction, and I don't get what's wrong with either code?!
switch InteriorAngle(input) case 'triangle' disp ('180') case 'square' disp ('360'); case 'pentagon' disp ('540'); case 'hexagon' disp ('720'); case 'heptagon' disp ('900'); case 'octagon' disp ('1080'); case 'nonagon' disp ('1260'); case 'decagon' disp ('1440'); otherwise disp ('0'); end
CODE 2
function output = InteriorAngle(input) n=input('s') switch InteriorAngle case ('triangle') n=3; sum=(n-3).*(180) case ('square') n=4; dispsum=(n-3).*(180) case('pentagon') n=5; sum=(n-3).*(180) case ('hexagon') n=6; sum=(n-3).*(180) otherwise disp ('0') end
Risposta accettata
Azzi Abdelmalek
il 8 Ott 2012
Modificato: Azzi Abdelmalek
il 8 Ott 2012
switch input('InteriorAngle')
case 'triangle'
disp ('180')
case 'square'
disp ('360');
case 'pentagon'
disp ('540');
case 'hexagon'
disp ('720');
case 'heptagon'
disp ('900');
case 'octagon'
disp ('1080');
case 'nonagon'
disp ('1260');
case 'decagon'
disp ('1440');
otherwise
disp ('0');
end
5 Commenti
Azzi Abdelmalek
il 8 Ott 2012
Modificato: Azzi Abdelmalek
il 8 Ott 2012
function output = InteriorAngle(s)
switch s
case ('triangle')
n=3;
sum=(n-3).*(180)
case ('square')
n=4;
dispsum=(n-3).*(180)
case('pentagon')
n=5;
sum=(n-3).*(180)
case ('hexagon')
n=6;
sum=(n-3).*(180)
otherwise
disp ('0')
end
%
InteriorAngle('triangle')
Più risposte (0)
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!