How to change the case to a string so when I run the script the the string instead of the case number is shown?

2 vues (au cours des 30 derniers jours)
m=menu('select shape:', 'triangle','square','pentagon','hexagon','heptagon','octagon')
switch m
case 1
n=3
angle=(n-2)*180
case 2
n=4
angle=(n-2)*180
case 3
n=5
angle=(n-2)*180
case 4
n=6
angle=(n-2)*180
case 5
n=7
angle=(n-2)*180
case 6
n=8
angle=(n-2)*180
end
fprintf('A %-5.2f has %-5.2f sides and %-5.2f degrees\n',m,n,angle)
>> Untitled
m =
1
n =
3
angle =
180
A 1.00 has 3.00 sides and 180.00 degrees

Réponse acceptée

Star Strider
Star Strider le 4 Avr 2015
I believe you want:
fprintf('A %s has %d sides and %-5.2f degrees\n',m,n,angle)

Plus de réponses (1)

Mahdiyar
Mahdiyar le 4 Avr 2015
Modifié(e) : Mahdiyar le 4 Avr 2015
Hi Frank_m
Use the following code
clc
clear
m=menu('select shape:', 'triangle','square','pentagon','hexagon','heptagon','octagon');
switch m
case 1
m = 'triangle'
s = 1;
n=3
angle=(n-2)*180
case 2
m = 'square'
s = 2;
n=4
angle=(n-2)*180
case 3
m = 'pentagon'
s = 3;
n=5
angle=(n-2)*180
case 4
m = 'hexagon'
s = 4;
n=6
angle=(n-2)*180
case 5
m = 'heptagon'
s = 5;
n=7
angle=(n-2)*180
case 6
m = 'octagon'
s = 6;
n=8
angle=(n-2)*180
end
fprintf('A %-5.2f has %-5.2f sides and %-5.2f degrees\n',s,n,angle)
Regards
  4 commentaires
Mahdiyar
Mahdiyar le 4 Avr 2015
Change the last line to the following line
fprintf('A %s has %-5.2f sides and %-5.2f degrees\n',m,n,angle)%

Connectez-vous pour commenter.

Catégories

En savoir plus sur Construction dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by