Effacer les filtres
Effacer les filtres

How to check whether a condition is being met and move on to next if it dosent

3 vues (au cours des 30 derniers jours)
b=1.1; a=[1;5;6] c=a.*b; c=mean(c)
now I want to check if c lies between 6 and 7, if not i want to try b=1.2 and b=1.0 and b=1.3 and b=0.8 and so on decreasing and increasing

Réponse acceptée

Viren Gupta
Viren Gupta le 23 Oct 2018
Since c is equal to the mean of b*1,b*5 and b*6, hence c = b*(1+5+6)/3 = 4*b. Therefore 6<4*b<7 implies b lies between 1.5 and 1.75 to satisfy your condition. One approach is to no longer decrease b as that won't give you the result. Start with b=1.1, use a do while loop with terminating condition as 6<c<7. in the body of the loop, compute c as you mentioned in the question.

Plus de réponses (0)

Catégories

En savoir plus sur Loops and Conditional Statements 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