how to calculate a row of number to be calculate in if else statement matlab

1 vue (au cours des 30 derniers jours)
%example of energy consumption
units=[0 800.09 364.73 776.42 695.21 698 338.67 498.05 426.35 713.48];
%units=EnergyConsumption;
result=0;
if units>900
result=units*0.571-118.3;
elseif(units>600)&&(units<=900)
result=units*0.546-95.8;
elseif(units>300)&&(units<=600)
result=units*0.516-77.8;
elseif(units>200)&&(units<=300)
result=units*0.334-23.2;
elseif(units>0)&&(units<=200)
result=units*0.218;
TotalBill=result
end;

Réponse acceptée

David Hill
David Hill le 3 Juin 2020
units=[0 800.09 364.73 776.42 695.21 698 338.67 498.05 426.35 713.48];
results=zeros(size(units));
results(units>900)=units(units>900)*0.571-118.3;
results(units>600&units<=900)=units(units>600&units<=900)*0.546-95.8;
results(units>300&units<=600)=units(units>300&units<=600)*0.516-77.8;
results(units>200&units<=300)=units(units>200&units<=300)*0.334-23.2;
results(units>0&units<=200)=units(units>0&units<=200)*0.218;
TotalBill=sum(results);%I assume you want to sum results

Plus de réponses (0)

Catégories

En savoir plus sur Modeling 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