Need help with conversion program

Need help creating a program that is capable of converting from cm or in or ft into units of cm or in or ft. If incorrect units are input by the program user print an appropriate message and do not perform conversion.
ex] Command window should prompt 3 times:
Enter the Input Distance: 1
Enter the input Units(cm,in,ft): ft
Enter output units to convert to(cm,in,ft): in
1 ft = 12 in
ex]
Enter the Input Distance: 1
Enter the input Units(cm,in,ft): x
Incorrect input units
Thanks

2 个评论

what have you done so far? and where are you getting stuck?
in=1
cm=2.54*in
ft=12*in
Distance=input('Enter a Distance:');
Units=input('Enter Units Of Distance(cm,ft,in):');
Output=input('Enter Output Units to Convert to(cm,in,ft):');
if (Units='in' & Output='cm')
Out=Distance*cm
end
fprintf('\n\nConversion=%g\n',Out)

请先登录,再进行评论。

 采纳的回答

There can be many solutions for this, smaller one also, but for a beginner level, this will sure work for you.
d= input('Enter the Input Distance: ');
i= input('Enter the input Units(cm,in,ft): ');
o= input('Enter output units to convert to(cm,in,ft): ');
switch i
case 'cm'
if o=='in'
x=d/2.54;
else
if o=='ft'
x=d/30.48;
else
if o=='cm'
x=d;
end
end
end
case 'in'
if o=='in'
x=d;
else
if o=='ft'
x=d/12;
else
if o=='cm'
x=2.54*d;
end
end
end
case 'ft'
if o=='in'
x=d*12;
else
if o=='ft'
x=d;
else
if o=='cm'
x=d*30.48;
end
end
end
str = fprintf('%d %s = %d %s',d,i,x,o);
otherwise
disp('wrong input');
end

1 个评论

i did not get the answers using these codes, it appears that 'unrecognized cm' when i put cm in i input ?

请先登录,再进行评论。

更多回答(1 个)

Units=input('Enter Units Of Distance(cm,ft,in):', 's');
Also, use strcmp() to compare strings, not "="

类别

帮助中心File Exchange 中查找有关 File Operations 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by