# How to half the value of a constant inside an iteration?

2 views (last 30 days)
Ahmad Hasnain on 12 Feb 2019
Edited: Kevin Phung on 12 Feb 2019
I have an iteration loop. Inside the loop, I have a constant gamma. I want its starting value to be 10e-8. I want to half its value on every iteration (10e-4 on second iteration). How to do it?
maxiter = 100;
while iter< maxiter
gamma = 1Oe-8
f = gamma * p;
end
##### 4 CommentsShowHide 3 older comments
Ahmad Hasnain on 12 Feb 2019
Sorry for not explaining it better. I want to do it like this:
10e-8 , 10e-4, 10e-2, 10e-1, 10e-0.5

Sign in to comment.

### Accepted Answer

Kevin Phung on 12 Feb 2019
Edited: Kevin Phung on 12 Feb 2019
maxiter = 100;
iter = 1;
x = 1:1:99;
n = 8*(1/2).^x; % n = 8 , 4, 2, 0.5,...
while iter< maxiter
gamma = 10 * 10^(-n(iter)); % 10e-8, 10e-4,...
f = gamma * p;
iter = iter + 1;
end
edit: changed x to 1:1:99 instead of 1:1:100
##### 0 CommentsShowHide -1 older comments

Sign in to comment.

### Community Treasure Hunt

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

Start Hunting!