i do have GUI which solves P,EL,H, my problem if i got result in decimal values how do I interpolate the result?
1 次查看(过去 30 天)
显示 更早的评论
i do have GUI which solves P,EL,H, my problem if i got result in decimal values how do I interpolate the result? because my program can interpolate only whole numbers such as 700,701 but not on decimal values =(
a = get(handles.input1_gamma,'String'); %GAMMA
b = get(handles.input2_h,'String'); %H
c = get(handles.input3_q,'String'); %Q
d = get(handles.input4_power,'String'); %POWER
e = get(handles.input5_eout,'String');
out = str2num(b) + str2num(e);
set(handles.total_answer,'String',out);
data = xlsread('table.xlsx')
%b = strcat(PathName,F);
[m n] = size(data)
k = get(handles.total_answer,'String')
for i = 1 : m
A = data(i); %check xa 1st row then compare value
A = int2str(A);
if A == k
n = i;
score = data(n,2)%compare sa 2nd value
clc; %clear and cmd
set(handles.equalel,'String',score);
break;
else
mHeight = [700 750 800];
mEout = [100 200 300];
mElevation = out;
outputArea = interp1(mHeight, mEout, mElevation);
set(handles.equalel,'String',outputArea);
end
end
0 个评论
采纳的回答
Walter Roberson
2012-1-10
interp1 has no problems interpolating decimal numbers.
Comparing values by comparing their strings is... unusual. And you should not use == to compare strings: use strcmp() or equal() in case the two are different length.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Annotations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!