Geometric Mean and average.

3 views (last 30 days)
David Hughes
David Hughes on 8 Jul 2015
Answered: David Hughes on 9 Jul 2015
I am trying to create a code that will accept inputs until a negative integer is entered then take all the positive integers as a vector and calculate the geometric mean and average. This is what i have so far. I can enter the vector and get an output but I need to have it loop for each element of vector as described above. Any help is appreciated.
%gm is geometric mean. avg is the average
x = input('Enter your numbers: '); n = length(x);
gm = 1; % Initialize variable
for i = 1 : n % Iterate through all of the elements y = x(i); gm = gm * y^(1/n); % Compute mean end avg = sum(x)/n; % Compute average fprintf('The Geometric mean is %.3f \n',gm) fprintf('The average is %.3f \n',avg)

Answers (1)

David Hughes
David Hughes on 9 Jul 2015
I think I found the answer.
i=1; n=1; while n >= 0 ix = input('Enter your numbers: '); if ix < 0 % break else x(i)= ix; end i=i+1; end %gm is geometric mean. avg is the average n = length(x); gm = 1; % Initialize variable for i = 1 : n % Iterate through all of the elements y = x(i); gm = gm * y^(1/n); % Compute mean end avg = sum(x)/n; % Compute average fprintf('The Geometric mean is %.3f \n',gm) fprintf('The average is %.3f \n',avg)

Community Treasure Hunt

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

Start Hunting!