Loop and input question

2 views (last 30 days)
John Colley
John Colley on 11 Oct 2015
I need to create a loop that ask for s user inputed number and then adds odds number starting at 1 until target number is reached.
  2 Comments
Image Analyst
Image Analyst on 12 Oct 2015
OK. Good luck with that. Feel free to post your code and ask a question after reading this if you need help.
Image Analyst
Image Analyst on 12 Oct 2015
What's an "odds number"? Do you mean odds, as in chance or probability? Maybe use rand() or randn(). Or did you mean "an odd number" like 1,3,5,7, etc.? If so, which number? Or do you need to ask the user for one?

Sign in to comment.

Answers (2)

Stalin Samuel
Stalin Samuel on 12 Oct 2015
%If you are trying to find the sum of all odd no's between 1 and s (i.e s is your limit )
prompt = 'What is the value of s? ';
s = input(prompt)
O_Sum = 1
for i = 2:s
if mod(i,2)
O_Sum = O_Sum +i
end
end
  1 Comment
Stephen23
Stephen23 on 12 Oct 2015
This is a very inefficient loop: only half of the iterations actually perform anything useful. Rather than wasting lots of iterations, MATLAB easily iterates only over the odd values only, which means that the if statement is also not required:
s = input('What is the value of s? ','s');
x = 0;
for k = 1:2:str2double(s)
x = x+k;
end
Of course the whole thing would in any case be much neater and faster by using MATLAB's code vectorization abilities, which reduces this task to one simple sum command:
sum(1:2:str2double(s))

Sign in to comment.


Maneet Kaur Bagga
Maneet Kaur Bagga on 5 Jul 2022
As per my uderstanding you want to create a loop which asks for an input from the user and returns the sum of odd numbers between 1 and the input number. Please find the code below as a solution. Hope it helps!
x = 100
x = 100
% You can use x = input() to take input from the user
num_sum = sum(1:2:x)
num_sum = 2500

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!