How to add a loop counter and respond to user input

3 views (last 30 days)
Write a program that repeats the process of prompting the user to enter a positive number as long as the user correctly enters positive numbers when prompted. The program should count the number of numbers that the user successfully enters. As soon as the user types a negative number the program will print OK and shows the number of numbers that the user has successfully entered.
  2 Comments
Chris
Chris on 11 Jun 2013
Edited: Azzi Abdelmalek on 11 Jun 2013
I already have this much.
a=10;
while a-1>0
a=input('Please input an even number [even]: ', 's')
end
Walter Roberson
Walter Roberson on 11 Jun 2013
Edited: Walter Roberson on 11 Jun 2013
Why are you asking the user to enter even numbers when the homework requires entering positive numbers?
You are not checking to see whether the input is acceptable or not.
What should happen if the user enters 0? 0 is not positive, but it is also not negative (the termination condition)

Sign in to comment.

Answers (2)

Vishal Rane
Vishal Rane on 11 Jun 2013
When in doubt write a pseudo code:
1) Prompt user to enter something ( in ur case a number )
2) Accept number from user
3) Code checks if number is acceptable ( check for special chars, strings, etc)
4a) If valid number and positive, store it, repeat 1-4
4b) If valid number and negative, display 'OK', calculate and display count of stored numbers
4c) If invalid input, show prompt again ignoring user input or notifying him/her of the same

Chetan Aswathanarayana
Chetan Aswathanarayana on 20 Jun 2013
function Sample()
Loop = true;
Count = 0;
while(Loop)
a = input('Please input a positive number: ');
if a>=0
Count = Count+1;
else
Loop = false;
end
end
fprintf('Ok, the number of inputs enetered by the user is %d',Count);
end

Categories

Find more on Programming 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!